:root{color-scheme:light;font-family:IBM Plex Sans,Aptos,Segoe UI,sans-serif;background:#f4f1eb;color:#1f2522}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{border:0;cursor:pointer}.public-home{min-height:100vh;display:grid;grid-template-rows:auto 1fr;background:#f7f3ea}.public-home header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px}.public-home section{display:grid;place-items:center;align-content:center;gap:28px;padding:32px;text-align:center}.public-home h1{max-width:880px;font-size:72px;line-height:.98}.public-home button,.login-box button,.form-actions button,.modal-actions button,.access-mode button,.users-toolbar button,.row-actions button,.tabs button{border-radius:10px;background:#2f4639;color:#fffaf1;padding:10px 14px}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:#171b18}.login-box,.panel,.page-panel{background:#fffaf1;border:1px solid #ddd3c4;border-radius:8px}.login-box{width:min(100%,360px);padding:32px}.eyebrow{margin:0 0 8px;color:#7a6c5c;font-size:12px;letter-spacing:0;text-transform:uppercase}h1,h2,h3{margin:0;line-height:1.15}h1{font-size:28px}h2{font-size:30px}h3{font-size:20px}label{display:grid;gap:7px;margin-top:18px;color:#51483d;font-size:14px}input,select{width:100%;border:1px solid #cfc2b2;border-radius:10px;background:#fffdf8;color:#1f2522;padding:10px 12px;outline:none}input:focus,select:focus{border-color:#2f4639;box-shadow:0 0 0 3px #2f463929}.login-box button{width:100%;margin-top:20px;padding:12px}.error{color:#a23226;margin:14px 0 0;font-size:14px}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{min-height:100vh;padding:28px;background:#171b18;color:#fffaf1;display:flex;flex-direction:column;gap:32px}.sidebar .eyebrow{color:#b7a995}nav{display:grid;gap:8px}nav button,.account button{text-align:left;padding:12px 14px;border-radius:10px;background:transparent;color:#cfc7bc}nav button.active,nav button:hover,.account button:hover{background:#27332c;color:#fffaf1}.account{margin-top:auto;display:grid;gap:6px}.account span{color:#b7a995;text-transform:capitalize}.workspace{padding:40px;overflow-x:auto}.page-panel{min-height:calc(100vh - 80px);padding:36px;display:flex;flex-direction:column;justify-content:space-between}.page-panel p{max-width:560px;color:#5f574d;line-height:1.55}.home-panel{align-items:center;justify-content:center;text-align:center}.operations{display:grid;gap:24px}.section-header{display:flex;justify-content:space-between;gap:20px;align-items:end}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs button{background:#e7ddce;color:#2f4639}.tabs button.active{background:#2f4639;color:#fffaf1}.ops-layout{display:block}.panel{padding:24px}.table-panel{overflow-x:auto}.users-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.users-toolbar button{background:#2f4639;color:#fffaf1;white-space:nowrap}.users-error{margin-bottom:14px}.form-actions{display:flex;gap:10px;margin-top:20px}.form-actions button{flex:1}button.secondary,.form-actions .secondary{background:#e7ddce;color:#2f4639}.table{display:grid;min-width:680px}.table-row{display:grid;grid-template-columns:1.15fr 1fr .7fr .8fr .7fr 1.2fr;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #eadfce}.table-head{color:#7a6c5c;font-size:12px;text-transform:uppercase}.compact .table-row{grid-template-columns:1fr 1fr 1.2fr .7fr .7fr}.audit-table .table-row{grid-template-columns:1.2fr .9fr 1fr 1fr 1.4fr}code{font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:13px}.muted{opacity:.58}.role{width:max-content;border-radius:999px;padding:4px 8px;background:#e7ddce;color:#51483d;text-transform:capitalize;font-size:13px}.role-owner,.role-admin{background:#dce8df;color:#2f4639}.role-manager,.role-member{background:#e0e6ed;color:#34506d}.row-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.row-actions button{background:#e7ddce;color:#2f4639;padding:8px 10px}.row-actions button:disabled{cursor:not-allowed;opacity:.45}.permission-pill{width:max-content;border-radius:999px;padding:4px 8px;background:#f2eadf;color:#5f574d;font-size:13px}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:28px;background:#171b1894}.access-modal{width:min(1040px,100%);max-height:min(860px,calc(100vh - 56px));display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid #ddd3c4;border-radius:8px;background:#fffaf1;box-shadow:0 28px 80px #171b1847}.user-modal{width:min(560px,100%);grid-template-rows:auto minmax(0,1fr) auto}.user-form-body{overflow:auto;padding:8px 28px 28px}.access-modal-header{display:flex;justify-content:space-between;gap:20px;padding:24px 28px 18px;border-bottom:1px solid #eadfce}.access-modal-header span{display:block;margin-top:6px;color:#7a6c5c}.icon-button{width:36px;height:36px;border-radius:10px;background:#e7ddce;color:#2f4639;font-size:24px;line-height:1}.access-mode{display:flex;gap:8px;padding:16px 28px;border-bottom:1px solid #eadfce}.access-mode button{background:#e7ddce;color:#2f4639}.access-mode button.active{background:#2f4639;color:#fffaf1}.permission-scroll{min-height:0;overflow:auto;padding:6px 28px 24px}.permission-group{padding-top:22px}.permission-group h4{margin:0 0 10px;color:#2f4639;font-size:14px;text-transform:uppercase}.permission-row{display:grid;grid-template-columns:minmax(220px,1fr) 104px 104px;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid #eadfce}.permission-row strong{display:block;margin-bottom:4px}.permission-row code{color:#7a6c5c}.permission-switch{display:flex;gap:8px;align-items:center;margin:0;color:#51483d}.permission-switch input{width:18px;height:18px;accent-color:#2f4639}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:18px 28px;border-top:1px solid #eadfce;background:#fffdf8}.modal-actions button{min-width:120px}.modal-actions button:disabled{cursor:wait;opacity:.62}.audit-filters{display:flex;gap:12px;margin-bottom:18px}.audit-details{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:920px){.app,.ops-layout{grid-template-columns:1fr}.sidebar{min-height:auto}.section-header{align-items:start;flex-direction:column}.workspace{padding:24px}}@media(max-width:640px){.public-home h1{font-size:42px}}
