:root{--primary:#8a1c2b;--primary-dark:#601320;--primary-light:#fbe9ea;--gold:#f4d35e;--topbar-bg:#bfe9fb;--topbar-bg-soft:#e8f7fd;--text:#1c2430;--text-muted:#64748b;--bg:#f5f6fa;--surface:#fff;--border:#eef0f5;--danger:#b91c1c;--danger-bg:#fef2f2;--success:#15803d;--success-bg:#f0fdf4;--info-bg:#eef2ff;--radius:16px;--card-shadow:0 2px 10px #0f172a0f;--accent-green:#22c55e;--accent-blue:#3b82f6;--accent-orange:#f97316;--accent-purple:#8b5cf6;--accent-teal:#14b8a6;--sans:"Segoe UI", system-ui, Roboto, Arial, sans-serif;--sidebar-w:196px;--topbar-h:64px;--bottom-nav-h:60px}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{color:var(--text);margin:0 0 4px}h1{font-size:1.5rem;font-weight:700}h2{font-size:1.1rem;font-weight:700}p{margin:0}a{color:var(--primary)}.muted{color:var(--text-muted)}.small{font-size:.85em}button{font-family:inherit}.app-shell{flex-direction:column;min-height:100svh;display:flex}.topbar{height:var(--topbar-h);background:var(--topbar-bg);color:var(--text);z-index:20;border-bottom:1px solid #0000000f;flex-shrink:0;align-items:center;gap:12px;padding:0 12px;display:flex;position:sticky;top:0}.topbar .btn--ghost{border-color:#00000038}.topbar-title{flex-direction:column;justify-content:center;gap:1px;min-width:0;line-height:1.2;display:flex}.topbar-title-main{letter-spacing:.2px;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:800;overflow:hidden}.topbar-title-sub{opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:500;overflow:hidden}@media (width>=480px){.topbar-title-main{font-size:1.05rem}.topbar-title-sub{font-size:.78rem}}.topbar-emblem{flex-shrink:0;display:none}.topbar-emblem img{width:auto;height:30px;display:block}.topbar-date{color:var(--text-muted);white-space:nowrap;font-size:.82rem;display:none}.topbar-wing-switch{flex-shrink:0;align-items:center;gap:4px;display:flex}.topbar-wing-switch-label{color:var(--text-muted);white-space:nowrap;font-size:.68rem}.topbar-wing-switch select{background:var(--surface,#fff);color:var(--text);border:1px solid #00000038;border-radius:6px;padding:3px 6px;font-size:.78rem;font-weight:600}.topbar-user{text-align:right;flex-shrink:1;min-width:0;max-width:62vw;margin-left:auto;line-height:1.2;display:block}.topbar-user-name{white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:600;overflow:hidden}.topbar-user-role{opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:.62rem;overflow:hidden}.hamburger{color:var(--text);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1.3rem;display:inline-flex}.btn.topbar-signout{display:none}.app-body{flex:1;min-height:0;display:flex}.sidebar{display:none}.sidebar-link{color:var(--text);background:var(--surface);border-radius:16px;align-items:center;font-weight:600;text-decoration:none;display:flex;position:relative}.sidebar-icon-badge{background:var(--badge-bg,var(--primary-light));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-icon-badge .sidebar-icon{line-height:1}.sidebar-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sidebar-chevron{color:#c7cdd6;flex-shrink:0}.sidebar-link--active{background:var(--badge-bg,var(--primary-light));background:linear-gradient(90deg, color-mix(in srgb, var(--badge-fg,var(--primary)) 22%, white) 0%, transparent 100%);color:var(--text)}.sidebar-link--active:before{content:"";background:var(--badge-fg,var(--primary));border-radius:0 4px 4px 0;width:4px;position:absolute;top:8px;bottom:8px;left:0}.sidebar-link--active .sidebar-icon-badge{background:var(--badge-fg,var(--primary));box-shadow:0 2px 6px #00000026}.content{min-width:0;padding:16px 16px calc(var(--bottom-nav-h) + 24px);flex:1}.bottom-nav{height:var(--bottom-nav-h);background:var(--surface);border-top:1px solid var(--border);z-index:20;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-x:auto}.bottom-nav-link{color:var(--text-muted);flex-direction:column;flex:1 0 64px;justify-content:center;align-items:center;gap:2px;padding:6px 4px;font-size:.65rem;text-decoration:none;display:flex}.bottom-nav-link span:first-child{font-size:1.15rem}.bottom-nav-link--active{color:var(--primary);font-weight:700}.bottom-nav-label{white-space:nowrap;text-overflow:ellipsis;max-width:72px;overflow:hidden}.bottom-nav-signout{border:none;border-left:1px solid var(--border);cursor:pointer;color:var(--danger);background:0 0;font-family:inherit}.bottom-nav-signout:disabled{opacity:.6;cursor:default}@media (width>=480px){.topbar-emblem{display:inline-flex}}@media (width>=900px){.hamburger{display:none}.topbar-date{margin-left:auto;display:block}.topbar-user{max-width:none;margin-left:16px}.topbar-user-name{font-size:.9rem}.topbar-user-role{font-size:.75rem}.btn.topbar-signout{display:inline-flex}.bottom-nav{display:none}.content{padding:24px 32px}.sidebar{width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--border);top:var(--topbar-h);height:calc(100svh - var(--topbar-h));flex-direction:column;flex-shrink:0;gap:5px;padding:10px 6px;display:flex;position:sticky;overflow-y:auto}.sidebar-link{gap:9px;padding:6px 8px;font-size:.8rem;font-weight:500}.sidebar-link:hover{background:var(--primary-light)}.sidebar-icon-badge{width:28px;height:28px;font-size:.85rem}.sidebar-chevron{display:none}}.sidebar-badge{color:var(--danger);white-space:nowrap;margin-right:2px;font-size:.72rem;font-weight:700}.sidebar-link--highlight .sidebar-label{color:var(--success)}@media (width<=899px){.sidebar--open{top:var(--topbar-h);background:var(--bg);width:88vw;max-width:380px;padding:14px 12px calc(var(--bottom-nav-h) + 14px);z-index:30;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:0;left:0;overflow-y:auto;box-shadow:2px 0 16px #0000002e}.sidebar--open .sidebar-link{gap:14px;padding:14px 16px;font-size:1rem;box-shadow:0 1px 3px #0f172a14,0 1px 2px #0f172a0d}.sidebar--open .sidebar-link:active{transform:scale(.98)}.sidebar--open .sidebar-icon-badge{width:46px;height:46px;font-size:1.3rem}.sidebar--open .sidebar-chevron{font-size:1.3rem}}.page-loading{height:100svh;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.page{max-width:1000px}.page--narrow{max-width:620px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.page-subtitle{color:var(--text-muted);margin-top:2px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;box-shadow:var(--card-shadow);margin-bottom:16px;padding:16px}.card-header-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.empty-state{text-align:center;color:var(--text-muted);padding:32px 16px}.dashboard-card-title-link{color:inherit;text-decoration:none}.dashboard-card-title-link:hover{text-decoration:underline}.two-col{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=800px){.two-col{grid-template-columns:1fr 1fr}}.detail-grid{grid-template-columns:1fr;gap:10px;display:grid}@media (width>=640px){.detail-grid{grid-template-columns:1fr 1fr}}.detail-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:2px;font-size:.72rem;display:block}.progress-track{background:var(--bg);border-radius:999px;height:8px;margin:4px 0 2px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent-blue), var(--accent-teal));border-radius:999px;height:100%}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);padding:16px}.stat-card--link{color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:block}.stat-card--link:hover{border-color:var(--primary);box-shadow:0 2px 8px #0000000f}.stat-value{color:var(--primary-dark);font-size:1.8rem;font-weight:800}.stat-label{margin-top:2px;font-weight:600}.stat-sub{color:var(--text-muted);margin-top:2px;font-size:.85rem}.pipeline{gap:12px;padding-bottom:4px;display:flex;overflow-x:auto}.pipeline-stage{background:var(--bg);border-radius:var(--radius);flex-direction:column;flex:none;align-items:center;gap:6px;min-width:90px;padding:10px 14px;display:flex}.pipeline-count{font-size:1.2rem;font-weight:700}.simple-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.simple-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.simple-list li:last-child{border-bottom:none}.simple-list li.doc-list-item{flex-wrap:wrap;align-items:flex-start}.doc-list-info{flex:240px;min-width:0}.doc-filename{overflow-wrap:anywhere;word-break:break-word}.doc-list-actions{flex-shrink:0;gap:8px;display:flex}.worktest-summary{align-items:baseline;gap:10px;display:flex}.worktest-summary-material{white-space:normal}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overflow-x:auto}.works-table-wrap{max-height:min(68vh,620px);overflow-y:auto}.works-table-wrap thead th{z-index:1;position:sticky;top:0}.table{border-collapse:collapse;width:100%;font-size:.95rem}.table th,.table td{text-align:left;white-space:nowrap;padding:12px 16px;line-height:1.4}.table thead th{color:var(--text-muted);text-transform:none;border-bottom:1px solid var(--border);background:#fafbfd;font-family:Verdana,Geneva,sans-serif;font-size:.78rem;font-weight:700}.table tbody tr{border-bottom:1px solid var(--border)}.table tbody tr:last-child{border-bottom:none}.table tbody tr:nth-child(2n){background:#fbfcfe}.table tbody tr:hover{background:var(--primary-light)}.table .sticky-col{background:var(--surface);z-index:2;position:sticky;right:0;box-shadow:-6px 0 8px -6px #00000026}.table thead .sticky-col{z-index:3;background:#fafbfd}.table tbody tr:nth-child(2n) .sticky-col{background:#fbfcfe}.table tbody tr:hover .sticky-col{background:var(--primary-light)}.table .name-col-frozen{z-index:2;background:var(--surface);border-right:2px solid var(--border);position:sticky;left:0;transform:translateZ(0);box-shadow:6px 0 8px -6px #00000026}.table thead .name-col-frozen{z-index:3;background:#fafbfd}.table tbody tr:nth-child(2n) .name-col-frozen{background:#fbfcfe}.table tbody tr:hover .name-col-frozen{background:var(--primary-light)}.diary-table .diary-work-col{white-space:normal;word-break:break-word}.progress-report-table-wrap{scrollbar-width:auto;scrollbar-color:var(--primary) var(--bg);max-height:min(68vh,620px);overflow-y:auto}.progress-report-table-wrap::-webkit-scrollbar{width:12px;height:12px}.progress-report-table-wrap::-webkit-scrollbar-track{background:var(--bg)}.progress-report-table-wrap::-webkit-scrollbar-thumb{background:var(--primary);border:2px solid var(--bg);border-radius:6px}.progress-report-table-wrap::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}.progress-report-floating-scrollbar{z-index:15;background:var(--bg);border-top:1px solid var(--border);scrollbar-width:auto;scrollbar-color:var(--primary) var(--bg);height:16px;position:fixed;bottom:0;overflow:auto hidden;box-shadow:0 -2px 6px #00000014}.progress-report-floating-scrollbar::-webkit-scrollbar{height:14px}.progress-report-floating-scrollbar::-webkit-scrollbar-track{background:var(--bg)}.progress-report-floating-scrollbar::-webkit-scrollbar-thumb{background:var(--primary);border:2px solid var(--bg);border-radius:6px}.progress-report-floating-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}@media (width<=899px){.progress-report-floating-scrollbar{bottom:var(--bottom-nav-h)}}.progress-report-table-wrap thead th{z-index:1;font-weight:400;position:sticky;top:0}.progress-report-table-wrap .name-col-frozen{white-space:normal;word-break:break-word;width:315px;min-width:315px;max-width:315px}@media (width<=480px){.progress-report-table-wrap .name-col-frozen{width:180px;min-width:180px;max-width:180px}}.progress-report-group{margin-bottom:24px}.progress-report-group:last-child{margin-bottom:0}.progress-report-division-name{margin:0 0 8px;font-size:1rem}.progress-report-atr-pending{color:var(--danger);font-weight:600}.action-col{flex-direction:column;gap:6px;min-width:120px;display:flex}.action-col .btn{width:100%}.works-table{table-layout:fixed}.works-table .col-slno{width:60px}.works-table .col-name{width:260px}.works-table .col-status{width:110px}.works-table .col-org{width:92px}.works-table .col-test,.works-table .col-photo{width:100px}.works-table .col-money{width:130px}.works-table .col-stage{width:170px}.works-table .col-date{width:100px}.works-table .col-progress{width:80px}.works-table thead th{white-space:normal}.table td.work-action-cell{padding-left:8px;padding-right:8px}.table td.work-org-cell,.table th.work-org-cell{white-space:normal;padding-left:8px;padding-right:8px}.table td.work-org-cell{font-size:.76rem;line-height:1.3}.table td.work-stage{white-space:normal;overflow-wrap:break-word;font-size:.85rem;line-height:1.3}.table td.work-editable-cell{cursor:pointer}.table td.work-editable-cell:hover{background:var(--primary-light)}.table td.work-editable-cell--active{cursor:default;padding:6px 8px}.table td.work-editable-cell--active:hover{background:inherit}.table td.work-editable-cell--active input,.table td.work-editable-cell--active select{width:100%;font:inherit;border:1px solid var(--primary);border-radius:4px;padding:4px 6px}@media (width<=480px){.works-table .col-slno{width:26px}.works-table .col-name{width:150px}.works-table .col-status{width:70px}.works-table .col-org{width:58px}.works-table .col-test{width:44px}.works-table .col-photo{width:50px}.works-table .col-money{width:76px}.works-table .col-stage{width:96px}.works-table .col-date{width:62px}.works-table .col-progress{width:46px}.works-table th,.works-table td{padding:8px 4px}.works-table th:first-child,.works-table td:first-child{padding-left:8px}.works-table thead th{white-space:normal;font-size:.68rem;line-height:1.2}.works-table .work-code{font-size:.68rem}.works-table .work-title{font-size:.86rem}.works-table .work-stage,.works-table .work-org-cell{font-size:.7rem}.works-table .badge{white-space:normal;overflow-wrap:anywhere;padding:2px 5px;font-size:.6rem;line-height:1.2}.works-table .work-action-cell .btn--small{white-space:normal;width:100%;padding:5px 2px;font-size:.66rem;line-height:1.15}}.table td.work-name-cell,.table td.work-status-cell{white-space:normal}.work-name-link{color:var(--text);text-decoration:none}.work-name-link:hover{text-decoration:underline}.works-table th.work-slno-cell,.works-table td.work-slno-cell{z-index:2;background:var(--surface,#fff);position:sticky;left:0}.works-table thead th.work-slno-cell{z-index:3;background:#fafbfd}.works-table tbody tr:nth-child(2n) td.work-slno-cell{background:#fbfcfe}.works-table tbody tr:hover td.work-slno-cell{background:var(--primary-light)}.work-link{flex-direction:column;gap:3px;min-width:0;text-decoration:none;display:flex}.work-code{color:var(--text-muted);letter-spacing:.02em;font-family:ui-monospace,Courier New,monospace;font-size:.76rem;font-weight:400}.work-title{color:var(--text);overflow-wrap:anywhere;font-weight:400;line-height:1.4}.work-link:hover .work-title{color:var(--primary);text-decoration:underline}.work-stage{color:var(--text-muted);margin-top:4px;font-size:.82rem;display:block}.badge{text-transform:uppercase;letter-spacing:.03em;background:var(--border);color:var(--text);border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-block}.badge--qc_requested{color:#92400e;background:#fef3c7}.badge--accepted{color:#1e40af;background:#dbeafe}.badge--scheduled{color:#3730a3;background:#e0e7ff}.badge--visited{color:#86198f;background:#fae8ff}.badge--testing{color:#9a3412;background:#ffedd5}.badge--completed,.badge--pass,.badge--active{background:var(--success-bg);color:var(--success)}.badge--fail,.badge--inactive{background:var(--danger-bg);color:var(--danger)}.badge--retest_required{color:#c2410c;background:#fff7ed}.badge--on_hold{color:#92400e;background:#fef3c7}.badge--deleted{background:var(--border);color:var(--text-muted)}.badge--requested{color:#92400e;background:#fef3c7}.badge--generated,.badge--approved{background:var(--success-bg);color:var(--success)}.badge--rejected{background:var(--danger-bg);color:var(--danger)}.badge--qcr{background:var(--danger-bg);color:var(--danger);align-self:flex-start;margin-left:6px;padding:2px 7px;font-size:.62rem}.filter-chip-row{gap:8px;margin-bottom:14px;padding-bottom:4px;display:flex;overflow-x:auto}.filter-chip{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:7px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.filter-chip--active{background:var(--primary);border-color:var(--primary);color:#fff}.filter-chip-count{background:#00000014;border-radius:999px;padding:1px 6px;font-size:.7rem;font-weight:700}.filter-chip--active .filter-chip-count{background:#ffffff40}.budget-gauge-header{justify-content:space-between;align-items:center;gap:8px;margin:0 0 4px;display:flex}.budget-gauge-header h2{margin:0}.hoa-filter-dropdown{flex-shrink:0;position:relative}.hoa-filter-trigger{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.hoa-filter-trigger:hover{border-color:var(--primary);color:var(--primary-dark)}.hoa-filter-trigger--active{background:var(--primary-light);border-color:var(--primary);color:var(--primary-dark)}.hoa-filter-caret{font-size:.65rem}.hoa-filter-menu{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:10px;min-width:190px;max-height:260px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 8px 24px #00000024}.hoa-filter-option{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:7px 8px;font-size:.85rem;display:flex}.hoa-filter-option:hover{background:var(--primary-light)}.hoa-filter-option input{flex-shrink:0;margin:0}.hoa-filter-divider{background:var(--border);height:1px;margin:4px 2px}.qc-card-list{flex-direction:column;gap:10px;display:flex}.qc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);color:inherit;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.qc-card-icon{background:var(--primary-light);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex;overflow:hidden}.qc-card-icon img{object-fit:contain;width:28px;height:28px}.qc-card-icon-fallback{color:var(--primary);font-size:.7rem;font-weight:700}.qc-card-icon--sm{border-radius:9px;width:34px;height:34px}.qc-card-icon--sm img{width:20px;height:20px}.qc-card-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.qc-card-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.qc-card-sub{color:var(--text-muted);font-size:.8rem}.qc-card-work{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.qc-card-status{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:5px;display:flex}.conformance-pill{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-block}.conformance-pill--conformed{color:#15743f;background:#e5f5ec}.conformance-pill--not_conformed{color:#c8262c;background:#fbe7e7}.conformance-pill--pending{color:#c9930b;background:#fdf1d9}.bottom-nav-fab-slot{flex:1 0 64px;justify-content:center;align-items:center;display:flex;position:relative}.bottom-nav-fab{color:#fff;border:3px solid var(--surface);background:#c8262c;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;line-height:1;text-decoration:none;display:flex;position:absolute;bottom:14px;box-shadow:0 4px 12px #c8262c66}.material-cell{align-items:center;gap:8px;display:flex}.material-cell img{object-fit:contain;flex-shrink:0;width:20px;height:20px}.form{flex-direction:column;gap:14px;display:flex}.form--inline{border-top:1px dashed var(--border);margin-top:8px;padding-top:12px}.field{color:var(--text);flex-direction:column;gap:5px;font-size:.88rem;font-weight:600;display:flex}.field input,.field select,.field textarea{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:10px 12px;font-weight:400}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--primary);outline-offset:1px}.form-actions{gap:10px;margin-top:4px;display:flex}.form-row{gap:14px;display:flex}.form-row .field{flex:1;min-width:0}@media (width<=520px){.form-row{flex-direction:column;gap:14px}}.password-row{gap:8px;display:flex}.password-row input{flex:1;font-family:ui-monospace,monospace}.action-row{flex-wrap:wrap;gap:10px;display:flex}.edit-panel{background:var(--primary-light,#00000008);border-radius:8px;flex-direction:column;gap:14px;padding:14px;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-size:.9rem;font-weight:700;text-decoration:none;transition:opacity .15s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--primary{background:var(--primary);color:#fff}.btn--primary:hover:not(:disabled){background:var(--primary-dark)}.btn--secondary{background:var(--primary-light);color:var(--primary-dark)}.btn--danger{background:var(--danger-bg);color:var(--danger)}.btn--danger:hover:not(:disabled){background:var(--danger);color:#fff}.btn--ghost{color:inherit;background:0 0;border-color:#ffffff80}.btn--small{padding:6px 12px;font-size:.8rem}.btn--block{width:100%}.alert{border-radius:8px;padding:10px 14px;font-size:.88rem}.alert--error{background:var(--danger-bg);color:var(--danger)}.toast-stack{bottom:calc(var(--bottom-nav-h) + 16px);z-index:100;flex-direction:column;gap:8px;width:min(92vw,420px);display:flex;position:fixed;left:50%;transform:translate(-50%)}@media (width>=900px){.toast-stack{bottom:20px}}.toast{color:#fff;border-radius:8px;padding:12px 16px;font-size:.88rem;font-weight:600;box-shadow:0 6px 18px #00000026}.toast--error{background:var(--danger)}.toast--success{background:var(--success)}.toast--info{background:var(--primary)}.auth-page{--sky:#0284c7;--darkblue:#1e3a8a;min-height:100svh;padding:20px;padding-bottom:max(32px, env(safe-area-inset-bottom,0px) + 20px);background-position:50% 42%;background-size:cover;justify-content:center;align-items:flex-end;display:flex}.auth-card{-webkit-backdrop-filter:blur(14px);background:#fff6;border:1px solid #ffffff8c;border-radius:16px;width:100%;max-width:400px;padding:28px 24px;box-shadow:0 20px 50px #0000004d}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-form .field{color:var(--darkblue);text-shadow:0 1px 2px #fff9}.auth-form .field input{border:1px solid var(--darkblue);color:var(--darkblue);background:#fff}.auth-form .field input::placeholder{color:#8a9fc9}.auth-form .field input:focus{outline:2px solid var(--darkblue);outline-offset:1px}.auth-form .btn--primary{background:var(--sky)}.auth-form .btn--primary:hover:not(:disabled){background:#026da3}.org-tree{flex-direction:column;gap:14px;display:flex}.org-division-name{margin-bottom:4px;font-weight:700}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.photo-tile{border:1px solid var(--border);background:var(--bg);border-radius:8px;margin:0;overflow:hidden}.photo-tile img{object-fit:cover;width:100%;height:120px;display:block}.photo-tile figcaption{padding:6px 8px;font-size:.78rem}.photo-tile-open{cursor:pointer;background:0 0;border:none;width:100%;padding:0;display:block}.link{font-size:.85rem;font-weight:600}.page-back-link{color:var(--primary);cursor:pointer;background:0 0;border:none;margin-bottom:4px;padding:0;display:inline-block}.page-back-link:hover{text-decoration:underline}.instruction-post{align-items:flex-start;gap:12px;display:flex}.instruction-post-photos{flex:0 0 96px;width:96px}.instruction-post-photos .photo-grid{grid-template-columns:1fr;gap:8px}.instruction-post-photos .photo-tile img{height:96px}.instruction-post-photos .photo-tile figcaption{display:none}.dos-donts-folder-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.dos-donts-folder-tile{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--card-shadow);cursor:pointer;text-align:left;font:inherit;color:inherit;flex-direction:column;align-items:flex-start;gap:4px;padding:10px;display:flex}.dos-donts-folder-tile:hover{border-color:var(--primary)}.dos-donts-folder-tile__cover{background:var(--bg);width:100%;height:90px;color:var(--text-muted);border-radius:6px;justify-content:center;align-items:center;display:flex;overflow:hidden}.dos-donts-folder-tile__cover img{object-fit:cover;width:100%;height:100%;display:block}.dos-donts-folder-tile__title{font-size:.9rem;font-weight:600}.instruction-post-body{flex:auto;min-width:0}.modal-overlay{z-index:100;background:#0f172a99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius);width:100%;max-width:480px;max-height:90vh;padding:20px;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modal-header h2{margin:0}.camera-preview{background:#000;border-radius:8px;margin-bottom:12px;overflow:hidden}.camera-preview video,.camera-preview img{object-fit:contain;width:100%;max-height:60vh;display:block}.camera-fallback{margin-bottom:12px}.gallery-overlay{z-index:200;touch-action:pan-y;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.gallery-header{color:#fff;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.gallery-counter{opacity:.85;font-size:.85rem}.gallery-close{color:#fff;border-color:#ffffff4d}.gallery-stage{flex:1;place-items:center;min-height:0;display:grid;position:relative;overflow:auto}.gallery-image{object-fit:contain;transform-origin:50%;min-width:0;max-width:100%;min-height:0;max-height:100%}.gallery-nav{color:#fff;cursor:pointer;background:#00000059;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery-nav--prev{left:10px}.gallery-nav--next{right:10px}.gallery-tag{padding:10px 16px calc(env(safe-area-inset-bottom,0px) + 12px);color:#fff;background:#0000008c}.gallery-tag-work{color:#9fd7ff;margin-bottom:2px;font-size:.82rem;font-weight:700}.gallery-tag-location{font-size:.9rem;font-weight:700}.gallery-tag-when{opacity:.85;font-size:.78rem}.gallery-tag-caption{opacity:.9;margin-top:2px;font-size:.8rem}.gallery-group-heading{margin:0 0 12px;font-size:1rem}.gallery-group-heading a{color:inherit;text-decoration:none}.gallery-group-heading a:hover{text-decoration:underline}.ppt-slide{color:#1a2233;background:#fff;border-radius:12px;width:min(560px,88vw);margin:24px auto;padding:28px 32px 22px;box-shadow:0 8px 32px #00000073}.ppt-slide-code{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem;font-weight:700}.ppt-slide-title{margin:4px 0 18px;font-size:1.25rem;line-height:1.35}.ppt-slide-facts{grid-template-columns:1fr 1fr;gap:12px 18px;margin:0 0 16px;display:grid}.ppt-slide-facts>div{flex-direction:column;display:flex}.ppt-slide-facts dt{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin:0;font-size:.7rem}.ppt-slide-facts dd{margin:2px 0 0;font-size:.92rem;font-weight:600}.ppt-slide-desc{border-top:1px solid var(--border);white-space:pre-wrap;margin:0 0 14px;padding-top:12px;font-size:.86rem;line-height:1.55}.ppt-slide-photo-count{margin:0;font-size:.8rem}.iscode-toolbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;padding:4px 14px 10px;display:flex}.iscode-toolbar-btn{color:#fff;border-color:#ffffff4d}.iscode-toolbar-divider{background:#fff3;align-self:stretch;width:1px;margin:0 2px}.iscode-zoom-label{color:#fff;text-align:center;min-width:42px;font-size:.85rem}.iscode-page-label{color:#fff;align-items:center;gap:4px;font-size:.85rem;display:flex}.iscode-page-input{text-align:center;color:#fff;width:3em;font:inherit;background:#ffffff1f;border:1px solid #ffffff59;border-radius:4px;padding:2px 4px;font-size:.85rem}.iscode-page-input:focus{background:#ffffff38;border-color:#fff;outline:none}.iscode-page-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.iscode-page-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.iscode-page-input[type=number]{-moz-appearance:textfield}.iscode-stage{flex:1;place-items:center;min-height:0;display:grid;position:relative;overflow:auto}.iscode-canvas{display:block;box-shadow:0 2px 16px #0006}.iscode-stage--scroll{flex-direction:column;align-items:center;gap:18px;padding:8px 0 24px;display:flex}.iscode-canvas--scroll{flex-shrink:0}.go-circular-pdf-header{flex-wrap:wrap;gap:6px 10px;padding:6px 10px}.go-circular-pdf-actions{align-items:center;gap:8px;display:flex}.go-circular-pdf-toolbar{padding:0}.go-circular-tile{--go-tile-hue:var(--primary);border-top:3px solid var(--go-tile-hue);background:color-mix(in srgb, var(--go-tile-hue) 10%, var(--surface));padding:0;position:relative;overflow:hidden}.go-circular-open-btn{font:inherit;text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;padding:10px 12px}.go-circular-open-btn:disabled{cursor:wait;opacity:.6}.go-circular-name{align-items:flex-start;gap:6px;display:flex}.go-circular-icon{flex-shrink:0;line-height:1.35}.go-circular-title{flex:auto;min-width:0;line-height:1.35}.go-circular-rename-btn{background:var(--surface);width:22px;height:22px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.78rem;line-height:1;display:flex;position:absolute;top:4px;right:4px}.go-circular-rename-btn:hover{background:var(--primary-light);color:var(--primary)}.go-circular-rename-input{border:1px solid var(--primary);width:100%;font:inherit;border-radius:6px;padding:4px 6px;font-size:.78rem;font-weight:600}.dropdown{display:inline-block;position:relative}.dropdown-menu{background:var(--surface);border:1px solid var(--border);z-index:40;border-radius:8px;flex-direction:column;min-width:160px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 4px 16px #0000001f}.dropdown-item{text-align:left;cursor:pointer;color:inherit;background:0 0;border:none;border-radius:6px;padding:8px 10px;font-size:.85rem}.dropdown-item:hover{background:var(--primary-light)}.dash-hero{background:linear-gradient(135deg, var(--primary), var(--primary-dark));border-radius:var(--radius);box-shadow:var(--card-shadow);color:#fff;margin-bottom:16px;padding:24px 20px;position:relative;overflow:hidden}.dash-hero-skyline{width:100%;height:100%;position:absolute;inset:0}.dash-hero-content{position:relative}.dash-hero-content h1{color:#fff;margin-bottom:2px}.dash-hero-content p{color:#ffffffd9;font-size:.88rem}.dash-hero-avatar{background:#ffffff38;border:2px solid #fff9;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:.85rem;font-weight:800;display:flex;position:absolute;top:-4px;right:0}.category-row{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px;margin-bottom:16px;display:grid}.category-chip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);flex-direction:column;align-items:center;gap:4px;padding:14px 8px;text-decoration:none;transition:transform .12s,box-shadow .12s;display:flex}.category-chip:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0f172a1a}.category-chip-icon{display:flex}.category-chip-label{color:var(--text);font-size:.72rem;font-weight:700}.category-chip-count{color:var(--text-muted);font-size:.7rem}.donut-row{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.donut-legend{flex-direction:column;flex:1;gap:8px;min-width:140px;margin:0;padding:0;list-style:none;display:flex}.donut-legend li{align-items:center;gap:8px;font-size:.85rem;display:flex}.donut-legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.donut-legend-label{color:var(--text);flex:1}.donut-legend-value{color:var(--text-muted);font-size:.8rem}.bar-chart{justify-content:space-between;align-items:flex-end;gap:10px;height:160px;padding-top:8px;display:flex}.bar-chart-col{flex-direction:column;flex:1;align-items:center;gap:6px;height:100%;display:flex}.bar-chart-value{color:var(--text-muted);font-size:.75rem;font-weight:700}.bar-chart-track{background:var(--bg);border-radius:6px;flex:1;align-items:flex-end;width:60%;min-width:18px;display:flex;overflow:hidden}.bar-chart-fill{border-radius:6px;width:100%;transition:height .2s}.bar-chart-label{color:var(--text-muted);text-align:center;font-size:.72rem}.expenditure-chart{flex-direction:column;gap:14px;padding-top:4px;display:flex}.expenditure-chart-row{grid-template-columns:1fr;gap:4px;display:grid}.expenditure-chart-label{color:var(--text-muted);font-size:.78rem}.expenditure-chart-track{background:var(--bg);border:1px solid #00000014;border-radius:6px;width:100%;height:22px;overflow:hidden}.expenditure-chart-fill{border-radius:6px;height:100%;transition:width .2s}.expenditure-chart-value{color:var(--text);font-size:.85rem;font-weight:700}.expenditure-chart-pct{margin-top:2px}.gauge-chart{flex-direction:column;align-items:center;gap:8px;padding-top:4px;display:flex}.gauge-chart-figures{color:var(--text);flex-direction:column;align-self:stretch;gap:4px;font-size:.85rem;display:flex}.gauge-chart-figures div{align-items:center;gap:8px;display:flex}.gauge-chart-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.location-overview{background:repeating-linear-gradient(0deg, #0b4f8a0d 0 1px, transparent 1px 24px), repeating-linear-gradient(90deg, #0b4f8a0d 0 1px, transparent 1px 24px), var(--bg);border-radius:10px;height:220px;position:relative;overflow:hidden}.location-overview--empty{text-align:center;justify-content:center;align-items:center;padding:16px;display:flex}.location-pin{filter:drop-shadow(0 2px 3px #00000040);cursor:default;font-size:1.4rem;position:absolute;transform:translate(-50%,-100%)}.recent-projects{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.recent-project-row{color:inherit;border-radius:10px;align-items:center;gap:12px;padding:6px;text-decoration:none;transition:background .12s;display:flex}.recent-project-row:hover{background:var(--bg)}.recent-project-thumb{background:var(--bg);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;overflow:hidden}.recent-project-thumb img{object-fit:cover;width:100%;height:100%}.recent-project-info{flex:1;min-width:0}.recent-project-name{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:700;overflow:hidden}.recent-project-pct{color:var(--text-muted);flex-shrink:0;font-size:.85rem;font-weight:700}.filter-chip{background:var(--primary-light);color:var(--primary-dark);border-radius:999px;align-items:center;gap:8px;margin-bottom:14px;padding:6px 6px 6px 14px;font-size:.85rem;display:inline-flex}.dash-hero--photo{text-align:center;background-position:50% 48%;background-size:cover;justify-content:center;align-items:stretch;min-height:270px;padding:20px 20px 22px;display:flex}.dash-hero-content--centered{flex-direction:column;justify-content:flex-end;align-items:center;width:100%;display:flex}.dash-hero-tagline{color:var(--gold);text-shadow:0 1px 4px #0009;max-width:320px;font-size:.92rem;font-weight:700}.divisions-row{gap:10px;margin-bottom:16px;padding-bottom:4px;display:flex;overflow-x:auto}.division-chip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);color:var(--primary);flex:none;align-items:center;gap:8px;padding:10px 14px;display:flex}.division-chip-label{color:var(--text);white-space:nowrap;font-size:.82rem;font-weight:600}.division-chip-count{color:var(--text-muted);background:var(--bg);border-radius:999px;padding:1px 8px;font-size:.78rem;font-weight:800}.stat-icon-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.stat-icon-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 16px;display:flex}.stat-icon-label{color:var(--text-muted);font-size:.78rem;font-weight:600}.stat-icon-value{color:var(--text);font-size:1.6rem;font-weight:800;line-height:1.2}.stat-icon-value--success{color:var(--success)}.stat-icon-value--danger{color:var(--danger)}.stat-icon-value--info{color:var(--accent-blue)}.stat-icon-sub{color:var(--text-muted);font-size:.72rem}.stat-icon-circle{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.stat-icon-circle--neutral{background:var(--primary-light);color:var(--primary)}.stat-icon-circle--success{background:var(--success-bg);color:var(--success)}.stat-icon-circle--danger{background:var(--danger-bg);color:var(--danger)}.stat-icon-circle--info{color:var(--accent-blue);background:#e0edff}.section-header-row{justify-content:space-between;align-items:center;margin:20px 0 10px;display:flex}.section-header-row h2{margin:0}.dashboard-range-select{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 10px;font-size:.85rem}.dashboard-range-select:focus{outline:2px solid var(--primary);outline-offset:1px}.dashboard-progress-report-link{justify-content:flex-end;margin-bottom:16px;display:flex}.mini-stats{flex-wrap:wrap;gap:10px;margin-bottom:4px;display:flex}.mini-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);flex:140px;align-items:center;gap:8px;padding:10px 12px;display:flex}.mini-stat-icon{background:var(--primary-light);width:30px;height:30px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.mini-stat-icon svg{width:16px;height:16px}.mini-stat-icon--info{color:var(--accent-blue);background:#e0edff}.mini-stat-value{color:var(--text);font-size:1.1rem;font-weight:800;line-height:1.2;display:block}.mini-stat-label{color:var(--text-muted);font-size:.72rem;display:block}.mini-stat--link{color:inherit;cursor:pointer;text-decoration:none;transition:box-shadow .15s,border-color .15s}.mini-stat--link:hover{border-color:var(--primary);box-shadow:0 2px 8px #00000014}.work-stage-tiles{margin-bottom:4px}.mini-stat--compact{text-align:center;background:#eaf5fc;border-color:#bfe3f6;flex:110px;justify-content:center;padding:10px 12px}.mini-stat--compact:hover{background:#ddeefa}.mini-stat--compact .mini-stat-value{font-size:1.5rem}.mini-stat--compact .mini-stat-label{white-space:normal;font-size:.85rem}.mini-stat--stage-positive .mini-stat-value,.mini-stat--stage-positive .mini-stat-label{color:var(--success)}.mini-stat--stage-attention .mini-stat-value,.mini-stat--stage-attention .mini-stat-label{color:var(--danger)}.division-strip{flex-wrap:wrap;gap:8px;margin-bottom:4px;display:flex}.division-strip-card{background:var(--surface);border:1px solid var(--border);max-width:220px;box-shadow:var(--card-shadow);border-radius:12px;flex-direction:column;flex:132px;gap:4px;padding:10px 12px;display:flex;position:relative}.mini-gauge{pointer-events:none;flex-direction:column;align-items:center;line-height:1;display:flex;position:absolute;bottom:6px;right:6px}.mini-gauge-pct{color:var(--text-muted);margin-top:1px;font-size:.56rem;font-weight:700}.mini-test-review{align-items:center;gap:6px;margin-top:auto;display:flex}.mini-test-review-pill{border-radius:999px;padding:2px 7px;font-size:.72rem;font-weight:800;line-height:1}.mini-test-review-pass{color:var(--success);background:var(--success-bg)}.mini-test-review-fail{color:var(--danger);background:var(--danger-bg)}.mini-atr-badge{color:var(--atr-text,#1e3a8a);align-items:center;gap:5px;margin-top:auto;font-size:.72rem;font-weight:400;display:inline-flex}.mini-test-review+.mini-atr-badge{margin-top:4px}.mini-atr-badge-circle{border:1.5px solid var(--atr-text,#1e3a8a);letter-spacing:-.02em;width:22px;height:22px;color:var(--atr-text,#1e3a8a);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.5rem;font-weight:400;line-height:1;display:inline-flex}.mini-atr-badge-value{font-weight:400}.mini-atr-badge-not-received{color:var(--danger)}.division-strip-code{letter-spacing:.03em;color:var(--success);background:var(--success-bg);border-radius:6px;align-self:flex-start;padding:1px 6px;font-size:.68rem;font-weight:800}.division-strip-name{color:var(--text);white-space:normal;font-size:.78rem;font-weight:600}.division-strip-qcr{letter-spacing:.02em;color:var(--danger);background:var(--danger-bg);border-radius:6px;align-self:flex-start;padding:1px 6px;font-size:.66rem;font-weight:800}.division-strip-card--link{cursor:pointer;text-decoration:none;transition:border-color .15s,box-shadow .15s}.division-strip-card--link:hover{border-color:var(--success);box-shadow:0 2px 8px #00000014}.division-strip-card--link:disabled{opacity:.6;cursor:wait}.schedule-scroll{max-height:280px;overflow-y:auto}.schedule-table{border-collapse:collapse;width:100%;font-size:.85rem}.schedule-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:8px 6px}.schedule-table tr:last-child td{border-bottom:none}.schedule-table-date{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;width:1%}.schedule-table-work{width:100%}.schedule-table-work a{text-decoration:none}.schedule-table-work a:hover{text-decoration:underline}.schedule-table-detail{color:var(--text-muted);white-space:nowrap;text-align:right}.atr-card,.atr-card *{color:var(--atr-text,#1e3a8a);font-weight:400!important}:root{--atr-text:#1e3a8a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--atr-text:#93c5fd}}:root[data-theme=dark]{--atr-text:#93c5fd}.atr-card .atr-not-received{color:var(--danger)!important}.atr-card .atr-period-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.atr-card .atr-period-btn{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:999px;padding:4px 12px;font-size:.78rem;color:var(--atr-text,#1e3a8a)!important}.atr-card .atr-period-btn--active{background:var(--atr-text,#1e3a8a);border-color:var(--atr-text,#1e3a8a);color:#fff!important}.atr-card .atr-breadcrumb{margin-bottom:8px;font-size:.78rem}.atr-card .atr-breadcrumb button{cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline;color:var(--atr-text,#1e3a8a)!important}.atr-card table.table td,.atr-card table.table th{color:inherit}.atr-card .atr-row-link{cursor:pointer;text-align:left;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.compliance-overview{gap:12px;margin-bottom:4px;display:flex}.compliance-card{border-radius:var(--radius);box-shadow:var(--card-shadow);flex:1;align-items:center;gap:10px;padding:14px 16px;display:flex}.compliance-card--success{background:var(--success-bg)}.compliance-card--danger{background:var(--danger-bg)}.compliance-card-dot{border-radius:50%;flex-shrink:0;width:14px;height:14px}.compliance-card--success .compliance-card-dot{background:var(--success)}.compliance-card--danger .compliance-card-dot{background:var(--danger)}.compliance-card-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:.72rem;font-weight:700}.compliance-card-value{font-size:1.6rem;font-weight:800;line-height:1.2}.compliance-card--success .compliance-card-value{color:var(--success)}.compliance-card--danger .compliance-card-value{color:var(--danger)}.compliance-card-pct{color:var(--text-muted);font-size:.75rem}.compliance-card--atr{background:color-mix(in srgb, var(--atr-text,#1e3a8a) 10%, transparent)}.compliance-card--atr .compliance-card-dot{background:var(--atr-text,#1e3a8a)}.compliance-card--atr .compliance-card-value{color:var(--atr-text,#1e3a8a)}.atr-overview{margin-top:4px}.compliance-card--link{color:inherit;cursor:pointer;text-decoration:none;transition:border-color .15s,box-shadow .15s}.compliance-card--link:hover{box-shadow:0 2px 8px #00000014}.compliance-card--success.compliance-card--link:hover{border:1px solid var(--success)}.compliance-card--danger.compliance-card--link:hover{border:1px solid var(--danger)}.leaderboard-list{flex-direction:column;gap:12px;margin-bottom:4px;display:flex}.leaderboard-row{align-items:center;gap:10px;display:flex}.leaderboard-rank{text-align:center;width:18px;color:var(--text-muted);flex-shrink:0;font-size:.85rem;font-weight:700}.leaderboard-info{flex:1;min-width:0}.leaderboard-top{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.leaderboard-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:700;overflow:hidden}.leaderboard-count{flex-shrink:0;font-size:.88rem;font-weight:800}.leaderboard-track{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.leaderboard-fill{border-radius:999px;height:100%}.table-wrap--flush{box-shadow:none;border:none;border-radius:0;margin:0 -16px -16px}.table-wrap--flush .table{font-size:.85rem}.table-wrap--flush .table th,.table-wrap--flush .table td{padding:8px 16px}.text-success{color:var(--success);font-weight:700}.text-danger{color:var(--danger);font-weight:700}.meeting-details{margin-top:4px}.meeting-details summary{cursor:pointer;color:var(--primary);font-size:.78rem}.meeting-detail-list{flex-direction:column;gap:3px;margin:6px 0 0;padding:0;list-style:none;display:flex}.meeting-detail-list li{color:var(--text-muted);white-space:nowrap;gap:10px;font-size:.78rem;display:flex}.meeting-detail-list li span:first-child{font-variant-numeric:tabular-nums}.donut-legend--row{flex-direction:row;justify-content:center;gap:16px;margin-top:8px}.donut-legend--row li{gap:6px}.breakdown-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.breakdown-list li{border-bottom:1px solid var(--border);justify-content:space-between;padding:6px 0;font-size:.88rem;display:flex}.breakdown-list li:last-child{border-bottom:none}.breakdown-list-total{padding:0;font-weight:800}.breakdown-list-total-link{width:100%;color:inherit;justify-content:space-between;padding:6px 0;text-decoration:none;display:flex}.breakdown-list-total-link:hover{color:var(--primary)}.worker-counts-list{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.worker-counts-list li{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-alt,var(--surface));justify-content:space-between;align-items:center;padding:8px 10px;font-size:.85rem;display:flex}.worker-counts-trade{color:var(--text-muted)}.worker-counts-value{font-weight:800}.quick-actions{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.quick-action--static{cursor:default}.quick-action--static:hover{border-color:var(--border);background:var(--bg)}.quick-action{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;font-size:.82rem;font-weight:700;text-decoration:none;display:flex}.quick-action:hover{border-color:var(--primary);background:var(--primary-light)}.quick-action--button{font-family:inherit}.brick-report{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);max-width:900px;margin-top:16px;padding:24px;overflow-x:auto}.brick-report__table{min-width:480px}.brick-report__title{text-align:center;letter-spacing:.03em;margin:0 0 16px;font-size:1.3rem}.brick-report__section-title{margin:20px 0 8px;font-size:1rem}.brick-report table{border-collapse:collapse;width:100%}.brick-report__meta,.brick-report__table,.brick-report__signoff{margin-bottom:4px}.brick-report__meta th,.brick-report__meta td,.brick-report__table th,.brick-report__table td,.brick-report__signoff th,.brick-report__signoff td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 10px;font-size:.88rem}.brick-report__meta th{white-space:nowrap;background:#fafbfd;width:220px}.brick-report__meta--tight{margin-top:8px}.brick-report__table thead th{background:#fafbfd;font-weight:700}.brick-report__avg-row{background:#fbfcfe;font-weight:700}.brick-report__signoff{margin-top:16px}.brick-report__signoff thead th{background:#fafbfd;font-weight:700}.brick-report__sig-cell{min-width:120px}@media print{.no-print,.bottom-nav,.topbar,.sidebar,.toast-stack{display:none!important}.content{padding:0!important}.brick-report{box-shadow:none;border:none;max-width:none;padding:0}body{background:#fff}}.quick-action-icon{font-size:1.4rem}.profile-card{align-items:center;gap:14px;display:flex}.profile-avatar{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.1rem;font-weight:800;display:flex}.profile-name{color:var(--text);font-size:1.1rem;font-weight:800}.profile-role{color:var(--text-muted);font-size:.85rem}.profile-designation{color:var(--text-muted);font-size:.8rem}
