:root{--bg:#eef2f6;--surface:#fff;--surface-soft:#f7f9fb;--text:#16202a;--muted:#657282;--border:#dce3ea;--brand:#d61f26;--brand-soft:#fff0f0;--brand-dark:#b01920;--green:#0f8b67;--green-soft:#e4f6ef;--blue:#246bca;--blue-soft:#e8f0ff;--amber:#a15c05;--amber-soft:#fff2d9;--ink-soft:#edf0f2;--danger:#b42318;--radius:8px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font:16px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:6px;min-height:42px;padding:0 16px;font-weight:700;transition:background .15s}button:hover:not(:disabled){background:var(--brand-dark)}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #d61f263d}input,select,textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#fff;border-radius:6px;padding:11px 12px}textarea{resize:vertical}label{color:var(--muted);gap:7px;font-size:.84rem;font-weight:700;display:grid}h1,h2,p{margin:0}h1{font-size:clamp(1.75rem,4vw,2.8rem);line-height:1}h2{font-size:1.05rem;line-height:1.2}code{overflow-wrap:anywhere;background:var(--ink-soft);max-width:100%;color:var(--text);border-radius:6px;padding:8px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.8rem;display:block}.login-screen{background:var(--bg);place-items:center;min-height:100svh;padding:24px;display:grid}.loading-screen{place-items:center;min-height:100svh;padding:24px;display:grid}.login-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:22px;width:min(100%,410px);padding:28px;display:grid}.brand-mark{color:var(--brand);flex-shrink:0;place-items:center;display:grid}.brand-logo{align-items:center;gap:10px;display:flex}.brand-name{color:var(--text);letter-spacing:-.01em;font-size:1.35rem;font-weight:700;line-height:1}.login-heading,.panel-heading{gap:6px;display:grid}button.collapse-trigger,button.collapse-trigger:hover:not(:disabled){text-align:left;width:100%;color:var(--text);min-height:unset;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;padding:0;transition:none;display:flex}.collapse-icon{color:var(--muted);flex-shrink:0;font-size:1.1rem;line-height:1;transition:transform .2s}.collapsible-content{gap:16px;display:grid}button.collapse-trigger[aria-expanded=true] .collapse-icon{transform:rotate(180deg)}.login-card form,.form-panel{gap:16px;display:grid}.eyebrow{color:var(--brand);letter-spacing:0;text-transform:uppercase;font-size:.76rem;font-weight:800}.form-error{color:var(--danger);font-weight:700}.form-success{color:var(--green);font-weight:700}.global-feedback{margin-bottom:16px}.app-shell{width:min(1440px,100%);min-height:100svh;margin:0 auto;padding:24px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.topbar-module{margin-top:6px;display:block}.session-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:1fr auto;align-items:center;gap:2px 12px;min-width:220px;padding:12px;display:grid}.session-box span{color:var(--muted);font-size:.85rem}.session-box strong{grid-column:1}.session-box>.ghost-button{grid-area:1/2/3}.session-profile,.session-profile-button,.session-profile-button:hover:not(:disabled){min-height:unset;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-column:1;gap:2px;padding:0;display:grid}.session-profile-button:hover:not(:disabled) strong{color:var(--brand)}.ghost-button{border:1px solid var(--border);background:var(--surface);color:var(--text);transition:background .15s,border-color .15s}.ghost-button:hover:not(:disabled){background:var(--surface-soft);border-color:var(--muted)}.danger-button{color:var(--danger);background:#fff5f5;border:1px solid #b4231840}.danger-button:hover:not(:disabled){background:#ffe4e2}.account-actions{justify-content:stretch}.account-actions button{flex:1 1 0}.table-actions{flex-direction:column;align-items:stretch;gap:6px;display:flex}.table-actions button{white-space:nowrap;flex:none;min-height:32px;padding:0 10px;font-size:.82rem}.column-admin{text-transform:none;gap:6px;min-width:180px;display:grid}.column-admin-title{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800;display:block}.column-admin-menu{width:max-content;max-width:100%}.column-admin-menu summary{border:1px solid var(--border);width:max-content;color:var(--text);cursor:pointer;text-transform:none;background:#fff;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:800;line-height:1}.column-admin-menu[open]{z-index:4;position:relative}.column-admin-editor{gap:6px;display:grid}.column-admin input,.column-admin select{min-height:34px;padding:7px 8px;font-size:.82rem}.column-admin-actions{width:min(220px, max-content);border:1px solid var(--border);border-radius:var(--radius);background:#fff;flex-wrap:wrap;gap:6px;margin-top:6px;padding:8px;display:flex;box-shadow:0 8px 18px #16202a14}.column-admin-actions button{flex:72px;min-height:30px;padding:0 8px;font-size:.76rem}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:16px;display:grid}.metric{border:1px solid var(--border);border-radius:var(--radius);align-content:space-between;min-height:104px;padding:18px;display:grid}.metric span{color:var(--muted);font-weight:700}.metric strong{font-size:2rem;line-height:1}.metric-ink{background:var(--surface)}.metric-green{background:var(--green-soft);border-color:#bdebd9}.metric-blue{background:var(--blue-soft);border-color:#c8dcff}.metric-amber{background:var(--amber-soft);border-color:#ffe1a3}.workspace{grid-template-columns:minmax(0,1fr) minmax(320px,400px);grid-template-areas:"main side";align-items:start;gap:16px;display:grid}.workspace-main,.workspace-side{gap:16px;min-width:0;display:grid}.workspace-main{grid-area:main}.workspace-side{grid-area:side;align-items:start}.panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:18px}.panel-note{color:var(--muted);font-size:.84rem}.page-edit-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.toolbar{grid-template-columns:minmax(220px,1fr) minmax(170px,220px) auto;align-items:end;gap:12px;display:grid}.toolbar-actions{flex-wrap:wrap;gap:8px;display:flex}.toolbar-actions button{white-space:nowrap;flex:120px}.import-review-panel{gap:14px;display:grid}.import-review-list{gap:10px;display:grid}.import-review-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft);grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:12px;padding:12px;display:grid}.import-conflict-actions{gap:10px;display:grid}.import-conflict-actions span{color:var(--muted);font-size:.78rem;font-weight:600}.form-grid,.inline-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.form-actions{justify-content:end;gap:8px;display:flex}.table-panel{flex-direction:column;max-height:calc(100svh - 180px);padding:0;display:flex;overflow:hidden}.table-panel .panel-heading{padding:18px 18px 0}.table-wrap{min-height:0;overflow:auto}table{border-collapse:collapse;table-layout:auto;width:100%;min-width:860px}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:11px 13px}th{color:var(--muted);background:var(--surface-soft);text-transform:uppercase;font-size:.78rem}td{color:var(--text);overflow-wrap:anywhere;font-size:.9rem}td strong{display:block}td span{color:var(--muted);margin-top:2px;display:block}.status{border-radius:999px;width:max-content;padding:5px 9px;font-size:.78rem;font-weight:800}.status-assigned{background:var(--green-soft);color:var(--green)}.status-hardened{background:var(--blue-soft);color:var(--blue)}.status-without-hardening{color:var(--brand);background:#fff0f0}.secret summary{cursor:pointer;width:max-content;color:var(--blue);font-weight:800}.secret code{margin-top:8px}.account-management-panel{gap:18px}.activity-log-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.activity-log-feedback{padding:0 18px}.activity-log-filters{border-top:1px solid var(--border);flex-wrap:wrap;align-items:end;gap:12px;padding:18px;display:flex}.activity-log-filters label{flex:150px;min-width:140px}.activity-log-filters label:first-child{flex-basis:260px}.activity-log-filters .ghost-button{flex:none;min-width:120px}.activity-log-count{color:var(--muted);padding:0 18px 12px;font-size:.84rem;font-weight:700}.password-panel{width:min(100%,520px)}.account-create-form,.account-form{gap:14px;display:grid}.account-create-toolbar{border-bottom:1px solid var(--border);padding:18px}.account-create-toolbar>button{width:max-content}.account-list{gap:12px;display:grid}.account-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft);gap:14px;padding:14px;display:grid}.access-management,.role-list,.role-card{gap:16px;display:grid}.access-tabs{flex-wrap:wrap;gap:10px;display:flex}button.access-tab,button.access-tab:hover:not(:disabled){border:1px solid var(--border);background:var(--surface);min-height:64px;color:var(--text);text-align:left;align-content:center;gap:3px;display:grid}button.access-tab span{color:var(--muted);font-size:.78rem;font-weight:600}button.access-tab-active,button.access-tab-active:hover:not(:disabled){border-color:var(--brand);background:var(--brand);color:#fff}button.access-tab-active span{color:#ffffffd1}.access-subsection-heading{border-top:1px solid var(--border);padding-top:16px}.role-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft);padding:14px}.role-card-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;display:flex}.permission-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.permission-pages{gap:12px;display:grid}.permission-page{border:1px solid var(--border);border-radius:var(--radius);background:#fff;gap:12px;padding:14px;display:grid}.permission-page-heading{gap:4px;display:grid}.permission-page-empty{border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);margin:0;padding:12px;font-size:.84rem;font-weight:700}.permission-group{border:1px solid var(--border);border-radius:var(--radius);gap:8px;margin:0;padding:12px;display:grid}.permission-group legend{color:var(--muted);padding:0 4px;font-size:.82rem;font-weight:800}.checkbox-field{color:var(--text);align-items:center;gap:8px;font-weight:600;display:flex}.checkbox-field input{width:auto}.checkbox-row{flex-wrap:wrap;gap:12px;display:flex}.select-options-editor{gap:8px;display:grid}.select-options-head,.select-option-row{grid-template-columns:minmax(0,1fr) 80px minmax(96px,auto);align-items:center;gap:8px;display:grid}.select-options-head{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:800}.select-option-row input[type=color]{min-height:42px;padding:4px}.boolean-option-preview{flex-wrap:wrap;gap:8px;display:flex}.boolean-option-preview span{border-radius:999px;padding:7px 12px;font-size:.82rem;font-weight:800}.boolean-option-yes{background:var(--green-soft);color:var(--green)}.boolean-option-no{background:var(--brand-soft);color:var(--brand)}.form-field-inline-admin{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.form-field-inline-actions{gap:6px;display:flex}.form-field-inline-actions button{min-width:38px;min-height:38px;padding:0 10px}.account-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.role-pill{border-radius:999px;width:max-content;padding:5px 9px;font-size:.76rem;font-weight:800}.role-pill-admin{background:var(--amber-soft);color:var(--amber)}.role-pill-user{background:var(--blue-soft);color:var(--blue)}td .field-option-pill{--field-option-bg:var(--green-soft);--field-option-color:var(--green);background:var(--field-option-bg);width:max-content;color:var(--field-option-color);border-radius:999px;margin-top:0;padding:5px 9px;font-size:.78rem;font-weight:800;line-height:1;display:inline-block}@media (width<=920px){.table-panel{max-height:none;padding:18px;overflow:visible}.table-panel .panel-heading{padding:0}.table-wrap{overflow:visible}table,thead,tbody,tr,td{display:block}table{min-width:0;margin-top:14px}thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}tbody{gap:12px;display:grid}tr{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}td{border-bottom:1px solid var(--border);grid-template-columns:minmax(96px,34%) minmax(0,1fr);gap:12px;padding:12px;display:grid}td:last-child{border-bottom:0}td:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:800}.table-actions{flex-flow:wrap}.table-actions button{white-space:normal;flex:auto;min-height:38px;font-size:.84rem}}@media (width<=1200px){.workspace{grid-template-columns:minmax(0,1fr) minmax(280px,340px)}}@media (width<=1080px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace{grid-template-columns:1fr;grid-template-areas:"main""side"}.workspace-side{grid-template-columns:1fr}.table-panel{max-height:none}.account-management-panel{grid-column:1/-1}}@media (width<=760px){.app-shell,.login-screen{padding:16px}.topbar{flex-direction:column;align-items:stretch}.session-box{width:100%}.metrics-grid,.workspace-side,.form-grid,.inline-field-grid,.form-field-inline-admin,.import-review-row,.select-options-head,.select-option-row,.toolbar{grid-template-columns:1fr}.metric{min-height:86px}.form-actions{flex-wrap:wrap;justify-content:stretch}.form-actions button,.access-tabs button{width:100%}.account-head,.page-edit-toolbar{flex-direction:column;align-items:stretch}.activity-log-heading>button,.activity-log-filters .ghost-button{width:100%}}
