:root{--bg:#f4f6f9;--panel:#fff;--text:#172033;--muted:#7b8496;--line:#e4e8ef;--nav:#111827;--primary:#3157d5;--primary-soft:#eef2ff;--success:#13865f;--danger:#d64045;--shadow:0 8px 30px rgba(22,34,58,.05)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Pretendard,"Noto Sans KR",Arial,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px 11px;background:#fff;color:var(--text);outline:none}input:focus,select:focus,textarea:focus{border-color:#879ef0;box-shadow:0 0 0 3px rgba(49,87,213,.08)}label{font-size:12px;font-weight:700;color:#596174;display:grid;gap:7px}.app-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--nav);color:#e5e7eb;padding:18px 13px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:18px;padding:4px 8px 20px}.brand-mark,.login-logo{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff;color:var(--nav);font-weight:900}.sidebar nav{display:grid;gap:5px}.nav-item{display:flex;gap:10px;align-items:center;padding:11px 12px;border-radius:9px;color:#cbd2df;font-size:14px}.nav-item:hover{background:#202a3a;color:#fff}.nav-primary{background:#26365a;color:#fff}.sidebar-foot{margin-top:auto;border-top:1px solid #293244;padding:14px 8px 4px;display:flex;justify-content:space-between;font-size:12px;color:#aab2c0}.content{min-width:0;padding:24px 28px 50px;max-width:1580px;width:100%;margin:auto}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.topbar h1{font-size:27px;margin:2px 0 0;letter-spacing:-.04em}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;color:#98a0ae}.top-actions{display:flex;gap:8px;align-items:center}.mobile-menu{display:none}.panel,.kpi{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.panel{padding:17px}.panel h2{font-size:17px;margin:0}.panel-title,.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px}.panel-title span,.section-head p{font-size:12px;color:var(--muted);margin:4px 0 0}.section-head{justify-content:flex-start}.section-head>span{width:32px;height:32px;border-radius:9px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-weight:900}.section-head h2{margin:0;font-size:17px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.kpi{padding:15px 16px}.kpi span{font-size:12px;color:var(--muted)}.kpi b{font-size:24px;display:block;margin-top:5px;letter-spacing:-.04em}.kpi small{font-size:10px;color:var(--muted)}.kpi.danger b{color:var(--danger)}.kpi.accent b{color:var(--primary)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:14px}.sticky-panel{align-self:start}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.dow{text-align:center;font-size:11px;color:var(--muted);padding:3px}.sun{color:#cf4a4a}.sat{color:#3d68cd}.cal-day{min-height:88px;border:1px solid var(--line);border-radius:10px;padding:8px;display:flex;justify-content:space-between;align-items:flex-start;background:#fff}.cal-day:hover{border-color:#9eace6}.cal-day.today{background:#fafbff;border-color:#9aabe9}.cal-day.selected{box-shadow:inset 0 0 0 2px var(--primary)}.cal-day em{font-style:normal;font-size:10px;color:var(--primary);background:var(--primary-soft);padding:4px 6px;border-radius:999px}.cal-day.muted{background:#fafafa}.alert-panel{margin-bottom:14px;border-color:#f2cccc}.task-list{display:grid;gap:8px}.task-list.compact{grid-template-columns:repeat(2,1fr)}.task-card{border:1px solid var(--line);border-radius:11px;padding:11px;display:flex;justify-content:space-between;gap:10px;align-items:center}.task-card.overdue{border-color:#f0c5c5;background:#fffafa}.task-main,.task-card>div{display:grid;gap:4px}.task-top{display:flex;gap:7px;align-items:center}.task-card b{font-size:13px}.task-card small{font-size:11px;color:var(--muted)}.tag,.status{display:inline-block;font-size:10px;padding:4px 7px;border-radius:999px;background:var(--primary-soft);color:var(--primary);width:max-content}.status{background:#f0f2f5;color:#626b7c}.task-actions{display:flex!important;grid-auto-flow:column;gap:5px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 12px;font-weight:700;font-size:12px;cursor:pointer}.btn:hover{background:#fafafa}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.success{background:#e9f7f1;border-color:#cdebdc;color:var(--success)}.btn.small{padding:6px 9px;font-size:10px}.btn.large{padding:12px 18px;font-size:13px}.btn.wide{width:100%}.filterbar{display:flex;gap:8px;margin-bottom:13px}.filterbar input{max-width:430px}.filterbar select{max-width:170px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}th,td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left}th{color:#7c8493;font-size:10px;letter-spacing:.02em;background:#fafbfc}td b{font-size:12px}.cell-sub{display:block;color:var(--muted);font-size:10px;margin-top:3px}.empty{text-align:center;color:var(--muted);padding:28px!important}.text-link{color:var(--primary);font-weight:700}.form-panel{padding:19px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.span-4{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.stack,.stack-lg{display:grid;gap:12px}.stack-lg{gap:14px}.inline{display:flex;gap:6px}.inline input{min-width:0}.stock-state{padding:10px 12px;background:#f8f9fb;border-radius:9px;color:var(--muted);font-size:11px;align-self:end}.stock-state.ok{background:#eaf8f2;color:var(--success)}.addons{display:grid;gap:8px;margin:14px 0 9px}.addon-row{display:grid;grid-template-columns:2fr 1fr 1.4fr 32px;gap:9px;align-items:end}.icon-btn{height:37px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}.settlement-grid{display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr 28px 1fr;align-items:end;gap:8px}.settlement-grid>span{padding-bottom:11px;text-align:center;font-weight:900;color:#a0a7b4}.calc-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px}.calc-strip>div{padding:13px;border-radius:11px;background:#f7f8fa;display:flex;justify-content:space-between;align-items:center}.calc-strip span{font-size:11px;color:var(--muted)}.calc-strip b{font-size:17px}.calc-strip .highlight{background:var(--primary-soft);color:var(--primary)}.sticky-save{position:sticky;bottom:12px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:13px;padding:10px;display:flex;justify-content:flex-end;gap:8px;box-shadow:0 8px 30px rgba(0,0,0,.1)}.save-note{font-size:11px;color:var(--success);font-weight:700}.two-col{display:grid;grid-template-columns:360px 1fr;gap:14px}.list-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:11px 0}.flash-wrap{display:grid;gap:7px;margin-bottom:12px}.flash{padding:10px 12px;border-radius:9px;background:#eef4ff;color:#3157d5;font-size:12px;border:1px solid #d9e3ff}.flash.error{background:#fff0f0;color:#b63b3b;border-color:#f3d0d0}.flash.success{background:#ebf8f2;color:#167752;border-color:#d2efdf}.login-body{display:grid;place-items:center;background:#eef1f6;min-height:100vh;padding:20px}.login-card{width:min(410px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 20px 60px rgba(20,31,55,.09)}.login-card .login-logo{background:var(--nav);color:#fff;margin-bottom:16px}.login-card h1{margin:0;font-size:26px}.login-card p{color:var(--muted);margin:6px 0 20px;font-size:13px}
@media(max-width:1050px){.app-shell{grid-template-columns:190px 1fr}.form-grid{grid-template-columns:repeat(2,1fr)}.span-3,.span-4{grid-column:1/-1}.dashboard-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}.task-list.compact{grid-template-columns:1fr}.settlement-grid{grid-template-columns:1fr 22px 1fr 22px 1fr 22px 1fr}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:50;left:-240px;width:220px;transition:.2s}.menu-open .sidebar{left:0}.content{padding:16px}.mobile-menu{display:block;border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 9px}.topbar{align-items:center}.topbar h1{font-size:22px}.eyebrow{display:none}.form-grid,.kpi-grid,.calc-strip,.two-col{grid-template-columns:1fr}.span-2,.span-3,.span-4{grid-column:auto}.settlement-grid{grid-template-columns:1fr}.settlement-grid>span{display:none}.addon-row{grid-template-columns:1fr 1fr}.addon-row label:first-child{grid-column:1/-1}.cal-day{min-height:56px;padding:5px}.cal-day em{display:none}.filterbar{flex-wrap:wrap}.top-actions .save-note{display:none}}

