:root{--bg:#12151c;--nav-bg:#0b0d12;--surface:#1a1e27;--surface-sunken:#181b23;--surface-inset:#12151c;--border:#ffffff14;--border-strong:#ffffff24;--border-faint:#ffffff0f;--text:#f3f1e9;--text-body:#e7e4dc;--text-muted:#8b8c99;--text-faint:#6b7078;--accent:#c89b4a;--accent-hover:#e0b565;--accent-ink:#14181f;--accent-tint:#c89b4a24;--accent-border:#c89b4a4d;--success:#8fcb8a;--success-tint:#5da15a29;--warning:#e0b565;--warning-tint:#c89b4a29;--danger:#e39587;--danger-tint:#d9776a29;--destructive:#b23b2c;--destructive-hover:#c94836;--shadow-sm:0 2px 6px #0000004d;--shadow-md:0 4px 12px #00000059;--shadow-drawer:-12px 0 32px #0006;--shadow-modal:0 16px 48px #00000073;--display:"Source Serif 4", Georgia, serif;--sans:"IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-pill:999px;font:14px/1.5 var(--sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-body);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}#root{min-height:100svh}body{margin:0}h1,h2,h3{font-family:var(--display);color:var(--text);letter-spacing:.005em;margin:0;font-weight:600}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}::placeholder{color:var(--text-faint)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}code{font-family:var(--mono)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.app-shell{background:var(--bg);min-height:100svh;color:var(--text-body);flex-direction:column;display:flex}.signin-wrap{flex:1;place-items:center;padding:48px 16px;display:grid}.app-header{background:var(--nav-bg);border-bottom:1px solid var(--border-faint);flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;padding:18px 36px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{border-radius:var(--radius-xs);background:var(--accent);width:34px;height:34px;color:var(--accent-ink);font-family:var(--display);flex-shrink:0;place-items:center;font-size:15px;font-weight:700;display:grid}.brand-name{font-family:var(--display);color:var(--text);letter-spacing:.01em;font-size:18px;font-weight:600}.header-right{align-items:center;gap:16px;display:flex}.org-label{color:var(--text-muted);letter-spacing:.03em;font-size:12.5px}.tab-bar{background:var(--bg);border-bottom:1px solid var(--border-faint);flex-shrink:0;align-items:center;padding:20px 36px 0;display:flex;overflow-x:auto}.tab-row{gap:6px;max-width:100%;display:inline-flex}.tab{border-radius:var(--radius-md);font:500 14.5px/1 var(--sans);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:12px 20px;transition:background .15s,border-color .15s,color .15s;display:flex}.tab:hover{color:var(--text)}.tab-active{color:var(--text);background:var(--surface-sunken);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm);font-weight:600}.tab-badge{border-radius:var(--radius-pill);color:var(--text-muted);background:#ffffff0f;padding:2px 9px;font-size:12.5px;font-weight:600}.tab-active .tab-badge{color:var(--accent-hover);background:#c89b4a2e}.subtab-row{border-bottom:1px solid var(--border-faint);gap:6px;margin-bottom:22px;padding-bottom:14px;display:inline-flex}.subtab{border-radius:var(--radius-pill);font:500 13.5px/1 var(--sans);border:1px solid var(--border-faint);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:8px;padding:8px 16px;transition:background .15s,border-color .15s,color .15s;display:flex}.subtab:hover{color:var(--text)}.subtab-active{color:var(--text);background:var(--surface-sunken);border-color:var(--border-strong);font-weight:600}.top-cities-card{margin-top:24px;padding:18px 20px}.top-cities-title{font-family:var(--display);color:var(--text);margin-bottom:14px;font-size:16px;font-weight:600}.app-main{flex:1;padding:36px;overflow:auto}.dash-title{font-family:var(--display);color:var(--text);text-transform:capitalize;margin:0 0 6px;font-size:26px;font-weight:600}.dash-sub{color:var(--text-muted);margin:0 0 24px;font-size:14px}.list-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.list-title{font-family:var(--display);color:var(--text);align-items:center;font-size:22px;font-weight:600;display:flex}.list-sub{color:var(--text-muted);margin-top:3px;font-size:13px}.accent-text{color:var(--accent)}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:20px;display:grid}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:18px 20px}.kpi-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px;font-size:11.5px;font-weight:500}.kpi-value-row{align-items:baseline;gap:8px;display:flex}.kpi-value{font-family:var(--display);color:var(--text);font-size:28px;font-weight:600}.kpi-sub{color:var(--text-faint);font-size:12px}.promo-banner{border:1px solid var(--accent-border);border-radius:var(--radius-sm);background:linear-gradient(90deg,#c89b4a24,#c89b4a0a);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:14px 20px;display:flex}.promo-banner-bottom{margin-top:24px;margin-bottom:0}.promo-banner-text{color:var(--text-body);font-size:13px}.promo-banner-link{color:var(--accent);white-space:nowrap;font-size:12.5px;font-weight:600}.card-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;display:grid}.dash-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-align:left;font:inherit;color:inherit;flex-direction:column;gap:12px;padding:24px;transition:border-color .15s,transform 50ms;display:flex}.dash-card:hover{border-color:var(--border-strong)}.dash-card:active{transform:translateY(1px)}.dash-card-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:12.5px;font-weight:500}.dash-card-value{font-family:var(--display);color:var(--text);font-size:34px;font-weight:600}.dash-card-link{color:var(--accent);font-size:13px;font-weight:500}.list-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.search-wrap{position:relative}.search-icon{pointer-events:none;position:absolute;top:11px;left:11px}input[type=text],input[type=search],input[type=number],input[type=date],select{font:13px/1.4 var(--sans);border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-body);padding:9px 12px;transition:border-color .15s,box-shadow .15s}input[type=text]:hover,input[type=search]:hover,input[type=number]:hover,input[type=date]:hover,select:hover{border-color:#ffffff3d}input[type=text]:focus,input[type=search]:focus,input[type=number]:focus,input[type=date]:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint);outline:none}.search-input{width:220px;padding-left:34px}.filter-select{min-width:140px}.btn-accent,.btn-outline,.btn-destructive{font:600 13px/1 var(--sans);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding:11px 16px;transition:background .15s,border-color .15s,transform 50ms}.btn-accent:active,.btn-outline:active,.btn-destructive:active{transform:translateY(1px)}.btn-accent:disabled,.btn-outline:disabled,.btn-destructive:disabled{opacity:.55;cursor:default;transform:none}.btn-accent{background:var(--accent);color:var(--accent-ink)}.btn-accent:hover:not(:disabled){background:var(--accent-hover)}.btn-outline{border-color:var(--border-strong);color:var(--text-body);background:0 0}.btn-outline:hover:not(:disabled){background:#ffffff0a}.btn-destructive{background:var(--destructive);color:#fff}.btn-destructive:hover:not(:disabled){background:var(--destructive-hover)}.btn-xs{padding:6px 12px;font-size:12.5px}.btn-new{align-items:center;gap:6px;padding:9px 16px;display:flex}.table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.settings-card{padding:8px 24px}.table-scroll-x{min-height:160px;max-height:calc(100vh - 320px);overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table thead tr{background:var(--surface-sunken)}.data-table th{z-index:1;text-align:left;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface-sunken);padding:13px 18px;font-size:11px;font-weight:600;position:sticky;top:0}.data-table th.col-actions,.data-table td.col-actions{text-align:right}.data-table td{color:var(--text-body);white-space:nowrap;border-bottom:1px solid var(--border-faint);vertical-align:middle;padding:15px 18px}.data-table .col-title{min-width:170px}.data-table td.col-wrap{white-space:normal;word-break:break-word;max-width:280px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:#ffffff05}.data-table .col-numeric{text-align:right}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.row-actions{justify-content:flex-end;gap:2px;display:flex}.icon-btn{cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;transition:background .15s;display:inline-flex}.icon-btn:hover{background:#ffffff0f}.table-empty{text-align:center;color:var(--text-muted);padding:48px;font-size:13px}.reorder-cell{align-items:center;gap:8px;display:flex}.reorder-arrows{flex-direction:column;gap:1px;display:flex}.icon-btn-sm{padding:1px}.icon-btn-sm:disabled{opacity:.3;cursor:default}.assessorial-add-row{justify-content:flex-start;margin-top:14px;display:flex}.btn-add-assessorial{align-items:center;gap:8px;display:inline-flex}.table-caption{color:var(--text-muted);margin-top:12px;font-size:12px}.badge-pill{border-radius:var(--radius-pill);padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.badge-green{background:var(--success-tint);color:var(--success)}.badge-amber{background:var(--warning-tint);color:var(--warning)}.badge-red{background:var(--danger-tint);color:var(--danger)}.badge-neutral{color:var(--text-muted);background:#ffffff14}.badge-avatar{background:var(--accent-tint);width:22px;height:22px;color:var(--accent-hover);vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;margin-right:8px;font-size:10.5px;font-weight:600;display:inline-flex}.diff-old{color:var(--danger);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--danger) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--danger) 45%, transparent);white-space:normal;max-width:220px}.diff-new{color:var(--success);white-space:normal;max-width:220px}.diff-old em,.diff-new em{color:var(--text-faint);font-style:normal;text-decoration:none}.settings-list{margin:0;padding:0;list-style:none}.settings-row{border-bottom:1px solid var(--border-faint);grid-template-columns:220px 1fr;align-items:center;gap:16px;padding:14px 0;display:grid}.settings-row:last-child{border-bottom:none}.settings-row-label{color:var(--text-muted);font-size:13.5px}.settings-row-value{min-width:0}.value-display{text-align:left;border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--text-body);font:14px/1.4 var(--sans);background:0 0;border:1px solid #0000;justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;display:flex}.value-display:hover{border-color:var(--border);background:#ffffff0a}.value-display:hover .value-edit-hint{opacity:1}.value-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.value-text em{color:var(--text-faint);font-style:normal}.value-edit-hint{color:var(--accent);opacity:0;flex-shrink:0;font-size:12px;font-weight:500;transition:opacity .12s}.value-display-readonly{cursor:default}.value-display-readonly:hover{background:0 0;border-color:#0000}.value-readonly-hint{color:var(--text-faint);flex-shrink:0;font-size:12px}.edit-inline{gap:8px;display:flex}.edit-inline input{flex:1;min-width:0}.edit-inline-stack{flex-direction:column;align-items:stretch;gap:10px}.edit-inline-stack .form-textarea{width:100%}.edit-inline-actions{gap:8px;display:flex}.settings-row:has(.edit-inline-stack){align-items:start;padding-top:12px}.field-error{color:var(--danger);margin:6px 2px 0;font-size:12.5px}.field-success{color:var(--success);margin:6px 2px 0;font-size:12.5px}.banner{border-radius:var(--radius-sm);margin-bottom:16px;padding:10px 14px;font-size:13.5px}.banner-error{background:var(--danger-tint);color:var(--danger)}.banner-info{background:var(--accent-tint);color:var(--text-body)}.skeleton-list{flex-direction:column;gap:10px;display:flex}.skeleton-row{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--surface-sunken) 25%, #ffffff0f 37%, var(--surface-sunken) 63%);background-size:400% 100%;height:34px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.drawer-backdrop{z-index:50;background:#0000008c;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer-panel{background:var(--surface-sunken);width:420px;max-width:100%;height:100%;box-shadow:var(--shadow-drawer);border-left:1px solid var(--border);flex-direction:column;display:flex}.drawer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:22px 26px;display:flex}.drawer-title{font-family:var(--display);color:var(--text);font-size:17px;font-weight:600}.drawer-body{flex-direction:column;flex:1;gap:18px;padding:26px;display:flex;overflow:auto}.form-field{flex-direction:column;gap:7px;display:flex}.form-label{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:600}.form-input,.form-select,.form-textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-inset);color:var(--text-body);padding:9px 10px;font-size:13px}.form-textarea{resize:vertical;min-height:100px;font-family:inherit;line-height:1.5}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{opacity:.65;cursor:not-allowed}.drawer-footer{border-top:1px solid var(--border);gap:10px;padding:22px 26px;display:flex}.drawer-footer .btn-outline,.drawer-footer .btn-accent{flex:1;padding:11px}.drawer-error{margin:0;padding:0 26px 18px}.modal-backdrop{z-index:50;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-lg);width:380px;max-width:calc(100% - 32px);box-shadow:var(--shadow-modal);flex-direction:column;gap:6px;padding:26px;display:flex}.modal-title{font-family:var(--display);color:var(--text);font-size:17px;font-weight:600}.modal-body{color:var(--text-muted);margin-bottom:16px;font-size:13px}.modal-actions{gap:10px;display:flex}.modal-actions .btn-outline,.modal-actions .btn-destructive{flex:1;padding:11px}@media (width<=720px){.app-header,.tab-bar,.app-main{padding-left:18px;padding-right:18px}.settings-row{grid-template-columns:1fr;gap:4px}}
