/* SAL Portal · Emerald Glass. Presentation only; no application settings. */
:root {
  --accent:#146e50; --dark-accent:#146e50; --dark-accent-2:#2f9975;
  --dark-text:#183b30; --dark-muted:#5f746a; --dark-border:rgba(29,75,55,.13);
  --dark-border-strong:rgba(29,75,55,.25); --dark-surface-1:#fafbf7;
  --dark-surface-2:#f4f7f1; --dark-surface-3:#e7efe7;
  --radius:28px; --blur:22px; --transition:220ms cubic-bezier(.2,.7,.2,1);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color-scheme:light;
}
body {background:#073c2c;color:var(--dark-text);font-size:14px;line-height:1.45;}
.bg-aurora {background:radial-gradient(ellipse at 5% 5%,#2e8a61 0,transparent 45%),radial-gradient(ellipse at 95% 85%,#176447 0,transparent 45%),linear-gradient(125deg,#032c22,#0b4735);filter:none;animation:none;}
.bg-shapes {display:none;}
button,input,select,textarea {font:inherit;}
button {min-height:44px;cursor:pointer;}
button,.view-btn,.view-btn.ghost,#logout-btn,#advanced-toggle-btn {
 border-radius:999px;border:1px solid rgba(255,255,255,.8);color:#224f3d;
 background:linear-gradient(160deg,rgba(255,255,255,.96),rgba(230,239,226,.72));
 box-shadow:inset 0 1px 1px #fff,0 3px 8px #123a2410;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
 transition:transform 180ms ease,box-shadow 180ms ease,background 180ms ease;
}
button:hover {background:linear-gradient(160deg,#fff,#deecdf);box-shadow:inset 0 1px 1px #fff,0 5px 12px #123a2420;transform:translateY(-1px);}
button:active {transform:scale(.97);}
button:disabled {transform:none;cursor:not-allowed;opacity:.5;}
#search-btn,#login-btn,.view-btn.active {background:linear-gradient(150deg,#369e73,#09613f);border:1px solid #63bd8f;color:#fff;box-shadow:inset 0 1px 1px #c7f2d77a,0 4px 12px #08543726;}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {outline:3px solid #36a477;outline-offset:3px;}
.glass-card,.glass-card:hover {background:#f8f9f3;transform:none;box-shadow:0 24px 70px #001b2240;border:1px solid #ffffff9c;}
.glass-card::before {display:none;}
#app-screen {padding:20px;}
.app-card {position:relative;width:min(1720px,100%);height:calc(100dvh - 40px);max-height:none;padding:28px 30px 24px 244px;border-radius:30px;overflow:hidden;background:linear-gradient(120deg,#fafbf7,#f2f4ec);}
.app-card::after {content:"";position:absolute;inset:0 auto 0 0;width:216px;background:radial-gradient(ellipse at 0 90%,#2b936157,transparent 65%),linear-gradient(155deg,#104c3c,#063829);z-index:0;pointer-events:none;border-right:1px solid #ffffff45;}
.executive-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;flex-shrink:0;}
.eyebrow {font-size:10px;font-weight:700;letter-spacing:.17em;color:#688073;}
h1 {font-size:clamp(24px,2.3vw,36px);letter-spacing:-.045em;line-height:1.15;margin:8px 0;}
.executive-heading p {margin:0;color:#687b71;font-size:13px;}
.workspace-badge {font-size:11px;white-space:nowrap;border:1px solid #d8e4d8;padding:8px 14px;border-radius:999px;color:#42644d;background:#e9f0e5;}
.top-bar {position:static;display:flex;flex-shrink:0;gap:14px;margin:0 0 20px;padding:0;border:0;background:none;}
.search-area {max-width:650px;gap:10px;width:100%;}
#search,.form-group input,.filter-item select,#sql-template-filter {border:1px solid #d9e3d7;background:#ffffffc9;color:#183d2e;border-radius:999px;min-height:44px;padding:11px 16px;box-shadow:inset 0 2px 4px #153e2605;}
#search {width:100%;min-width:0;font-size:15px;}
#search::placeholder,.form-group input::placeholder,#sql-template-filter::placeholder {color:#708174;}
#search-btn {padding:10px 25px;}
#search:-webkit-autofill,.form-group input:-webkit-autofill {-webkit-text-fill-color:#183d2e;box-shadow:0 0 0 100px #f8fbf5 inset;}
.app-card .top-actions {position:absolute;left:18px;top:30px;bottom:24px;width:180px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;z-index:1;}
.rail-brand {color:#f2fff5;display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:4px 10px 32px;}
.rail-brand strong {font-size:21px;letter-spacing:-.04em;}
.brand-symbol {font-size:26px;color:#a2dfbd;}
.rail-brand small {width:100%;font-size:8px;letter-spacing:.18em;color:#a9ccbc;padding-left:1px;}
.rail-caption {font-size:9px;letter-spacing:.18em;color:#9ac2ad;padding:0 12px 4px;}
.app-card .top-actions button {width:100%;max-width:100%;white-space:normal;text-align:left;padding:12px 14px;font-size:12px;color:#effff5;background:linear-gradient(145deg,#ffffff20,#ffffff0a);border:1px solid #ffffff25;box-shadow:inset 0 1px 1px #ffffff15;}
.app-card .top-actions button:hover {background:#ffffff26;}
.app-card .top-actions #advanced-toggle-btn {order:0;}
.app-card .top-actions #import-open-btn {order:1;}
.app-card .top-actions #logout-btn {order:2;margin-top:auto;font-variant-numeric:tabular-nums;}
.results-hud {gap:18px;margin-bottom:20px;flex-shrink:0;}
.results-kpis {gap:14px;}
.result-kpi {background:linear-gradient(145deg,#fff,#f9faf4);border:1px solid #fff;border-radius:22px;padding:18px 20px;gap:6px;box-shadow:0 5px 14px #183d2910;min-width:0;animation:emerald-enter .4s ease both;}
.result-kpi:nth-child(2) {animation-delay:35ms;}.result-kpi:nth-child(3) {animation-delay:70ms;}.result-kpi:nth-child(4) {animation-delay:105ms;}
.kpi-label {font-size:10px;letter-spacing:.07em;color:#677b70;text-transform:uppercase;}
.kpi-value {font-size:26px;letter-spacing:-.04em;color:#123d2d;overflow-wrap:anywhere;}
.kpi-foot {color:#6a7e71;font-size:11px;}
.results-controls {background:#eaf0e557;border:1px solid #dce6d8;border-radius:22px;padding:16px;flex-wrap:wrap;gap:14px;}
.smart-filters {gap:12px;}
.filter-item {min-width:0;gap:6px;}.filter-item label {font-size:9px;letter-spacing:.08em;color:#5e7467;padding-left:10px;}
.filter-item select {width:100%;padding:8px 12px;font-size:12px;}
.view-controls {justify-content:flex-start;gap:8px;}.view-btn {padding:9px 16px;font-size:12px;}
.table-wrapper {border-radius:22px;border:1px solid #e1e8dc;background:#fff;min-height:120px;overflow:auto;box-shadow:0 4px 14px #163c2308;}
#result-table {width:100%;color:#234534;border-collapse:separate;border-spacing:0;font-size:12px;}
#result-table th,#result-table td {padding:15px 14px;border-bottom:1px solid #eaf0e5;}
#result-table thead th {background:#e9f0e5;color:#345741;position:sticky;top:0;font-size:10px;letter-spacing:.03em;z-index:2;}
#result-table td:not(.salary-up):not(.salary-down) {color:#355242;}
#result-table td:nth-child(2),#result-table td:nth-child(3) {white-space:normal;}
#result-table tr:hover {background:#f0f6eb;cursor:pointer;}.row-tier-top,.row-tier-low {background:transparent;}
.name-cell strong {color:#173c2a;font-size:13px;}.name-cell span,#result-table td .name-cell span {color:#7c8c80;font-size:10px;}
.salary-up {color:#117048;}.salary-down {color:#8b5f32;}
.signal-pill {font-size:9px;border-radius:999px;}.signal-pill.good {color:#176b42;background:#e9f4e6;border-color:#d4e7cd;}.signal-pill.warn {color:#85601d;background:#fcf4dc;border-color:#f0e1bd;}
.signal-pill.neutral,#result-table td .signals .signal-pill.neutral {color:#607163;background:#f0f3ed;border-color:#dfe5d9;}
.group-wrapper {background:transparent;border:0;padding:0;gap:16px;}.dept-card {border-radius:22px;background:#fff;padding:20px;border-color:#e0e8da;}
.dept-person {border-radius:16px;background:#f4f7ef;color:#234b35;border:1px solid #e3ebdc;}.dept-person:hover {background:#eaf2e2;}
.dept-meta,.dept-person-role,.dept-person-manager {color:#6c7d6e;}
.popup {background:#00291e85;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);padding:24px;}
.popup-content {background:#f7f8f1;width:min(1180px,96vw);max-height:92dvh;border-radius:28px;padding:30px;overscroll-behavior:contain;}
.popup.show .popup-content {transform:translateY(0) scale(1);}
.popup-content h2 {font-size:25px;letter-spacing:-.04em;padding-right:45px;color:#17432e;}
.close-btn {width:42px;height:42px;min-height:42px;right:15px;top:15px;background:#e9eee2;color:#36563e;border:1px solid white;z-index:3;}
.dash-header,.dash-section,.dash-card,.profile-item,.insight-item {background:#fff;border-color:#e0e8da;border-radius:20px;box-shadow:0 3px 9px #24492805;}
.dash-header {padding:22px;}.dash-section {padding:20px;}.dash-card {padding:18px;}
.identity h3,.profile-value,.comparison-main strong {color:#183f2d;}.identity-meta span,.badge {background:#edf4e7;border-color:#dbe7d1;color:#4e7053;}
.muted,.comparison-main .key,.comparison-mini,.profile-label,.chart-meta {color:#687e6b;}
.sparkline-path {stroke:#1a8c58;}.sparkline-points circle {fill:#1c8c57;}.axis-line {stroke:#d6e3cf;}
.history-table,.advanced-table {background:#fff;color:#234a34;}.history-table th,.history-table td {border-color:#e3eadf;}.history-table thead th,.advanced-table thead th {background:#edf2e7;color:#34563c;}
.table-empty,.dash-empty {color:#667b6a;background:#f3f6ed;border-color:#dce7d5;padding:28px;}
.advanced-workspace {min-height:0;}.advanced-toolbar,.schema-panel,.query-panel {background:#fff;border-color:#dfe7d8;border-radius:20px;}
.advanced-toolbar {padding:16px;}.advanced-title-wrap h3 {color:#204e35;}.advanced-title-wrap p,.advanced-schema-meta,.schema-column span,.advanced-results-meta,.sql-label {color:#647c68;}
.schema-table,.advanced-status {background:#f1f5eb;border-color:#dce7d4;color:#3f5c43;border-radius:12px;}
.sql-editor-wrap {background:#0c3027;border-radius:16px;overflow:hidden;}
.advanced-sql-highlight {background:#0c3027;color:#d9efe3;}
.advanced-sql {color:transparent;background:transparent;caret-color:#fff;}
.advanced-sql-highlight,.advanced-sql {border-color:transparent;border-radius:16px;}
.sql-template-item {background:#f3f7ee;border-color:#dfe9d7;color:#294d33;border-radius:15px;}.sql-template-item.active {background:#e0efda;border-color:#a5ca97;}
.sql-template-item span,.sql-template-item small,.sql-template-help,.sql-template-meta {color:#687f6b;}.sql-template-preview {background:#f3f7ee;border-color:#dee8d6;border-radius:18px;}.sql-template-code {background:#103529;color:#e3f3e6;}
.import-help {color:#536f5b;}.import-step input[type=file] {background:#fff;color:#315d3c;border-color:#d6e5cd;border-radius:16px;}.import-block {background:#f1f6eb;color:#355a3f;}.import-block.warn {color:#765415;background:#fbf3df;}.import-block.error {color:#8b3440;background:#fff0f0;}.import-block.success {color:#276b3d;background:#eaf5e5;}
.view-btn.danger {background:#993f42;color:#fff;border-color:#bc6b6f;}.import-ack {color:#3e6245;}.import-undo {background:#103529;color:#e3f3e6;}
.login-card {max-width:440px;padding:42px;border-radius:32px;background:linear-gradient(145deg,#ffffffed,#edf4e5e8);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);}
.logo {justify-content:center;color:#135336;font-size:28px;letter-spacing:-.04em;gap:12px;margin-bottom:20px;}.logo svg {color:#36895b;}
.login-intro {color:#31573b;font-size:16px;margin:0 0 28px;}.login-intro span {display:block;font-size:12px;color:#70836f;margin-top:9px;}
.form-group input {width:100%;padding:14px 20px;font-size:16px;margin-bottom:8px;}#login-btn {margin-top:8px;}
.lock-banner {background:#fbefda;border-color:#ead8b5;color:#77551f;}.attempt-hint {color:#756448;}.error-msg {color:#aa3f46;}
.app-toast {background:#113d2e;color:#fff;border:1px solid #6c9f80;border-radius:16px;}
@keyframes emerald-enter {from {opacity:0;transform:translateY(6px);}to {opacity:1;transform:translateY(0);}}
@media (min-width:1600px) {.app-card {padding-left:270px;}.app-card::after {width:240px;}.app-card .top-actions {width:204px;}}
@media (max-width:1100px) {
 #app-screen {padding:12px;}.app-card {height:calc(100dvh - 24px);padding:24px 20px 20px 206px;}.app-card::after {width:186px;}.app-card .top-actions {width:158px;left:14px;}.rail-brand {padding-left:4px;gap:6px;}.rail-brand strong {font-size:19px;}.workspace-badge {display:none;}.results-kpis {grid-template-columns:repeat(2,minmax(0,1fr));}.smart-filters {grid-template-columns:repeat(2,minmax(0,1fr));}.result-kpi {padding:12px 16px;}.kpi-value {font-size:22px;}
}
@media (max-width:760px) {
 body {overflow:auto;height:auto;min-height:100dvh;}.screen {position:relative;min-height:100dvh;}.screen.hidden {display:none;}
 #login-screen {display:grid;padding:20px;}#login-screen.hidden {display:none;}
 #app-screen {padding:0;display:block;min-height:100dvh;}.app-card {width:100%;height:auto;min-height:100dvh;max-height:none;padding:20px 14px 28px;border-radius:0;overflow:visible;display:flex;}
 .app-card::after {display:none;}.executive-heading {margin:0 0 18px;}.eyebrow {font-size:8px;}.executive-heading h1 {font-size:28px;}.executive-heading p {font-size:12px;}
 .top-bar {flex-direction:column;gap:12px;margin-bottom:18px;}.search-area {max-width:none;}.app-card .top-actions {position:static;width:100%;flex-direction:row;flex-wrap:wrap;gap:7px;background:#0b4936;padding:9px;border-radius:22px;}
 .rail-brand,.rail-caption {display:none;}.app-card .top-actions button {width:auto;flex:1;min-width:90px;text-align:center;font-size:10px;padding:9px 10px;min-height:44px;}.app-card .top-actions #logout-btn {margin-top:0;}
 .results-kpis {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}.result-kpi {border-radius:18px;padding:14px 12px;}.kpi-value {font-size:23px;}.kpi-label {font-size:8px;}.kpi-foot {font-size:10px;}
 .results-controls {padding:12px;gap:12px;}.smart-filters {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}.filter-item select {font-size:16px;min-height:44px;padding:8px;}.view-controls {width:100%;gap:6px;}.view-controls button {font-size:10px;padding:9px 12px;flex:1;}
 .table-wrapper {flex:none;overflow:visible;background:transparent;border:0;box-shadow:none;border-radius:0;}
 #result-table,#result-table tbody {display:block;width:100%;}#result-table thead {display:block;overflow-x:auto;scrollbar-width:thin;margin-bottom:12px;}#result-table thead tr {display:flex;width:max-content;gap:6px;}#result-table thead th {position:static;display:block;white-space:nowrap;border:1px solid #d6e3cf;border-radius:999px;padding:13px 18px;font-size:10px;}
 #result-table tbody tr {display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;background:#fff;border:1px solid #e0e8d8;box-shadow:0 4px 10px #183a2108;border-radius:22px;padding:18px;margin-bottom:12px;}
 #result-table tbody td {padding:0;border:0;display:block;min-width:0;overflow-wrap:anywhere;white-space:normal;}
 #result-table tbody td:first-child {grid-column:1/-1;padding-bottom:10px;border-bottom:1px solid #e8eee2;}.name-cell strong {font-size:16px;}.name-cell span {font-size:11px;}
 #result-table tbody td:before {display:block;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#78907b;margin-bottom:3px;}
 #result-table tbody td:nth-child(2):before {content:'Department';}#result-table tbody td:nth-child(3):before {content:'Function';}#result-table tbody td:nth-child(4):before {content:'Manager';}#result-table tbody td:nth-child(5):before {content:'Salary';}#result-table tbody td:nth-child(6):before {content:'Tenure';}#result-table tbody td:nth-child(7):before {content:'Smart signals';}
 #result-table tbody td[colspan] {grid-column:1/-1;}.signals {flex-wrap:wrap;}.group-wrapper {overflow:visible;flex:none;}.dept-person {grid-template-columns:1fr;gap:5px;}
 .popup {position:fixed;padding:8px;}.popup-content {width:100%;max-height:94dvh;padding:20px 15px;border-radius:24px;}.popup-content h2 {font-size:22px;}.dash-header {padding:16px;flex-wrap:wrap;}.kpi-grid,.comparison-grid,.profile-grid {grid-template-columns:1fr;}.dash-section {padding:14px;}.header-badges {flex-wrap:wrap;}.identity h3 {font-size:21px;}.kpi-grid {grid-template-columns:repeat(2,minmax(0,1fr));}.kpi-grid .kpi-value {font-size:22px;}
 .advanced-grid {display:flex;flex-direction:column;overflow:visible;}.advanced-workspace,.schema-panel,.query-panel {overflow:visible;}.schema-panel {max-height:240px;overflow:auto;}.advanced-toolbar {align-items:flex-start;flex-wrap:wrap;gap:12px;}.advanced-actions {flex-wrap:wrap;}.advanced-editor-tools {flex-wrap:wrap;}.advanced-results {overflow:auto;max-width:100%;}.advanced-sql-highlight,.advanced-sql {font-size:16px;}.sql-template-layout {grid-template-columns:1fr;}.sql-template-list {max-height:220px;}.sql-template-preview {min-width:0;}.sql-template-code {overflow:auto;}.import-report {overflow:auto;}.import-step {flex-wrap:wrap;}.import-step input[type=file] {max-width:100%;}.import-commit-row {position:static;}.login-card {padding:32px 24px;}
}
@media (prefers-reduced-motion:reduce) {*,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
.hidden {display:none!important;}
/* Retain all columns and sorting controls, including those hidden by the old mobile theme. */
.app-card .top-actions {flex-wrap:nowrap;}
.search-area {min-width:0;}
@media (max-width:760px) {
 .app-card .top-actions {flex-wrap:wrap;}
 #result-table thead th:nth-child(n),#result-table tbody td:nth-child(n) {display:block;}
 #result-table tbody td[colspan]::before {content:none;}
}
@media (min-width:761px) and (max-height:850px) {
 .app-card {overflow-y:auto;}.table-wrapper {min-height:260px;flex-shrink:0;}
 .executive-heading {margin-bottom:14px;}.results-hud {gap:12px;}.result-kpi {padding:12px 16px;}
}