.inline-form{display:inline}.danger-link{color:#b42318;background:none;border:0;cursor:pointer;padding:0 4px}.muted{color:#667085}.compact-grid{margin-top:16px}

.detail-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.info-grid>div{background:#f8fafc;border:1px solid #e6eaf0;border-radius:12px;padding:14px}
.info-grid span{display:block;color:#667085;font-size:12px;margin-bottom:5px}
.action-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.action-row form{margin:0}.subpanel{margin-top:14px;padding:14px;background:#f8fafc;border-radius:12px}
.hidden{display:none!important}.timeline{display:grid;gap:10px}.timeline-item{border-left:3px solid #d9e2f3;padding:8px 12px;background:#fbfcfe;border-radius:0 10px 10px 0}
.timeline-item small{display:block;color:#667085;margin-top:3px}.timeline-item p{margin:6px 0}.danger-zone{margin-top:24px;padding-top:16px;border-top:1px solid #f0d5d5}.btn.danger{background:#fff1f0;color:#b42318;border-color:#f2b8b5}
@media(max-width:900px){.detail-grid,.info-grid{grid-template-columns:1fr}}

.kpi-link{display:block;text-decoration:none;color:inherit;cursor:pointer}
.kpi-link:hover{transform:translateY(-1px)}
.kpi small{display:block;margin-top:5px;color:var(--muted,#6b7280);font-size:12px}

.brand-copy{display:flex;flex-direction:column;line-height:1.08}.brand-copy strong{font-size:18px;letter-spacing:-.2px}.brand-copy small{margin-top:5px;color:#9ca8bb;font-size:9px;font-weight:600;letter-spacing:.15px}.login-brand{margin-bottom:22px}.login-brand h1{font-size:30px;letter-spacing:-.6px}.login-brand p{margin-top:7px;color:var(--muted);font-size:13px;letter-spacing:.15px}

.auth-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 16px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:13px}.auth-links a{color:var(--primary);font-weight:700}.auth-result{margin-top:18px;padding:14px;border-radius:10px;background:#f1f6ff;text-align:center;color:#26365a}.login-card h2{margin:0 0 18px;font-size:18px}

/* TrustMap Signature UI v1 */
:root{--bg:#f5f7fb;--panel:#ffffff;--text:#10233f;--muted:#6d7c91;--line:#e4eaf2;--nav:#fdfefe;--primary:#2563eb;--primary-soft:#edf4ff;--success:#0f9b72;--danger:#e24b5b;--shadow:0 12px 34px rgba(21,49,88,.07)}
html,body{background:radial-gradient(circle at 85% 0,#edf5ff 0,transparent 28%),linear-gradient(145deg,#f8fafc 0,#f2f6fb 100%);color:var(--text)}
.app-shell{grid-template-columns:242px minmax(0,1fr)}
.sidebar{background:rgba(255,255,255,.94);color:#233a59;border-right:1px solid #e2e9f2;box-shadow:8px 0 30px rgba(33,62,101,.035);backdrop-filter:blur(14px)}
.brand{padding:8px 10px 24px;border-bottom:1px solid #edf1f6;margin-bottom:13px}
.brand-copy strong{color:#102d54;font-size:21px;letter-spacing:-.5px}.brand-copy small{color:#7290b5;font-size:9px;letter-spacing:.05em}
.sidebar nav{gap:4px}.nav-item{color:#53667e;font-weight:650;border:1px solid transparent;transition:.18s ease}.nav-item:hover{background:#f2f7ff;color:#1f5fce;border-color:#e2ecfb;transform:translateX(2px)}.nav-primary{background:linear-gradient(135deg,#2468ee,#4f82f1);color:#fff;box-shadow:0 8px 18px rgba(37,99,235,.19)}.nav-primary:hover{color:#fff;background:linear-gradient(135deg,#185ee8,#4279ee)}
.sidebar-foot{border-top:1px solid #e7edf4;color:#718096}.sidebar-foot a{color:#2b67c9;font-weight:700}
.content{padding:28px 34px 56px}.topbar{padding:4px 2px 10px}.topbar h1{color:#102d54;font-size:29px}.eyebrow{color:#3c73bd;letter-spacing:.2em}
.panel,.kpi{border-color:#e5ebf3;border-radius:18px;box-shadow:0 12px 32px rgba(30,61,100,.055)}
.kpi{position:relative;overflow:hidden;padding:19px 20px;transition:.2s ease}.kpi:after{content:"";position:absolute;right:-20px;top:-24px;width:76px;height:76px;border-radius:50%;background:linear-gradient(135deg,rgba(69,128,238,.09),rgba(104,204,183,.05))}.kpi:hover{transform:translateY(-3px);border-color:#cbdcf5;box-shadow:0 17px 38px rgba(34,78,139,.1)}.kpi b{color:#163b70;font-size:29px}.kpi.danger{background:linear-gradient(145deg,#fff,#fff8f8)}.kpi.danger b{color:#d74155}
.panel{padding:21px}.panel h2{color:#183759}.task-card{border-radius:14px;border-color:#e6ebf2;box-shadow:0 4px 16px rgba(34,64,103,.035)}.calendar{gap:8px}.cal-day{border-radius:13px;border-color:#e6ebf2}.cal-day.today{background:linear-gradient(145deg,#edf5ff,#e7f0ff);border-color:#76a3ea;box-shadow:inset 0 0 0 1px rgba(72,124,211,.12)}
.due-badge{display:inline-flex;align-items:center;justify-content:center;min-width:45px;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:900;background:#eaf2ff;color:#2f67c7}.task-card.due-1{border-left:5px solid #e8b62f;background:#fffdf5}.due-badge.due-1{background:#fff0b8;color:#8c6500}.task-card.due-2{border-left:5px solid #b69bea;background:#fbf9ff}.due-badge.due-2{background:#e9defd;color:#67449e}.task-card.due-3{border-left:5px solid #a52c82;background:#fff8fd}.due-badge.due-3{background:#a52c82;color:#fff}.task-card.due-4{border-left:5px solid #d64045;background:#fff6f6}.due-badge.due-4{background:#d64045;color:#fff}
.btn.kakao-action{background:#fee500;border-color:#ead300;color:#191919}
.btn.primary{background:linear-gradient(135deg,#2563eb,#477ff0);border-color:transparent;box-shadow:0 7px 16px rgba(37,99,235,.18)}
.login-body{min-height:100vh;background:#eef3f9;padding:0}
.signature-login{width:100%;min-height:100vh;display:grid;grid-template-columns:minmax(440px,1.08fr) minmax(420px,.92fr);background:#f8fafc}
.login-visual{position:relative;overflow:hidden;padding:64px clamp(46px,7vw,104px);display:flex;flex-direction:column;justify-content:center;background:linear-gradient(142deg,#08264d 0%,#0f4072 46%,#126b79 100%);color:#fff}
.login-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.06),transparent 38%),radial-gradient(circle at 78% 22%,rgba(103,225,211,.24),transparent 24%)}
.trust-orbit{position:absolute;border:1px solid rgba(255,255,255,.15);border-radius:50%}.orbit-one{width:520px;height:520px;right:-210px;top:-130px}.orbit-two{width:310px;height:310px;right:-90px;top:-25px;box-shadow:0 0 0 70px rgba(255,255,255,.025)}
.visual-content{position:relative;z-index:2;max-width:620px}.signature-kicker,.brand-eyebrow{display:block;font-size:11px;font-weight:850;letter-spacing:.2em}.signature-kicker{color:#87e4da;margin-bottom:24px}.visual-content h2{font-size:clamp(38px,4.3vw,66px);line-height:1.13;letter-spacing:-.055em;margin:0 0 28px}.visual-content>p{font-size:17px;line-height:1.8;color:#d5e6f2;margin:0 0 36px}.trust-points{display:flex;gap:10px;flex-wrap:wrap}.trust-points span{padding:9px 13px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);font-size:12px;color:#e7f5fa;backdrop-filter:blur(8px)}.visual-foot{position:absolute;left:clamp(46px,7vw,104px);bottom:38px;z-index:2;font-size:11px;letter-spacing:.17em;color:#aac7d8}
.login-form-zone{display:grid;place-items:center;padding:42px;background:radial-gradient(circle at 100% 0,#eaf2ff 0,transparent 34%),#f8fafc}.login-card.signature-card{width:min(460px,100%);padding:44px;border:1px solid rgba(213,224,238,.9);border-radius:24px;box-shadow:0 28px 80px rgba(27,58,98,.12);background:rgba(255,255,255,.92);backdrop-filter:blur(18px)}
.signature-card .login-brand{margin-bottom:30px}.brand-eyebrow{color:#3673ca;margin-bottom:11px}.signature-card .login-brand h1{font-size:40px;color:#102f58;letter-spacing:-1.3px}.signature-card .login-brand p{font-size:14px;color:#718096;margin-top:9px}
.signature-form{gap:17px}.signature-form label{color:#40546d;font-size:12px}.signature-form input{height:48px;border-radius:12px;background:#fbfcfe;border-color:#dce4ee;padding:0 14px}.signature-form input:focus{background:#fff;border-color:#4c83dc;box-shadow:0 0 0 4px rgba(55,112,204,.1)}
.signature-submit{height:51px;margin-top:5px;border-radius:13px;font-size:14px;display:flex;align-items:center;justify-content:space-between;padding:0 18px}.signature-submit span{font-size:19px}.auth-links{border-top:0;padding-top:0;margin-top:21px}.auth-links a{color:#4d6785}.auth-links a:hover{color:#1f62c6}.security-note{text-align:center!important;margin:19px 0 0!important;font-size:10px!important;color:#98a5b5!important}
@media(max-width:900px){.signature-login{grid-template-columns:1fr}.login-visual{min-height:300px;padding:46px 28px}.visual-content h2{font-size:38px}.visual-content>p{font-size:14px;margin-bottom:22px}.visual-foot{display:none}.login-form-zone{padding:28px 18px}.login-card.signature-card{padding:30px 24px}.signature-card .login-brand h1{font-size:34px}}
@media(max-width:760px){.sidebar{background:#fff}.content{padding:17px}.topbar{padding-top:4px}.panel{padding:16px}.kpi{padding:16px}.signature-login{display:block}.login-visual{min-height:250px;padding:38px 24px}.visual-content h2{font-size:32px;margin-bottom:16px}.visual-content>p{display:none}.trust-points span{font-size:10px;padding:7px 9px}.login-form-zone{padding:22px 14px 34px}.login-card.signature-card{margin-top:-30px;position:relative;z-index:3;border-radius:22px}}

/* TrustMap Signature Detail v2 */
.login-visual{isolation:isolate}.login-visual:after{content:"";position:absolute;inset:auto -12% -22% 28%;height:58%;background:radial-gradient(ellipse at center,rgba(69,220,194,.15),transparent 66%);z-index:-1}.trust-seal{display:flex;align-items:center;gap:11px;margin-bottom:46px}.trust-seal strong{display:grid;place-items:center;width:47px;height:47px;border:1px solid rgba(255,255,255,.36);border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.055));box-shadow:inset 0 1px rgba(255,255,255,.22),0 12px 32px rgba(0,18,42,.18);font-size:18px;letter-spacing:-1px}.trust-seal span{font-size:8px;line-height:1.45;letter-spacing:.18em;color:#a9d8dd;font-weight:800}.flow-map{position:absolute;right:5%;bottom:13%;width:34%;height:28%;opacity:.42}.flow-map span{position:absolute;inset:14% 8%;border:1px solid rgba(133,232,219,.22);border-radius:50%;transform:rotate(-14deg)}.flow-map:before,.flow-map:after{content:"";position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(130,231,218,.48),transparent);transform-origin:left center}.flow-map:before{width:94%;left:0;top:37%;transform:rotate(16deg)}.flow-map:after{width:80%;left:8%;top:68%;transform:rotate(-18deg)}.flow-map i{position:absolute;width:7px;height:7px;border-radius:50%;background:#8be9dd;box-shadow:0 0 0 6px rgba(123,228,214,.09),0 0 22px rgba(123,228,214,.5)}.flow-map i:nth-child(1){left:6%;top:30%}.flow-map i:nth-child(2){left:37%;top:47%}.flow-map i:nth-child(3){right:8%;top:23%}.flow-map i:nth-child(4){left:22%;bottom:8%}.flow-map i:nth-child(5){right:18%;bottom:20%}
.signature-card{position:relative}.signature-card:before{content:"";position:absolute;left:44px;right:44px;top:0;height:3px;border-radius:0 0 4px 4px;background:linear-gradient(90deg,#2f68dd,#56a7d5,#3dc3ad)}.signature-form label{position:relative}.signature-form label:focus-within{color:#225fb7}.signature-submit{transition:transform .18s ease,box-shadow .18s ease}.signature-submit:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(37,99,235,.26)}
.dashboard-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin:0 0 24px;padding:34px 38px;border:1px solid #dfe9f5;border-radius:25px;background:linear-gradient(125deg,#ffffff 0%,#f5f9ff 62%,#edf8f7 100%);box-shadow:0 18px 50px rgba(31,70,119,.07)}.dashboard-hero:before{content:"";position:absolute;width:320px;height:320px;border:1px solid rgba(55,118,200,.11);border-radius:50%;right:-100px;top:-190px;box-shadow:0 0 0 48px rgba(55,118,200,.025),0 0 0 96px rgba(35,169,149,.018)}.hero-copy,.hero-focus{position:relative;z-index:1}.hero-date{display:inline-flex;padding:7px 10px;border-radius:999px;background:#eaf3ff;color:#2f68b7;font-size:10px;font-weight:850;letter-spacing:.08em}.hero-copy h2{margin:15px 0 10px;color:#183452;font-size:28px;line-height:1.34;letter-spacing:-.045em}.hero-copy h2 strong{color:#2467c8}.hero-copy p{margin:0;color:#76869a;font-size:13px}.hero-focus{min-width:240px;padding:18px 20px;border:1px solid rgba(213,226,240,.95);border-radius:18px;background:rgba(255,255,255,.78);box-shadow:0 10px 30px rgba(37,75,117,.06);backdrop-filter:blur(8px)}.hero-focus>span{font-size:11px;color:#718198;font-weight:750}.hero-focus>b{display:block;margin:5px 0 12px;color:#183b67;font-size:38px;letter-spacing:-.06em}.hero-focus>b small{margin-left:3px;font-size:13px;color:#718198}.hero-focus>div{display:flex;gap:7px;flex-wrap:wrap}.hero-focus em{padding:6px 8px;border-radius:7px;background:#eaf6f2;color:#16856b;font-size:10px;font-style:normal;font-weight:750}.hero-focus em.warn{background:#fff0f1;color:#cf4052}.section-label{display:flex;align-items:center;gap:12px;margin:0 2px 12px}.section-label span{font-size:9px;font-weight:900;letter-spacing:.15em;color:#4b80c7}.section-label h3{margin:0;color:#29435f;font-size:15px}
@media(max-width:900px){.flow-map{display:none}.trust-seal{margin-bottom:25px}.dashboard-hero{align-items:stretch;flex-direction:column;padding:28px}.hero-focus{min-width:0}.hero-copy h2{font-size:25px}}
@media(max-width:760px){.trust-seal{margin-bottom:17px}.trust-seal strong{width:40px;height:40px;border-radius:12px}.dashboard-hero{margin-bottom:18px;padding:22px 20px;border-radius:19px}.hero-copy h2{font-size:22px}.hero-copy p{font-size:12px}.hero-focus{padding:15px}.hero-focus>b{font-size:32px}.section-label{margin-top:2px}}

/* TrustMap Account Console */
.account-overview{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding:25px 28px;border:1px solid #dfe8f3;border-radius:20px;background:linear-gradient(120deg,#fff,#f4f8ff 68%,#effaf8);box-shadow:0 13px 36px rgba(31,70,119,.06)}.account-kicker{display:block;color:#4380c7;font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.account-overview h2{margin:7px 0 4px;color:#18395e;font-size:25px}.account-overview p,.profile-head p{margin:0;color:#78889b;font-size:12px}.account-stats{display:flex;gap:9px}.account-stats span{min-width:105px;padding:13px 15px;border:1px solid #e1e9f2;border-radius:13px;background:rgba(255,255,255,.8);color:#6a7a8e;font-size:10px}.account-stats b{display:block;margin-bottom:3px;color:#1d4e86;font-size:22px}.request-panel{margin-bottom:16px;border-color:#efdfe2;background:linear-gradient(145deg,#fff,#fffafb)}.request-list{display:grid;gap:9px}.request-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid #ece7e9;border-radius:12px;background:#fff}.request-list article>div:first-child{display:grid;gap:4px}.request-list small{color:#7e8998}.account-layout{grid-template-columns:minmax(280px,.38fr) minmax(600px,1fr);align-items:start}.account-create{position:sticky;top:20px}.table-wrap table{border-collapse:separate;border-spacing:0;width:100%}.table-wrap th{color:#77869a;font-size:10px;text-transform:uppercase;letter-spacing:.04em}.pending-row{background:#fffbf1}.role-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef3f8;color:#536982;font-size:10px;font-weight:800}.role-badge.admin{background:#eaf1ff;color:#2c65bd}.role-badge.developer{background:#eaf8f5;color:#16816d}.status.pending{background:#fff0d9;color:#ae6b12}.row-actions{display:flex;align-items:center;gap:5px;white-space:nowrap}.row-actions form{margin:0}.profile-editor{max-width:560px;margin:0 auto}.profile-head{display:flex;align-items:center;gap:15px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e7edf4}.profile-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:linear-gradient(145deg,#2566d8,#40a6b0);color:#fff;font-size:21px;font-weight:900;box-shadow:0 9px 20px rgba(36,103,178,.2)}.profile-head h2{margin:5px 0 3px;font-size:21px}
@media(max-width:1100px){.account-layout{grid-template-columns:1fr}.account-create{position:static}.account-overview{align-items:flex-start}.table-wrap{overflow:auto}}
@media(max-width:760px){.account-overview,.request-list article{align-items:stretch;flex-direction:column}.account-overview{padding:20px}.account-stats{width:100%}.account-stats span{flex:1}.request-list .action-row{justify-content:flex-end}.profile-editor{margin:0}.table-wrap{margin:0 -16px;padding:0 16px}.row-actions{flex-wrap:wrap}}

/* TrustMap Navigation v2 */
.sidebar{padding:17px 14px}.brand{gap:11px;padding:6px 8px 19px}.brand-symbol{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d9e5f2;border-radius:12px;background:linear-gradient(145deg,#f7fbff,#eaf3ff);color:#235eaa;font-size:12px;font-weight:900;box-shadow:0 7px 18px rgba(35,94,170,.09)}.sidebar nav{display:block;overflow-y:auto;padding-right:2px;scrollbar-width:thin}.nav-group{display:grid;gap:3px;margin:0 0 15px}.nav-label{padding:0 11px 5px;color:#9aa8b8;font-size:8px;font-weight:900;letter-spacing:.15em}.nav-item{min-height:40px;padding:9px 10px}.nav-item i{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:#f3f6fa;color:#718198;font-style:normal;font-size:13px;transition:.18s ease}.nav-item span{flex:1}.nav-item em{padding:3px 5px;border-radius:5px;background:rgba(255,255,255,.16);font-size:8px;font-style:normal}.nav-item.active:not(.nav-primary){background:#edf5ff;color:#235fae;border-color:#dae8fa;font-weight:800}.nav-item.active:not(.nav-primary) i{background:#dcecff;color:#2565b8}.nav-primary i{background:rgba(255,255,255,.16);color:#fff}.sidebar-foot{align-items:center;padding:13px 5px 3px}.user-chip{display:flex;align-items:center;gap:9px;min-width:0}.user-chip>span{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#eaf3ff;color:#2662ad;font-size:12px;font-weight:900}.user-chip>div{display:grid;min-width:0}.user-chip b{overflow:hidden;max-width:125px;color:#334a64;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.user-chip small{color:#99a5b4;font-size:8px}.logout-link{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#f3f6f9;color:#6c7d90}.secure-state{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #dce9e5;border-radius:999px;background:#f2faf7;color:#40806f;font-size:9px;font-weight:800}.secure-state i{width:6px;height:6px;border-radius:50%;background:#35b78f;box-shadow:0 0 0 4px rgba(53,183,143,.1)}.menu-scrim{display:none}
@media(max-width:760px){.menu-open .menu-scrim{display:block;position:fixed;z-index:40;inset:0;background:rgba(13,31,52,.28);backdrop-filter:blur(2px)}.sidebar{z-index:50}.secure-state{display:none}.nav-group{margin-bottom:12px}.top-actions{margin-left:auto}}

/* TrustMap State Screens */
.error-state{position:relative;overflow:hidden;max-width:720px;margin:7vh auto;padding:56px;border:1px solid #dfe8f2;border-radius:25px;background:linear-gradient(145deg,#fff,#f5f9ff);box-shadow:0 20px 60px rgba(31,67,111,.09);text-align:center}.error-state:before{content:"";position:absolute;inset:-45% 55% 45% -15%;border-radius:50%;background:radial-gradient(circle,#e7f3ff,transparent 68%)}.error-orbit{position:relative;display:grid;place-items:center;width:92px;height:92px;margin:0 auto 24px;border:1px solid #d7e6f5;border-radius:50%;box-shadow:0 0 0 12px #f3f8fe,0 0 0 13px #e8f0f8}.error-orbit span{color:#2d68b5;font-size:23px;font-weight:900}.error-state h2{position:relative;margin:10px 0;color:#18395e;font-size:28px}.error-state>p{position:relative;margin:0 auto 25px;max-width:480px;color:#74859a;line-height:1.7}.error-state .action-row{position:relative;justify-content:center}.error-state>small{position:relative;display:block;margin-top:24px;color:#9aa6b5}
@media(max-width:760px){.error-state{margin:4vh auto;padding:40px 20px;border-radius:20px}.error-state h2{font-size:23px}}

.state-body{display:grid;place-items:center;min-height:100vh;padding:22px;background:radial-gradient(circle at 15% 10%,#eaf4ff,transparent 30%),linear-gradient(145deg,#f8fafc,#f1f6fb)}.state-brand{position:relative;display:inline-flex;flex-direction:column;margin-bottom:34px}.state-brand strong{color:#173b67;font-size:20px}.state-brand small{margin-top:4px;color:#7890aa;font-size:9px;letter-spacing:.08em}

/* TrustMap Customer Intelligence */
.login-visual{background-image:linear-gradient(90deg,rgba(4,28,59,.94) 0%,rgba(6,45,77,.82) 52%,rgba(8,86,99,.42) 100%),url('/static/images/trustmap-interior-hero.webp');background-size:cover;background-position:center}.login-visual:before{background:linear-gradient(115deg,rgba(255,255,255,.05),transparent 42%),radial-gradient(circle at 80% 18%,rgba(103,225,211,.13),transparent 25%)}.flow-map{display:none}
.login-visual.signature-scene{background-image:linear-gradient(90deg,rgba(2,18,37,.94) 0%,rgba(4,33,61,.79) 48%,rgba(3,31,51,.26) 100%),var(--login-scene);background-size:cover;background-position:center;animation:scene-reveal .7s ease both}.signature-scene .visual-content{padding:26px 28px;border:1px solid rgba(202,230,250,.13);border-radius:28px;background:linear-gradient(135deg,rgba(1,19,38,.43),rgba(4,31,55,.13));box-shadow:0 26px 70px rgba(0,11,28,.18);backdrop-filter:blur(5px)}.signature-scene .visual-content>p{max-width:560px}.scene-count{position:absolute;right:28px;bottom:28px;z-index:2;padding:7px 10px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(1,17,34,.28);color:rgba(226,242,251,.72);font-size:8px;font-weight:850;letter-spacing:.14em;backdrop-filter:blur(8px)}@keyframes scene-reveal{from{opacity:.35}to{opacity:1}}@media(prefers-reduced-motion:reduce){.login-visual.signature-scene{animation:none}}@media(max-width:760px){.login-visual.signature-scene{min-height:300px;background-position:center 54%}.signature-scene .visual-content{padding:17px 18px;border-radius:20px;background:linear-gradient(135deg,rgba(1,18,35,.62),rgba(4,31,55,.22));backdrop-filter:blur(3px)}.signature-scene .signature-kicker{margin-bottom:12px}.signature-scene .visual-content h2{font-size:28px}.scene-count{right:16px;bottom:42px}}
.customer-search-hero{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(480px,1.2fr);align-items:center;gap:30px;margin-bottom:16px;padding:27px 30px;border:1px solid #dfe8f3;border-radius:20px;background:linear-gradient(120deg,#fff,#f2f7ff 64%,#eef9f7);box-shadow:0 13px 36px rgba(31,70,119,.06)}.customer-search-hero h2{margin:8px 0 5px;color:#18395e;font-size:21px}.customer-search-hero p{margin:0;color:#77889b;font-size:12px}.smart-search{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid #d8e3ef;border-radius:15px;background:#fff;box-shadow:0 9px 24px rgba(33,72,119,.07)}.smart-search>span{padding-left:8px;color:#4b78ad;font-size:22px}.smart-search input{border:0;box-shadow:none;background:transparent}.smart-search input:focus{box-shadow:none}.smart-search button{white-space:nowrap}.address-cell{max-width:270px}.address-cell a{display:block;color:#385978;font-weight:650}.address-cell small{display:block;margin-top:4px;color:#8a98a8}.customer-editor{max-width:980px;margin:0 auto}.address-box{padding:18px;border:1px solid #dfe8f2;border-radius:15px;background:#f8fbff}.address-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.address-head>div{display:grid;gap:3px}.address-head b{color:#31506f;font-size:13px}.address-head small{color:#8391a2;font-size:10px}.address-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.customer-identity{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:15px;padding:24px 27px;border:1px solid #dfe8f3;border-radius:20px;background:linear-gradient(120deg,#fff,#f5f9ff);box-shadow:0 12px 32px rgba(31,70,119,.055)}.identity-main{display:flex;align-items:center;gap:14px}.identity-main h2{margin:5px 0 3px;color:#193b62;font-size:22px}.identity-main p{margin:0;color:#7c8b9d;font-size:12px}.identity-address{display:grid;min-width:340px;max-width:50%;padding:14px 16px;border:1px solid #e1e9f2;border-radius:13px;background:#fff}.identity-address>span{margin-bottom:5px;color:#8694a5;font-size:9px;font-weight:800}.identity-address>b{color:#34536f;font-size:12px}.identity-address>small{margin-top:4px;color:#8795a5;font-size:10px}.household-panel{margin-bottom:15px;background:linear-gradient(145deg,#fff,#fbfdff)}.household-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}.household-list>a{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #e2e9f2;border-radius:12px;background:#fff;transition:.18s ease}.household-list>a:hover{transform:translateY(-2px);border-color:#bcd2ed;box-shadow:0 8px 20px rgba(35,78,125,.07)}.household-list>a>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eaf3ff;color:#2a65ae;font-size:12px;font-weight:900}.household-list>a>div{display:grid;flex:1}.household-list b{color:#31506f;font-size:12px}.household-list small{color:#8996a5;font-size:9px}.household-list em{color:#5c7fa6;font-size:9px;font-style:normal}.household-list .current{border-color:#9ac4ee;background:#f1f7ff}.household-list .current em{color:#2d69b5;font-weight:800}
@media(max-width:980px){.customer-search-hero{grid-template-columns:1fr}.customer-identity{align-items:stretch;flex-direction:column}.identity-address{min-width:0;max-width:none;width:100%}}
@media(max-width:760px){.login-visual{background-position:64% center}.customer-search-hero{padding:20px}.smart-search{align-items:stretch;flex-wrap:wrap}.smart-search>span{display:none}.smart-search input{flex:1;min-width:180px}.address-grid{grid-template-columns:1fr}.address-grid .span-2{grid-column:auto}.address-head{align-items:flex-start;flex-direction:column}.address-search{width:100%}.customer-identity{padding:18px}.household-list{grid-template-columns:1fr}}

/* TrustMap authentication suite v3 */
.login-form-zone{background:#f4f8fc}.login-card.signature-card{width:min(500px,100%);padding:48px 50px;border-radius:28px;background:#fff;box-shadow:0 30px 90px rgba(15,45,82,.14)}
.auth-header{margin-bottom:30px}.auth-header h1{margin:9px 0 7px;color:#102f58;font-size:42px;line-height:1;letter-spacing:-1.8px}.auth-header p{margin:0;color:#718096;font-size:14px}.auth-form{display:grid!important;grid-template-columns:1fr!important;gap:17px!important;width:100%}.auth-form label{display:grid;grid-column:1/-1;gap:8px;width:100%;color:#40556f;font-size:12px;font-weight:800}.auth-form label>span{display:flex;align-items:center;gap:8px}.auth-form label>span b{display:grid;place-items:center;width:20px;height:20px;border-radius:7px;background:#eaf2ff;color:#2d67c1;font-size:10px}.auth-form input{height:52px;padding:0 16px;border:1px solid #dce5ef;border-radius:13px;background:#fbfcfe;color:#173451;font-size:14px;transition:.18s ease}.auth-form input::placeholder{color:#9aa7b7}.auth-form input:focus{border-color:#3b7bd5;background:#fff;box-shadow:0 0 0 4px rgba(46,112,203,.1)}.auth-form input[readonly]{background:#f1f4f8;color:#6f7e90}.auth-form .signature-submit,.auth-form>.btn{grid-column:1/-1;min-height:54px;margin-top:4px;border-radius:14px;font-size:14px}.auth-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:26px;padding-top:20px;border-top:1px solid #e7edf4}.auth-actions a{display:grid;gap:4px;padding:12px 10px;border:1px solid #e5ebf2;border-radius:12px;background:#fbfcfe;text-align:center;transition:.18s ease}.auth-actions a:hover{border-color:#bcd2ed;background:#f3f8ff;transform:translateY(-2px)}.auth-actions b{color:#31506f;font-size:11px}.auth-actions span{color:#8a98a8;font-size:8px}.security-note{margin:18px 0 0!important;color:#9aa6b5!important;text-align:center;font-size:9px!important}
.auth-page{min-height:100vh;padding:42px 20px;background:#f2f6fb}.recovery-shell{width:min(620px,100%);margin:0 auto}.recovery-brand{display:inline-flex;flex-direction:column;margin:0 0 22px 8px}.recovery-brand strong{color:#153a66;font-size:23px;letter-spacing:-.6px}.recovery-brand span{margin-top:4px;color:#7189a4;font-size:9px;letter-spacing:.08em}.recovery-card{padding:42px 46px;border:1px solid #dce6f0;border-radius:25px;background:#fff;box-shadow:0 24px 70px rgba(23,57,96,.1)}.recovery-card>header{margin-bottom:27px}.recovery-card h1{margin:9px 0 8px;color:#17395f;font-size:30px;letter-spacing:-1px}.recovery-card header p{margin:0;color:#74859a;font-size:13px;line-height:1.65}.recovery-foot{display:flex;justify-content:center;gap:22px;margin-top:24px;padding-top:19px;border-top:1px solid #e8edf3}.recovery-foot a{color:#456989;font-size:12px;font-weight:750}.verification-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:12px}.verification-field small{color:#8b98a8;font-size:10px;font-weight:500}.recovery-success{display:grid;gap:10px;padding:24px;border:1px solid #cfe7df;border-radius:17px;background:#f4fbf8;text-align:center}.recovery-success>span{color:#21806a;font-size:10px;font-weight:850;letter-spacing:.08em}.recovery-success>strong{color:#173f5d;font-size:24px}.recovery-success>p{margin:0 0 10px;color:#74859a;font-size:12px}
@media(max-width:760px){.login-card.signature-card{padding:32px 24px;border-radius:24px}.auth-header{margin-bottom:24px}.auth-header h1{font-size:35px}.auth-actions{grid-template-columns:1fr}.auth-actions a{grid-template-columns:1fr auto;align-items:center;text-align:left}.auth-actions span{text-align:right}.auth-page{padding:24px 14px}.recovery-card{padding:30px 22px;border-radius:22px}.recovery-card h1{font-size:26px}.verification-grid{grid-template-columns:1fr}}
.password-control{position:relative}.password-control input{padding-right:68px}.password-control button{position:absolute;right:7px;top:7px;height:38px;padding:0 12px;border:0;border-radius:9px;background:#edf3fb;color:#315f91;font-size:11px;font-weight:800;cursor:pointer}.password-control button:hover{background:#dfeafb}.caps-warning{color:#bd5c19;font-size:10px;font-weight:700}.caps-warning[hidden]{display:none}

/* Unified single-column navigation */
.unified-nav{display:grid!important;align-content:start;gap:7px!important}.nav-home{display:grid;gap:4px;padding-bottom:9px;border-bottom:1px solid #edf1f5}.nav-section{margin:0;border:1px solid transparent;border-radius:12px}.nav-section[open]{border-color:#e1e9f3;background:#f8fbff}.nav-section summary{display:flex;align-items:center;gap:10px;min-height:43px;padding:8px 10px;border-radius:11px;color:#52667e;font-size:13px;font-weight:800;cursor:pointer;list-style:none;transition:.18s ease}.nav-section summary::-webkit-details-marker{display:none}.nav-section summary:hover{background:#f2f7ff;color:#235fae}.nav-section summary i{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#eef3f8;color:#61758d;font-style:normal}.nav-section summary span{flex:1}.nav-section summary small{min-width:19px;padding:3px 5px;border-radius:6px;background:#edf2f7;color:#8290a2;text-align:center;font-size:8px}.nav-section summary:after{content:'›';color:#8b9aab;font-size:17px;line-height:1;transform:rotate(0);transition:transform .18s}.nav-section[open] summary{color:#235fae}.nav-section[open] summary i{background:#deecff;color:#235fae}.nav-section[open] summary:after{transform:rotate(90deg)}.nav-children{display:grid;gap:2px;padding:1px 7px 8px 43px}.nav-children .nav-item{min-height:32px;padding:6px 9px;border-radius:8px;font-size:11px}.nav-children .nav-item:before{content:'';width:4px;height:4px;border-radius:50%;background:#c4cfdb}.nav-children .nav-item.active:before{background:#2d6bc1;box-shadow:0 0 0 3px #dceaff}.nav-children .nav-item:hover{transform:none}.sidebar nav.unified-nav{overflow-y:auto}


/* Global customer quick search */
.topbar{display:flex;align-items:center;gap:22px}
.topbar>div:nth-of-type(1){min-width:180px}
.global-search{position:relative;display:flex;align-items:center;flex:1;max-width:620px;margin-left:auto}
.global-search input{height:44px;border:1px solid #dce3ec;border-radius:14px;padding:0 48px 0 42px;background:rgba(255,255,255,.94);font-size:14px;font-weight:650;color:#172033;box-shadow:0 6px 22px rgba(30,50,80,.055);transition:border-color .18s,box-shadow .18s,transform .18s}
.global-search input::placeholder{color:#98a2b3;font-weight:550}
.global-search input:focus{border-color:#56a99a;box-shadow:0 0 0 4px rgba(24,145,123,.10),0 10px 28px rgba(30,50,80,.08);transform:translateY(-1px)}
.global-search-icon{position:absolute;left:15px;z-index:1;color:#168c77;font-size:21px;line-height:1;pointer-events:none}
.global-search kbd{position:absolute;right:13px;border:1px solid #dce3ec;border-bottom-width:2px;border-radius:7px;padding:2px 7px;background:#f8fafc;color:#7b8496;font:700 12px/1.4 Inter,sans-serif;pointer-events:none}
.top-actions{margin-left:0}
.install-app{height:38px;padding:0 13px;border:1px solid #bcd2ed;border-radius:11px;background:#f3f8ff;color:#235fae;font-size:11px;font-weight:850;cursor:pointer}.install-app:hover{border-color:#75a4dc;background:#e9f3ff}
.readiness-banner{display:flex;align-items:center;gap:15px;margin:0 0 18px;padding:14px 18px;border:1px solid #cfe4df;border-radius:15px;background:linear-gradient(110deg,#f4fbf8,#f2f7ff);box-shadow:0 7px 22px rgba(25,91,82,.06)}.readiness-banner span{padding:5px 9px;border-radius:8px;background:#168c77;color:#fff;font-size:9px;font-weight:900}.readiness-banner b{flex:1;color:#274a62;font-size:12px}.readiness-banner em{color:#2368b2;font-size:11px;font-style:normal;font-weight:850}.readiness-hero{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:27px 30px;border:1px solid #d7e5ee;border-radius:20px;background:linear-gradient(125deg,#fff,#f0f8ff 65%,#eefaf6);box-shadow:0 12px 34px rgba(24,64,104,.06)}.readiness-hero span{color:#168c77;font-size:9px;font-weight:900;letter-spacing:.14em}.readiness-hero h2{margin:7px 0 5px;color:#173b62;font-size:23px}.readiness-hero p{margin:0;color:#72869a;font-size:12px}.readiness-hero>strong{display:grid;color:#173b62;font-size:38px;text-align:center}.readiness-hero>strong small{color:#73899d;font-size:10px}.readiness-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px}.readiness-item{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:16px;border:1px solid #e0e8f0;border-radius:15px;background:#fff}.readiness-item>span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#e9f8f2;color:#16805f;font-weight:900}.readiness-item>div{display:grid;gap:4px}.readiness-item b{color:#294763;font-size:11px}.readiness-item small{color:#7d8c9c;font-size:9px}.readiness-item em{grid-column:2;color:#16805f;font-size:9px;font-style:normal;font-weight:850}.readiness-item.attention{border-color:#f0d8b8;background:#fffaf2}.readiness-item.attention>span{background:#fff0d6;color:#bd6b12}.readiness-item.attention em{color:#bd6b12}.readiness-columns{align-items:start}.readiness-steps,.install-guide{display:grid;gap:10px;margin:2px 0 17px}.readiness-steps>div,.install-guide>div{padding:14px;border:1px solid #e4ebf2;border-radius:13px;background:#fbfcfe}.readiness-steps b,.install-guide b{color:#31506f;font-size:12px}.readiness-steps p,.install-guide p{margin:5px 0 0;color:#78889a;font-size:10px;line-height:1.65}.install-guide span{display:block;margin-bottom:6px;color:#2572bf;font-size:9px;font-weight:900}.install-guide .privacy-note{border-color:#cfe6df;background:#f3faf7}.readiness-foot{display:block;margin-top:11px;color:#8190a1}@media(max-width:1100px){.readiness-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.readiness-banner{align-items:flex-start;flex-wrap:wrap}.readiness-banner b{flex-basis:70%}.readiness-hero{padding:21px}.readiness-hero h2{font-size:19px}.readiness-grid{grid-template-columns:1fr}}
@media(max-width:980px){.global-search{max-width:400px}.secure-state{display:none}}
@media(max-width:760px){.topbar{flex-wrap:wrap;gap:11px;padding-bottom:14px}.topbar>div:nth-of-type(1){min-width:0;flex:1}.global-search{order:3;flex-basis:100%;max-width:none;margin-left:0}.global-search input{height:42px}.global-search kbd{display:none}.top-actions{margin-left:auto}}

/* Cash, card, OB and legal operations */
.amount-plus{color:#0b8a63}.amount-minus{color:#d9485f}.tag.good{background:#e9f8f2;color:#08795a}.tag.bad{background:#fff0f2;color:#c63f53}.notice-card{border-color:#d8e8f3;background:linear-gradient(135deg,#fff,#f1f8ff)}.notice-card p,.legal-warning p{max-width:980px;color:#64758a;line-height:1.75}.legal-warning{border-color:#f1dfc7;background:linear-gradient(135deg,#fffdf8,#fff8eb)}.legal-warning h2{color:#8b5914}.contact-form{margin-bottom:22px;padding:17px;border:1px solid #e3eaf2;border-radius:14px;background:#f8fbfe}.timeline-list{display:grid;gap:0;border-top:1px solid #e8edf3}.timeline-list article{position:relative;display:flex;gap:14px;padding:17px 4px 17px 22px;border-bottom:1px solid #edf1f5}.timeline-list article:before{content:"";position:absolute;left:7px;top:0;bottom:0;width:1px;background:#dce7f2}.timeline-dot{position:absolute;z-index:1;left:3px;top:22px;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#2e72c7;box-shadow:0 0 0 2px #c9dff4}.timeline-list article>div{display:grid;gap:4px}.timeline-list small{color:#7a899b}.timeline-list p{margin:4px 0 0;color:#334d68;line-height:1.55}.inline-form{display:flex;align-items:center;gap:6px}.inline-form select{min-width:120px;padding:7px}.wide{grid-column:span 2}@media(max-width:760px){.wide{grid-column:auto}.filter-bar{align-items:stretch;flex-direction:column}.filter-bar .btn{width:100%}}

/* Store-scoped visit appointments */
.booking-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:15px;padding:26px 29px;border:1px solid #dce8f2;border-radius:20px;background:linear-gradient(120deg,#fff 0%,#f4f9ff 66%,#effaf5 100%);box-shadow:0 12px 34px rgba(24,64,104,.055)}.booking-hero>div>span{color:#19816e;font-size:9px;font-weight:900;letter-spacing:.14em}.booking-hero h2{margin:8px 0 6px;color:#173b62;font-size:22px;letter-spacing:-.04em}.booking-hero p{margin:0;color:#76879a;font-size:12px}.booking-hero>strong{display:grid;min-width:88px;color:#183c63;font-size:34px;text-align:center}.booking-hero>strong small{margin-top:3px;color:#7890a6;font-size:9px}.booking-create{margin-bottom:15px}.appointment-list{display:grid;gap:7px}.appointment-row{display:grid;grid-template-columns:86px minmax(240px,1fr) minmax(120px,.35fr) auto auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid #e2e9f1;border-radius:12px;background:#fff}.appointment-row:hover{border-color:#bfd2e6;background:#fbfdff}.appointment-row>time{display:grid;padding-right:13px;border-right:1px solid #e7edf3}.appointment-row>time b{color:#20476d;font-size:13px}.appointment-row>time span{margin-top:3px;color:#8190a1;font-size:10px}.appointment-customer,.appointment-owner{display:grid;gap:4px}.appointment-customer>b{color:#263e58;font-size:13px}.appointment-customer>span,.appointment-customer>small,.appointment-owner>span{color:#7e8b9b;font-size:10px}.appointment-owner>b{color:#4c6178;font-size:11px}.booking-status-방문완료{background:#e9f8f1;color:#147b5c}.booking-status-노쇼{background:#fff0f2;color:#c34255}.booking-status-취소{background:#f0f2f5;color:#737d8b}.appointment-row.status-방문완료,.appointment-row.status-취소{opacity:.68}.today-bookings{margin-bottom:14px}.appointment-list.compact .appointment-row{grid-template-columns:72px minmax(240px,1fr) auto auto}
@media(max-width:900px){.appointment-row{grid-template-columns:72px 1fr auto}.appointment-owner{display:none}.appointment-row>.status{justify-self:end}.appointment-row>.action-row{grid-column:2/-1;justify-content:flex-end}}
@media(max-width:760px){.booking-hero{align-items:flex-start;padding:20px}.booking-hero h2{font-size:18px}.booking-hero>strong{min-width:58px;font-size:27px}.appointment-row,.appointment-list.compact .appointment-row{grid-template-columns:62px 1fr}.appointment-row>.status{grid-column:1;justify-self:start}.appointment-row>.action-row,.appointment-row>form{grid-column:2;justify-self:end}.appointment-customer{min-width:0}.appointment-customer>span,.appointment-customer>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-create .form-grid{grid-template-columns:1fr}.booking-create .span-2,.booking-create .span-4{grid-column:auto}}
/* Administrator home performance overview */
.home-performance{margin-bottom:18px}.home-performance-summary{display:flex;gap:9px;margin-bottom:14px}.home-performance-summary>b{display:flex;align-items:baseline;gap:7px;padding:9px 13px;border-radius:11px;background:#f3f7fb;color:#20476d;font-size:16px}.home-performance-summary small{color:#7b8c9d;font-size:8px}.home-performance-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}.home-performance-list>a{display:grid;gap:9px;padding:14px;border:1px solid #e0e8f0;border-radius:13px;background:#fff;transition:.18s ease}.home-performance-list>a:hover{transform:translateY(-2px);border-color:#afc9e6;box-shadow:0 8px 22px rgba(28,72,118,.08)}.home-performance-list header,.home-performance-list footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.home-performance-list strong{color:#294a68;font-size:12px}.home-performance-list header span,.home-performance-list footer span{color:#7d8c9b;font-size:9px}.home-performance-list>a>div{height:7px;overflow:hidden;border-radius:999px;background:#eaf0f5}.home-performance-list i{display:block;height:100%;min-width:3px;border-radius:999px;background:linear-gradient(90deg,#2874ca,#36a88f)}.home-performance-list footer b{color:#1f4d74;font-size:11px}.home-performance-list em{padding:3px 6px;border-radius:6px;background:#eaf7f2;color:#16805f;font-size:8px;font-style:normal;font-weight:850}@media(max-width:760px){.home-performance-summary{overflow-x:auto}.home-performance-summary>b{white-space:nowrap}.home-performance-list{grid-template-columns:1fr}}
/* Persistent data-safety warning for administrators */
.data-safety-alert{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:15px;border-color:#efd3a8;background:linear-gradient(120deg,#fffdf8,#fff6e7)}.data-safety-alert>div:first-child{max-width:800px}.data-safety-alert span{color:#bd6b12;font-size:9px;font-weight:900;letter-spacing:.14em}.data-safety-alert h2{margin:6px 0;color:#704512;font-size:17px}.data-safety-alert p{margin:4px 0;color:#806b50;font-size:11px;line-height:1.6}@media(max-width:760px){.data-safety-alert{align-items:stretch;flex-direction:column}.data-safety-alert .action-row{justify-content:stretch}.data-safety-alert .btn{flex:1}}

/* TrustMap architectural operating system */
:root{--tm-ink:#14223a;--tm-muted:#78808a;--tm-line:#e7e2d8;--tm-paper:#fbfaf7;--tm-warm:#f3efe6;--tm-metal:#a7987f;--tm-lime:#79c81f;--tm-danger:#df5a5f}
body{background:var(--tm-paper);color:var(--tm-ink)}
.app-shell{grid-template-columns:178px minmax(0,1fr)}
.sidebar{border-right:1px solid var(--tm-line);background:#fff;box-shadow:none}
.brand{min-height:142px;flex-direction:column;justify-content:center;gap:5px;padding:22px 14px;border-bottom:1px solid #f0ece4;text-align:center}
.brand-symbol{width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 5px 9px rgba(51,42,29,.13))}
.brand-copy strong{color:var(--tm-ink);font-family:Georgia,'Times New Roman',serif;font-size:20px;letter-spacing:.04em}.brand-copy small{margin-top:2px;color:#9b927f;font-size:8px;letter-spacing:.14em}
.unified-nav{padding:15px 10px}.nav-item,.nav-section summary{border-radius:2px;color:#5f6670}.nav-item.active,.nav-section summary:hover,.nav-item:hover{background:#f5f3ee;color:var(--tm-ink)}.nav-item.active:before{background:#b3a58b}.nav-primary{background:var(--tm-ink)!important;color:#fff!important}.nav-section summary i,.nav-item i{color:#666d75}.sidebar-foot{border-top:1px solid var(--tm-line);background:#fff}
.content{padding:0 24px 42px}.topbar{min-height:74px;margin:0 -24px 22px;padding:10px 24px;border-bottom:1px solid var(--tm-line);background:rgba(255,255,255,.94);box-shadow:none}.topbar>div:first-of-type{display:none}.global-search{order:-1;max-width:600px;border-color:#ddd8ce;border-radius:3px;background:#fff;box-shadow:0 3px 13px rgba(36,38,43,.04)}.global-search input{font-size:11px}.secure-state{color:#777f89}.secure-state i{background:var(--tm-lime)}
.btn{border-radius:3px}.btn.primary{border-color:var(--tm-ink);background:var(--tm-ink);box-shadow:none}.panel,.kpi,.task-card,.readiness-banner{border-color:var(--tm-line);border-radius:4px;box-shadow:none}.panel-title h2{color:var(--tm-ink)}
.trustmap-hero{display:grid;grid-template-columns:minmax(0,1fr) 38%;min-height:168px;margin:0 -24px;border-bottom:1px solid var(--tm-line);background:#f8f5ef;overflow:hidden}.trustmap-hero>div{padding:30px 44px;background:linear-gradient(90deg,rgba(248,245,239,.98),rgba(248,245,239,.86)),url('../images/trustmap-interior-hero.webp') center/cover}.trustmap-hero span{color:#99907f;font-family:Georgia,serif;font-size:9px;letter-spacing:.3em}.trustmap-hero h2{margin:13px 0 6px;color:var(--tm-ink);font-family:Georgia,'Noto Serif KR',serif;font-size:36px;font-weight:600;letter-spacing:-.05em}.trustmap-hero p{margin:0;color:#7c8188;font-size:12px}.trustmap-hero aside{position:relative;display:flex;flex-direction:column;justify-content:center;padding:26px 34px;background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(17,25,39,.34)),url('../images/trustmap-interior-hero.webp') center/cover;color:#fff}.trustmap-hero aside b{font-family:Georgia,'Noto Serif KR',serif;font-size:15px;line-height:1.65}.trustmap-hero aside small{margin-top:16px;font-size:8px;letter-spacing:.16em;opacity:.8}
.operation-route{display:grid;grid-template-columns:1fr 24px 1fr 24px 1fr 24px 1fr;margin:0 -24px 18px;padding:16px 32px;border-bottom:1px solid var(--tm-line);background:#fff}.operation-route>a{display:grid;grid-template-columns:35px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:8px 13px;color:var(--tm-ink)}.operation-route i{grid-row:1/3;display:grid;width:34px;height:34px;place-items:center;border:1px solid #cfc6b6;border-radius:50%;font-family:Georgia,serif;font-size:10px;font-style:normal}.operation-route b{font-size:13px}.operation-route small{color:#8a8f96;font-size:9px}.operation-route>span{align-self:center;color:#c2b9aa;text-align:center}
.trustmap-command{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:18px;margin-bottom:18px}.command-main,.store-map-panel{border:1px solid var(--tm-line);background:#fff}.command-main{padding:20px}.command-title,.panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.command-title span{color:#a0927b;font-size:8px;font-weight:850;letter-spacing:.18em}.command-title h2{margin:5px 0 15px;font-family:Georgia,'Noto Serif KR',serif;font-size:19px}.command-title>b{padding:5px 9px;background:var(--tm-warm);font-size:10px}.priority-table{border-top:1px solid var(--tm-line)}.priority-table>a{display:grid;grid-template-columns:8px 42px minmax(0,1fr) 84px 64px;align-items:center;gap:8px;padding:11px 5px;border-bottom:1px solid #f0ede6;color:#59616c;font-size:10px}.priority-table>a:hover{background:#faf8f3}.priority-table em{width:6px;height:6px;border-radius:50%;background:#e6ad3f}.priority-table em.d3,.priority-table em.d4{background:var(--tm-danger)}.priority-table strong{overflow:hidden;color:#26344a;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.priority-table small{color:#89909a}.priority-table b{justify-self:end;color:#697280;font-size:9px}.priority-table .empty{padding:34px 10px}
.store-map-panel{padding:20px}.store-map-panel .panel-title span{font-size:9px}.store-map-panel .panel-title em{padding:4px 7px;border-radius:20px;background:#eef8e5;color:#5f9f18;font-size:8px;font-style:normal}.store-map-visual{position:relative;height:264px;margin:14px -4px 10px;overflow:hidden;background:#f4f1eb}.store-map-visual>img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(.98)}.map-node{position:absolute;display:grid;min-width:62px;padding:7px 9px;border:1px solid rgba(177,166,148,.7);border-radius:3px;background:rgba(255,255,255,.92);box-shadow:0 5px 13px rgba(28,34,43,.12);color:var(--tm-ink);font-size:10px;font-weight:800;text-align:center}.map-node small{margin-top:2px;color:#828892;font-size:8px;font-weight:500}.map-node.customer{left:17%;bottom:13%}.map-node.sales{left:47%;bottom:36%;background:var(--tm-ink);color:#fff}.map-node.stock{left:28%;top:15%}.map-node.settle{right:13%;top:12%}.map-legend{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid var(--tm-line);color:#858b93;font-size:8px}.map-legend span{display:flex;align-items:center;gap:5px}.map-legend i{width:9px;height:9px;border:2px solid var(--tm-lime);border-radius:50%}.map-legend b{color:#505965;font-size:8px}
.section-label{display:flex;align-items:baseline;gap:10px;margin:25px 0 10px}.section-label span{color:#a0927b;font-size:8px;letter-spacing:.18em}.section-label h3{margin:0;font-family:Georgia,'Noto Serif KR',serif;font-size:18px}.home-performance-list>a,.home-performance-summary>b{border-radius:3px}.home-performance-list i{background:linear-gradient(90deg,#a99b82,var(--tm-lime))}
.trustmap-login-scene{background:linear-gradient(90deg,rgba(14,23,37,.22),rgba(14,23,37,.06)),url('../images/trustmap-interior-hero.webp') center/cover!important}.trustmap-login-scene:after{background:linear-gradient(180deg,rgba(16,23,33,.04),rgba(10,18,29,.7))}.trust-seal{border-color:rgba(220,209,189,.7)}.trust-seal strong{font-family:Georgia,serif}.signature-card{border-radius:4px}.auth-header:before{content:'';display:block;width:70px;height:70px;margin:0 auto 10px;background:url('../images/trustmap-mark.webp') center/contain no-repeat}.auth-header h1{font-family:Georgia,'Times New Roman',serif;letter-spacing:.04em}.signature-submit{background:var(--tm-ink)!important}.signature-form input{border-radius:3px}
@media(max-width:1100px){.trustmap-command{grid-template-columns:1fr}.store-map-visual{height:320px}.trustmap-hero{grid-template-columns:1fr 34%}.operation-route{padding-inline:16px}}
@media(max-width:860px){.app-shell{grid-template-columns:1fr}.content{padding:0 14px 30px}.topbar{margin:0 -14px 14px;padding:8px 14px}.trustmap-hero,.operation-route{margin-inline:-14px}.trustmap-hero{grid-template-columns:1fr}.trustmap-hero>div{padding:26px 20px}.trustmap-hero aside{display:none}.trustmap-hero h2{font-size:29px}.operation-route{grid-template-columns:repeat(4,1fr);padding:10px 8px}.operation-route>span{display:none}.operation-route>a{grid-template-columns:1fr;text-align:center}.operation-route i{grid-row:auto;margin:0 auto 5px}.operation-route small{display:none}}
@media(max-width:600px){.trustmap-command{display:block}.store-map-panel{margin-top:12px}.store-map-visual{height:245px}.priority-table>a{grid-template-columns:8px 38px minmax(0,1fr) 54px}.priority-table small{display:none}.operation-route b{font-size:11px}.map-node{min-width:50px;padding:5px;font-size:9px}.trustmap-hero h2{font-size:25px}.global-search{display:none}}
.brand .trustmap-approved-logo{display:block;width:144px;max-width:100%;height:auto;object-fit:contain}
.auth-header .trustmap-approved-auth{display:block;width:240px;max-width:100%;height:auto;margin:0 auto}
.trust-seal .trustmap-approved-seal{display:block;width:110px;height:auto;background:#fff}
/* Approved compass replaces the legacy TM pseudo-element. Effects are decorative. */
.auth-header:before{content:none;background:none}
.auth-header .trustmap-gold-logo{position:relative;isolation:isolate;width:280px;max-width:100%;margin:8px auto 16px;line-height:0;overflow:hidden}
.auth-header .trustmap-gold-logo .trustmap-approved-auth{width:100%;filter:saturate(1.3) contrast(1.06)}
.gold-shimmer,.gold-dust,.gold-glint{position:absolute;pointer-events:none}
.gold-shimmer{inset:0;clip-path:polygon(49.7% 13.5%,56.1% 39.8%,49.7% 59.2%,43.4% 39.8%);background:linear-gradient(115deg,transparent 35%,rgba(255,232,155,.2) 43%,rgba(255,255,230,.95) 49%,rgba(255,218,112,.45) 54%,transparent 64%);background-size:350% 100%;mix-blend-mode:screen;animation:trustmap-gold-shine 6s ease-in-out infinite}
.gold-dust{inset:0 0 30%;overflow:hidden}
.gold-dust i{position:absolute;top:-8%;left:var(--x);width:2px;height:2px;border-radius:50%;background:#d9aa42;box-shadow:0 0 4px 1px rgba(218,170,62,.35);opacity:0;animation:trustmap-gold-fall var(--duration) linear var(--delay) infinite}
.gold-dust i:nth-child(3n){width:3px;height:3px;background:#e8c56b}
.gold-glint{left:49%;top:14%;width:12px;height:12px;background:linear-gradient(90deg,transparent 42%,#fff5c8 50%,transparent 58%),linear-gradient(transparent 42%,#eac66b 50%,transparent 58%);filter:drop-shadow(0 0 3px #dfb648);animation:trustmap-gold-glint 5s ease-in-out infinite}
@keyframes trustmap-gold-shine{0%,20%{background-position:100% 0}65%,100%{background-position:0 0}}
@keyframes trustmap-gold-fall{0%{transform:translateY(0);opacity:0}20%{opacity:.7}80%{opacity:.4}100%{transform:translate(12px,145px);opacity:0}}
@keyframes trustmap-gold-glint{0%,65%,100%{opacity:.15;transform:scale(.65)}75%{opacity:1;transform:scale(1.2)}85%{opacity:.4;transform:scale(.8)}}
@media(prefers-reduced-motion:reduce){.gold-shimmer,.gold-dust i,.gold-glint{animation:none}.gold-dust{display:none}.gold-glint{opacity:.45}}
