:root{--teal-900:#00382f;--teal-800:#004a3f;--teal-700:#006b5f;--teal-600:#00776b;--teal-500:#00857d;--teal-400:#00a79d;--teal-300:#2dccc0;--teal-050:#e6f4f2;--ink:#1f2a2e;--ink-soft:#37474d;--muted:#5f7076;--muted-light:#7f9094;--border:#dde5e6;--border-strong:#c3d0d2;--surface:#fff;--surface-alt:#f4f7f7;--page-bg:#f2f5f5;--white:#fff;--on-dark-divider:#ffffff2e;--on-dark-muted:#ffffffb8;--success:#1e7f4f;--success-bg:#e3f2e9;--success-ink:#10502f;--danger:#c0392b;--danger-bg:#fbe6e3;--danger-ink:#7d241a;--warning:#b3720a;--warning-bg:#fdf2dd;--warning-ink:#6d4404;--info:var(--teal-600);--info-bg:var(--teal-050);--info-ink:#00463c;--neutral-bg:#e9eded;--neutral-ink:#414b4b;--redline-ins:#1a56db;--redline-ins-bg:#e8f0fe;--redline-del:var(--danger);--redline-del-bg:var(--danger-bg);--author-1:#6d28d9;--author-2:#0f766e;--author-3:#b45309;--author-4:#be185d;--author-5:#1d4ed8;--author-6:#4d7c0f;--author-7:#9333ea;--author-8:#0369a1;--accent-violet:#6b4d9e;--font-sans:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:"SFMono-Regular",Menlo,Monaco,Consolas,"Courier New",monospace;--radius-pill:999px;--radius-lg:12px;--radius-md:8px;--radius-sm:4px;--shadow-sm:0 1px 2px #1f2a2e0f;--shadow-md:0 2px 10px #1f2a2e14;--shadow-lg:0 8px 28px #1f2a2e24;--sidebar-width:264px;--transition:160ms ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f2f5f5;background-color:var(--page-bg);color:#1f2a2e;color:var(--ink);font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-family:var(--font-sans);font-size:15px;line-height:1.55}#root{min-height:100vh}code,pre{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Courier New,monospace;font-family:var(--font-mono)}:focus-visible{outline:3px solid #2dccc0;outline:3px solid var(--teal-300);outline-offset:2px}h1,h2,h3,h4,h5{color:#1f2a2e;color:var(--ink);font-weight:700;letter-spacing:-.01em;line-height:1.15}h1{font-size:34px}h2{font-size:27px}h3{font-size:20px}h4{font-size:17px}a{color:#00776b;color:var(--teal-600);text-decoration:none}a:hover{color:#00857d;color:var(--teal-500);text-decoration:underline}strong{font-weight:600}.app-container{display:flex;min-height:100vh}.main-content{flex:1 1;margin-left:264px;margin-left:var(--sidebar-width);max-width:100%;min-width:0;padding:32px 36px 56px}.page-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:28px}.page-header h2{font-size:30px;font-weight:800}.page-header h2:before{background-color:#2dccc0;background-color:var(--teal-300);border-radius:2px;content:"";display:block;height:4px;margin-bottom:14px;width:48px}.sidebar{background-color:#00382f;background-color:var(--teal-900);display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:26px 18px;position:fixed;width:264px;width:var(--sidebar-width)}.sidebar,.sidebar h1{color:#fff;color:var(--white)}.sidebar h1{border-bottom:3px solid #2dccc0;border-bottom:3px solid var(--teal-300);font-size:19px;font-weight:700;letter-spacing:-.02em;margin-bottom:22px;padding-bottom:18px}.nav-menu{flex:1 1;list-style:none}.nav-item{margin:4px 0}.nav-link{border-radius:8px;border-radius:var(--radius-md);color:#ffffffdb;display:block;font-size:14px;font-weight:500;padding:11px 14px;position:relative;text-decoration:none;transition:background-color .16s ease,color .16s ease;transition:background-color var(--transition),color var(--transition)}.nav-link:hover{background-color:#ffffff1a;color:#fff;color:var(--white);text-decoration:none}.nav-link.active{background-color:#00776b;background-color:var(--teal-600);color:#fff;color:var(--white);font-weight:600}.nav-link.active:before{background-color:#2dccc0;background-color:var(--teal-300);border-radius:0 2px 2px 0;bottom:8px;content:"";left:0;position:absolute;top:8px;width:4px}.admin-tabs{border-bottom:1px solid #dde5e6;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:4px;margin-bottom:28px}.admin-tab{border-bottom:3px solid #0000;color:#5f7076;color:var(--muted);font-size:14px;font-weight:500;margin-bottom:-1px;padding:11px 15px;text-decoration:none;transition:color .16s ease,border-color .16s ease;transition:color var(--transition),border-color var(--transition)}.admin-tab:hover{color:#1f2a2e;color:var(--ink);text-decoration:none}.admin-tab.active{border-bottom-color:#00857d;border-bottom-color:var(--teal-500);color:#00776b;color:var(--teal-600);font-weight:700}.card{background:#fff;background:var(--surface);border:1px solid #dde5e6;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #1f2a2e0f;box-shadow:var(--shadow-sm);margin-bottom:22px;padding:24px}.card-header{align-items:center;border-bottom:1px solid #dde5e6;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.card-header h3{font-size:19px;font-weight:700}.btn{align-items:center;border:1px solid #0000;border-radius:999px;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:600;gap:8px;justify-content:center;line-height:1.2;padding:11px 22px;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition);white-space:nowrap}.btn,.btn:hover{text-decoration:none}.btn:disabled,.btn[disabled]{cursor:not-allowed;opacity:.55}.btn-primary{background-color:#00857d;background-color:var(--teal-500);border-color:#00857d;border-color:var(--teal-500);color:#fff;color:var(--white)}.btn-primary:hover:not(:disabled){background-color:#00776b;background-color:var(--teal-600);border-color:#00776b;border-color:var(--teal-600)}.btn-secondary{background-color:initial;border-color:#c3d0d2;border-color:var(--border-strong);color:#37474d;color:var(--ink-soft)}.btn-secondary:hover:not(:disabled){background-color:#f4f7f7;background-color:var(--surface-alt);border-color:#5f7076;border-color:var(--muted);color:#1f2a2e;color:var(--ink)}.btn-success{background-color:#1e7f4f;background-color:var(--success);border-color:#1e7f4f;border-color:var(--success);color:#fff;color:var(--white)}.btn-success:hover:not(:disabled){background-color:#10502f;background-color:var(--success-ink);border-color:#10502f;border-color:var(--success-ink)}.btn-danger{background-color:#c0392b;background-color:var(--danger);border-color:#c0392b;border-color:var(--danger);color:#fff;color:var(--white)}.btn-danger:hover:not(:disabled){background-color:#7d241a;background-color:var(--danger-ink);border-color:#7d241a;border-color:var(--danger-ink)}.btn-small{font-size:12.5px;padding:6px 14px}.btn-group{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.sidebar .btn-secondary{background-color:initial;border-color:#ffffff59;color:#fff;color:var(--white)}.sidebar .btn-secondary:hover:not(:disabled){background-color:#fff;background-color:var(--white);border-color:#fff;border-color:var(--white);color:#006b5f;color:var(--teal-700)}.form-group{margin-bottom:18px}.form-group label{color:#37474d;color:var(--ink-soft);display:block;font-size:13.5px;font-weight:600;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{background-color:#fff;background-color:var(--white);border:1px solid #c3d0d2;border:1px solid var(--border-strong);border-radius:8px;border-radius:var(--radius-md);color:#1f2a2e;color:var(--ink);font-family:inherit;font-size:14px;padding:11px 13px;transition:border-color .16s ease,box-shadow .16s ease;transition:border-color var(--transition),box-shadow var(--transition);width:100%}.form-group textarea{min-height:110px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#00857d;border-color:var(--teal-500);box-shadow:0 0 0 3px #e6f4f2;box-shadow:0 0 0 3px var(--teal-050);outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#7f9094;color:var(--muted-light)}.multiselect{position:relative}.multiselect-toggle{align-items:center;background-color:#fff;background-color:var(--white);border:1px solid #c3d0d2;border:1px solid var(--border-strong);border-radius:8px;border-radius:var(--radius-md);color:#1f2a2e;color:var(--ink);cursor:pointer;display:flex;font-family:inherit;font-size:14px;gap:8px;justify-content:space-between;padding:11px 13px;text-align:left;transition:border-color .16s ease,box-shadow .16s ease;transition:border-color var(--transition),box-shadow var(--transition);width:100%}.multiselect-toggle:hover{border-color:#5f7076;border-color:var(--muted)}.multiselect-toggle:disabled{cursor:not-allowed;opacity:.6}.multiselect-toggle[aria-expanded=true]{border-color:#00857d;border-color:var(--teal-500);box-shadow:0 0 0 3px #e6f4f2;box-shadow:0 0 0 3px var(--teal-050)}.multiselect-toggle-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multiselect-toggle-caret{color:#5f7076;color:var(--muted);flex-shrink:0}.multiselect-panel{background-color:#fff;background-color:var(--white);border:1px solid #c3d0d2;border:1px solid var(--border-strong);border-radius:8px;border-radius:var(--radius-md);box-shadow:0 2px 10px #1f2a2e14;box-shadow:var(--shadow-md);left:0;min-width:240px;padding:8px;position:absolute;right:0;top:calc(100% + 4px);z-index:20}.multiselect-search{border:1px solid #dde5e6;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius-sm);color:#1f2a2e;color:var(--ink);font-family:inherit;font-size:13px;margin-bottom:6px;padding:8px 10px;width:100%}.multiselect-options{max-height:220px;overflow-y:auto}.multiselect-option{align-items:center;border-radius:4px;border-radius:var(--radius-sm);cursor:pointer;display:flex;font-size:13.5px;font-weight:400;gap:8px;padding:6px 8px}.multiselect-option:hover{background-color:#e6f4f2;background-color:var(--teal-050)}.multiselect-tree-row{margin-bottom:2px}.multiselect-tree-suboption{align-items:center;color:#5f7076;color:var(--muted);cursor:pointer;display:flex;font-size:12px;font-weight:400;gap:6px;padding:2px 8px 2px 34px}.multiselect-clear{background:none;border:none;border-top:1px solid #dde5e6;border-top:1px solid var(--border);color:#00857d;color:var(--teal-500);cursor:pointer;display:block;font-family:inherit;font-size:12px;font-weight:600;margin-top:6px;padding:6px 8px;text-align:left;width:100%}.multiselect-clear:hover{color:#006b5f;color:var(--teal-700)}.table-container{max-width:100%;overflow-x:auto}table{border-collapse:collapse;font-size:14px;margin:18px 0 4px;width:100%}thead{background-color:#f4f7f7;background-color:var(--surface-alt);border-bottom:2px solid #c3d0d2;border-bottom:2px solid var(--border-strong)}th{color:#5f7076;color:var(--muted);font-size:12.5px;font-weight:700;letter-spacing:.04em;padding:13px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}td{border-bottom:1px solid #dde5e6;border-bottom:1px solid var(--border);padding:14px;vertical-align:middle}tbody tr:hover{background-color:#e6f4f2;background-color:var(--teal-050)}tbody tr:last-child td{border-bottom:none}.badge{border-radius:999px;border-radius:var(--radius-pill);display:inline-block;font-size:11.5px;font-weight:700;line-height:1.5;padding:4px 11px;white-space:nowrap}.badge-active,.badge-archived,.badge-draft,.badge-expired,.badge-pending,.badge-pending_approval{letter-spacing:.03em;text-transform:uppercase}.badge-draft{background-color:#fdf2dd;background-color:var(--warning-bg);color:#6d4404;color:var(--warning-ink)}.badge-pending,.badge-pending_approval{background-color:#e6f4f2;background-color:var(--info-bg);color:#00463c;color:var(--info-ink)}.badge-active{background-color:#e3f2e9;background-color:var(--success-bg);color:#10502f;color:var(--success-ink)}.badge-expired{background-color:#fbe6e3;background-color:var(--danger-bg);color:#7d241a;color:var(--danger-ink)}.badge-archived{background-color:#e9eded;background-color:var(--neutral-bg);color:#414b4b;color:var(--neutral-ink)}.alert{border-left:4px solid;border-radius:8px;border-radius:var(--radius-md);font-size:14px;margin-bottom:20px;padding:14px 16px}.alert-success{background-color:#e3f2e9;background-color:var(--success-bg);border-color:#1e7f4f;border-color:var(--success);color:#10502f;color:var(--success-ink)}.alert-error{background-color:#fbe6e3;background-color:var(--danger-bg);border-color:#c0392b;border-color:var(--danger);color:#7d241a;color:var(--danger-ink)}.alert-info{background-color:#e6f4f2;background-color:var(--info-bg);border-color:#00857d;border-color:var(--teal-500);color:#00463c;color:var(--info-ink)}.alert-warning{background-color:#fdf2dd;background-color:var(--warning-bg);border-color:#b3720a;border-color:var(--warning);color:#6d4404;color:var(--warning-ink)}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-bottom:30px}.stats-grid-split{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.stats-grid--compact{gap:12px;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));margin-bottom:0}.stat-card{background:#fff;background:var(--surface);border:1px solid #dde5e6;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #1f2a2e0f;box-shadow:var(--shadow-sm);padding:22px;text-align:center}.stat-card--compact{padding:12px 10px}.stat-card--compact .stat-value{font-size:24px;margin:4px 0}.stat-card--compact .stat-label{font-size:11px}.stat-card--link{color:inherit;display:block;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.stat-card--link:hover{border-color:#00a79d;border-color:var(--teal-400);box-shadow:0 2px 10px #1f2a2e14;box-shadow:var(--shadow-md);text-decoration:none;transform:translateY(-2px)}.stat-value{font-feature-settings:"tnum";color:#00776b;color:var(--teal-600);font-size:36px;font-variant-numeric:tabular-nums;font-weight:800;line-height:1.1;margin:8px 0}.stat-label{color:#5f7076;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.modal-overlay{align-items:center;background-color:#0f1e1c8c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal{background:#fff;background:var(--surface);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 8px 28px #1f2a2e24;box-shadow:var(--shadow-lg);max-height:90vh;max-width:520px;overflow-y:auto;padding:28px;width:100%}.modal--wide{max-width:820px}.modal-header{border-bottom:1px solid #dde5e6;border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:16px}.modal-header h3{font-size:21px;font-weight:700}.form-actions,.modal-footer{border-top:1px solid #dde5e6;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:24px;padding-top:18px}.rich-editor{background-color:#fff;background-color:var(--white);border:1px solid #c3d0d2;border:1px solid var(--border-strong);border-radius:8px;border-radius:var(--radius-md);overflow:hidden}.rich-editor-toolbar{align-items:center;background-color:#e9eded;background-color:var(--neutral-bg);border-bottom:1px solid #dde5e6;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:0;padding:8px}.rich-editor-size-select{background-color:#fff;background-color:var(--white);border:1px solid #c3d0d2;border:1px solid var(--border-strong);border-radius:4px;border-radius:var(--radius-sm,4px);font-size:13px;margin-bottom:4px;padding:6px 8px}.rich-editor-content{color:#1f2a2e;color:var(--ink);font-size:14px;height:480px;outline:none;overflow-y:auto;padding:12px 14px}.rich-editor-content p{margin:0 0 10px}.rich-editor-content p:last-child{margin-bottom:0}.rich-editor-content ol,.rich-editor-content ul{margin:0 0 10px 22px}.rich-editor-content a{color:#006b5f;color:var(--teal-700)}.rich-editor-content p.is-editor-empty:first-child:before{color:#7f9094;color:var(--muted-light);content:attr(data-placeholder);float:left;height:0;pointer-events:none}.rich-content-view{color:#1f2a2e;color:var(--ink);font-size:14.5px;line-height:1.6}.rich-content-view p{margin:0 0 12px}.rich-content-view p:last-child{margin-bottom:0}.rich-content-view h1,.rich-content-view h2,.rich-content-view h3{color:#1f2a2e;color:var(--ink);margin:18px 0 10px}.rich-content-view h1:first-child,.rich-content-view h2:first-child,.rich-content-view h3:first-child{margin-top:0}.rich-content-view ol,.rich-content-view ul{margin:0 0 12px 24px}.rich-content-view a{color:#006b5f;color:var(--teal-700)}.redline-view{color:#1f2a2e;color:var(--ink);font-size:14.5px;line-height:1.6}.redline-view p{margin:0 0 12px}.redline-view ins{background:#e8f0fe;background:var(--redline-ins-bg);border-radius:2px;color:#1a56db;color:var(--redline-ins);padding:0 1px;text-decoration:none}.redline-view del{background:#fbe6e3;background:var(--redline-del-bg);border-radius:2px;color:#c0392b;color:var(--redline-del);padding:0 1px;text-decoration:line-through}.redline-view del[data-author-color],.redline-view ins[data-author-color]{background:#0000;border-bottom:2px solid #1f2a2e;border-bottom:2px solid var(--redline-author-color,var(--ink));color:#1f2a2e;color:var(--redline-author-color,var(--ink))}.redline-view mark.redline-comment-anchor{background:#fdf2dd;background:var(--warning-bg);border-bottom:2px solid #b3720a;border-bottom:2px solid var(--warning);border-radius:2px;cursor:pointer;padding:0 1px}.redline-participants{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.redline-participant{align-items:center;background:#f4f7f7;background:var(--surface-alt);border:1px solid #dde5e6;border:1px solid var(--border);border-radius:999px;border-radius:var(--radius-pill);color:#37474d;color:var(--ink-soft);display:inline-flex;font-size:12.5px;gap:6px;padding:3px 10px 3px 8px}.redline-participant-dot{background:#5f7076;background:var(--redline-author-color,var(--muted));border-radius:50%;flex-shrink:0;height:9px;width:9px}.changelog{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.changelog-empty{color:#5f7076;color:var(--muted);font-size:13px}.changelog-entry{align-items:flex-start;background:#f4f7f7;background:var(--surface-alt);border-left:3px solid #c3d0d2;border-left:3px solid var(--border-strong);border-radius:4px;border-radius:var(--radius-sm);display:flex;gap:8px;padding:8px 10px}.changelog-entry--added{border-left-color:#1a56db;border-left-color:var(--redline-ins)}.changelog-entry--removed{border-left-color:#c0392b;border-left-color:var(--redline-del)}.changelog-sign{flex-shrink:0;font-weight:700;line-height:1.5}.changelog-entry--added .changelog-sign{color:#1a56db;color:var(--redline-ins)}.changelog-entry--removed .changelog-sign{color:#c0392b;color:var(--redline-del)}.changelog-body{display:flex;flex-direction:column;gap:3px;min-width:0}.changelog-text{color:#1f2a2e;color:var(--ink);font-size:13.5px;line-height:1.5;overflow-wrap:anywhere}.changelog-entry--removed .changelog-text{color:#37474d;color:var(--ink-soft);text-decoration:line-through}.changelog-meta{align-items:center;color:#5f7076;color:var(--muted);display:flex;font-size:12px;gap:6px}.changelog-author-dot{background:#5f7076;background:var(--muted);border-radius:50%;flex-shrink:0;height:9px;width:9px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.approval-action-bar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.approval-action-bar-buttons{display:flex;flex-shrink:0;gap:8px}.change-mode-toggle{border:1px solid #c3d0d2;border:1px solid var(--border-strong);border-radius:999px;border-radius:var(--radius-pill);display:inline-flex;overflow:hidden}.change-mode-toggle button{background:#fff;background:var(--surface);border:none;color:#5f7076;color:var(--muted);cursor:pointer;font-size:13px;font-weight:600;padding:5px 14px}.change-mode-toggle button.active{background:#00857d;background:var(--teal-500);color:#fff;color:var(--white)}.comments-panel{display:flex;flex-direction:column;gap:12px}.comment-thread{background:#fff;background:var(--surface);border:1px solid #dde5e6;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-md);padding:10px 12px}.comment-thread.resolved{opacity:.65}.comment-anchor-quote{border-left:3px solid #b3720a;border-left:3px solid var(--warning);color:#5f7076;color:var(--muted);font-size:12.5px;font-style:italic;margin-bottom:6px;padding:2px 8px}.comment-anchor-quote.detached{border-left-color:#c3d0d2;border-left-color:var(--border-strong);color:#7f9094;color:var(--muted-light)}.comment-body{display:flex;gap:8px;padding:6px 0}.comment-body .comment-author-dot{background:#5f7076;background:var(--redline-author-color,var(--muted));border-radius:50%;flex-shrink:0;height:8px;margin-top:6px;width:8px}.comment-meta{color:#5f7076;color:var(--muted);font-size:12px}.comment-reply{border-top:1px solid #dde5e6;border-top:1px solid var(--border);margin-left:24px;padding-top:6px}.comment-composer input,.comment-composer textarea{background-color:#fff;background-color:var(--white);border:1px solid #c3d0d2;border:1px solid var(--border-strong);border-radius:8px;border-radius:var(--radius-md);color:#1f2a2e;color:var(--ink);font-family:inherit;font-size:13.5px;padding:8px 10px;width:100%}.comment-composer input:focus,.comment-composer textarea:focus{border-color:#00857d;border-color:var(--teal-500);box-shadow:0 0 0 3px #e6f4f2;box-shadow:0 0 0 3px var(--teal-050);outline:none}.btn-link{background:none;border:none;color:#006b5f;color:var(--teal-700);cursor:pointer;font-size:12.5px;padding:0;text-decoration:underline}.btn-link:disabled{color:#7f9094;color:var(--muted-light);cursor:default;text-decoration:none}.loading{padding:48px 20px}.empty-state,.loading{color:#5f7076;color:var(--muted);text-align:center}.empty-state{padding:64px 20px}.empty-state h3{color:#37474d;color:var(--ink-soft);font-size:20px;margin-bottom:8px}.login-container{align-items:center;background-color:#00382f;background-color:var(--teal-900);background-image:radial-gradient(circle at 18% 22%,#004a3f 0,#004a3f 38%,#0000 38.4%);background-image:radial-gradient(circle at 18% 22%,var(--teal-800) 0,var(--teal-800) 38%,#0000 38.4%);display:flex;justify-content:center;min-height:100vh;padding:24px}.login-card{border:none;box-shadow:0 8px 28px #1f2a2e24;box-shadow:var(--shadow-lg);margin-bottom:0;max-width:420px;padding:34px 32px;width:100%}.login-card h1{font-size:25px;font-weight:800;margin-bottom:4px}.login-subtitle{color:#5f7076;color:var(--muted);font-size:14px;margin:0 0 26px}.login-submit{margin-top:10px;padding-bottom:13px;padding-top:13px;width:100%}.app-footer{color:#ffffffb8;color:var(--on-dark-muted);font-size:11px;line-height:1.6;margin-top:16px;text-align:center}.app-footer p{margin:0}.app-footer--login{bottom:16px;left:0;position:fixed;right:0}.impersonation-banner{align-items:center;background-color:#b3720a;background-color:var(--warning);box-shadow:0 2px 10px #1f2a2e14;box-shadow:var(--shadow-md);color:#fff;color:var(--white);display:flex;flex-wrap:wrap;font-size:14px;gap:16px;justify-content:space-between;margin:-32px -36px 28px;padding:12px 36px;position:sticky;top:0;z-index:100}.impersonation-banner strong{font-weight:700}.impersonation-banner .btn{background-color:#fff;background-color:var(--white);border-color:#fff;border-color:var(--white);color:#6d4404;color:var(--warning-ink);flex-shrink:0}.impersonation-banner .btn:hover:not(:disabled){background-color:#fdf2dd;background-color:var(--warning-bg);border-color:#fdf2dd;border-color:var(--warning-bg);color:#6d4404;color:var(--warning-ink)}@media (max-width:1024px){:root{--sidebar-width:224px}.main-content{padding:26px 24px 48px}.impersonation-banner{margin:-26px -24px 24px;padding:12px 24px}}@media (max-width:900px){.stats-grid-split{grid-template-columns:1fr}}@media (max-width:768px){.stats-grid{grid-template-columns:1fr}.page-header{align-items:flex-start;flex-direction:column}table{font-size:13px}td,th{padding:10px}}@media (max-width:640px){.sidebar{height:auto;padding:18px;position:static;width:100%}.app-container{flex-direction:column}.main-content{margin-left:0;padding:20px 16px 40px}.impersonation-banner{margin:-20px -16px 20px;padding:12px 16px}.sidebar h1{margin-bottom:16px;padding-bottom:14px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}.stat-card--link:hover{transform:none}}
/*# sourceMappingURL=main.13afa309.css.map*/