.skip-link{background:var(--primary);color:#fff;border-radius:var(--radius);z-index:99999;padding:8px 12px;font-size:14px;font-weight:600;text-decoration:none;position:absolute;top:4px;left:-9999px}.skip-link:focus-visible{left:4px}:root{--primary:#4f2aff;--secondary:#25a4a7;--primary-fade:#dcd2ff;--secondary-fade:#d2f0f1;--radius:8px;--sidebar-width-expanded:220px;--sidebar-width-semi:72px;--sidebar-width-collapsed:60px;--font-family:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-weight:400;--text-color:#1a1a1a;--ui-zoom:1;--action-icon-size:14px;--bg-page:#f0f2f5;--card-bg:#fff;--border-color:#e2e4e9;--input-bg:#fff;--hover-bg:#0000000a;--muted-text:#6b7280;--typo-nav-font:var(--font-family);--typo-nav-size:14px;--typo-nav-weight:500;--typo-nav-style:normal;--typo-nav-decoration:none;--typo-section-font:var(--font-family);--typo-section-size:12px;--typo-section-weight:700;--typo-section-style:normal;--typo-section-decoration:none;--typo-label-font:var(--font-family);--typo-label-size:11px;--typo-label-weight:600;--typo-label-style:normal;--typo-label-decoration:none;--typo-value-font:var(--font-family);--typo-value-size:13px;--typo-value-weight:400;--typo-value-style:normal;--typo-value-decoration:none;--typo-col-header-font:var(--font-family);--typo-col-header-size:11px;--typo-col-header-weight:600;--typo-col-header-style:normal;--typo-col-header-decoration:none;--typo-list-item-font:var(--font-family);--typo-list-item-size:13px;--typo-list-item-weight:400;--typo-list-item-style:normal;--typo-list-item-decoration:none}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-weight:var(--font-weight);background:var(--bg-page);color:var(--text-color);height:100vh;overflow:hidden}#root{height:100vh}.app-layout{height:calc(100vh / var(--ui-zoom));zoom:var(--ui-zoom);display:flex}.sidebar{color:#fff;flex-direction:column;flex-shrink:0;transition:width .2s;display:flex;overflow:hidden}.sidebar.expanded{width:var(--sidebar-width-expanded)}.sidebar.semi{width:var(--sidebar-width-semi)}.sidebar.collapsed{width:var(--sidebar-width-collapsed)}.sidebar.semi .sidebar-nav{gap:2px;padding:8px 4px}.sidebar.semi .nav-item{justify-content:center;gap:0;padding:8px 4px}.sidebar.semi .nav-item-semi{flex-direction:column;align-items:center}.sidebar.semi .sidebar-brand{justify-content:center}.sidebar.semi .sidebar-footer{align-items:center;padding:8px 4px}.sidebar.semi .act-as-section,.sidebar.semi .user-name,.sidebar.semi .user-role,.sidebar.semi .logout-btn{display:none}.sidebar.semi .sidebar-header{justify-content:center;padding:12px 4px}.sidebar.semi .sidebar-toggle{margin:0}.sidebar-header{border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;padding:16px 12px;display:flex}.sidebar-brand{align-items:center;gap:8px;min-width:0;display:flex}.sidebar-title{letter-spacing:.5px;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.sidebar-subtitle{opacity:.6;white-space:nowrap;text-overflow:ellipsis;letter-spacing:.3px;margin-top:1px;font-size:10px;font-weight:400;overflow:hidden}.sidebar-toggle{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px}.sidebar-toggle:hover{background:#ffffff26}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:12px 8px;display:flex;overflow-y:auto}.nav-item{color:var(--typo-nav-color,#ffffffd9);font-size:var(--typo-nav-size);font-weight:var(--typo-nav-weight);font-style:var(--typo-nav-style);-webkit-text-decoration:var(--typo-nav-decoration);text-decoration:var(--typo-nav-decoration);font-family:var(--typo-nav-font);align-items:center;gap:12px;padding:10px 12px;transition:all .15s;display:flex}.nav-item:hover{color:#fff;background:#ffffff1f!important}.nav-item.active{font-weight:600;color:#fff!important}.sidebar-footer{border-top:1px solid #ffffff26;flex-direction:column;gap:8px;padding:12px;display:flex}.act-as-section{border-bottom:1px solid #ffffff26;padding-bottom:4px}.user-name{font-size:13px;font-weight:600}.user-role{opacity:.7;font-size:11px}.main-content{flex:1;padding:0;overflow-y:auto}.mobile-topbar{z-index:200;color:#fff;align-items:center;gap:12px;height:52px;padding:0 16px;display:flex;position:fixed;top:0;left:0;right:0}.mobile-hamburger{color:#fff;cursor:pointer;background:0 0;border:none;align-items:center;padding:4px;display:flex}.mobile-topbar-title{letter-spacing:.5px;font-size:15px;font-weight:700}.sidebar.mobile-drawer{z-index:300;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);width:var(--sidebar-width-expanded)!important}.sidebar.mobile-drawer.drawer-open{transform:translate(0)}.mobile-backdrop{z-index:250;background:#0006;position:fixed;inset:0}.mobile-main{padding-top:52px;padding-bottom:env(safe-area-inset-bottom,0px)}@media (width<=767px){.app-layout{flex-direction:column}.sidebar-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}.page{padding:24px}.page-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.page-header h1{color:var(--text-color);font-size:24px;font-weight:700;font-family:var(--font-family)}.badge{color:#fff;border-radius:12px;padding:3px 10px;font-size:13px;font-weight:600}.back-btn{cursor:pointer;color:#555;border-radius:var(--radius);background:0 0;border:none;align-items:center;gap:6px;padding:6px 10px;font-size:14px;display:flex}.back-btn:hover{background:#0000000f}.filters-bar{background:var(--card-bg);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:20px;padding:12px;display:flex;box-shadow:0 1px 3px #00000014}.search-box{background:var(--hover-bg);border-radius:var(--radius);border:1px solid var(--border-color);flex:1;align-items:center;gap:8px;padding:8px 12px;display:flex}.search-box input{background:0 0;border:none;outline:none;width:100%;font-size:14px}.filter-select{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--input-bg);color:var(--text-color);cursor:pointer;padding:8px 12px;font-size:14px}.cases-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.case-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius);cursor:pointer;padding:16px;transition:all .15s;box-shadow:0 1px 3px #0000000f}.case-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001f}.case-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.case-name{color:var(--text-color);font-size:16px;font-weight:600;font-family:var(--font-family)}.status-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;padding:3px 10px;font-size:11px;font-weight:600}.case-card-body{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.case-field{flex-direction:column;gap:2px;display:flex}.field-label{color:var(--muted-text);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.field-value{color:#333;font-size:13px}.case-card-footer{border-top:1px solid var(--border-color);padding-top:10px}.view-link{align-items:center;gap:4px;font-size:13px;font-weight:500;display:flex}.tab-bar{border-radius:var(--radius);background:#0000000f;gap:4px;width:fit-content;margin-bottom:16px;padding:4px;display:flex;overflow-x:auto}.tab-btn{border-radius:calc(var(--radius) - 2px);font-size:var(--typo-nav-size,13px);font-weight:500;font-family:var(--font-family);cursor:pointer;white-space:nowrap;color:var(--text-color);box-shadow:none;background:0 0;border:none;align-items:center;gap:6px;padding:7px 16px;transition:all .15s;display:flex}.tab-btn:hover{background:#fff9}.tab-btn.active{background:var(--card-bg);color:var(--primary);font-weight:500;box-shadow:0 1px 4px #00000014}.tab-content{background:var(--card-bg);min-height:300px;padding:20px;box-shadow:0 1px 3px #00000014}.field-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;display:grid}.detail-field{border-bottom:1px solid var(--border-color);flex-direction:column;gap:4px;padding:8px 0;display:flex}.detail-label{font-size:var(--typo-label-size);font-weight:var(--typo-label-weight);font-style:var(--typo-label-style);font-family:var(--typo-label-font);color:var(--typo-label-color,var(--muted-text));text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:var(--typo-value-size);font-weight:var(--typo-value-weight);font-style:var(--typo-value-style);font-family:var(--typo-value-font);color:var(--typo-value-color,var(--text-color));word-break:break-word}.notes-section{flex-direction:column;gap:16px;display:flex}.note-block h3{font-size:var(--typo-section-size);font-family:var(--typo-section-font);font-weight:var(--typo-section-weight);color:var(--typo-section-color,#555);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.note-block p{font-size:var(--typo-value-size);font-family:var(--typo-value-font);color:var(--typo-value-color,var(--text-color));white-space:pre-wrap;line-height:1.6}.note-block div{font-size:var(--typo-value-size);font-family:var(--typo-value-font);color:var(--typo-value-color,var(--text-color));line-height:1.6}.note-block div ul,.note-block div ol{margin:4px 0;padding-left:20px}[contenteditable][data-placeholder]:empty:before{content:attr(data-placeholder);color:#9ca3af;pointer-events:none}.table-wrapper{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{text-align:left;font-weight:var(--typo-col-header-weight);font-size:var(--typo-col-header-size);font-family:var(--typo-col-header-font);font-style:var(--typo-col-header-style);-webkit-text-decoration:var(--typo-col-header-decoration);text-decoration:var(--typo-col-header-decoration);color:var(--typo-col-header-color,inherit);background:var(--col-header-bg,transparent);text-transform:uppercase;letter-spacing:.5px;padding:10px 12px}.data-table td{border-bottom:1px solid var(--border-color);font-size:var(--typo-list-item-size);font-family:var(--typo-list-item-font);font-weight:var(--typo-list-item-weight);font-style:var(--typo-list-item-style);-webkit-text-decoration:var(--typo-list-item-decoration);text-decoration:var(--typo-list-item-decoration);color:var(--typo-list-item-color,var(--text-color));padding:10px 12px}.data-table tbody tr:hover{background:var(--primary-fade)}.approval-badge{border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.approval-badge.approved{color:#166534;background:#dcfce7}.approval-badge.pending-approval{color:#5b21b6;background:#ede9fe}.approval-badge.changes-needed{color:#854d0e;background:#fef9c3}.approval-badge.rejected{color:#991b1b;background:#fecaca}.approval-badge.in-progress{color:#1e40af;background:#dbeafe}.settings-card{background:var(--card-bg);box-sizing:border-box;width:100%;padding:24px;box-shadow:0 1px 3px #00000014}.settings-card h2{color:var(--text-color);margin:16px 0 12px;font-size:16px}.settings-card h2:first-child{margin-top:0}.settings-row{align-items:center;gap:12px;margin-bottom:12px;display:flex}.settings-row label{min-width:140px;font-size:14px}.settings-row input[type=color]{cursor:pointer;border:none;width:40px;height:32px}.color-preview{border:1px solid var(--border-color);border-radius:4px;width:60px;height:32px}.theme-preview{margin-top:8px;padding:16px}.loading{color:var(--muted-text);justify-content:center;padding:60px;font-size:16px;display:flex}.empty-state{text-align:center;color:var(--muted-text);padding:60px;font-size:16px}.placeholder{text-align:center;color:#aaa;padding:60px;font-size:16px}.login-page{background:linear-gradient(135deg,#4f2affcc,#25a4a7cc);justify-content:center;align-items:center;height:100vh;display:flex}.login-card{text-align:center;background:#fff;border-radius:12px;width:90%;max-width:400px;padding:48px;box-shadow:0 8px 32px #00000026}.login-card h1{color:#1a1a1a;margin-bottom:8px;font-size:24px;font-weight:700}.login-card p{color:#666;margin-bottom:32px;font-size:14px}.login-btn{color:#fff;cursor:pointer;background:#2f2aff;border:none;border-radius:8px;width:100%;padding:12px 32px;font-size:15px;font-weight:600;transition:background .15s}.login-btn:hover{background:#1e18cc}.logout-btn{color:#ffffffd9;cursor:pointer;background:#ffffff26;border:1px solid #ffffff40;border-radius:6px;width:100%;margin-top:8px;padding:6px 12px;font-size:12px;transition:all .15s}.logout-btn:hover{color:#fff;background:#ffffff40}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{opacity:.88}.btn-secondary{background:var(--card-bg);color:var(--text-color);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--hover-bg)}.btn-danger{color:#fff;background:#ef4444}.btn-danger:hover{background:#dc2626}.btn-success{color:#fff;background:#22c55e}.btn-success:hover{background:#16a34a}.btn-sm{padding:5px 10px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:var(--action-icon-size);height:var(--action-icon-size)}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.filter-bar .filter-search{flex:1;min-width:180px;max-width:300px}.filter-bar .filter-select{min-width:140px}.actions-bar{justify-content:flex-end;gap:8px;margin-bottom:14px;display:flex}.actions-bar-left{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.form-group{flex-direction:column;gap:4px;display:flex}.form-group.full-width{grid-column:1/-1}.form-section{margin-bottom:24px}.section-title{font-size:var(--typo-section-size);font-weight:var(--typo-section-weight);font-style:var(--typo-section-style);-webkit-text-decoration:var(--typo-section-decoration);text-decoration:var(--typo-section-decoration);font-family:var(--typo-section-font);text-transform:uppercase;letter-spacing:.6px;color:var(--typo-section-color,var(--muted-text));border-bottom:1px solid var(--border-color);margin:0 0 10px;padding-bottom:6px}.form-label{font-size:var(--typo-label-size);font-weight:var(--typo-label-weight);font-style:var(--typo-label-style);-webkit-text-decoration:var(--typo-label-decoration);text-decoration:var(--typo-label-decoration);font-family:var(--typo-label-font);color:var(--typo-label-color,#666);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;display:block}.form-input,.form-select,.form-textarea{border:1px solid var(--border-color);border-radius:var(--radius);font-size:var(--typo-value-size);font-weight:var(--typo-value-weight);font-style:var(--typo-value-style);font-family:var(--typo-value-font);background:var(--input-bg);color:var(--typo-value-color,var(--text-color));width:100%;padding:8px 10px;transition:border-color .15s}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-color:var(--primary)}.form-input:focus:not(:focus-visible),.form-select:focus:not(:focus-visible),.form-textarea:focus:not(:focus-visible){border-color:var(--primary);outline:none}.form-textarea{resize:vertical;min-height:80px;font-family:inherit}.form-checkbox-row{color:#333;align-items:center;gap:8px;padding:6px 0;font-size:13px;display:flex}.form-checkbox-row input[type=checkbox]{cursor:pointer;width:auto}.modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--card-bg);border-radius:var(--radius);flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;box-shadow:0 8px 32px #0003}.modal-lg{max-width:900px}.modal-xl{max-width:1200px}.modal-fullscreen{width:95vw;max-width:95vw;height:92vh;max-height:92vh}.modal-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2{color:var(--text-color);font-size:16px;font-weight:700;font-family:var(--font-family)}.modal-close{cursor:pointer;color:var(--muted-text);background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:22px;line-height:1}.modal-close:hover{background:var(--hover-bg);color:var(--text-color)}.modal-body{flex:1;padding:20px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-color);background:color-mix(in srgb, var(--card-bg) 80%, transparent);border-radius:0 0 var(--radius) var(--radius);flex-shrink:0;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}@media (width<=640px){.modal-overlay{align-items:flex-end;padding:4px}.modal{border-radius:var(--radius) var(--radius) 0 0;max-height:96dvh}.modal-body{padding:12px}.modal-footer{padding:10px 12px}.se-form-grid{flex-wrap:wrap;gap:8px;display:flex!important}.se-form-grid>.form-group{flex:0 0 calc(50% - 4px);min-width:0}.se-form-grid>.form-group.full-width{flex:0 0 100%}}.confirm-overlay{z-index:1100;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-box{background:var(--card-bg);border-radius:var(--radius);width:90%;max-width:360px;padding:24px;box-shadow:0 8px 32px #0003}.confirm-box h3{color:var(--text-color);font-size:16px;font-family:var(--font-family);margin-bottom:10px}.confirm-box p{color:var(--text-color);opacity:.7;font-size:14px;font-family:var(--font-family);margin-bottom:20px}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.pagination{justify-content:center;align-items:center;gap:6px;padding:16px 0 4px;display:flex}.pagination-btn{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);cursor:pointer;color:var(--text-color);padding:6px 12px;font-size:13px}.pagination-btn:hover:not(:disabled){background:var(--hover-bg)}.pagination-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-info{color:var(--muted-text);margin:0 8px;font-size:13px}.report-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.report-card{background:var(--card-bg);border-radius:var(--radius);padding:20px;box-shadow:0 1px 3px #00000014}.report-card h3{color:#666;margin-bottom:8px;font-size:13px;font-weight:500}.report-stat{font-size:30px;font-weight:700}.report-sub{color:var(--muted-text);margin-top:4px;font-size:13px}.report-table-section{background:var(--card-bg);border-radius:var(--radius);margin-bottom:20px;padding:20px;box-shadow:0 1px 3px #00000014}.report-table-section h3{color:var(--text-color);font-size:15px;font-weight:600;font-family:var(--font-family);margin-bottom:14px}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--primary-fade)!important}.edit-actions{border-top:1px solid #eee;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:16px;display:flex}.editable-field{position:relative}.editable-value{cursor:text;border-radius:4px;min-height:24px;padding:4px 6px}.editable-value:hover{background:var(--hover-bg)}.file-list{flex-direction:column;gap:8px;display:flex}.file-item{background:var(--hover-bg);border-radius:var(--radius);border:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.file-name{font-size:13px;font-weight:500}.file-meta{color:var(--muted-text);margin-top:2px;font-size:11px}.file-name-col{flex:1;min-width:0}.file-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.file-group-header{align-items:center;gap:6px;margin-bottom:6px;display:flex}.file-group-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.file-group-name{text-transform:uppercase;letter-spacing:.04em;color:var(--typo-label-color,var(--muted-text));font-size:12px;font-weight:700}.file-group-count{color:#aaa;font-size:11px}.upload-zone{border-radius:var(--radius);text-align:center;cursor:pointer;color:var(--muted-text);border:2px dashed #ccc;padding:32px;transition:all .15s}.upload-zone:hover{border-color:var(--primary);color:var(--primary);background:#f8f0ff}.upload-zone input[type=file]{display:none}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes btn-upload-pulse{0%,to{box-shadow:0 0 #4f2aff8c}50%{box-shadow:0 0 0 8px #4f2aff00}}.btn-pending-upload{animation:1.4s ease-in-out infinite btn-upload-pulse}.severity-badge{border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700}.severity-badge.severity-warning{color:#d97706;background:#fffbeb;border:1px solid #fde68a}.severity-badge.severity-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.di-rules-td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:8px 10px}.di-editor-layout{grid-template-columns:1fr 1fr;gap:20px;min-height:420px;display:grid}@media (width<=800px){.di-editor-layout{grid-template-columns:1fr}}.di-editor-chat{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);flex-direction:column;padding:14px;display:flex}.di-chat-messages{flex-direction:column;flex:1;gap:10px;max-height:300px;margin-bottom:10px;padding:4px 0;display:flex;overflow-y:auto}.di-chat-empty{color:#9ca3af;border-radius:var(--radius);background:#f9fafb;padding:8px;font-size:12px;line-height:1.7}.di-chat-msg{flex-direction:column;gap:3px;display:flex}.di-chat-msg-label{text-transform:uppercase;color:var(--typo-label-color);letter-spacing:.05em;font-size:10px;font-weight:700}.di-chat-msg-user .di-chat-msg-label{color:var(--primary)}.di-chat-msg-content{white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.5}.di-chat-thinking{color:#9ca3af;font-style:italic}.di-chat-input-row{align-items:center;gap:6px;display:flex}.di-chat-input-row .form-input{flex:1}.di-editor-form{max-height:560px;overflow-y:auto}.di-test-result{border-radius:var(--radius);background:#f0fdf4;border:1px solid #bbf7d0;margin-top:10px;padding:10px 12px;font-size:12px}.di-test-row{border-bottom:1px solid #d1fae5;padding:4px 0}.di-test-row:last-child{border-bottom:none}.field-row-item{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);align-items:center;gap:8px;margin-bottom:6px;padding:8px 10px;display:flex}.field-row-order{flex-direction:column;flex-shrink:0;gap:2px;display:flex}.field-row-meta{flex:1;min-width:0}.field-row-label{color:var(--text-color);font-size:13px;font-weight:600;display:block}.field-row-type{color:var(--typo-label-color);font-size:11px}.field-row-actions{flex-shrink:0;gap:4px;display:flex}.auth-svc-gallery{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;max-height:300px;padding:2px;display:grid;overflow-y:auto}.auth-svc-card{border:1.5px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);cursor:pointer;text-align:left;width:100%;padding:10px 14px;transition:border-color .12s,background .12s}.auth-svc-card:hover{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 5%, var(--card-bg))}.auth-svc-card.selected{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 22%, var(--card-bg));box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 20%, transparent);border-width:3px}.auth-svc-selected-indicator{color:var(--primary);letter-spacing:.02em;margin-bottom:4px;font-size:11px;font-weight:700}.auth-svc-card-event-type{border-top:1px solid color-mix(in srgb, var(--primary) 30%, transparent);margin-top:10px;padding-top:10px}.auth-svc-card.selected .auth-svc-card-code,.auth-svc-card.selected .auth-svc-card-name{color:var(--primary)}.auth-svc-card.expired{opacity:.55}.auth-svc-card-code{color:var(--primary);font-size:12px;font-weight:700}.auth-svc-card-name{color:var(--text-color);margin-top:1px;font-size:13px;font-weight:600}.auth-svc-card-meta{color:var(--typo-label-color);margin-top:4px;font-size:11px}.auth-svc-card-badge{background:color-mix(in srgb, var(--primary) 15%, transparent);color:var(--primary);border-radius:3px;margin-left:4px;padding:1px 5px;font-size:10px;font-weight:600;display:inline-block}.auth-svc-info-icon{cursor:default;flex-direction:column;flex-shrink:0;align-items:center;gap:1px;display:inline-flex;position:relative}.auth-svc-info-icon:after{content:attr(data-tooltip);background:var(--text-color);color:var(--card-bg);white-space:pre;border-radius:var(--radius);pointer-events:none;opacity:0;z-index:20;min-width:max-content;padding:5px 9px;font-size:11px;transition:opacity .15s;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 2px 8px #0000002e}.auth-svc-info-icon:hover:after{opacity:1}.dark-mode{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.dark-mode body{background:var(--bg-page);color:var(--text-color)}.dark-mode .search-box input{color:var(--text-color);background:0 0}.dark-mode .search-box svg{color:var(--muted-text)}.dark-mode .tab-bar{background:#ffffff0f}.dark-mode .tab-btn{color:var(--text-color)}.dark-mode .tab-btn:hover{background:#ffffff1a}.dark-mode .tab-btn.active{background:var(--card-bg);color:var(--text-color)}.dark-mode .data-table tr:nth-child(2n) td{background:#ffffff0a}.dark-mode .data-table th{color:var(--muted-text);background:var(--hover-bg)}.dark-mode .data-table td{color:var(--text-color);border-color:var(--border-color)}.dark-mode .data-table tbody tr:hover td{background:var(--hover-bg)}.dark-mode .table-wrapper{background:var(--card-bg)}.dark-mode .form-label{color:var(--muted-text)}.dark-mode .form-checkbox-row{color:var(--text-color)}.dark-mode .form-input:disabled,.dark-mode .form-select:disabled,.dark-mode .form-textarea:disabled{background:var(--hover-bg);color:var(--muted-text)}.dark-mode .modal-close{color:var(--muted-text)}.dark-mode .case-card{border-color:var(--border-color);box-shadow:0 1px 4px #00000059}.dark-mode .case-card:hover{box-shadow:0 4px 16px #00000080}.dark-mode .case-card-footer{border-top-color:var(--border-color)}.dark-mode .field-label{color:var(--muted-text)}.dark-mode .field-value{color:var(--text-color)}.dark-mode .case-field .field-label{color:var(--muted-text)}.dark-mode .case-field .field-value{color:var(--text-color)}.dark-mode .detail-label{color:var(--muted-text)}.dark-mode .detail-value{color:var(--text-color)}.dark-mode .detail-field{border-bottom-color:var(--border-color)}.dark-mode .back-btn,.dark-mode .pagination-info{color:var(--muted-text)}.dark-mode .pagination-btn{background:var(--card-bg);color:var(--text-color);border-color:var(--border-color)}.dark-mode .edit-actions{border-top-color:var(--border-color)}.dark-mode .settings-card h2{color:var(--text-color)}.dark-mode .settings-card h3,.dark-mode .settings-card p{color:var(--muted-text)}.dark-mode .theme-card-label-area{background:var(--card-bg)!important;color:var(--text-color)!important}.dark-mode .report-card h3,.dark-mode .report-sub{color:var(--muted-text)}.dark-mode .upload-zone{border-color:var(--border-color);color:var(--muted-text)}.dark-mode .di-chat-empty{background:var(--hover-bg);color:var(--muted-text)}.dark-mode .di-chat-msg-content{color:var(--text-color)}.dark-mode .severity-badge.severity-warning{background:#fbbf2426;border-color:#fbbf244d}.dark-mode .severity-badge.severity-error{background:#ef444426;border-color:#ef44444d}.theme-dark-toggle{background:var(--border-color);border-radius:20px;gap:1px;margin-top:6px;padding:2px;font-size:10px;font-weight:600;display:flex}.theme-dark-toggle span{text-align:center;cursor:pointer;color:var(--muted-text);-webkit-user-select:none;user-select:none;border-radius:20px;flex:1;padding:2px 6px;transition:all .15s}.theme-dark-toggle span.tdtActive{background:var(--card-bg);color:var(--text-color);box-shadow:0 1px 2px #00000026}.var-ref-overlay{z-index:1100;background:#00000073;justify-content:center;align-items:flex-start;padding:32px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.var-ref-panel{background:var(--card-bg);border-radius:var(--radius);width:100%;max-width:1100px;min-height:300px;padding:28px 32px;box-shadow:0 8px 40px #0000002e}.var-ref-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.var-ref-title{color:var(--text-color);margin:0 0 4px;font-size:20px;font-weight:700}.var-ref-subtitle{color:var(--muted-text);margin:0;font-size:13px}.var-ref-table{border-collapse:collapse;width:100%;font-size:13px}.var-ref-table th{text-align:left;border-bottom:2px solid var(--border-color);text-transform:uppercase;letter-spacing:.05em;color:var(--typo-label-color,var(--muted-text));padding:8px 12px;font-size:11px}.var-ref-table td{border-bottom:1px solid var(--border-color);vertical-align:top;padding:8px 12px}.var-ref-table tr:hover td{background:#00000005}.var-ref-code{white-space:nowrap;background:#0000000d;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:12px}.var-ref-type{color:var(--muted-text);font-family:monospace;font-size:11px}.var-ref-phi-badge{color:#991b1b;letter-spacing:.05em;background:#fee2e2;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}@media print{.var-ref-overlay{background:0 0;padding:0;position:static}.var-ref-panel{box-shadow:none;max-width:none;padding:0}.var-ref-header button{display:none}}.tag-ref-section-btn{text-align:left;background:var(--card-bg);cursor:pointer;width:100%;color:var(--text-color);border:none;border-radius:6px 6px 0 0;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.tag-ref-section-btn:hover{background:var(--primary-fade)}.tag-ref-row{border-bottom:1px solid var(--border-color);align-items:baseline;gap:8px;padding:5px 0;font-size:12px;display:flex}.tag-ref-row:last-child{border-bottom:none}.tag-ref-code{background:var(--hover-bg,#0000000a);color:#1d4ed8;white-space:nowrap;border-radius:3px;flex-shrink:0;min-width:220px;padding:1px 6px;font-family:monospace;font-size:11px}.tag-ref-copy-btn{cursor:pointer;color:var(--muted-text);background:0 0;border:none;border-radius:3px;flex-shrink:0;align-items:center;padding:2px 4px;display:flex}.tag-ref-copy-btn:hover{background:var(--primary-fade);color:var(--primary)}.guide-body{max-height:75vh;padding-right:4px;overflow-y:auto}.guide-section{margin-bottom:28px}.guide-h3{color:var(--text-color);border-bottom:1px solid var(--border-color);margin:0 0 10px;padding-bottom:6px;font-size:15px;font-weight:700}.guide-p{color:var(--text-color);margin:0 0 8px;font-size:13px;line-height:1.6}.guide-ul{color:var(--text-color);margin:0 0 8px;padding-left:20px;font-size:13px;line-height:1.7}.guide-ul li{margin-bottom:4px}.guide-code{background:#0000000f;border-radius:3px;padding:1px 5px;font-family:monospace;font-size:12px}.guide-code-block{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius);padding:12px 16px}.guide-code-bad{color:#ef4444;margin-bottom:4px;font-size:12px;font-weight:600}.guide-code-good{color:#16a34a;margin-bottom:4px;font-size:12px;font-weight:600}.guide-pre{color:var(--text-color);white-space:pre-wrap;margin:0;font-family:monospace;font-size:12px}@media print{.guide-body{max-height:none;overflow-y:visible}}.markdown-body{color:var(--text-color)}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:var(--text-color);border-bottom:1px solid var(--border-color);margin:1.2em 0 .4em;padding-bottom:4px;font-weight:700}.markdown-body h1{font-size:1.3em}.markdown-body h2{font-size:1.15em}.markdown-body h3{border-bottom:none;font-size:1.05em}.markdown-body h4{border-bottom:none;font-size:.95em;font-weight:600}.markdown-body p{margin:0 0 .75em}.markdown-body ul,.markdown-body ol{margin:0 0 .75em;padding-left:1.4em}.markdown-body li{margin-bottom:.25em}.markdown-body strong{font-weight:700}.markdown-body em{font-style:italic}.markdown-body code{background:#0000000f;border-radius:3px;padding:1px 5px;font-family:monospace;font-size:.88em}.markdown-body pre{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius);margin:0 0 .75em;padding:12px;overflow-x:auto}.markdown-body pre code{background:0 0;padding:0}.markdown-body blockquote{border-left:3px solid var(--primary);opacity:.75;margin:0 0 .75em;padding:4px 12px}.inline-notice{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.dark-mode .inline-notice{color:#fbbf24;background:#fbbf241f;border-color:#fbbf244d}.markdown-body hr{border:none;border-top:1px solid var(--border-color);margin:1em 0}.evidence-panel{border-top:1px solid var(--border-color);margin-top:12px;padding-top:10px}.evidence-list{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.evidence-row{border-radius:var(--radius);background:var(--card-bg);border:1px solid var(--border-color);align-items:center;gap:8px;padding:4px 8px;font-size:12px;display:flex}.evidence-icon{color:var(--typo-label-color);flex-shrink:0}.evidence-filename{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.evidence-filename a{color:var(--primary);text-decoration:none}.evidence-filename a:hover{text-decoration:underline}.evidence-meta{color:var(--typo-label-color);white-space:nowrap;font-size:11px}.evidence-action-btn{cursor:pointer;color:var(--typo-label-color);border-radius:var(--radius);background:0 0;border:none;align-items:center;padding:2px 4px;display:flex}.evidence-action-btn:hover{color:var(--text-color);background:var(--border-color)}.evidence-delete-btn:hover{color:#dc2626}.evidence-upload-row{align-items:center;gap:8px;display:flex}.evidence-error{color:#dc2626;font-size:12px}.ai-chat-panel{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);flex-direction:column;display:flex;overflow:hidden}.ai-chat-header{background:color-mix(in srgb, var(--primary) 6%, var(--card-bg));border-bottom:1px solid var(--border-color);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;display:flex}.ai-chat-header-icon{color:var(--primary);flex-shrink:0}.ai-chat-header-title{font-size:13px;font-weight:700}.ai-chat-header-sub{color:var(--typo-label-color);font-size:12px}.ai-chat-header-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.ai-chat-confirm-text{color:var(--text-color);font-size:12px}.ai-chat-messages{flex-direction:column;flex:1;gap:10px;min-height:200px;max-height:480px;padding:14px;display:flex;overflow-y:auto}.ai-chat-loading{color:var(--typo-label-color);font-size:13px}.ai-chat-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px 16px;display:flex}.ai-chat-empty-icon{color:var(--typo-label-color);opacity:.4}.ai-chat-empty-title{font-size:14px;font-weight:700}.ai-chat-empty-sub{color:var(--typo-label-color);max-width:380px;font-size:13px}.ai-chat-empty-hint{color:var(--typo-label-color);font-size:12px;font-style:italic}.ai-chat-message{align-items:flex-start;gap:8px;display:flex}.ai-chat-message--user{flex-direction:row-reverse}.ai-chat-bot-icon{color:var(--primary);flex-shrink:0;margin-top:2px}.ai-chat-bubble{white-space:pre-wrap;border-radius:12px;max-width:80%;padding:8px 12px;font-size:13px;line-height:1.55}.ai-chat-message--user .ai-chat-bubble{background:var(--primary);color:#fff;border-bottom-right-radius:4px}.ai-chat-message--assistant .ai-chat-bubble{background:var(--border-color);color:var(--text-color);border-bottom-left-radius:4px}.ai-chat-bubble--thinking{opacity:.6;font-style:italic}.ai-chat-apply-bar{background:color-mix(in srgb, #16a34a 8%, var(--card-bg));border-top:1px solid #16a34a40;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 14px;font-size:13px;display:flex}.ai-chat-apply-bar svg{color:#16a34a;flex-shrink:0}.ai-chat-apply-bar span{flex:1;min-width:160px}.ai-chat-error{color:#dc2626;font-size:12px}.ai-chat-input-row{border-top:1px solid var(--border-color);gap:8px;padding:10px 14px;display:flex}.ai-chat-textarea{resize:none;flex:1;min-height:48px}.ai-chat-send-btn{align-self:flex-end;padding:8px 12px}.ai-chat-error-bar{color:#dc2626;background:#fef2f2;border-top:1px solid #fecaca;padding:6px 14px;font-size:12px}.dark-mode .ai-chat-error-bar{background:#dc26261a;border-color:#dc26264d}.program-chat-panel{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);flex-direction:column;height:calc(100vh - 160px);min-height:500px;display:flex;overflow:hidden}.program-chat-header{border-bottom:1px solid var(--border-color);gap:8px;padding:10px 14px}.program-chat-ctx-badge{color:var(--typo-label-color);background:#0000000a;border-radius:10px;padding:2px 8px;font-size:11px}.dark-mode .program-chat-ctx-badge{background:#ffffff0f}.program-chat-ctx-warning{color:#92400e;background:#fffbeb;border-bottom:1px solid #fde68a;align-items:center;gap:6px;padding:6px 14px;font-size:12px;display:flex}.dark-mode .program-chat-ctx-warning{color:#fbbf24;background:#eab3081a;border-color:#eab30840}.program-chat-messages{flex-direction:column;flex:1;gap:12px;padding:14px;display:flex;overflow-y:auto}.program-chat-empty{text-align:center;align-items:center}.program-chat-chips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px;display:flex}.program-chat-chip{border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;border-radius:14px;padding:5px 12px;font-size:12px;transition:background .15s,border-color .15s}.program-chat-chip:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.program-chat-chip:disabled{opacity:.5;cursor:not-allowed}.proposal-section{flex-direction:column;gap:8px;display:flex}.proposal-section-header{color:var(--typo-label-color);justify-content:space-between;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.proposal-section-header>span{align-items:center;gap:5px;display:flex}.proposal-card{border:1px solid var(--primary);border-radius:var(--radius);background:color-mix(in srgb, var(--primary) 4%, var(--card-bg));flex-direction:column;gap:6px;padding:10px 12px;display:flex}.proposal-card-header{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.proposal-card-ref{color:var(--primary);font-size:13px;font-weight:700}.proposal-card-domain{color:var(--typo-label-color);background:#0000000f;border-radius:8px;padding:1px 6px;font-size:11px}.dark-mode .proposal-card-domain{background:#ffffff14}.proposal-card-type{color:var(--typo-label-color);margin-left:auto;font-size:11px;font-weight:600}.proposal-card-desc{color:var(--typo-label-color);font-size:12px}.proposal-card-change{flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.proposal-card-old{color:var(--typo-label-color);text-decoration:line-through}.proposal-card-arrow{color:var(--typo-label-color)}.proposal-card-new{color:var(--text-color);font-weight:600}.proposal-card-rationale{color:var(--typo-label-color);font-size:12px;font-style:italic}.proposal-card-perm-note{color:#d97706;align-items:center;gap:4px;font-size:11px;display:flex}.proposal-card-actions{justify-content:flex-end;gap:6px;margin-top:2px;display:flex}.proposal-feedback{color:#166534;border-radius:var(--radius);background:#f0fdf4;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:flex}.dark-mode .proposal-feedback{color:#4ade80;background:#22c55e1a}.proposal-bulk-overlay{z-index:9999;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.proposal-bulk-modal{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius);flex-direction:column;gap:12px;width:90%;max-width:500px;padding:20px 24px;display:flex;box-shadow:0 8px 30px #0000002e}.proposal-bulk-title{font-size:15px;font-weight:700}.proposal-bulk-list{flex-direction:column;gap:4px;margin:0;padding-left:20px;font-size:13px;display:flex}.proposal-bulk-footer{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.notify-emails-toggle{cursor:pointer;width:100%;color:var(--text-color);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:4px 0;font-size:13px;font-weight:600;display:flex}.notify-emails-toggle:hover,.notify-emails-toggle svg{color:var(--primary)}.notify-emails-count{background:color-mix(in srgb, var(--primary) 15%, transparent);color:var(--primary);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700}.notify-emails-chevron{color:var(--typo-label-color);margin-left:auto;font-size:11px}.notify-emails-body{padding:12px 0 4px}.notify-emails-desc{color:var(--typo-label-color);margin-bottom:12px;font-size:12px}.notify-emails-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--typo-label-color);align-items:center;margin-bottom:6px;font-size:11px;font-weight:700;display:flex}.notify-emails-loading{color:var(--typo-label-color);font-size:13px}.notify-emails-empty{color:var(--typo-label-color);margin-bottom:4px;font-size:12px;font-style:italic}.notify-email-row{border-radius:var(--radius);border:1px solid var(--border-color);background:var(--card-bg);align-items:center;gap:8px;margin-bottom:4px;padding:5px 10px;font-size:13px;display:flex}.notify-email-addr{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.notify-email-label{color:var(--typo-label-color);font-size:12px}.notify-email-remove{padding:2px 6px}.notify-emails-error{color:#dc2626;margin-top:4px;font-size:12px}.compliance-docs-header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.compliance-docs-title{font-size:18px;font-weight:700}.compliance-docs-subtitle{color:var(--typo-label-color);margin-top:2px;font-size:13px}.compliance-docs-loading,.compliance-docs-empty{color:var(--typo-label-color);padding:20px 0;font-size:13px}.doc-card-list{flex-direction:column;gap:8px;display:flex}.doc-card{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);overflow:hidden}.doc-card-uploaded{border-color:#16a34a44}.dark-mode .doc-card-uploaded{border-color:#16a34a66}.doc-card-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:10px 14px;display:flex}.doc-card-header:hover{background:var(--hover-bg,#00000008)}.dark-mode .doc-card-header:hover{background:#ffffff0a}.doc-card-chevron{color:var(--typo-label-color);flex-shrink:0;display:flex}.doc-card-icon{color:var(--primary);flex-shrink:0}.doc-card-title{flex-wrap:wrap;flex:1;align-items:center;gap:8px;font-size:14px;display:flex}.doc-card-name{font-weight:600}.doc-fw-badge-row{gap:4px;display:flex}.doc-fw-badge{letter-spacing:.03em;border-radius:10px;padding:1px 6px;font-size:10px;font-weight:700}.doc-fw-hipaa{color:#1d4ed8;background:#dbeafe}.doc-fw-soc2{color:#854d0e;background:#fef9c3}.dark-mode .doc-fw-hipaa{color:#93c5fd;background:#1d4ed840}.dark-mode .doc-fw-soc2{color:#fde047;background:#854d0e40}.doc-card-status-badge{color:#15803d;background:#dcfce7;border-radius:10px;padding:1px 7px;font-size:10px;font-weight:700}.dark-mode .doc-card-status-badge{color:#4ade80;background:#16a34a33}.doc-card-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.doc-not-seeded{color:var(--typo-label-color);font-size:11px;font-style:italic}.doc-card-body{border-top:1px solid var(--border-color);padding:0 14px 14px}.doc-card-description{color:var(--typo-label-color);margin:10px 0 12px;font-size:13px}.doc-tenant-label{text-transform:uppercase;letter-spacing:.05em;color:var(--typo-label-color);margin-top:10px;margin-bottom:8px;font-size:11px;font-weight:700}.doc-tenant-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.doc-tenant-filename{font-size:13px;font-weight:600}.doc-tenant-size,.doc-tenant-version,.doc-tenant-by,.doc-tenant-date{color:var(--typo-label-color);font-size:12px}.doc-tenant-btns{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.doc-tenant-notes{color:var(--typo-label-color);margin-top:8px;font-size:12px}.doc-tenant-empty{color:var(--typo-label-color);align-items:center;gap:12px;font-size:13px;display:flex}.doc-upload-row{align-items:center;gap:8px;display:flex}.doc-file-input-hidden{display:none}.doc-upload-error{color:#dc2626;font-size:12px}.doc-delete-confirm{align-items:center;gap:6px;font-size:12px;display:flex}.doc-icon-btn{padding:4px 6px}.compliance-nav-btn{border-radius:var(--radius);cursor:pointer;width:100%;color:var(--text-color);text-align:left;background:0 0;border:none;align-items:center;gap:7px;margin-bottom:4px;padding:7px 10px;font-size:13px;display:flex}.compliance-nav-btn:hover{background:var(--hover-bg,#0000000a)}.dark-mode .compliance-nav-btn:hover{background:#ffffff0f}.compliance-nav-btn.active{background:var(--primary);color:#fff;font-weight:600}.compliance-nav-btn svg{flex-shrink:0}.compliance-seed-section{border-top:1px solid var(--border-color);margin-top:16px;padding-top:12px}.compliance-seed-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--typo-label-color);margin-bottom:8px;font-size:10px;font-weight:700}.compliance-seed-row{margin-bottom:6px}.compliance-seed-btn{justify-content:flex-start;gap:6px;width:100%;font-size:12px}.compliance-seed-msg{margin-top:3px;padding-left:2px;font-size:11px;display:block}.compliance-seed-msg.ok{color:#16a34a}.compliance-seed-msg.err{color:#dc2626}.dark-mode .compliance-seed-msg.ok{color:#4ade80}.dark-mode .compliance-seed-msg.err{color:#f87171}.compliance-seed-action-btn{border:1px solid var(--border-color);border-radius:var(--radius);cursor:pointer;width:100%;color:var(--text-color);background:0 0;align-items:center;gap:6px;margin-bottom:4px;padding:5px 8px;font-size:11px;display:flex}.compliance-seed-action-btn:hover{background:var(--hover-bg,#0000000a)}.compliance-seed-action-btn:disabled{opacity:.5;cursor:not-allowed}.risk-register{flex-direction:column;gap:16px;display:flex}.risk-score-badge{border-radius:4px;justify-content:center;align-items:center;min-width:28px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.risk-score-low{color:#15803d;background:#dcfce7}.risk-score-medium{color:#a16207;background:#fef9c3}.risk-score-high{color:#b91c1c;background:#fee2e2}.risk-score-critical{color:#fef2f2;background:#7f1d1d}.dark-mode .risk-score-low{color:#86efac;background:#14532d}.dark-mode .risk-score-medium{color:#fcd34d;background:#422006}.dark-mode .risk-score-high{color:#fca5a5;background:#450a0a}.dark-mode .risk-score-critical{color:#fecaca;background:#1a0000}.risk-table{border-collapse:collapse;width:100%;font-size:13px}.risk-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--typo-label-color);border-bottom:2px solid var(--border-color);white-space:nowrap;padding:8px 12px;font-size:11px;font-weight:700}.risk-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:10px 12px}.risk-table tr:last-child td{border-bottom:none}.risk-table tbody tr:hover{background:var(--hover-bg,#00000005);cursor:pointer}.risk-status-badge{border-radius:10px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.risk-status-open{color:#1d4ed8;background:#dbeafe}.risk-status-in_progress{color:#4338ca;background:#e0e7ff}.risk-status-accepted{color:#6b7280;background:#f3f4f6}.risk-status-closed{color:#15803d;background:#dcfce7}.dark-mode .risk-status-open{color:#93c5fd;background:#1e3a5f}.dark-mode .risk-status-in_progress{color:#a5b4fc;background:#2e1065}.dark-mode .risk-status-accepted{color:#9ca3af;background:#1f2937}.dark-mode .risk-status-closed{color:#86efac;background:#14532d}.risk-treatment-badge{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-color);white-space:nowrap;border-radius:10px;align-items:center;padding:2px 7px;font-size:11px;font-weight:500;display:inline-flex}.risk-empty{text-align:center;color:var(--typo-label-color);flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.risk-empty-title{color:var(--text-color);font-size:15px;font-weight:600}.risk-empty-sub{max-width:380px;font-size:13px}.compliance-feature-callouts{flex-direction:column;gap:8px;margin-top:12px;display:flex}.compliance-feature-callout{border-radius:var(--radius);border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer;text-align:left;align-items:center;gap:10px;padding:10px 14px;transition:background .15s;display:flex}.compliance-feature-callout:hover{background:var(--hover-bg,#00000008)}.compliance-feature-callout-icon{color:var(--primary);flex-shrink:0}.compliance-feature-callout-body{flex:1;min-width:0}.compliance-feature-callout-label{color:var(--text-color);font-size:12px;font-weight:700}.compliance-feature-callout-desc{color:var(--typo-label-color);margin-top:1px;font-size:11px}.spin{animation:.8s linear infinite spin}.baa-doc-row{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.baa-doc-row:last-child{border-bottom:none}.baa-doc-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.baa-doc-vendor{color:var(--text-color);font-size:14px;font-weight:600}.baa-doc-filename{color:var(--typo-label-color);word-break:break-all;font-size:12px}.baa-doc-meta{color:var(--typo-label-color);font-size:12px}.baa-doc-actions{flex-shrink:0;gap:6px;display:flex}.baa-doc-status{text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius);padding:2px 7px;font-size:10px;font-weight:700;display:inline-block}.baa-doc-status--active{color:#16a34a;background:#dcfce7}.baa-doc-status--expired{color:#b45309;background:#fef3c7}.baa-doc-status--terminated{color:#dc2626;background:#fee2e2}.dark-mode .baa-doc-status--active{color:#4ade80;background:#4ade8026}.dark-mode .baa-doc-status--expired{color:#fbbf24;background:#fbbf2426}.dark-mode .baa-doc-status--terminated{color:#f87171;background:#f8717126}.ctrl-policy-row{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.ctrl-policy-status{flex-shrink:0;margin-top:1px}.ctrl-policy-ok{color:#16a34a}.ctrl-policy-missing{color:#dc2626}.dark-mode .ctrl-policy-ok{color:#4ade80}.dark-mode .ctrl-policy-missing{color:#f87171}.ctrl-policy-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ctrl-policy-title{color:var(--text-color);font-size:13px;font-weight:600}.ctrl-policy-desc{color:var(--typo-label-color);font-size:12px}.ctrl-policy-meta{color:var(--typo-label-color);font-size:11px}.ctrl-policy-actions{flex-shrink:0}.policies-page{padding:16px 20px}.policies-layout{grid-template-columns:260px 1fr;align-items:start;gap:20px;display:grid}.policies-sidebar{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);padding:12px}.policies-main{min-height:300px}.policies-doc-btn{border-radius:var(--radius);cursor:pointer;text-align:left;width:100%;color:var(--text-color);background:0 0;border:1px solid #0000;flex-direction:column;align-items:flex-start;gap:4px;margin:2px 0;padding:8px 10px;transition:background .12s;display:flex}.policies-doc-btn:hover{background:var(--hover-bg,#0000000a)}.dark-mode .policies-doc-btn:hover{background:#ffffff0f}.policies-doc-btn.active{background:rgba(var(--primary-rgb,99, 102, 241), .1);border-color:var(--primary)}.policies-doc-btn-title{font-size:13px;font-weight:500}.policies-doc-btn-meta{align-items:center;gap:6px;display:flex}.policies-doc-btn-version{color:var(--typo-label-color);font-size:11px}.policies-new-btn{justify-content:center;width:100%;margin-top:10px}.policy-badge{letter-spacing:.03em;border-radius:10px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.policy-badge-draft{color:var(--typo-label-color);background:#94a3b833}.policy-badge-active{color:#16a34a;background:#22c55e26}.dark-mode .policy-badge-active{color:#4ade80}.policy-badge-archived{color:var(--typo-label-color);opacity:.7;background:#64748b26}.policies-empty-state{min-height:240px;color:var(--typo-label-color);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.policy-doc-header{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);margin-bottom:16px;padding:16px}.policy-doc-title-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.policy-doc-title{color:var(--text-color);margin:0;font-size:18px;font-weight:700}.policy-doc-version{color:var(--typo-label-color);background:#94a3b826;border-radius:10px;padding:2px 8px;font-size:12px}.policy-doc-meta{color:var(--typo-label-color);flex-wrap:wrap;gap:16px;margin-bottom:12px;font-size:12px;display:flex}.policy-doc-actions{flex-wrap:wrap}.policy-unresolved-banner{border-radius:var(--radius);color:#b45309;background:#f59e0b1a;border:1px solid #f59e0b4d;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;font-size:13px;display:flex}.dark-mode .policy-unresolved-banner{color:#fbbf24}.policy-doc-layout.with-chat{grid-template-columns:1fr 320px;align-items:start;gap:16px;display:grid}.policy-chat-col{position:sticky;top:16px}.policy-sections-empty{text-align:center;color:var(--typo-label-color);border:1px dashed var(--border-color);border-radius:var(--radius);margin-bottom:12px;padding:32px;font-size:13px}.policy-section-card{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);margin-bottom:12px;overflow:hidden}.policy-section-card-header{border-bottom:1px solid var(--border-color);background:var(--hover-bg,#00000005);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.dark-mode .policy-section-card-header{background:#ffffff05}.policy-section-heading{color:var(--text-color);margin:0;font-size:15px;font-weight:600}.policy-section-heading-input{flex:1;font-size:15px;font-weight:600}.policy-section-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.policy-section-body{padding:14px}.policy-rendered-content{color:var(--text-color);font-size:14px;line-height:1.6}.policy-rendered-content p{margin:0 0 8px}.policy-rendered-content p:last-child{margin-bottom:0}.policy-rendered-content h1,.policy-rendered-content h2,.policy-rendered-content h3{color:var(--text-color);margin:16px 0 8px}.policy-rendered-content ul,.policy-rendered-content ol{margin:0 0 8px;padding-left:20px}.policy-rendered-content blockquote{border-left:3px solid var(--border-color);color:var(--typo-label-color);margin:8px 0;padding-left:12px}.policy-add-section{margin-top:8px}.policy-add-section-form{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);padding:12px}.policy-add-section-btn{justify-content:center;width:100%}.policy-section-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.policy-section-title{color:var(--text-color);font-size:16px;font-weight:700}.policy-section-subtitle{color:var(--typo-label-color);margin-top:4px;font-size:13px}.policy-var-help{color:var(--typo-label-color);opacity:.85;margin-top:4px;font-size:11px;line-height:1.45}.policy-chat-panel{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);flex-direction:column;max-height:70vh;display:flex}.policy-chat-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.policy-chat-title{font-size:13px;font-weight:600}.policy-chat-messages{flex-direction:column;flex:1;gap:10px;min-height:120px;padding:12px;display:flex;overflow-y:auto}.policy-chat-loading,.policy-chat-empty{color:var(--typo-label-color);text-align:center;padding:16px;font-size:12px}.policy-chat-msg{border-radius:var(--radius);padding:8px 12px;font-size:13px}.policy-chat-msg-user{background:rgba(var(--primary-rgb,99, 102, 241), .1);align-self:flex-end;max-width:85%}.policy-chat-msg-assistant{background:var(--hover-bg,#0000000a);align-self:flex-start;max-width:95%}.dark-mode .policy-chat-msg-assistant{background:#ffffff0f}.policy-chat-msg-content{white-space:pre-wrap;line-height:1.5}.policy-chat-msg-time{color:var(--typo-label-color);margin-top:4px;font-size:10px}.policy-chat-thinking{opacity:.6;font-style:italic}.policy-chat-input-row{border-top:1px solid var(--border-color);align-items:flex-end;gap:8px;padding:10px;display:flex}.policy-chat-input{resize:none;flex:1}.policy-chat-send{flex-shrink:0}.policy-search-panel{margin-bottom:12px}.policy-search-input-wrap{position:relative}.policy-search-icon{color:var(--typo-label-color);position:absolute;top:50%;left:10px;transform:translateY(-50%)}.policy-search-input{padding-left:30px!important}.policy-search-results{border:1px solid var(--border-color);border-radius:var(--radius);margin-top:4px;overflow:hidden}.policy-search-loading,.policy-search-empty{color:var(--typo-label-color);padding:10px 12px;font-size:12px}.policy-search-result{text-align:left;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;width:100%;color:var(--text-color);background:0 0;padding:8px 12px;display:block}.policy-search-result:last-child{border-bottom:none}.policy-search-result:hover{background:var(--hover-bg,#0000000a)}.dark-mode .policy-search-result:hover{background:#ffffff0f}.policy-search-result-doc{color:var(--typo-label-color);margin-bottom:2px;font-size:11px}.policy-search-result-heading{margin-bottom:2px;font-size:12px;font-weight:600}.policy-search-result-snippet{color:var(--typo-label-color);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.policy-import-upload-area{text-align:center;padding:24px}.policy-import-hint{color:var(--typo-label-color);margin-top:12px;font-size:12px}.policy-import-replace-warn{color:#dc2626;margin-left:8px;font-size:12px}.dark-mode .policy-import-replace-warn{color:#f87171}.policy-import-preview{border:1px solid var(--border-color);border-radius:var(--radius);overflow:hidden}.policy-import-preview-count{color:var(--typo-label-color);border-bottom:1px solid var(--border-color);padding:8px 12px;font-size:12px}.policy-import-preview-item{border-bottom:1px solid var(--border-color);padding:8px 12px}.policy-import-preview-item:last-child{border-bottom:none}.policy-import-preview-heading{margin-bottom:3px;font-size:13px;font-weight:600}.policy-import-preview-text{color:var(--typo-label-color);font-size:12px}.policy-import-preview-more{color:var(--typo-label-color);padding:8px 12px;font-size:12px;font-style:italic}.policy-import-truncation-warn{border-radius:var(--radius);color:#92400e;background:#fef3c7;border:1px solid #f59e0b;margin-bottom:12px;padding:8px 12px;font-size:12px}.dark-mode .policy-import-truncation-warn{color:#fcd34d;background:#f59e0b26;border-color:#b45309}.policy-import-fallback-note{background:var(--hover-bg,#0000000a);border:1px solid var(--border-color);border-radius:var(--radius);color:var(--typo-label-color);margin-bottom:12px;padding:8px 12px;font-size:12px}.policy-import-ai-badge{color:var(--primary);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:3px;margin-left:8px;font-size:10px;font-weight:600;display:inline-flex}.policies-page{position:relative}.policies-drop-overlay{background:rgba(var(--primary-rgb,99, 102, 241), .12);border:3px dashed var(--primary);z-index:100;color:var(--primary);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:18px;font-weight:700;display:flex;position:fixed;inset:0}.policies-drag-over{outline:none}.policy-chat-msg-footer{align-items:center;gap:8px;margin-top:4px;display:flex}.policy-chat-compliance-badge{background:rgba(var(--primary-rgb,99, 102, 241), .12);color:var(--primary);border-radius:10px;padding:1px 7px;font-size:10px;font-weight:600}.policy-chat-compliance-toggle{border-top:1px solid var(--border-color);background:var(--card-bg);padding:6px 10px}.policy-search-group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--typo-label-color);background:var(--hover-bg,#00000008);border-bottom:1px solid var(--border-color);align-items:center;gap:5px;padding:5px 12px 3px;font-size:10px;font-weight:700;display:flex}.policy-search-result-compliance{border-left:3px solid var(--primary)}.policy-search-result-snippet b{color:var(--text-color);font-weight:700}.ai-batch-list{flex-direction:column;gap:8px;display:flex}.ai-batch-item{border:1px solid var(--border-color);border-radius:var(--radius);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.ai-batch-item-analyzing{border-left:3px solid var(--primary)}.ai-batch-item-ready{border-left:3px solid #22c55e}.ai-batch-item-done{opacity:.8;border-left:3px solid #22c55e}.ai-batch-item-failed{border-left:3px solid #ef4444}.ai-batch-item-committing{border-left:3px solid var(--primary);opacity:.8}.ai-batch-item-header{align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex}.ai-batch-item-filename{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ai-batch-status-icon{flex-shrink:0}.ai-batch-queued{color:var(--typo-label-color);font-size:16px;line-height:1}.ai-batch-ready{color:#22c55e;font-size:16px;line-height:1}.ai-batch-done{color:#22c55e}.ai-batch-failed{color:#ef4444}.dark-mode .ai-batch-done{color:#4ade80}.dark-mode .ai-batch-failed{color:#f87171}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-batch-spin{color:var(--primary);animation:1s linear infinite ai-spin}.ai-batch-item-fields{gap:8px;display:flex}.ai-batch-item-sections{color:var(--typo-label-color);font-size:11px}.ai-batch-item-first-section{font-style:italic}.ai-batch-item-more{opacity:.7}.ai-batch-item-error{color:#ef4444;font-size:11px}.dark-mode .ai-batch-item-error{color:#f87171}.ai-batch-truncated-badge{color:#b45309;background:#f59e0b1f;border-radius:10px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-flex}.dark-mode .ai-batch-truncated-badge{color:#fcd34d}.ai-batch-summary{border-radius:var(--radius);color:#15803d;text-align:center;background:#22c55e1a;margin-top:12px;padding:8px 12px;font-size:12px}.dark-mode .ai-batch-summary{color:#4ade80;background:#22c55e14}.ai-batch-row{border-radius:var(--radius);background:var(--card-bg);border:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;padding:6px 8px;font-size:13px;display:flex}.ai-batch-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-color);flex:1;overflow:hidden}.ai-batch-status{white-space:nowrap;flex-shrink:0;font-size:12px}.ai-batch-status--pending{opacity:.45}.ai-batch-status--running{color:var(--primary);font-style:italic}.ai-batch-status--done{color:var(--success,#16a34a);font-weight:600}.ai-batch-status--skipped{opacity:.6}.ai-batch-status--error{color:var(--danger,#dc2626)}.policy-beautify-preset-desc{color:var(--text-color);opacity:.75;margin:2px 0 6px;font-size:12px}.policy-loading{text-align:center;color:var(--typo-label-color);padding:24px;font-size:13px}.incident-status-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:var(--radius);padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.incident-status-badge.incident-status-draft{color:#374151;background:#f3f4f6}.incident-status-badge.incident-status-submitted{color:#1e40af;background:#dbeafe}.incident-status-badge.incident-status-under-investigation{color:#854d0e;background:#fef9c3}.incident-status-badge.incident-status-resolved{color:#166534;background:#dcfce7}.incident-status-badge.incident-status-closed{color:#64748b;background:#f1f5f9}.dark-mode .incident-status-badge.incident-status-draft{color:#d1d5db;background:#f3f4f61a}.dark-mode .incident-status-badge.incident-status-submitted{color:#93c5fd;background:#dbeafe26}.dark-mode .incident-status-badge.incident-status-under-investigation{color:#fde047;background:#fef9c31a}.dark-mode .incident-status-badge.incident-status-resolved{color:#86efac;background:#dcfce726}.dark-mode .incident-status-badge.incident-status-closed{color:#94a3b8;background:#f1f5f91a}.form-warning-banner{color:#92400e;border-radius:var(--radius);background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #f59e0b;margin-bottom:8px;padding:10px 14px;font-size:13px;line-height:1.5}.dark-mode .form-warning-banner{color:#fde68a;background:#fbbf241a;border-color:#fbbf2466}.incident-timeline-transition{border-left:3px solid var(--primary);background:var(--card-bg);border-radius:var(--radius);margin-bottom:10px;padding:8px 12px}.incident-timeline-transition-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.incident-timeline-arrow{color:var(--typo-label-color);font-size:13px}.incident-timeline-meta{color:var(--typo-label-color);margin-left:auto;font-size:12px}.incident-timeline-note-text{color:var(--text-color);margin-top:4px;font-size:13px}.incident-timeline-note-row{border-left:3px solid var(--border-color);border-radius:var(--radius);margin-bottom:8px;padding:8px 12px}@media (pointer:coarse){.phone-call-btn{display:inline-flex!important}}@media print{.phone-call-btn{display:none!important}}.util-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:16px;display:grid}.util-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius);flex-direction:column;padding:14px;display:flex}.util-card-label{text-transform:uppercase;letter-spacing:.04em;color:var(--typo-label-color);margin-bottom:4px;font-size:11px}.util-card-value{color:var(--text-color);font-size:22px;font-weight:700}.util-card-title{color:var(--text-color);font-size:13px;font-weight:700}.util-card-subtitle{color:var(--typo-label-color);margin-top:2px;font-size:11px}.util-card-meta{color:var(--typo-label-color);margin:6px 0;font-size:11px}.util-code-card{cursor:default}.util-code-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:6px;display:flex}.util-weeks-badge{color:var(--typo-label-color);white-space:nowrap;align-items:center;gap:2px;font-size:10px;display:flex}.util-code-bar-section{margin-top:auto;padding-top:8px}.util-bar-pct{color:var(--text-color);text-align:right;margin-bottom:3px;font-size:11px;font-weight:700}.util-bar-labels{color:var(--typo-label-color);justify-content:space-between;margin-bottom:3px;font-size:10px;display:flex}.util-bar-foot{justify-content:space-between;margin-top:5px;display:flex}.util-bar-foot-num{color:var(--text-color);font-size:12px;font-weight:600}.util-bar-foot-unit,.util-bar-foot-label{color:var(--typo-label-color);font-size:10px}.util-bar-foot-right{text-align:right}.util-service-row{border-bottom:1px solid var(--border-color);color:var(--text-color);justify-content:space-between;padding:3px 0;font-size:11px;display:flex}.util-service-row:last-child{border-bottom:none}.emp-dropdown-menu{z-index:200;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius);min-width:220px;max-height:280px;padding:4px 0;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 4px 12px #0000001f}.emp-dropdown-item{cursor:pointer;color:var(--text-color);align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:flex}.emp-dropdown-item:hover{background:var(--border-color)}.emp-dropdown-divider{border-top:1px solid var(--border-color);margin:4px 0}.util-code-card--clickable{cursor:pointer}.util-code-card{transition:opacity .18s,filter .18s,box-shadow .18s,border-color .18s}.util-code-card--selected{box-shadow:0 0 0 2px var(--primary), 0 3px 10px #00000024;border-color:var(--primary)!important}.util-code-card--dim{opacity:.38;filter:saturate(.3)}.util-code-detail-panel{border:1.5px solid var(--primary);border-radius:var(--radius);margin-top:18px;overflow:hidden}.util-code-detail-header{background:var(--primary);color:#fff;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.util-code-detail-title{font-size:15px;font-weight:700}.util-code-detail-subtitle{opacity:.8;font-size:12px}.util-detail-case-list{padding:0}.util-detail-case-row{border-bottom:1px solid var(--border-color);grid-template-columns:1fr minmax(180px,260px);align-items:center;gap:16px;padding:12px 16px;display:grid}.util-detail-case-row:last-child{border-bottom:none}.util-detail-case-info{flex-direction:column;display:flex}.util-detail-case-name{color:var(--primary);font-size:13px;font-weight:600;text-decoration:none}.util-detail-case-name:hover{text-decoration:underline}.util-detail-people{flex-wrap:wrap;gap:5px;margin-top:5px;display:flex}.util-detail-pill{white-space:nowrap;color:var(--text-color);background:var(--border-color);border-radius:999px;padding:2px 8px;font-size:10px}.util-detail-pill--lead{background:color-mix(in srgb, var(--primary) 15%, transparent)}.util-detail-pill--support{background:#3b82f61f}.util-detail-pill--counselor{background:#10b9811f}.pct-bar-track{background:var(--border-color);border-radius:999px;height:6px;overflow:hidden}.pct-bar-fill{background:hsl(var(--bar-hue,60deg), 70%, 45%);border-radius:999px;height:100%;transition:width .3s}.util-detail-case-bar{flex-direction:column;gap:4px;display:flex}.util-detail-bar-meta{color:var(--text-color);opacity:.8;justify-content:space-between;font-size:11px;display:flex}.util-detail-bar-foot{color:var(--text-color);opacity:.6;justify-content:space-between;margin-top:2px;font-size:10px;display:flex}.auths-tab-stack>*+*{border-top:1px solid var(--border-color);margin-top:32px;padding-top:32px}.msc-wrap{width:100%;display:inline-block;position:relative}.msc-trigger{cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:6px;width:100%;display:flex}.msc-trigger:disabled{cursor:not-allowed}.msc-placeholder{color:#9ca3af;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.msc-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.msc-chevron,.msc-clear{color:#6b7280;flex-shrink:0}.msc-clear{cursor:pointer}.msc-dropdown{z-index:9999;background:var(--card-bg,#fff);border:1px solid var(--border-color,#d1d5db);border-radius:var(--radius,6px);flex-direction:column;width:100%;min-width:240px;max-height:280px;display:flex;position:absolute;top:calc(100% + 2px);left:0;box-shadow:0 4px 16px #0000001f}.msc-search-row{border-bottom:1px solid var(--border-color,#f3f4f6);flex-shrink:0;padding:8px 8px 4px}.msc-search{width:100%}.msc-list{flex:1;overflow-y:auto}.msc-row{cursor:pointer;color:var(--text-color,#111827);align-items:center;gap:8px;padding:7px 10px;font-size:13px;transition:background .1s;display:flex}.msc-row:hover{background:color-mix(in srgb, var(--primary) 6%, transparent)}.msc-row.checked{background:color-mix(in srgb, var(--primary) 10%, transparent);color:var(--primary);font-weight:500}.msc-checkbox{cursor:pointer;flex-shrink:0}.msc-code-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.msc-code-sub{opacity:.55;font-size:11px}.msc-empty{color:#9ca3af;padding:12px 10px;font-size:12px;font-style:italic}.msc-footer{color:#9ca3af;border-top:1px solid var(--border-color,#f3f4f6);flex-shrink:0;padding:6px 10px;font-size:11px}.cas-summary-title{color:var(--primary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:11px;font-weight:700}.cas-loading-cell,.cas-empty-cell{color:var(--muted-text);padding:8px 0;font-size:12px;font-style:italic}.cas-table{border-collapse:collapse;table-layout:auto;width:auto;font-size:11px}.cas-table th{text-align:left;white-space:nowrap;color:#111827;background:#e5e7eb;border-bottom:2px solid #9ca3af;padding:3px 10px;font-size:10px;font-weight:700}.dark-mode .cas-table th{color:#f3f4f6;background:#ffffff1f;border-bottom-color:#ffffff40}.cas-table th:nth-child(4),.cas-table th:nth-child(5),.cas-table th:nth-child(6),.cas-table th:nth-child(7){text-align:right;white-space:nowrap;min-width:48px;max-width:72px}.cas-table td{border-bottom:1px solid var(--border-color);white-space:nowrap;color:#111827;padding:3px 10px}.dark-mode .cas-table td{color:#e8eaf0}.cas-table tbody tr:hover td{background:var(--hover-bg)}.cas-table td:first-child{min-width:60px;font-weight:600}.cas-table td:nth-child(2){white-space:normal;min-width:100px}.cas-table td:nth-child(4),.cas-table td:nth-child(5),.cas-table td:nth-child(6),.cas-table td:nth-child(7){text-align:right;font-variant-numeric:tabular-nums}.cas-totals-row td{border-top:2px solid var(--border-color);color:#111827;background:#e5e7eb;font-weight:700}.dark-mode .cas-totals-row td{color:#f3f4f6;background:#ffffff1a}.role-badge{letter-spacing:.03em;border-radius:8px;padding:1px 6px;font-size:9px;font-weight:700;display:inline-block}.role-badge--lead{color:#1e3a8a;background:#bfdbfe}.role-badge--support{color:#14532d;background:#bbf7d0}.role-badge--unassigned{color:#374151;background:#e5e7eb}.dark-mode .role-badge--lead{color:#93c5fd;background:#3b82f64d}.dark-mode .role-badge--support{color:#86efac;background:#22c55e4d}.dark-mode .role-badge--unassigned{color:#d1d5db;background:#ffffff26}.cas-header-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.cas-header-title{color:var(--text-color);white-space:nowrap;font-size:12px;font-weight:700}.cas-header-controls{align-items:center;gap:8px;display:flex}.cas-status-role-cell{flex-direction:column;align-items:flex-start;gap:3px;display:flex;padding-top:4px!important;padding-bottom:4px!important}.cas-status-badge{background:var(--hover-bg);color:var(--muted-text);white-space:nowrap;border-radius:4px;padding:1px 6px;font-size:9px;font-weight:600;display:inline-block}.cas-target-cell{vertical-align:top;min-width:160px;white-space:normal!important;text-align:left!important;padding-top:4px!important;padding-bottom:4px!important}.cas-target-list{margin:0;padding:0 0 0 14px;list-style:outside}.cas-target-list li{font-size:10px;line-height:1.5}.cas-target-label{color:#111827}.dark-mode .cas-target-label{color:#e8eaf0}.cas-target-hrs{color:var(--primary);margin-left:5px;font-weight:700}.cas-no-target{color:var(--muted-text)}.cas-notes-col,.cas-notes-cell{display:none}.cas-footnote{color:var(--muted-text);margin-top:4px;font-size:10px}@media print{body.printing-cas *{visibility:hidden}body.printing-cas .cas-print-target,body.printing-cas .cas-print-target *{visibility:visible}body.printing-cas .cas-print-target{background:#fff;width:100%;padding:20px;position:fixed;top:0;left:0}body.printing-cas .cas-print-hide{display:none!important}.cas-header-title{margin-bottom:6px;font-size:13px;font-weight:700;display:block;color:#111827!important}.cas-table{border-collapse:collapse;width:100%}.cas-table th{color:#111827!important;background:#e5e7eb!important;border:1px solid #9ca3af!important}.cas-table td{color:#111827!important;background:#fff!important;border:1px solid #aaa!important}.cas-totals-row td{color:#111827!important;background:#e5e7eb!important}.cas-target-label{color:#111827!important}.cas-target-hrs{color:#1d4ed8!important}body.printing-cas .cas-notes-col,body.printing-cas .cas-notes-cell{width:100%;min-width:220px;min-height:40px;display:table-cell!important}body.printing-cas .cas-status-col,body.printing-cas .cas-status-role-cell{display:none!important}body.printing-cas .cas-status-badge,body.printing-cas .role-badge{font-size:inherit!important;color:#111827!important;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important;font-weight:600!important}}
