/* Closing Emas — modern visual layer. Core data and auth remain in app.js. */
:root {
  --bg:#f5f6f3; --surface:#fff; --surface-2:#f7f8f5;
  --ink:#203b32; --muted:#718078; --line:#e3e8e1;
  --green-950:#102e25; --green-900:#173e31; --green-800:#20583f;
  --green-700:#297450; --green-600:#34845e; --green-500:#4a9870;
  --gold:#ebcc82; --gold-deep:#bb9147;
  --shadow:0 3px 16px rgba(25,52,37,.035); --radius:18px;
}
html {background:var(--bg);scroll-behavior:smooth}
body {background:var(--bg);font-family:"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select {font-family:inherit}
button {touch-action:manipulation}
button:focus-visible,a:focus-visible {outline:3px solid #bd9345;outline-offset:4px}
button:disabled {cursor:wait;opacity:.65;transform:none!important}
::selection {background:#dbe9ce;color:#173e31}
.ui-icon {width:21px;height:21px;display:block;flex-shrink:0;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.app-layout {grid-template-columns:258px minmax(0,1fr)}
.sidebar {width:258px;padding:30px 18px 18px;background:#163a2e;box-shadow:none}
.side-brand {padding:0 10px 28px;gap:12px}
.side-logo,.login-brand-mark {background:#ebcc82;color:#284b35;box-shadow:none;border-radius:12px}
.side-logo {width:42px;height:42px}
.side-brand strong {font-size:18px;font-weight:650;letter-spacing:-.6px}
.side-brand span {font-size:11px;color:#9fb6a8;letter-spacing:1px;text-transform:uppercase;margin-top:3px}
.side-nav {margin-top:15px;gap:4px;padding-right:0;margin-bottom:22px}
.nav-section-label {font-size:9px;letter-spacing:1.8px;font-weight:600;color:#90ad9b;margin:20px 14px 8px}
.nav-section-label:first-child {margin-top:5px}
.nav-item {padding:12px 13px;min-height:46px;border-radius:9px;font-size:12px;font-weight:500;gap:10px;color:#c6d6cc}
.nav-icon {background:none;width:23px;height:24px;border-radius:0;color:#9fbdab}
.nav-item.active {background:#e8eedb;color:#244d36;box-shadow:none;font-weight:650}
.nav-item.active .nav-icon {background:none;color:#345e40}
.nav-item:hover:not(.active) {background:#224737}
.risk-nav em {font-size:10px;min-width:24px;color:#c8d6cc;background:#294b3b}
.risk-nav.active em {background:#d0dec0;color:#284f38}
.sidebar-bottom {gap:16px}
.sidebar-account {border:0;border-top:1px solid #365447;background:none;border-radius:0;padding:20px 7px 0}
.account-avatar {background:#d9e4c8;color:#35553d;width:37px;height:37px;border-radius:50%;font-size:14px}
.account-copy b {font-size:12px;font-weight:600}
.account-copy span {font-size:10px}
.logout-button {width:34px;height:34px;background:none}
.sidebar-info {padding:0 12px;background:none;border:0;gap:10px}
.sidebar-info b {font-size:10px;font-weight:500;color:#b6cabe}
.sidebar-info span {font-size:9px;color:#88a491}
.online-dot {width:6px;height:6px;background:#82b28f;box-shadow:0 0 0 3px rgba(130,178,143,.12);flex-shrink:0}
.topbar {height:auto;min-height:100px;position:relative;background:#fff;border-bottom:1px solid var(--line);backdrop-filter:none;padding:22px 32px;gap:22px;flex-wrap:wrap}
.topbar-title {flex-shrink:0}
.breadcrumb {font-size:9px;letter-spacing:1.1px;color:#7f8c80;font-weight:600;margin-bottom:5px}
.topbar h1 {font-size:23px;font-weight:650;letter-spacing:-.7px}
.topbar-title>div>p:last-child {font-size:11px;color:#768276;margin-top:4px}
.top-actions {flex:1;max-width:none;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.segmented {background:#f3f5ef;border:1px solid #e7eadf;padding:4px;border-radius:9px}
.segmented button {font-size:10px;font-weight:600;padding:8px 11px;border-radius:6px;color:#73806b}
.segmented button.active {background:#fff;color:#315c3b;box-shadow:0 1px 4px #203b3212}
.dashboard-date-range {width:auto;padding:5px 8px;box-shadow:none;border-color:var(--line);border-radius:9px}
.dashboard-date-range label {font-size:9px;min-width:118px;color:#73806b}
.dashboard-date-range input {font-size:11px;padding:4px 6px;border:0;background:#f7f8f4}
.dashboard-date-range .btn-compact {font-size:10px}
.content {padding:28px 32px 48px;max-width:1700px}
.dashboard-intro {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}
.section-kicker {font-size:9px;letter-spacing:1.8px;font-weight:700;color:#819076}
.dashboard-intro h2 {font-size:24px;font-weight:600;letter-spacing:-.8px;margin:5px 0}
.dashboard-intro p {margin:0;font-size:12px;color:#7c877b}
.workspace-badge {display:flex;align-items:center;gap:9px;white-space:nowrap;border:1px solid #dfe5d8;background:#edf1e7;padding:8px 12px;border-radius:7px;font-size:11px;color:#647359}
.hero-grid {grid-template-columns:minmax(0,2.6fr) minmax(240px,1fr);gap:18px;background:none;box-shadow:none;border-radius:0;overflow:visible}
.hero-card {border-radius:18px;min-height:270px;padding:27px 30px}
.achievement-card {background:linear-gradient(115deg,#173e2e,#27503a);overflow:hidden;box-shadow:0 8px 24px #183e2e12}
.achievement-card:before {width:330px;height:330px;border:1px solid #ffffff0d;background:none;right:-130px;top:-115px;box-shadow:0 0 0 38px #ffffff03,0 0 0 78px #ffffff03;pointer-events:none}
.hero-topline {justify-content:space-between;flex-wrap:wrap;position:relative}
.pill {font-size:8px;font-weight:600;letter-spacing:1px;padding:6px 9px}
.pill-gold {color:#ecd59d;background:#eed3930d;border:1px solid #e5c98040;border-radius:5px}
.area-label {font-size:10px;color:#abc2ab}
.hero-values {gap:18px;margin-top:27px;align-items:flex-end;position:relative;flex-wrap:wrap}
.hero-values>div {min-width:0}
.eyebrow {font-size:11px;color:#b3c7b7;font-weight:400}
.hero-values strong {font-size:clamp(27px,2.7vw,42px);font-weight:600;letter-spacing:-1.5px;line-height:1.2;overflow-wrap:anywhere}
.metric-note {font-size:10px;color:#bed1b9;margin-top:9px}
.target-box strong {font-size:clamp(17px,1.6vw,24px);color:#e9ce8e;letter-spacing:-.7px}
.text-button {font-size:10px;color:#c4d7b7;font-weight:400;margin-top:7px}
.progress-meta {font-size:11px;margin-top:24px;color:#c6d6c5;font-weight:400;gap:12px}
.progress-meta b {color:#efdaa4}
.progress-track {height:7px;border:0;background:#ffffff1c;margin-top:10px}
.progress-fill {background:linear-gradient(90deg,#c7ae6d,#f0d696)}
.progress-scale {font-size:9px;color:#a2b59e;margin-top:8px}
.countdown-card {background:#f0ecdf;border:1px solid #e5dfcc;color:#5b5c46;position:relative;padding:24px}
.count-icon {width:38px;height:38px;background:#e7dfc8;border:0;border-radius:50%;color:#8a7848;margin-bottom:12px}
.countdown-card .eyebrow {color:#888365;font-size:9px;font-weight:600;letter-spacing:1.5px}
.countdown-value {display:flex;align-items:baseline;gap:8px;color:#526043;line-height:1.1}
#daysLeft {font-size:58px;letter-spacing:-3px;font-weight:500}
.countdown-unit {font-size:15px;font-weight:400;color:#7b7a61}
.countdown-card p {color:#8b876f;font-size:10px;margin-top:13px}
.countdown-card .divider {background:#ded8c3;margin:6px 0 12px}
.motivation {font-size:10px;font-weight:400;color:#7d805e}
.stats-grid {gap:16px;margin:20px 0}
.stat-card {min-width:0;min-height:148px;border-radius:14px;border-color:var(--line);padding:21px;box-shadow:var(--shadow)}
.stat-card:after {display:none}
.stat-card>div:first-child {min-width:0}
.stat-label {font-size:9px;font-weight:600;letter-spacing:.8px;color:#7b8778}
.stat-card strong {font-size:clamp(19px,1.6vw,27px);font-weight:600;margin-top:17px;letter-spacing:-.8px;overflow-wrap:anywhere}
.stat-card small {font-size:10px;color:#859180;margin-top:5px}
.stat-card.green {background:#fff;border-color:var(--line)}
.stat-icon {width:33px;height:33px;border-radius:10px;flex-shrink:0;margin-left:8px}
.blue .stat-icon {color:#6c8795;background:#edf3f5}
.green .stat-icon {color:#59856b;background:#edf4eb}
.purple .stat-icon {color:#9580a3;background:#f3eff6}
.amber .stat-icon {color:#b49a5f;background:#f7f2e5}
.dashboard-grid {grid-template-columns:1.15fr 1fr;gap:20px}
.panel {border-radius:16px;border-color:var(--line);padding:24px;box-shadow:var(--shadow)}
.panel-heading h2 {font-size:15px;font-weight:600;letter-spacing:-.25px}
.panel-heading p {font-size:11px;color:#859080;line-height:1.6;margin-top:4px}
.badge {font-size:10px;font-weight:500;color:#738167;background:#f3f5ef;border-radius:6px;white-space:nowrap}
.composition-body {grid-template-columns:minmax(140px,.95fr) 1fr;gap:22px;min-height:258px}
.donut {width:175px;height:175px;box-shadow:none}
.donut-hole {inset:26px;box-shadow:none}
.donut-hole span {font-size:10px;color:#86917f}
.donut-hole b {font-size:15px}
.legend {grid-template-columns:1fr;gap:14px}
.legend-item {font-size:11px}
.legend-copy b {font-weight:500}
.legend-copy span {font-size:10px;color:#899380}
.legend-dot {border-radius:50%;width:8px;height:8px}
.branch-bars {gap:20px}
.branch-row {grid-template-columns:minmax(95px,1fr) 1fr auto}
.branch-name b {font-size:11px;font-weight:500}
.branch-name span {font-size:9px}
.branch-value {font-size:10px;font-weight:600}
.bar-track {height:6px;background:#f0f3eb}
.bar-fill {background:#86a17c}
.outlet-status-panel {margin-top:20px}
.outlet-status-grid {gap:18px;margin-top:23px}
.outlet-status-box {border-radius:12px}
.outlet-status-box.filled {background:#f8faf6;border-color:#e2e9dc}
.outlet-status-box.pending {background:#fcfaf4;border-color:#ede6d4}
.outlet-status-title {padding:15px 18px}
.outlet-status-title b {font-size:12px;font-weight:500}
.outlet-status-title strong {font-size:13px;box-shadow:none;border:1px solid #e5e9de}
.filled .status-dot {background:#81a074}
.pending .status-dot {background:#c5a56b}
.outlet-item {padding:12px 5px}
.outlet-item b {font-size:11px;font-weight:500}
.outlet-item span,.outlet-empty {font-size:10px;color:#7e8978}
label {font-size:12px;font-weight:500;color:#5b6c5d}
input,select {font-size:13px;padding:12px 13px;min-width:0;border-radius:8px;border-color:#dfe5db;background:#fcfdfb;min-height:43px}
input:focus,select:focus {border-color:#8da47a;box-shadow:0 0 0 3px #8da47a1a}
.btn {min-height:40px;font-size:11px;font-weight:600;border-radius:8px;padding:11px 15px}
.btn-primary {background:#2c6144;box-shadow:0 3px 9px #2c614412}
.btn-primary:hover {background:#204f35}
.btn-secondary {border-color:#dfe5d9;color:#617258}
.btn-ghost {background:#eef2e9;color:#6a795e}
.btn-danger {font-size:11px}
.form-hero {background:#f6f8f1;padding:26px 28px;border-color:var(--line)}
.form-hero-icon {background:#e5eddc;color:#4f7045;box-shadow:none;border-radius:12px}
.form-hero h2 {font-size:23px;font-weight:600}
.form-hero p,.section-title p,.settings-card-head p,.settings-section-heading p {font-size:11px;color:#84917d}
.modal-kicker,.mini-label,.section-badge {font-size:10px;font-weight:600}
.form-section.embedded {padding:26px 28px}
.form-grid {gap:20px}
.section-title h3 {font-size:14px;font-weight:600}
.section-title>span {background:#edf2e6;color:#6a8058;font-size:11px}
.money-input {border-radius:8px;background:#fcfdfb}
.money-input span {font-size:12px}
.embedded-footer {padding:21px 28px;background:#fbfcf9}
.settings-card-head h2 {font-size:16px;font-weight:600}
.settings-section-heading h2 {font-size:18px;font-weight:600}
.settings-section-heading {margin:28px 0 14px}
.settings-grid,.master-grid {gap:20px}
.csv-format {font-size:11px;color:#7c8775;background:#f8f9f4;border-color:#dde5d6}
.upload-zone {background:#f8faf5;border-color:#cad8be;border-radius:10px}
.upload-zone b {font-size:12px;font-weight:600}
.upload-zone small {font-size:10px}
.search-box {height:43px;border-radius:8px;background:#fcfdfb;border-color:#dfe5d9}
.search-box input {font-size:12px;min-height:0}
.filter-select {font-size:11px;min-height:43px;border-radius:8px}
th {font-size:10px;font-weight:600;background:#f7f9f3;padding:14px;color:#7a8771;white-space:nowrap}
td {font-size:12px;padding:15px 14px;border-color:#edf0e8}
tbody tr:hover {background:#fafbf7}
.branch-cell b,.customer-cell b {font-size:12px;font-weight:500}
.branch-cell span,.customer-cell span {font-size:10px}
.product-tag {font-size:10px;font-weight:500;background:#edf3e7;color:#678352}
.delete-btn,.master-delete {font-size:10px;min-height:32px}
.empty-state {padding:45px 20px}
.empty-state h3 {font-size:14px;font-weight:500;color:#5f7358}
.empty-state p {font-size:12px;line-height:1.65;color:#8b967f}
.master-item-name,.location-row b {font-size:12px;font-weight:500}
.location-row span,.master-stats span {font-size:10px}
.risk-summary-grid,.mulia-summary-grid {gap:16px}
.risk-summary-card span,.mulia-summary-grid span {font-size:10px}
.risk-summary-card b,.mulia-summary-grid b {font-size:24px;font-weight:600}
.mulia-note,.portfolio-rules span {font-size:11px}
.portfolio-rules b {font-size:12px}
.toast {max-width:calc(100vw - 32px);background:#234b35;border-color:#507347}
.toast b {font-size:13px}
.toast p {font-size:11px}
.login-screen {position:fixed;background:#f7f7f1;padding:40px;overflow-x:hidden;color:#fff}
.login-glow {display:none}
.login-shell {width:min(1140px,100%);grid-template-columns:1.05fr 1fr;border-radius:24px;background:#fff;border:1px solid #e7e9df;box-shadow:0 24px 70px #243c2a0b;backdrop-filter:none;overflow:hidden}
.login-brand-panel {min-height:710px;padding:40px 48px;justify-content:flex-start;background:radial-gradient(ellipse at 70% 60%,#31513a 0%,#1f412f 45%,#153425 100%)}
.login-brand-panel:after {width:380px;height:380px;right:-260px;bottom:80px;border-color:#a9c38b14;box-shadow:0 0 0 65px #c0d79f03,0 0 0 130px #c0d79f03}
.login-brand-mark {width:44px;height:44px;margin:0 0 24px}
.login-kicker {font-size:10px;letter-spacing:2px;color:#c6d5b1;font-weight:500}
.login-brand-panel h1 {font-size:39px;line-height:1.19;letter-spacing:-1.5px;font-weight:500;max-width:none;margin:14px 0 18px;position:relative;z-index:1}
.login-brand-panel h1 em {color:#e5cc90;font-style:normal}
.login-brand-panel>p {font-size:12px;color:#a6bca7;line-height:1.85;max-width:345px}
.gold-illustration {height:224px;width:100%;position:relative;margin-top:10px;isolation:isolate}
.gold-bar {position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;border:1px solid #f4dda2;box-shadow:inset 2px 2px 1px #fff2c8aa,inset -4px -4px 1px #8d692199,12px 19px 26px #071b2055;transform:rotate(-23deg) skewY(5deg);background:linear-gradient(120deg,#b29149,#f3db97 30%,#d2ae62 70%,#a38137);color:#806024;text-shadow:0 1px #fff0b9a1}
.gold-bar-front {width:104px;height:144px;left:calc(50% - 20px);top:37px;z-index:2}
.gold-bar-front b {font-family:Georgia,serif;font-weight:400;font-size:47px;line-height:1.3}
.gold-bar span {font-size:6px;letter-spacing:1px;font-weight:700}
.gold-bar small {font-size:5px;letter-spacing:1px;margin-top:8px}
.gold-bar-back {width:98px;height:136px;left:calc(50% - 106px);top:28px;transform:rotate(-37deg) skewY(5deg);background:linear-gradient(120deg,#b79446,#d7b664 50%,#b49348);font-size:19px}
.gold-orbit {position:absolute;left:50%;top:54%;width:295px;height:120px;border:1px solid #d9ca9419;border-radius:50%;transform:translate(-50%,-50%) rotate(-18deg)}
.orbit-two {width:350px;height:175px}
.gold-spark {position:absolute;color:#e8d4a0}
.spark-one {left:17%;top:23%;font-size:23px}
.spark-two {right:10%;top:61%;font-size:18px}
.illustration-caption {position:absolute;bottom:0;left:0;right:0;display:flex;gap:7px;align-items:center;justify-content:center;color:#b9c6a6;font-size:9px;letter-spacing:1px}
.illustration-caption span {width:15px;height:1px;background:#a5ac80}
.login-feature-list {grid-template-columns:1fr;gap:8px;margin-top:24px;padding-top:20px;border-top:1px solid #ffffff12}
.login-feature-list span {font-size:10px;font-weight:400;color:#c0cfb6}
.login-feature-list b {width:21px;height:21px;font-size:8px;background:#ffffff08;color:#c7ca9b;border-radius:5px}
.login-card {padding:50px 52px;background:#fff}
.login-card-head {display:block}
.login-lock {display:none}
.login-card-head>div>span {font-size:9px;letter-spacing:1.7px;font-weight:600;color:#8c9879}
.login-card-head h2 {font-size:32px;line-height:1.2;letter-spacing:-1px;font-weight:600;max-width:320px;margin:14px 0}
.login-card-head p {font-size:12px;line-height:1.8;max-width:325px;color:#87917e}
.login-form {margin-top:34px;gap:20px}
.login-form label {font-size:12px;font-weight:500;color:#4d6048;gap:8px}
.login-input-wrap {height:51px;background:#fcfdf9;border:1px solid #e0e5d8;border-radius:8px;padding:0 14px;gap:11px}
.login-input-wrap input {font-size:12px;min-width:0}
.login-input-wrap>span {color:#9ca68d}
.login-input-wrap .ui-icon {width:17px;height:17px}
.login-input-wrap:focus-within {border-color:#95aa7d;box-shadow:0 0 0 3px #a2b98716}
.password-toggle {color:#99a48b;padding:8px}
.login-submit {height:51px;border-radius:8px;font-weight:500;font-size:12px;background:#2c573a;box-shadow:0 5px 12px #294e3512;justify-content:space-between;padding:0 20px;margin-top:4px}
.login-submit:hover {background:#21482e;box-shadow:0 7px 16px #294e3520}
.login-help {font-size:10px;line-height:1.7;color:#959c8d;text-align:center;margin:22px 0 0}
.login-foot {font-size:9px;line-height:1.7;color:#89947d;justify-content:center;border-color:#eff1e9;margin-top:34px;padding-top:20px}
.login-error {font-size:12px;padding:12px;border-radius:8px}
@media(min-width:1550px) {.top-actions {flex-wrap:nowrap}}
@media(max-width:1250px) {
 .app-layout {grid-template-columns:238px minmax(0,1fr)} .sidebar {width:238px;padding-left:13px;padding-right:13px}
 .topbar {padding:22px 25px} .content {padding:25px}
 .top-actions {justify-content:flex-start;flex-basis:100%}
 .hero-grid {grid-template-columns:minmax(0,2fr) minmax(220px,1fr)}
 .hero-card {padding:24px}.hero-values strong {font-size:30px}.target-box strong {font-size:20px}
 .dashboard-grid {grid-template-columns:1fr}.composition-body {grid-template-columns:220px 1fr}
 .legend {grid-template-columns:1fr 1fr}.stat-card {padding:18px}.stat-icon {width:28px;height:28px}
 .stat-label {font-size:8px;letter-spacing:.5px}.stat-card strong {font-size:21px}
 .login-brand-panel {padding:38px}.login-card {padding:40px}.login-brand-panel h1 {font-size:36px}
}
@media(max-width:1000px) {
 .stats-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 .hero-grid {grid-template-columns:1fr}.countdown-card {min-height:155px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;text-align:left;gap:6px 18px}
 .count-icon {grid-row:span 2;margin:0}.countdown-card .eyebrow {margin:0}
 .countdown-value {grid-column:3;grid-row:span 2}#daysLeft {font-size:46px}
 .countdown-card p {grid-column:2;margin:0}.countdown-card .divider,.motivation {display:none}
 .hero-values {flex-wrap:nowrap}.target-box {text-align:right}.hero-values strong {font-size:35px}.target-box strong {font-size:23px}
}
@media(max-width:900px) {
 .app-layout {grid-template-columns:1fr}.workspace {grid-column:1}
 .sidebar {width:258px;padding:24px 18px;visibility:hidden}.sidebar.open {visibility:visible}
 .mobile-menu {width:41px;height:41px;border-radius:8px;display:grid;color:#536c47;flex-shrink:0}
 .topbar-title {flex-shrink:1}.dashboard-intro h2 {font-size:23px}
 .sidebar-overlay {background:#102e2570;backdrop-filter:blur(3px)}
 .topbar {position:relative}.sidebar-bottom {padding-bottom:env(safe-area-inset-bottom)}
 .login-screen {padding:24px}.login-brand-panel {padding:32px;min-height:680px}
 .login-brand-panel h1 {font-size:31px}.login-card {padding:32px}.login-card-head h2 {font-size:29px}
 .workspace-badge {font-size:10px}
}
@media(max-width:760px) {
 .login-screen {padding:18px;align-items:start}
 .login-shell {grid-template-columns:1fr;max-width:500px;border-radius:20px;margin:auto}
 .login-brand-panel {padding:28px 30px;min-height:0}
 .login-brand-mark {width:34px;height:34px;margin-bottom:14px}
 .login-brand-panel h1 {font-size:29px;margin:9px 0 0;line-height:1.15}
 .login-brand-panel h1 br:nth-of-type(1) {display:none}
 .login-brand-panel>p,.gold-illustration,.login-feature-list {display:none}
 .login-card {padding:30px}.login-card-head h2 {font-size:27px;max-width:none}
 .login-card-head p {font-size:12px;max-width:none}
 .login-form {margin-top:25px;gap:16px}.login-foot {margin-top:23px}
}
@media(max-width:700px) {
 .content {padding:22px 18px 35px}.topbar {padding:20px 18px;gap:17px}.topbar h1 {font-size:21px}
 .topbar-title>div>p:last-child {font-size:10px}
 .dashboard-intro {margin-bottom:20px}.dashboard-intro h2 {font-size:21px}.dashboard-intro p {font-size:11px}
 .workspace-badge {display:none}.top-actions {gap:10px;flex-basis:auto}
 .segmented {width:100%;max-width:100%;justify-content:space-between;overflow:auto}
 .segmented button {flex:1;font-size:10px;padding:9px 8px;min-height:35px}
 .dashboard-date-range {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;width:100%;padding:8px}
 .dashboard-date-range label {min-width:0}.dashboard-date-range input {width:100%;min-height:34px;font-size:11px}
 .dashboard-date-range .btn-compact {grid-column:auto}
 .hero-values {flex-direction:row;align-items:end;gap:14px}.hero-values strong {font-size:30px}.target-box strong {font-size:19px}
 .hero-card {padding:23px;min-height:0}.achievement-card {min-height:270px}
 .hero-topline {gap:8px}.area-label {font-size:9px}
 .countdown-card {padding:20px}.countdown-unit {font-size:12px}#daysLeft {font-size:38px}
 .composition-body {grid-template-columns:1fr;gap:24px;padding:24px 0 5px}
 .legend {grid-template-columns:1fr 1fr;gap:18px}
 .panel {padding:20px}.panel-heading {gap:10px}.panel-heading p {font-size:10px}
 .outlet-status-grid {grid-template-columns:1fr}
 .input-form-panel {padding:0}.form-section.embedded,.form-hero {padding:23px 20px}
 .form-grid {grid-template-columns:1fr;gap:18px}.span-2 {grid-column:auto}
 .toast {right:16px;bottom:16px;min-width:0}
}
@media(max-width:470px) {
 .content {padding:19px 14px 30px}.topbar {padding:18px 14px}
 .dashboard-intro h2 {font-size:20px}.dashboard-intro p {max-width:280px}
 .stats-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
 .stat-card {padding:15px 12px;min-height:136px;display:block}.stat-icon {position:absolute;right:12px;top:13px;width:25px;height:25px}
 .stat-icon .ui-icon {width:17px;height:17px}
 .stat-label {display:block;min-height:30px;max-width:calc(100% - 24px);font-size:8px;letter-spacing:.3px}
 .stat-card strong {font-size:19px;margin-top:9px;line-height:1.25}.stat-card small {font-size:9px}
 .hero-grid {gap:12px}.hero-card {padding:20px}
 .hero-values {flex-direction:column;align-items:start;margin-top:22px;gap:16px}
 .hero-values strong {font-size:34px}.target-box {text-align:left}.target-box strong {font-size:22px}
 .hero-values .eyebrow {font-size:10px}.progress-meta {font-size:10px}
 .countdown-card {grid-template-columns:30px 1fr auto;gap:5px 12px}
 .count-icon {width:30px;height:30px}.countdown-value {flex-direction:column;gap:3px;align-items:center}
 .countdown-card .eyebrow {font-size:8px;letter-spacing:.8px}.countdown-card p {font-size:9px}
 .countdown-unit {font-size:10px}#daysLeft {font-size:36px}
 .legend {grid-template-columns:1fr 1fr}.legend-item {font-size:10px}
 .branch-row {grid-template-columns:1.1fr 1fr auto;gap:8px}.branch-name b {font-size:10px}
 .panel-heading h2 {font-size:14px}.outlet-item {flex-direction:row;gap:10px}
 .outlet-item span {max-width:44%;text-align:right}
 .login-screen {padding:12px}.login-brand-panel {padding:24px}
 .login-card {padding:28px 24px}.login-brand-panel h1 {font-size:26px}
 .login-card-head h2 {font-size:25px}.login-card-head>div>span {font-size:8px}
 .login-input-wrap input {font-size:16px}.login-form label {font-size:12px}
 .login-help {font-size:9px}.login-foot {font-size:9px}
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}
}


/* Final visual refinements. */
.login-screen {align-items:safe center}
.login-brand-identity {display:flex;align-items:center;gap:12px;margin-bottom:25px}
.login-brand-identity .login-brand-mark {margin:0;flex-shrink:0}
.login-brand-identity>span {font-size:17px;letter-spacing:-.4px;font-weight:600;color:#e6eddb}
.login-brand-identity small {display:block;font-size:8px;font-weight:400;letter-spacing:1px;color:#a4b59a;margin-top:2px}
.input-form-panel {padding:0}
.risk-summary-card small {font-size:10px}
.risk-summary-card.emerald {background:#2c6144;border-color:#2c6144}
.risk-summary-card.amber {background:#a18043;border-color:#a18043}
.risk-summary-card.red {background:#a95f5c;border-color:#a95f5c}
.risk-table th {background:#f7f9f3}
@media(max-width:760px) {
 .login-screen {align-items:start}
 .login-brand-identity {margin-bottom:17px}
 .login-brand-identity>span {font-size:15px}
}
