:root{
  --bg:#f4f5f7;--surface:#ffffff;--surface-2:#f8f9fb;--surface-3:#eef1f5;--text:#17191d;--muted:#6c7280;--faint:#959ca8;
  --border:#e2e5ea;--border-strong:#d2d6dd;--accent:#1f6feb;--accent-2:#174ea6;--accent-soft:#eaf2ff;--success:#168557;--warning:#b36b00;--danger:#c73e49;
  --shadow:0 10px 30px rgba(19,27,38,.08);--shadow-sm:0 2px 10px rgba(19,27,38,.05);--radius:16px;--radius-sm:10px;
  --sidebar:252px;--topbar:64px;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;
}
:root[data-theme="graphite"]{--bg:#17191d;--surface:#1e2126;--surface-2:#252930;--surface-3:#2d323a;--text:#f2f4f7;--muted:#a2a9b3;--faint:#767f8b;--border:#323842;--border-strong:#424955;--accent:#83aaf9;--accent-2:#a7c1ff;--accent-soft:#263550;--success:#68d5a4;--warning:#f0b35f;--danger:#ff8791;--shadow:0 16px 35px rgba(0,0,0,.28);--shadow-sm:0 4px 14px rgba(0,0,0,.2)}
:root[data-theme="midnight"]{--bg:#08101b;--surface:#0d1725;--surface-2:#111e2f;--surface-3:#17263a;--text:#eaf2ff;--muted:#8ca1ba;--faint:#60748d;--border:#1c3048;--border-strong:#2a4665;--accent:#61a9ff;--accent-2:#93c5fd;--accent-soft:#102a47;--success:#58d6a2;--warning:#f0b35f;--danger:#ff7b86;--shadow:0 16px 40px rgba(0,0,0,.3);--shadow-sm:0 4px 14px rgba(0,0,0,.25)}
:root[data-theme="huangmotor"]{--bg:#f7f4ef;--surface:#fffdf9;--surface-2:#f5efe5;--surface-3:#eee3d2;--text:#272018;--muted:#756b5e;--faint:#9d8f7e;--border:#e6dcca;--border-strong:#d5c5ad;--accent:#8b5e23;--accent-2:#6d4616;--accent-soft:#f4e5c9;--success:#4c7f5d;--warning:#a36515;--danger:#b94a4a;--shadow:0 12px 32px rgba(72,48,24,.1);--shadow-sm:0 3px 12px rgba(72,48,24,.06)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px}button,input,select{font:inherit}button{color:inherit}a{color:inherit}
body{overflow:hidden}.app{height:100vh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);grid-template-rows:var(--topbar) minmax(0,1fr)}
.topbar{grid-column:1/-1;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 18px;gap:14px;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:750;letter-spacing:-.02em}.brand-mark{width:32px;height:32px;border-radius:10px;background:linear-gradient(145deg,var(--accent),var(--accent-2));display:grid;place-items:center;color:#fff;font-size:14px;box-shadow:var(--shadow-sm)}.brand small{display:block;font-size:10px;color:var(--muted);font-weight:600;letter-spacing:.03em}.top-spacer{flex:1}.top-actions{display:flex;align-items:center;gap:8px}.icon-btn,.ghost-btn,.primary-btn{border:1px solid var(--border);background:var(--surface);border-radius:10px;min-height:36px;padding:0 12px;cursor:pointer;transition:.15s ease;box-shadow:var(--shadow-sm)}.icon-btn{width:38px;padding:0;display:grid;place-items:center}.icon-btn:hover,.ghost-btn:hover{border-color:var(--border-strong);transform:translateY(-1px)}.primary-btn{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:700}.primary-btn:hover{filter:brightness(1.04);transform:translateY(-1px)}.badge{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:5px 9px;font-size:11px;color:var(--muted);background:var(--surface-2)}.badge.success{color:var(--success);border-color:color-mix(in srgb,var(--success) 28%,var(--border));background:color-mix(in srgb,var(--success) 8%,var(--surface))}.badge.warn{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 28%,var(--border));background:color-mix(in srgb,var(--warning) 8%,var(--surface))}
.sidebar{background:var(--surface);border-right:1px solid var(--border);overflow:auto;padding:14px 12px 18px;z-index:10}.area-switch{display:grid;grid-template-columns:1fr 1fr;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:4px;gap:4px;margin-bottom:16px}.area-btn{border:0;background:transparent;border-radius:9px;padding:8px 6px;color:var(--muted);cursor:pointer;font-weight:700;font-size:12px}.area-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--faint);padding:10px 10px 6px}.nav-item{width:100%;border:0;background:transparent;border-radius:11px;padding:9px 10px;display:flex;align-items:center;gap:10px;color:var(--muted);cursor:pointer;text-align:left;margin:2px 0}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:750}.nav-item.disabled{opacity:.43;cursor:not-allowed}.nav-icon{width:22px;text-align:center}.nav-tag{margin-left:auto;font-size:9px;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--border);border-radius:999px;padding:2px 6px;color:var(--faint)}.sidebar-foot{margin-top:24px;padding:12px 10px;border-top:1px solid var(--border);font-size:11px;color:var(--faint);line-height:1.55}
.main{overflow:auto;padding:24px 28px 64px}.page{max-width:1440px;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.page-title{font-size:28px;line-height:1.1;letter-spacing:-.035em;font-weight:780;margin:0}.page-sub{color:var(--muted);margin:7px 0 0;line-height:1.5}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search{height:40px;min-width:280px;border:1px solid var(--border);background:var(--surface);border-radius:11px;padding:0 12px;color:var(--text);outline:none}.search:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.segmented{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);padding:4px;border-radius:11px;gap:4px}.seg-btn{border:0;background:transparent;border-radius:8px;padding:7px 11px;color:var(--muted);cursor:pointer;font-size:12px;font-weight:650}.seg-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}
.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.stat{padding:16px}.stat-label{color:var(--muted);font-size:11px;font-weight:650}.stat-value{font-size:24px;font-weight:780;letter-spacing:-.035em;margin-top:5px}.stat-sub{font-size:10px;color:var(--faint);margin-top:3px}.panel{padding:18px}.panel-title{font-size:13px;font-weight:760;margin-bottom:12px}.empty{padding:54px 20px;text-align:center;color:var(--muted)}
.brand-block{overflow:hidden;margin-bottom:12px}.brand-head{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;background:var(--surface-2);cursor:pointer;border-bottom:1px solid transparent}.brand-head:hover{background:color-mix(in srgb,var(--surface-2) 75%,var(--accent-soft))}.brand-name{font-weight:780;letter-spacing:.01em}.brand-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.vehicle-list{display:none}.brand-block.open .vehicle-list{display:block}.vehicle-row{border-top:1px solid var(--border);padding:12px 14px;display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(4,minmax(86px,.55fr)) 28px;align-items:center;gap:10px}.vehicle-row:hover{background:color-mix(in srgb,var(--surface-2) 70%,transparent)}.vehicle-title{font-weight:720}.vehicle-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px;color:var(--muted);font-size:10px}.metric small{display:block;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.metric strong{display:block;margin-top:2px;font-size:12px}.metric .cash{color:var(--success)}.expand{font-size:12px;color:var(--faint);text-align:center}.vehicle-detail{grid-column:1/-1;border-top:1px dashed var(--border);padding:12px 0 2px;display:grid;grid-template-columns:1.2fr 1fr;gap:16px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px}.detail-row{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid var(--border);font-size:11px}.detail-row span:first-child{color:var(--muted)}.inst-table{width:100%;border-collapse:collapse;font-size:11px}.inst-table th,.inst-table td{padding:7px 8px;border-bottom:1px solid var(--border);text-align:right}.inst-table th:first-child,.inst-table td:first-child{text-align:left}.inst-table th{color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.consult{color:var(--warning);font-weight:750}
.used-controls{display:grid;grid-template-columns:minmax(220px,1fr) 150px 150px 150px;gap:8px;margin-bottom:12px}.used-row{display:grid;grid-template-columns:110px minmax(180px,1.3fr) repeat(4,minmax(90px,.55fr)) 28px;gap:10px;align-items:center;padding:12px 14px;border-top:1px solid var(--border)}.used-row:first-child{border-top:0}.used-row.sold{opacity:.52}.plate{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:760}.condition{font-size:10px;border-radius:999px;padding:2px 7px;border:1px solid var(--border);width:max-content}.condition.good{color:var(--success)}.condition.fair{color:var(--warning)}.condition.poor{color:var(--danger)}
.skeleton{position:relative;overflow:hidden;background:var(--surface-3);border-radius:10px;min-height:18px}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface) 75%,transparent),transparent);animation:shimmer 1.2s infinite}@keyframes shimmer{100%{transform:translateX(100%)}}
.overlay{position:fixed;inset:0;background:rgba(5,9,14,.46);backdrop-filter:blur(4px);z-index:80;display:none}.overlay.open{display:block}.palette{position:fixed;left:50%;top:12vh;transform:translateX(-50%);width:min(620px,calc(100vw - 30px));background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.25);z-index:81;display:none;overflow:hidden}.palette.open{display:block}.palette input{width:100%;height:52px;border:0;border-bottom:1px solid var(--border);padding:0 16px;background:transparent;color:var(--text);outline:none;font-size:15px}.palette-list{max-height:380px;overflow:auto;padding:8px}.palette-item{display:flex;align-items:center;gap:11px;padding:10px;border-radius:10px;cursor:pointer;color:var(--muted)}.palette-item:hover{background:var(--surface-2);color:var(--text)}.palette-item small{margin-left:auto;color:var(--faint)}
.theme-menu{position:fixed;right:18px;top:58px;width:250px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:8px;z-index:60;display:none}.theme-menu.open{display:block}.theme-option{width:100%;border:0;background:transparent;border-radius:10px;padding:9px 10px;text-align:left;cursor:pointer;display:flex;justify-content:space-between}.theme-option:hover{background:var(--surface-2)}.theme-option small{display:block;color:var(--muted);margin-top:2px}.check{color:var(--accent)}
.toast{position:fixed;right:18px;bottom:18px;background:var(--text);color:var(--surface);padding:10px 14px;border-radius:11px;z-index:100;font-size:12px;box-shadow:var(--shadow);opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.error-card{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 5%,var(--surface));padding:18px}.error-card h3{margin:0 0 6px;color:var(--danger)}.error-card p{margin:0;color:var(--muted);line-height:1.55}.readonly-note{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--warning) 30%,var(--border));background:color-mix(in srgb,var(--warning) 7%,var(--surface));border-radius:11px;color:var(--warning);font-size:11px}
.mobile-menu{display:none}
@media(max-width:1050px){:root{--sidebar:218px}.stats{grid-template-columns:repeat(2,1fr)}.vehicle-row{grid-template-columns:minmax(170px,1.5fr) repeat(3,minmax(76px,.55fr)) 28px}.vehicle-row>.metric:nth-of-type(5){display:none}.used-controls{grid-template-columns:1fr 1fr}.used-row{grid-template-columns:95px minmax(160px,1.4fr) repeat(3,minmax(80px,.55fr)) 28px}.used-row>.metric:nth-of-type(6){display:none}}
@media(max-width:760px){body{overflow:auto}.app{display:block;min-height:100vh;height:auto}.topbar{height:58px;position:sticky;top:0}.sidebar{position:fixed;top:58px;left:0;bottom:0;width:min(86vw,300px);transform:translateX(-105%);transition:.2s;box-shadow:var(--shadow);z-index:70}.sidebar.open{transform:none}.mobile-menu{display:grid}.brand small,.top-user-detail{display:none}.main{padding:18px 14px 60px;overflow:visible}.page-head{display:block}.page-title{font-size:23px}.toolbar{margin-top:12px}.search{min-width:0;width:100%}.stats{grid-template-columns:1fr 1fr}.vehicle-row{grid-template-columns:1fr 82px 26px}.vehicle-row>.metric{display:none}.vehicle-row>.metric:nth-of-type(2){display:block}.vehicle-detail{grid-template-columns:1fr}.used-controls{grid-template-columns:1fr}.used-row{grid-template-columns:92px 1fr 26px}.used-row>.metric{display:none}.top-actions .badge{display:none}.theme-menu{right:10px;top:54px}.readonly-note{margin-top:10px}}
:root[data-density="compact"] .vehicle-row,:root[data-density="compact"] .used-row{padding-top:8px;padding-bottom:8px}:root[data-density="compact"] .card{border-radius:12px}

/* Slice 1.2 — Pricelist mutation contract + gated writes */
.auth-overlay{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:20px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(18px)}
.auth-overlay.open{display:flex}.auth-card{width:min(430px,100%);padding:30px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);text-align:center;color:var(--text)}
.auth-icon{font-size:36px;margin-bottom:12px}.auth-card h2{margin:0 0 10px;font-size:20px}.auth-card p{margin:0 0 18px;color:var(--muted);font-size:13px;line-height:1.65}.auth-card p b{color:var(--accent)}
.primary-btn,.secondary-btn,.auth-link{font:inherit;cursor:pointer}.primary-btn{padding:10px 20px;border:0;border-radius:9px;background:var(--accent);color:var(--accent-contrast,#fff);font-size:12px;font-weight:800}.primary-btn:disabled{opacity:.48;cursor:wait}.secondary-btn{margin-top:12px;padding:8px 14px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);font-size:11px}.auth-msg{min-height:18px;margin-top:12px;font-size:11px;line-height:1.5}.auth-msg.error{color:var(--danger)}.auth-msg.muted{color:var(--faint)}
.auth-tip{margin-top:17px;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--muted);font-size:10px;line-height:1.55;text-align:left}.auth-tip b{color:var(--accent)}
.auth-foot{margin-top:20px;padding-top:14px;border-top:1px dashed var(--border);color:var(--faint);font-size:10px;line-height:1.55}.auth-link{display:inline-block;margin-top:8px;padding:5px 10px;border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:700}

/* Slice 1.3 baseline — Pricelist editor */
.pricelist-toolbar{justify-content:space-between;margin-bottom:12px}.vehicle-row.has-actions{grid-template-columns:minmax(180px,1.4fr) repeat(4,minmax(86px,.55fr)) 74px}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.mini-icon-btn{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--border);background:var(--surface);border-radius:9px;cursor:pointer;color:var(--muted);box-shadow:var(--shadow-sm)}.mini-icon-btn:hover{color:var(--text);border-color:var(--border-strong);transform:translateY(-1px)}.mini-icon-btn.quiet{box-shadow:none;background:transparent}.linked-dot{color:var(--accent);font-weight:700}.ownership-strip{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.mini-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);font-size:9px;font-weight:750;color:var(--muted)}.mini-badge.success{color:var(--success);border-color:color-mix(in srgb,var(--success) 30%,var(--border));background:color-mix(in srgb,var(--success) 7%,var(--surface))}
.trash-list{overflow:hidden}.trash-row{display:grid;grid-template-columns:minmax(220px,1fr) 120px 120px auto;align-items:center;gap:12px;padding:13px 15px;border-top:1px solid var(--border)}.trash-row:first-child{border-top:0}.compact-btn{min-height:32px;font-size:11px}.danger-text{color:var(--danger)!important}
body.drawer-open{overflow:hidden}.editor-backdrop{position:fixed;inset:0;z-index:200;background:rgba(7,10,15,.38);backdrop-filter:blur(4px);opacity:0;transition:.18s}.editor-backdrop.open{opacity:1}.editor-drawer{position:fixed;z-index:201;top:0;right:0;height:100vh;width:min(720px,94vw);background:var(--surface);border-left:1px solid var(--border);box-shadow:-26px 0 70px rgba(0,0,0,.16);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;transform:translateX(102%);transition:.2s ease}.editor-drawer.open{transform:none}.editor-head{display:flex;justify-content:space-between;gap:18px;padding:20px 22px 16px;border-bottom:1px solid var(--border)}.editor-head h2{margin:3px 0 4px;font-size:22px;letter-spacing:-.025em}.editor-head p{margin:0;color:var(--muted);font-size:11px}.eyebrow{font-size:9px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:var(--accent)}.editor-safety{display:flex;align-items:center;gap:10px;padding:9px 22px;background:color-mix(in srgb,var(--warning) 7%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--warning) 22%,var(--border));color:var(--warning)}.editor-safety span{font-size:9px;font-weight:900;letter-spacing:.1em;border:1px solid currentColor;padding:3px 6px;border-radius:999px}.editor-safety p{margin:0;font-size:10px;color:var(--muted)}.editor-drawer form{min-height:0;overflow:auto}.editor-body{padding:18px 22px 26px}.form-section{padding:18px 0;border-top:1px solid var(--border)}.form-section:first-of-type{border-top:0}.form-section-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.form-section-head h3{font-size:12px;margin:0 0 3px}.form-section-head p{font-size:10px;color:var(--faint);line-height:1.45;margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.form-field{display:block}.form-field>span{display:block;margin:0 0 5px;font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--faint);font-weight:800}.form-field input{width:100%;height:39px;border:1px solid var(--border);background:var(--surface-2);border-radius:9px;padding:0 10px;color:var(--text);outline:none}.form-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent);background:var(--surface)}.form-field input:disabled{opacity:.65;cursor:not-allowed}.form-field.error input{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 9%,transparent)}.ownership-card{border:1px solid var(--border);border-radius:13px;background:var(--surface-2);padding:13px 14px;margin-bottom:4px}.ownership-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;margin-bottom:11px}.ownership-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ownership-grid small{display:block;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.07em}.ownership-grid strong{display:block;margin-top:4px;font-size:12px}.ownership-grid p{margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.45}.plan-placeholder{border:1px dashed var(--border);border-radius:10px;padding:18px;color:var(--faint);font-size:10px;text-align:center}.plan-result{border:1px solid var(--border);border-radius:11px;padding:12px}.plan-result.success{border-color:color-mix(in srgb,var(--success) 28%,var(--border));background:color-mix(in srgb,var(--success) 5%,var(--surface))}.plan-result.error{border-color:color-mix(in srgb,var(--danger) 30%,var(--border));background:color-mix(in srgb,var(--danger) 5%,var(--surface))}.plan-title{font-size:11px;font-weight:800;margin-bottom:8px}.plan-msg{font-size:10px;color:var(--danger);margin-top:5px}.plan-warning{font-size:10px;color:var(--warning);line-height:1.5;margin:6px 0}.operation-list{display:grid;gap:6px;margin-top:9px}.operation{display:flex;align-items:center;gap:9px;border-top:1px solid var(--border);padding-top:7px}.operation:first-child{border-top:0;padding-top:0}.op-kind{min-width:58px;text-align:center;padding:3px 5px;border:1px solid var(--border);border-radius:6px;font-size:8px;font-weight:900;letter-spacing:.06em;color:var(--accent);background:var(--surface)}.operation strong{display:block;font-size:10px}.operation small{display:block;margin-top:2px;color:var(--faint);font-size:9px}.invariant-note{margin-top:10px;padding-top:9px;border-top:1px dashed var(--border);font-size:9px;color:var(--muted);line-height:1.5}.editor-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 18px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,var(--surface-2));box-shadow:0 -8px 24px rgba(0,0,0,.035)}.editor-foot strong{display:block;font-size:10px}.editor-foot small{display:block;margin-top:2px;color:var(--faint);font-size:9px}.editor-foot-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.editor-foot .ghost-btn,.editor-foot .primary-btn{min-height:34px;font-size:10px;padding:0 11px}
@media(max-width:1050px){.vehicle-row.has-actions{grid-template-columns:minmax(170px,1.5fr) repeat(3,minmax(76px,.55fr)) 74px}.vehicle-row.has-actions>.metric:nth-of-type(5){display:none}.trash-row{grid-template-columns:minmax(200px,1fr) 110px auto}.trash-row>.metric:nth-of-type(3){display:none}}
@media(max-width:760px){.vehicle-row.has-actions{grid-template-columns:1fr 82px 70px}.vehicle-row.has-actions>.metric{display:none}.vehicle-row.has-actions>.metric:nth-of-type(2){display:block}.editor-drawer{width:100vw}.editor-head{padding:16px}.editor-body{padding:14px 16px 22px}.editor-safety{padding:8px 16px}.form-grid,.ownership-grid{grid-template-columns:1fr}.editor-foot{display:block;padding:11px 14px}.editor-foot-actions{margin-top:10px;justify-content:stretch}.editor-foot-actions>*{flex:1}.trash-row{grid-template-columns:1fr auto}.trash-row>.metric{display:none}}

/* Slice 1.4 controlled-write verification */
.editor-safety.live{color:var(--danger);background:color-mix(in srgb,var(--danger) 6%,var(--surface));border-bottom-color:color-mix(in srgb,var(--danger) 26%,var(--border))}.write-consent{display:flex;align-items:flex-start;gap:8px;margin-top:10px;padding:10px;border:1px solid color-mix(in srgb,var(--danger) 24%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--danger) 4%,var(--surface));font-size:10px;line-height:1.45;color:var(--muted)}.write-consent input{margin-top:2px}.live-write-btn[disabled]{opacity:.45;cursor:not-allowed}.verification-card{margin-top:10px;border:1px solid color-mix(in srgb,var(--success) 30%,var(--border));background:color-mix(in srgb,var(--success) 5%,var(--surface));padding:11px;border-radius:10px;font-size:10px}.verification-card strong{display:block;margin-bottom:5px}.verification-card code{font-size:9px;color:var(--muted);word-break:break-all}.locked-action{font-size:9px;color:var(--faint);padding:7px 9px;border:1px dashed var(--border);border-radius:8px}

/* Slice 1.6 — Used Vehicle AI + controlled-write editor */
.used-primary-toolbar{justify-content:space-between;gap:12px;margin-bottom:12px}.toolbar-group{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.toolbar-hint{font-size:9px;color:var(--faint);line-height:1.4}.used-row.has-actions{grid-template-columns:110px minmax(180px,1.3fr) repeat(4,minmax(90px,.55fr)) 74px}.used-select-plate{display:flex;align-items:center;gap:8px}.print-check{display:grid;place-items:center}.print-check input{width:15px;height:15px;accent-color:var(--accent)}.used-detail{grid-column:1/-1}.used-parity-note{margin-top:10px;color:var(--faint);font-size:9px;line-height:1.5}.hp-adjust{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;white-space:nowrap}.hp-adjust>span{font-size:9px;color:var(--faint)}.hp-adjust input{width:78px;height:28px;padding:0 6px;border:1px solid var(--border);background:var(--surface-2);border-radius:7px;color:var(--text);text-align:right;outline:none}.hp-adjust input:focus{border-color:var(--accent)}.mini-icon-btn.tiny{width:26px;height:26px;border-radius:7px}.form-field select,.form-field textarea,.quick-pick-row select{width:100%;border:1px solid var(--border);background:var(--surface-2);border-radius:9px;padding:0 10px;color:var(--text);outline:none}.form-field select{height:39px}.form-field textarea{padding:10px;resize:vertical;min-height:80px}.form-field select:focus,.form-field textarea:focus,.quick-pick-row select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent);background:var(--surface)}.span-2{grid-column:1/-1}.toggle-stack{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding-bottom:5px}.form-toggle{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted);min-height:34px}.form-toggle input{width:15px;height:15px;accent-color:var(--accent)}.quick-pick-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.quick-pick-row select{height:39px}.compact-preview{margin-bottom:10px}.compact-inst{margin-top:8px}.danger-text{color:var(--danger)!important}.ghost-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}
@media(max-width:1050px){.used-row.has-actions{grid-template-columns:95px minmax(160px,1.4fr) repeat(3,minmax(80px,.55fr)) 74px}.used-row.has-actions>.metric:nth-of-type(6){display:none}}
@media(max-width:760px){.used-primary-toolbar{align-items:flex-start}.used-row.has-actions{grid-template-columns:92px 1fr 70px}.used-row.has-actions>.metric{display:none}.quick-pick-row{grid-template-columns:1fr}.toggle-stack{align-items:flex-start}.span-2{grid-column:auto}}

/* Slice 1.6 — Used Vehicle AI Prompt */
.ai-backdrop{position:fixed;inset:0;background:rgba(4,8,13,.52);backdrop-filter:blur(3px);z-index:210;opacity:0;pointer-events:none;transition:.18s ease}.ai-backdrop.open{opacity:1;pointer-events:auto}.ai-drawer{position:fixed;z-index:211;top:0;right:0;width:min(1040px,94vw);height:100dvh;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow);transform:translateX(105%);transition:.22s ease;display:flex;flex-direction:column}.ai-drawer.open{transform:none}.ai-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--border);background:var(--surface-2)}.segmented{display:flex;gap:3px;padding:3px;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.segmented button{appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12px;padding:7px 10px;border-radius:7px;cursor:pointer}.segmented button.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.ai-body{min-height:0;flex:1;display:grid;grid-template-columns:330px minmax(0,1fr);overflow:hidden}.ai-side{overflow:auto;padding:16px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 52%,var(--surface))}.ai-main{min-width:0;display:flex;flex-direction:column;padding:16px}.form-section.compact{padding:12px;margin-bottom:12px}.form-section.compact .form-section-head{margin-bottom:9px}.form-section.compact .form-field{margin-top:8px}.full{width:100%;margin-top:9px}.tag-cloud{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:9px}.tag-cloud span{padding:4px 7px;border:1px solid var(--border);border-radius:999px;background:var(--bg);font-size:10px;color:var(--muted)}.ai-output-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:10px}.ai-output-head strong{display:block;font-size:15px;color:var(--text)}.ai-output-head small{display:block;color:var(--muted);margin-top:3px}.ai-output{flex:1;min-height:420px;width:100%;resize:none;box-sizing:border-box;border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);padding:16px;font:12px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;outline:none}.ai-output:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.ai-parity-note{margin-top:10px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;color:var(--muted);background:var(--surface-2);font-size:10px;line-height:1.55}.danger-text{color:var(--danger)!important}
@media(max-width:800px){.ai-drawer{width:100vw}.ai-toolbar{align-items:stretch;flex-direction:column}.ai-body{grid-template-columns:1fr;overflow:auto}.ai-side{border-right:0;border-bottom:1px solid var(--border);overflow:visible}.ai-main{min-height:68vh}.ai-output{min-height:360px}.segmented{overflow-x:auto}.segmented button{white-space:nowrap}}

/* Slice 1.8 — Vehicle Management gifts/storage + controlled-write editor */
.vm-contract{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.vm-contract strong{font-size:12px}.vm-contract p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.vm-toolbar{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(4,minmax(125px,.55fr));gap:8px;margin-bottom:14px}.vm-toolbar select{height:40px;border:1px solid var(--border);background:var(--surface);border-radius:11px;padding:0 10px;color:var(--text);outline:none}.vm-brand{margin-bottom:16px}.vm-brand-head{display:flex;align-items:center;justify-content:space-between;padding:3px 2px 7px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.vm-brand-head strong{color:var(--text);font-size:11px}.vm-list{display:grid;gap:7px}.vm-row{display:grid;grid-template-columns:minmax(230px,1.5fr) 80px 82px minmax(140px,.7fr) 78px;align-items:center;padding:12px 14px;gap:10px}.vm-main{min-width:0}.vm-main>strong{display:block;font-size:13px}.vm-main>small{display:block;margin-top:4px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vm-metric span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:var(--faint)}.vm-metric strong{display:block;margin-top:4px;font-size:11px}.vm-actions{display:flex;justify-content:flex-end;gap:5px}.mini-badge.warning{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 30%,var(--border));background:color-mix(in srgb,var(--warning) 7%,var(--surface))}.vm-drawer{width:min(820px,96vw)}.vm-editor-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);padding:0 22px;background:var(--surface-2)}.vm-editor-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:10px 12px;font-size:10px;font-weight:750;cursor:pointer}.vm-editor-tabs button.active{color:var(--accent);border-color:var(--accent)}.vm-variant-card{border:1px solid var(--border);border-radius:12px;padding:12px;margin-bottom:9px;background:var(--surface-2)}.vm-variant-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.vm-variant-head strong{font-size:10px}.vm-variant-card .ownership-strip{margin-top:10px}.vm-drawer code,.vm-contract code{font:9px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--accent)}
@media(max-width:1050px){.vm-toolbar{grid-template-columns:1fr 1fr 1fr}.vm-toolbar .search{grid-column:1/-1}.vm-row{grid-template-columns:minmax(190px,1.4fr) 70px 80px 70px}.vm-row>.vm-metric:nth-of-type(4){display:none}}
@media(max-width:760px){.vm-contract{display:block}.vm-contract>.mini-badge{margin-top:9px}.vm-toolbar{grid-template-columns:1fr 1fr}.vm-row{grid-template-columns:1fr 60px 64px}.vm-row>.vm-metric:nth-of-type(3),.vm-row>.vm-metric:nth-of-type(4){display:none}.vm-drawer{width:100vw}.vm-editor-tabs{padding:0 14px}}

/* Slice 1.8 — Vehicle Mgmt gifts / color Storage / controlled write */
.vm-color-card{padding:12px}.vm-color-row{display:grid;grid-template-columns:42px minmax(120px,.8fr) minmax(210px,1.5fr);gap:8px;align-items:center;padding:7px 0;border-top:1px solid var(--border)}.vm-color-row:first-child{border-top:0}.vm-color-thumb{width:38px;height:38px;border:1px solid var(--border);border-radius:9px;display:grid;place-items:center;background:var(--surface-2);overflow:hidden;color:var(--faint)}.vm-color-thumb img{width:100%;height:100%;object-fit:cover}.vm-color-name,.vm-color-add input,.vm-gift-add input,.vm-gift-add select,.vm-custom-gift input,.vm-custom-gift select,.vm-gift-row select,.vm-gift-row input,.gift-point-grid input{height:36px;border:1px solid var(--border);background:var(--surface-2);border-radius:9px;padding:0 9px;color:var(--text);outline:none}.vm-color-name:focus,.vm-color-add input:focus,.vm-gift-add input:focus,.vm-gift-row select:focus,.vm-gift-row input:focus,.gift-point-grid input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.vm-color-file{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.vm-color-file>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--faint);font-size:9px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.vm-upload{position:relative;display:inline-flex;align-items:center;justify-content:center;height:30px;min-height:30px;padding:0 9px;font-size:9px;box-shadow:none}.vm-upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.vm-upload.disabled{opacity:.45;pointer-events:none}.vm-color-add{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:9px}.vm-color-assign{margin-top:10px}.vm-color-assign>span{display:block;font-size:9px;color:var(--faint);margin-bottom:6px}.vm-color-chips{display:flex;flex-wrap:wrap;gap:5px}.vm-color-chip{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;padding:4px 8px;font-size:9px;cursor:pointer}.vm-color-chip.active{border-color:color-mix(in srgb,var(--success) 45%,var(--border));background:color-mix(in srgb,var(--success) 8%,var(--surface));color:var(--success)}.vm-color-chip:disabled:not(.active){opacity:.36;cursor:not-allowed}
.gift-point-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.vm-gift-list{display:grid;gap:7px}.vm-gift-row{display:grid;grid-template-columns:minmax(180px,1.4fr) 105px 100px 72px 28px;gap:7px;align-items:center;padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.vm-gift-main{min-width:0}.vm-gift-main strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vm-gift-main small{display:block;color:var(--faint);font-size:8px;margin-top:3px}.vm-gift-add{margin-top:12px;padding:11px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--surface-2) 70%,var(--surface))}.vm-gift-add>.ownership-head{margin-bottom:8px}.vm-gift-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border:0;border-top:1px solid var(--border);background:transparent;color:var(--text);padding:8px;cursor:pointer}.vm-gift-option:hover{background:var(--accent-soft)}.vm-gift-option strong{display:block;font-size:10px}.vm-gift-option small{display:block;color:var(--faint);font-size:8px;margin-top:2px}.vm-gift-option>span:last-child{font-size:9px;color:var(--muted);white-space:nowrap}.vm-gift-option:first-child{margin-top:6px}.vm-custom-gift{display:grid;grid-template-columns:minmax(0,1fr) 80px auto;gap:7px;margin-top:9px;padding-top:9px;border-top:1px dashed var(--border)}.vm-live-panel{margin-top:12px;padding:12px;border:1px solid color-mix(in srgb,var(--danger) 30%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--danger) 4%,var(--surface))}.vm-live-panel>strong{display:block;color:var(--danger);font-size:11px}.vm-live-panel>p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.vm-live-panel .live-write-btn{width:100%;margin-top:8px}
@media(max-width:760px){.vm-color-row{grid-template-columns:38px 1fr}.vm-color-file{grid-column:1/-1;justify-content:flex-start}.gift-point-grid{grid-template-columns:1fr 1fr}.vm-gift-row{grid-template-columns:1fr 95px 28px}.vm-gift-row>select:nth-of-type(2),.vm-gift-row>input{grid-row:2}.vm-custom-gift{grid-template-columns:1fr 72px}.vm-custom-gift button{grid-column:1/-1}.vm-color-add{grid-template-columns:1fr}}

/* Slice 1.9 — Costing Compare parity */
.cc-select-row{display:grid;grid-template-columns:auto minmax(260px,1fr) auto;gap:10px;align-items:center;margin-bottom:10px}.seg{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);padding:4px;border-radius:11px;gap:4px}.seg button{border:0;background:transparent;border-radius:8px;padding:7px 10px;color:var(--muted);cursor:pointer;font-size:11px;font-weight:700}.seg button.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.cc-vehicle-select{height:44px;border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;box-shadow:var(--shadow-sm);text-align:left}.cc-vehicle-select:hover{border-color:var(--border-strong)}.cc-vehicle-select span:first-child{min-width:0}.cc-vehicle-select small{display:block;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.cc-vehicle-select strong{display:block;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-summary-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:8px 11px;margin-bottom:14px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);font-size:10px;color:var(--muted)}.cc-summary-strip strong{color:var(--text)}.cc-summary-strip span:first-child{color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.07em}.cc-payment-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.cc-payment-grid.used{grid-template-columns:repeat(3,minmax(0,1fr))}.cc-pay-card{position:relative;padding:15px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.cc-pay-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--accent)}.cc-pay-card[data-tone="cash"]:before{background:var(--success)}.cc-pay-card[data-tone="kedai"]:before{background:#4f8ef7}.cc-pay-card[data-tone="aeon"]:before{background:#9a78d0}.cc-pay-card[data-tone="epp"]:before{background:#d9772b}.cc-pay-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--muted)}.cc-pay-caption{font-size:9px;color:var(--faint);margin-top:10px}.cc-pay-total{font-size:23px;font-weight:800;letter-spacing:-.03em;margin-top:2px}.cc-pay-monthly{font-size:14px;font-weight:750;margin-top:2px}.cc-pay-rows{margin-top:9px}.cc-pay-rows>div{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid var(--border);font-size:10px}.cc-pay-rows span{color:var(--muted)}.cc-pay-rows strong{font-weight:700}.cc-vs-epp{font-size:9px;color:var(--danger);text-align:right;margin-top:7px}.cc-muted-note{font-size:9px;color:var(--faint);margin-top:7px}.cc-save-note{margin-top:8px;padding:7px 8px;background:color-mix(in srgb,var(--success) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--success) 22%,var(--border));border-radius:7px;font-size:9px;color:var(--success)}.cc-select-empty{margin-bottom:14px}.cc-planner,.cc-compare{padding:17px;margin-top:14px}.panel-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.panel-title-row .panel-title{margin-bottom:0}.cc-halfcash{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(180px,.9fr) minmax(220px,1.4fr);gap:12px;align-items:center;padding:12px;margin-top:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.cc-halfcash>div:first-child span{display:block;font-size:11px;font-weight:800}.cc-halfcash>div:first-child small{display:block;color:var(--muted);margin-top:3px}.cc-halfcash-control{display:flex;align-items:center;gap:8px}.cc-halfcash-control .input{width:110px}.cc-halfcash-control small{color:var(--faint);white-space:nowrap}.cc-halfcash-result{font-size:10px;color:var(--muted);text-align:right}.cc-halfcash-result strong{color:var(--success)}.cc-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.cc-split-slot{padding:11px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.cc-split-slot-top{display:grid;grid-template-columns:auto minmax(100px,.7fr) minmax(90px,.6fr);gap:7px;align-items:center}.cc-split-slot-top strong{font-size:10px;color:#d9772b}.cc-split-slot .select,.cc-split-slot .input,.cc-compare-controls .select,.cc-search{height:36px;border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:0 9px;color:var(--text);outline:none;min-width:0}.cc-split-amount{font-size:12px;font-weight:800}.cc-tenures{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:8px}.cc-tenures>small,.cc-tenures>span{font-size:9px;color:var(--faint)}.mini-btn{border:1px solid var(--border);background:var(--surface);border-radius:7px;padding:4px 8px;color:var(--muted);cursor:pointer;font-size:9px}.mini-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:800}.cc-slot-monthly{font-size:9px;color:var(--success);margin-top:6px}.cc-split-status{margin-top:10px;padding:8px 10px;border-radius:9px;font-size:10px}.cc-split-status.ok{color:var(--success);background:color-mix(in srgb,var(--success) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--success) 24%,var(--border))}.cc-split-status.bad{color:var(--danger);background:color-mix(in srgb,var(--danger) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--danger) 22%,var(--border))}.cc-combined{margin-top:7px;color:var(--accent);font-weight:800;font-size:12px}.cc-rule-note{margin-top:8px;color:var(--faint);font-size:9px}.cc-compare-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}.cc-compare-controls label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}.cc-compare-controls .cc-tenures{margin-top:0}.cc-compare-empty{padding:28px;text-align:center;color:var(--faint);border:1px dashed var(--border);border-radius:11px;margin-top:11px}.cc-compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:11px;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--border)}.cc-compare-col{display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px 10px;background:var(--surface)}.cc-compare-col>strong{font-size:10px;margin-bottom:10px}.cc-compare-col>span{font-size:8px;color:var(--faint);margin-top:6px}.cc-compare-col>b{font-size:12px;margin-top:2px}.cc-compare-col>em{font-style:normal;font-size:18px;font-weight:850;color:var(--accent);margin-top:2px}.cc-compare-col[data-tone="kedai"]>em{color:#4f8ef7}.cc-compare-col[data-tone="aeon"]>em{color:#9a78d0}.cc-compare-col[data-tone="epp"]>em{color:#d9772b}.cc-compare-warning{font-size:9px;color:var(--warning);margin-top:7px}.cc-compare.fullscreen{position:fixed!important;inset:14px!important;z-index:120;background:var(--bg);overflow:auto;margin:0!important;padding:24px!important;box-shadow:0 30px 80px rgba(0,0,0,.35)}.cc-compare.fullscreen .cc-compare-grid{max-width:1100px;margin:26px auto 0}.cc-picker-backdrop{position:fixed;inset:0;background:rgba(4,8,13,.58);backdrop-filter:blur(4px);z-index:110;padding:18px;display:flex;align-items:flex-start;justify-content:center}.cc-picker{width:min(620px,100%);max-height:calc(100vh - 36px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:14px}.cc-picker-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.cc-picker-head strong{display:block}.cc-picker-head small{display:block;color:var(--muted);margin-top:2px}.cc-brand-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.chip{border:1px solid var(--border);background:var(--surface-2);color:var(--muted);border-radius:999px;padding:4px 8px;font-size:9px;cursor:pointer}.chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:800}.cc-picker-tools{display:flex;align-items:center;gap:5px;margin:9px 0 6px;color:var(--faint);font-size:9px}.cc-picker-tools small{margin-left:auto}.cc-option-list{overflow:auto;min-height:120px}.cc-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);background:var(--surface-2);border-radius:10px;padding:10px 11px;margin-top:6px;cursor:pointer;text-align:left}.cc-option:hover{border-color:var(--border-strong);background:var(--accent-soft)}.cc-option span{min-width:0}.cc-option strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.cc-option small{display:block;color:var(--faint);margin-top:3px;font-size:9px}.cc-option em{font-style:normal;color:var(--success);font-size:10px;white-space:nowrap}.cc-parity-foot{margin-top:13px;color:var(--faint);font-size:9px;line-height:1.55;text-align:center}.cc-parity-foot code{font:inherit;color:var(--muted)}
@media(max-width:1050px){.cc-payment-grid{grid-template-columns:1fr 1fr}.cc-payment-grid.used{grid-template-columns:repeat(3,1fr)}.cc-halfcash{grid-template-columns:1fr 1fr}.cc-halfcash-result{text-align:left;grid-column:1/-1}}
@media(max-width:760px){.cc-select-row{grid-template-columns:1fr}.cc-source{width:100%}.cc-source button{flex:1}.cc-payment-grid,.cc-payment-grid.used{grid-template-columns:1fr}.cc-split-grid{grid-template-columns:1fr}.cc-halfcash{grid-template-columns:1fr}.cc-halfcash-result{grid-column:auto}.cc-compare-grid{grid-template-columns:1fr}.cc-split-slot-top{grid-template-columns:auto 1fr}.cc-split-slot-top .input,.cc-split-slot-top .cc-split-amount{grid-column:1/-1}.cc-picker-backdrop{padding:0}.cc-picker{width:100%;height:100%;max-height:none;border-radius:0}.cc-compare.fullscreen{inset:0!important;border-radius:0}.panel-title-row{align-items:stretch;flex-direction:column}}

/* ── Slice 1.10 / Make a Deal ─────────────────────────────────────── */
.md-operator-card{padding:22px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start}.md-operator-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:24px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border))}.md-operator-form{grid-column:1/-1;display:grid;grid-template-columns:1.3fr .7fr auto;gap:10px;align-items:end}.md-operator-form label{font-size:9px;font-weight:800;color:var(--faint);text-transform:uppercase;letter-spacing:.07em}.md-operator-form .select,.md-operator-form .input{display:block;width:100%;height:40px;margin-top:5px}.md-gate-note,.md-inline-error{grid-column:1/-1;font-size:10px;line-height:1.5;color:var(--muted)}.md-inline-error{color:var(--danger);padding:8px 10px;border:1px solid color-mix(in srgb,var(--danger) 24%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--danger) 6%,var(--surface))}.readonly-note.warning{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 32%,var(--border));background:color-mix(in srgb,var(--warning) 7%,var(--surface))}
.md-create{padding:18px;margin-bottom:16px}.md-lender-tabs{margin:14px 0 15px;width:100%;display:grid;grid-template-columns:repeat(4,1fr)}.md-lender-tabs button{min-height:38px}.md-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-field em{font-style:normal;font-size:8px;color:var(--faint);text-transform:none;letter-spacing:0;font-weight:500}.form-field select.select,.form-field input.input{width:100%;height:39px;border:1px solid var(--border);background:var(--surface-2);border-radius:9px;padding:0 10px;color:var(--text);outline:none}.form-field select.select:focus,.form-field input.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent);background:var(--surface)}.span-2{grid-column:1/-1}.md-epp-slot{display:grid;grid-template-columns:110px 1fr 1fr 1fr;gap:8px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.md-epp-slot>strong{align-self:center;color:#d9772b;font-size:11px}.md-autofill{margin-top:11px;padding:9px 10px;border:1px solid color-mix(in srgb,var(--success) 24%,var(--border));background:color-mix(in srgb,var(--success) 6%,var(--surface));border-radius:9px;color:var(--success);font-size:10px}.md-parity-note{margin-top:11px;padding:9px 10px;border:1px solid var(--border);background:var(--surface-2);border-radius:9px;color:var(--muted);font-size:9px;line-height:1.55}.md-write-state{font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px;border:1px solid var(--border);border-radius:999px;color:var(--success);background:color-mix(in srgb,var(--success) 6%,var(--surface))}.md-write-state.live{color:var(--warning);background:color-mix(in srgb,var(--warning) 7%,var(--surface));border-color:color-mix(in srgb,var(--warning) 25%,var(--border))}.md-create-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:13px}.md-create-actions [data-md-busy]{margin-right:auto;color:var(--muted);font-size:10px}.md-plan{margin-top:13px}.md-live-confirm{display:flex;gap:8px;align-items:flex-start;margin:12px 0 8px;color:var(--warning);font-size:10px;line-height:1.4}.md-live-confirm input{margin-top:1px}.danger-btn{border:1px solid color-mix(in srgb,var(--danger) 38%,var(--border));background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger);border-radius:8px;padding:8px 12px;font-size:10px;font-weight:800;cursor:pointer}.danger-btn:hover{background:color-mix(in srgb,var(--danger) 18%,var(--surface))}
.md-list{margin-top:18px}.md-deal-list{display:grid;gap:9px;margin-top:10px}.md-deal{padding:13px 14px}.md-deal-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.md-deal-top strong{display:block;font-size:13px}.md-deal-top small{display:block;margin-top:2px;color:var(--faint);font-size:9px}.md-status{font-size:8px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;border:1px solid var(--border);border-radius:999px;padding:4px 7px}.md-status.ok{color:var(--success);border-color:color-mix(in srgb,var(--success) 25%,var(--border));background:color-mix(in srgb,var(--success) 6%,var(--surface))}.md-status.bad{color:var(--danger)}.md-status.warn{color:var(--warning)}.md-status.info{color:var(--accent)}.md-status.muted{color:var(--faint)}.md-deal-main{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.md-deal-main span{font-size:10px;color:var(--muted);padding:3px 6px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px}.md-deal-meta{margin-top:6px;color:var(--faint);font-size:9px}.md-deal-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.ghost-btn.mini{min-height:28px;padding:0 9px;font-size:9px}.ghost-btn.mini.wa{color:#1eaa5c;border-color:color-mix(in srgb,#1eaa5c 35%,var(--border))}.ghost-btn.mini.ok{color:var(--success)}.ghost-btn.mini.bad{color:var(--danger)}.md-action-plan{margin-top:12px;padding:14px}.md-result{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;margin-bottom:12px;border:1px solid var(--border);font-size:10px}.md-result.ok{color:var(--success);background:color-mix(in srgb,var(--success) 6%,var(--surface));border-color:color-mix(in srgb,var(--success) 24%,var(--border))}.md-result.bad{color:var(--danger);background:color-mix(in srgb,var(--danger) 6%,var(--surface));border-color:color-mix(in srgb,var(--danger) 24%,var(--border))}.md-result span{color:var(--muted)}
.md-modal-backdrop{position:fixed;inset:0;z-index:210;background:rgba(5,9,14,.58);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:18px}.md-detail-card{width:min(720px,100%);max-height:calc(100vh - 36px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 28px 80px rgba(0,0,0,.28);overflow:hidden}.md-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}.md-detail-head span{font-size:9px;color:var(--accent);font-weight:800}.md-detail-head h2{margin:3px 0 0;font-size:18px}.md-detail-body{overflow:auto;padding:6px 18px 16px}.md-detail-row{width:100%;display:grid;grid-template-columns:190px minmax(0,1fr);gap:12px;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--border);padding:9px 0;cursor:pointer;color:var(--text)}.md-detail-row:hover{background:var(--surface-2)}.md-detail-row span{color:var(--accent);font-size:10px;font-weight:750}.md-detail-row strong{font-size:11px;font-weight:550;word-break:break-word}.md-detail-row.copied{background:color-mix(in srgb,var(--success) 8%,var(--surface))}.md-detail-foot{padding:10px 18px;border-top:1px solid var(--border);color:var(--faint);font-size:9px}.md-parity-foot{margin-top:14px;text-align:center;color:var(--faint);font-size:9px;line-height:1.55}
@media(max-width:760px){.md-operator-form{grid-template-columns:1fr}.md-lender-tabs{grid-template-columns:1fr 1fr}.md-form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.md-epp-slot{grid-column:auto;grid-template-columns:1fr 1fr}.md-epp-slot>strong{grid-column:1/-1}.md-deal-top{align-items:flex-start}.md-detail-row{grid-template-columns:1fr;gap:3px}.md-modal-backdrop{padding:0}.md-detail-card{height:100%;max-height:none;border-radius:0}}

/* Slice 1.12 · Stock Kit */
.sk2-contract{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 16px;margin-bottom:12px}.sk2-contract strong{font-size:12px}.sk2-contract p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.sk2-tabs{display:flex;gap:3px;border-bottom:1px solid var(--border);margin-bottom:14px;overflow-x:auto}.sk2-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:9px 12px;font:inherit;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}.sk2-tabs button.active{color:var(--accent);border-color:var(--accent)}.sk2-toolbar{margin-bottom:12px}.sk2-toolbar select{height:40px;border:1px solid var(--border);background:var(--surface);border-radius:11px;padding:0 10px;color:var(--text);outline:none}.sk2-list{display:grid;gap:8px}.sk2-item{padding:0;overflow:hidden}.sk2-item-head{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(300px,1fr) auto;align-items:center;gap:14px;padding:13px 15px}.sk2-item-main{min-width:0}.sk2-item-main>strong{display:block;font-size:13px;margin-top:3px}.sk2-item-main>small{display:block;margin-top:4px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk2-barcode{font:9px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}.sk2-metrics{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(82px,1fr);gap:12px}.sk2-metrics span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:var(--faint)}.sk2-metrics strong{display:block;margin-top:4px;font-size:11px;text-align:left}.sk2-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.sk2-gift{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--muted);white-space:nowrap}.sk2-gift input{accent-color:var(--accent)}.sk2-lines{border-top:1px solid var(--border);background:var(--surface-2)}.sk2-line{display:grid;grid-template-columns:22px minmax(220px,1.5fr) repeat(3,minmax(72px,.45fr));align-items:center;gap:10px;padding:8px 15px;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);font-size:10px}.sk2-line:first-child{border-top:0}.sk2-line>div strong{display:block;font-size:10px}.sk2-line>div small{display:block;color:var(--faint);margin-top:2px}.sk2-line-star{color:var(--warning);text-align:center}.sk2-trash{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sk2-trash .detail-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:10px}.sk2-log-list{overflow:hidden}.sk2-log{padding:10px 12px;border-top:1px solid var(--border)}.sk2-log:first-child{border-top:0}.sk2-log strong{font-size:10px;margin-left:7px}.sk2-log small{display:block;margin-top:4px;color:var(--faint);font-size:9px}.sk2-line-edit{margin-bottom:10px}.data-table td small{display:block;margin-top:3px;color:var(--faint);font-size:9px}.data-table a{color:var(--success);text-decoration:none}.data-table button:disabled{opacity:.35;cursor:not-allowed}.table-card{overflow:auto}.table-card .data-table{min-width:640px}
@media(max-width:960px){.sk2-item-head{grid-template-columns:minmax(180px,1.4fr) minmax(180px,.8fr) auto}.sk2-metrics{grid-auto-columns:minmax(70px,1fr)}.sk2-line{grid-template-columns:20px 1fr repeat(2,72px)}.sk2-line>span:last-child{display:none}}
@media(max-width:760px){.sk2-contract{display:block}.sk2-contract .ownership-strip{margin-top:9px}.sk2-item-head{grid-template-columns:1fr auto}.sk2-metrics{grid-column:1/-1;grid-row:2}.sk2-actions{grid-column:2;grid-row:1}.sk2-line{grid-template-columns:18px 1fr 70px}.sk2-line>span:nth-of-type(2),.sk2-line>span:nth-of-type(4){display:none}.sk2-trash{grid-template-columns:1fr}.sk2-trash .detail-row{grid-template-columns:90px 1fr auto}.sk2-toolbar .search{width:100%}}

/* Slice 1.12 · Stock Kit device tools + shared-device personal actor */
.personal-session-banner{position:fixed;left:0;right:0;top:0;z-index:520;min-height:40px;padding:7px 14px;display:flex;align-items:center;justify-content:center;gap:14px;background:color-mix(in srgb,var(--success) 14%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--success) 36%,var(--border));color:var(--text);font-size:11px;box-shadow:var(--shadow-sm)}
.personal-session-banner b{color:var(--success)}.personal-session-banner button{border:1px solid color-mix(in srgb,var(--success) 40%,var(--border));background:var(--surface);color:var(--success);border-radius:8px;padding:5px 9px;font:inherit;font-size:10px;font-weight:800;cursor:pointer}
html.personal-session-active .app{height:calc(100vh - 40px);margin-top:40px}
.personal-qr-modal{position:fixed;inset:0;z-index:540;display:grid;place-items:center;padding:18px;background:rgba(5,9,14,.62);backdrop-filter:blur(5px)}.personal-qr-card{width:min(430px,100%);background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:0 28px 90px rgba(0,0,0,.3);padding:22px;text-align:center}.personal-qr-card h3{margin:8px 0 7px;font-size:19px}.personal-qr-card p{margin:0 auto 15px;max-width:360px;color:var(--muted);font-size:10px;line-height:1.55}.personal-qr-icon{font-size:24px}.personal-qr-box{width:222px;min-height:222px;margin:0 auto 12px;padding:10px;border:1px solid var(--border);border-radius:14px;background:#fff;display:grid;place-items:center}.personal-qr-box img,.personal-qr-box canvas{max-width:200px!important;max-height:200px!important}.personal-qr-status{min-height:28px;color:var(--muted);font-size:10px}.personal-qr-card>.ghost-btn{margin-top:8px}.error-text{color:var(--danger)}
.sk2-camera-overlay{position:fixed;inset:0;z-index:550;display:grid;place-items:center;background:rgba(3,7,12,.82);backdrop-filter:blur(6px);padding:18px}.sk2-camera-card{width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:0 32px 100px rgba(0,0,0,.45)}.sk2-camera-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border)}.sk2-camera-head span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:850}.sk2-camera-head h3{margin:3px 0 0;font-size:17px}.sk2-video-wrap{position:relative;margin:14px;background:#05080d;border-radius:14px;overflow:hidden;aspect-ratio:4/3}.sk2-video-wrap.photo{aspect-ratio:4/3}.sk2-video-wrap video{display:block;width:100%;height:100%;object-fit:cover}.sk2-reticle{position:absolute;left:14%;right:14%;top:24%;bottom:24%;border:2px solid rgba(255,255,255,.82);border-radius:16px;box-shadow:0 0 0 999px rgba(0,0,0,.24),inset 0 0 24px rgba(255,255,255,.08)}.sk2-reticle:before,.sk2-reticle:after{content:"";position:absolute;left:10%;right:10%;height:1px;background:rgba(255,255,255,.32)}.sk2-reticle:before{top:33%}.sk2-reticle:after{bottom:33%}.sk2-camera-status{padding:0 16px 12px;color:var(--muted);font-size:10px;text-align:center}.sk2-camera-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}
.sk2-photo-editor{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.sk2-photo-preview{width:150px;aspect-ratio:4/3;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface);display:grid;place-items:center}.sk2-photo-preview img{width:100%;height:100%;object-fit:cover}.sk2-photo-empty{color:var(--faint);font-size:10px}.sk2-photo-actions{display:flex;gap:7px;flex-wrap:wrap}.sk2-photo-editor>small{grid-column:2;color:var(--faint);font-size:9px;line-height:1.45}.sk2-photo-actions .danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,var(--border))}.sk2-line-photo{margin-top:10px}.form-label{display:block;margin-bottom:5px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.sk2-item.scan-hit{outline:2px solid var(--accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 14%,transparent),var(--shadow-sm);animation:sk2scanpulse .9s ease-out}@keyframes sk2scanpulse{0%{transform:scale(.995)}50%{transform:scale(1.004)}100%{transform:scale(1)}}
@media(max-width:760px){.personal-session-banner{justify-content:space-between;padding:6px 8px;font-size:9px;gap:8px}.personal-session-banner span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.personal-session-banner button{white-space:nowrap;font-size:9px}.personal-qr-modal,.sk2-camera-overlay{padding:0}.personal-qr-card{border-radius:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.sk2-camera-card{width:100%;height:100%;max-height:none;border-radius:0;display:flex;flex-direction:column}.sk2-video-wrap{flex:1;min-height:0;margin:10px}.sk2-photo-editor{grid-template-columns:100px 1fr}.sk2-photo-preview{width:100px}.sk2-photo-editor>small{grid-column:1/-1}.sk2-camera-foot{padding-bottom:max(12px,env(safe-area-inset-bottom))}}

/* ── Slice 1.13 · Service Core / Worker CV adapter ─────────────────────── */
.sv2-busy{pointer-events:none;opacity:.72}.sv2-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.sv2-toolbar{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:12px}.sv2-toolbar .search-input{flex:1;min-width:180px}.sv2-toolbar select{min-width:165px}.sv2-health{font-size:10px;font-weight:800;letter-spacing:.04em;margin-left:auto;color:var(--faint)}.sv2-health.ok{color:var(--success)}.sv2-health.bad{color:var(--danger)}
.sv2-layout{display:grid;grid-template-columns:minmax(300px,.76fr) minmax(460px,1.35fr);gap:14px;align-items:start}.sv2-list{padding:8px;max-height:calc(100vh - 305px);overflow:auto;position:sticky;top:14px}.sv2-day{margin-bottom:12px}.sv2-day-head{display:flex;justify-content:space-between;align-items:center;padding:7px 9px;font-size:10px;color:var(--faint);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.sv2-order-card{display:block;width:100%;text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);padding:11px 12px;margin:5px 0;color:var(--text);cursor:pointer;transition:.14s ease}.sv2-order-card:hover{border-color:var(--border-strong);background:var(--surface-raised);transform:translateY(-1px)}.sv2-order-card.selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}.sv2-order-top,.sv2-order-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.sv2-order-top strong{font-size:14px;letter-spacing:.02em}.sv2-order-no{font-size:10px;color:var(--accent);margin-top:6px}.sv2-order-name{font-size:12px;margin-top:4px}.sv2-order-name small,.sv2-order-foot{font-size:10px;color:var(--muted)}.sv2-order-foot{margin-top:8px}.sv2-status{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:850;white-space:nowrap;background:var(--surface-raised);color:var(--muted);border:1px solid var(--border)}.sv2-status.open{color:var(--warning)}.sv2-status.in_progress{color:var(--accent)}.sv2-status.ready_for_checkout{color:var(--success)}.sv2-status.completed{color:var(--success);opacity:.82}.sv2-status.cancelled{color:var(--danger)}.sv2-mini{display:inline-flex;margin-top:8px;font-size:9px;font-weight:750}.sv2-mini.ok{color:var(--success)}.sv2-mini.warn{color:var(--warning)}
.sv2-detail{padding:18px;min-height:420px}.sv2-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border);padding-bottom:14px}.sv2-detail-head h2{margin:2px 0;font-size:23px}.sv2-detail-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.eyebrow{font-size:9px;color:var(--accent);font-weight:850;text-transform:uppercase;letter-spacing:.1em}.sv2-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.sv2-meta-grid>div{background:var(--surface-raised);border:1px solid var(--border);border-radius:10px;padding:10px}.sv2-meta-grid span{display:block;font-size:9px;color:var(--faint);text-transform:uppercase;letter-spacing:.05em}.sv2-meta-grid strong{display:block;margin-top:4px;font-size:12px}.sv2-note{border-left:2px solid var(--accent);padding:8px 10px;margin:8px 0;background:var(--surface-raised);border-radius:0 8px 8px 0}.sv2-note span{font-size:9px;text-transform:uppercase;color:var(--faint);font-weight:800}.sv2-note p{margin:4px 0 0;font-size:11px}.sv2-section-head{display:flex;justify-content:space-between;align-items:end;margin:18px 0 8px}.sv2-section-head h3{font-size:13px;margin:0}.sv2-section-head span{font-size:9px;color:var(--faint)}.sv2-lines{border:1px solid var(--border);border-radius:12px;overflow:hidden}.sv2-line{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px;border-top:1px solid var(--border)}.sv2-line:first-child{border-top:0}.sv2-check{width:27px;height:27px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface);color:var(--muted);cursor:pointer}.sv2-check.done{background:var(--success);color:#fff;border-color:transparent}.sv2-line-main strong,.sv2-line-main small{display:block}.sv2-line-main strong{font-size:11px}.sv2-line-main small{font-size:9px;color:var(--muted);margin-top:2px}.sv2-line-right{text-align:right}.sv2-line-right strong{display:block;font-size:11px}.link-btn{appearance:none;border:0;background:none;color:var(--accent);padding:2px 0;font-size:9px;cursor:pointer}.sv2-signature-note{margin:10px 0;background:color-mix(in srgb,var(--success) 9%,var(--surface));border:1px solid color-mix(in srgb,var(--success) 25%,var(--border));padding:8px 10px;border-radius:9px;color:var(--success);font-size:10px}.sv2-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.ghost-btn.danger{color:var(--danger)}.sv2-detail-tabs details{border-top:1px solid var(--border);padding:10px 0}.sv2-detail-tabs summary{cursor:pointer;font-size:10px;font-weight:800}.sv2-chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.sv2-chip{font-size:9px;padding:5px 8px;border-radius:999px;background:var(--surface-raised);border:1px solid var(--border)}.muted{font-size:10px;color:var(--faint)}.sv2-log>div{display:grid;grid-template-columns:145px 1fr 1.2fr;gap:8px;border-top:1px solid var(--border);padding:7px 0;font-size:9px}.sv2-log time{color:var(--faint)}.sv2-foot{font-size:9px;color:var(--faint);text-align:center;margin:14px 0 30px}.sv2-operator-gate{max-width:740px;margin:50px auto;padding:20px}.sv2-operator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.sv2-operator{border:1px solid var(--border);border-radius:11px;background:var(--surface-raised);padding:12px;text-align:left;color:var(--text);cursor:pointer}.sv2-operator strong,.sv2-operator small{display:block}.sv2-operator small{font-size:9px;color:var(--muted);margin-top:4px}.sv2-pin-box{border-top:1px solid var(--border);padding-top:14px;margin-top:14px}
.sv2-modal{position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:120;display:grid;place-items:center;padding:18px}.sv2-dialog{width:min(720px,96vw);max-height:90vh;overflow:auto;padding:18px}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.dialog-head h3{margin:0}.sv2-dialog canvas{display:block;width:100%;height:230px;background:#fff;border:1px solid var(--border);border-radius:10px;touch-action:none;margin:10px 0}.sv2-pay-methods{display:flex;gap:8px;flex-wrap:wrap}.sv2-pay-methods label{border:1px solid var(--border);border-radius:9px;padding:8px 10px;font-size:10px}.sv2-pay-line{display:grid;grid-template-columns:1fr 150px;gap:8px;align-items:center;border-top:1px solid var(--border);padding:8px 0;font-size:10px}.sv2-report-toolbar{display:flex;align-items:end;gap:8px;padding:12px;margin-bottom:12px}.sv2-report-toolbar label{min-width:190px}.sv2-report-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px}.sv2-report-grid{grid-template-columns:1fr 1.5fr;margin-bottom:12px}.sv2-anomaly{display:flex;gap:10px;padding:8px;border-top:1px solid var(--border);font-size:10px}.sv2-anomaly.danger{color:var(--danger)}.sv2-anomaly.warning{color:var(--warning)}.sv2-clean{font-size:11px;color:var(--success);padding:12px}.num{text-align:right}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:10px}.data-table th,.data-table td{padding:8px;border-bottom:1px solid var(--border);text-align:left}.data-table th{color:var(--faint);font-size:9px;text-transform:uppercase}.data-table .num{text-align:right}
@media(max-width:1050px){.sv2-layout{grid-template-columns:1fr}.sv2-list{position:static;max-height:390px}.sv2-meta-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.sv2-stats,.sv2-report-stats{grid-template-columns:repeat(2,1fr)}.sv2-toolbar{flex-wrap:wrap}.sv2-toolbar .search-input{width:100%;flex-basis:100%}.sv2-health{margin-left:0}.sv2-meta-grid{grid-template-columns:1fr 1fr}.sv2-operator-grid{grid-template-columns:1fr}.sv2-report-grid{grid-template-columns:1fr}.sv2-report-toolbar{align-items:stretch;flex-direction:column}.sv2-log>div{grid-template-columns:1fr}.sv2-line{grid-template-columns:30px 1fr}.sv2-line-right{grid-column:2;text-align:left}.sv2-detail{padding:13px}}
@media print{.sidebar,.topbar,.sv2-toolbar,.sv2-report-toolbar,.sv2-actions{display:none!important}.main{margin:0!important}.page{padding:0!important}.card{box-shadow:none!important}.sv2-report-stats{grid-template-columns:repeat(4,1fr)}}
.sv2-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:360px;overflow:auto}.sv2-picker label{display:grid;grid-template-columns:20px 1fr;gap:3px 7px;align-items:center;border:1px solid var(--border);padding:9px;border-radius:9px}.sv2-picker label small{grid-column:2;color:var(--faint);font-size:9px}.sv2-commission{display:grid;gap:7px}.sv2-commission label{display:grid;grid-template-columns:1fr 110px 22px;align-items:center;gap:8px;border-bottom:1px solid var(--border);padding:7px 0}.sv2-commission input{text-align:right}@media(max-width:600px){.sv2-picker{grid-template-columns:1fr}}
.sv2-report-tabs{display:flex;gap:7px;margin:0 0 12px}.sv2-report-tabs .active{border-color:var(--accent);color:var(--accent)}.sv2-report-total{text-align:right;font-weight:800;font-size:11px;margin-top:10px}

/* Slice 1.14 — Service Builder + Admin */
.sv2-builder-modal,.sv2-admin-modal{align-items:flex-start;overflow:auto;padding:3vh 18px}.sv2-builder,.sv2-admin-dialog{width:min(1180px,96vw);max-height:94vh;overflow:auto;margin:auto;padding:18px}.sv2-builder-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:16px}.sv2-builder-form,.sv2-builder-items{min-width:0}.sv2-builder-items{border:1px solid var(--line);border-radius:16px;padding:12px;background:var(--surface-2)}.sv2-builder-search{display:flex;gap:10px;align-items:center;margin-bottom:10px}.sv2-builder-search .search-input{flex:1}.sv2-option{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;border:1px solid var(--line);background:var(--surface);padding:10px 12px;border-radius:12px;margin-bottom:7px;color:inherit;cursor:pointer}.sv2-option:hover,.sv2-option.picked{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.sv2-option span:first-child,.sv2-option-price{display:flex;flex-direction:column;gap:2px}.sv2-option small,.sv2-picked-line small,.sv2-admin-row small,.sv2-binding small,.sv2-consult-row small,.sv2-price-card small{color:var(--muted)}.sv2-option-price{text-align:right;white-space:nowrap}.sv2-builder-picked{margin-top:16px}.sv2-picked-line{display:grid;grid-template-columns:minmax(220px,1fr) 78px 105px minmax(125px,auto) 110px 36px;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.sv2-picked-line>div{display:flex;flex-direction:column}.sv2-picked-line label{font-size:11px;color:var(--muted)}.sv2-picked-line input[type=number]{width:100%;margin-top:3px}.sv2-picked-line>.check{display:flex;align-items:center;gap:6px;color:var(--text)}.sv2-picked-line>.check input{width:auto}.sv2-picked-line>span{font-weight:700;text-align:right;display:flex;flex-direction:column}.sv2-price-warn{color:var(--warning,#a56400)}.sv2-admin-tabs{display:flex;gap:7px;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:14px;position:sticky;top:-18px;background:var(--surface);z-index:2;padding-top:4px}.sv2-admin-tabs button{border:1px solid var(--line);background:transparent;color:inherit;border-radius:999px;padding:8px 12px;cursor:pointer}.sv2-admin-tabs button.active{background:var(--accent);color:var(--accent-contrast,#fff);border-color:var(--accent)}.sv2-admin-split{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px}.sv2-admin-split aside{border-right:1px solid var(--line);padding-right:12px}.sv2-admin-row{display:flex;width:100%;justify-content:space-between;text-align:left;gap:8px;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;padding:10px 8px;cursor:pointer}.sv2-admin-row span{display:flex;flex-direction:column;gap:2px}.sv2-admin-row.selected{background:var(--surface-2);border-radius:10px;border-bottom-color:transparent}.sv2-binding,.sv2-consult-row{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.sv2-binding>span:first-child,.sv2-consult-row>span:first-child{display:flex;flex:1;min-width:0;flex-direction:column}.sv2-bind-new{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.sv2-pricing-head{margin-bottom:10px}.sv2-admin-note{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--muted);margin:10px 0 14px}.sv2-pricing-matrix{display:grid;gap:10px}.sv2-price-card{display:grid;grid-template-columns:minmax(180px,1fr) 110px 110px 110px auto auto;gap:10px;align-items:end;border:1px solid var(--line);border-radius:14px;padding:12px}.sv2-price-card>div{display:flex;flex-direction:column}.sv2-price-card label{font-size:11px;color:var(--muted)}.sv2-price-card .check{display:flex;gap:6px;align-items:center;color:var(--text);padding-bottom:8px}.sv2-consult-list{display:grid;gap:2px}.sv2-consult-row input{width:120px}.sv2-builder .form-grid textarea{width:100%}
@media(max-width:900px){.sv2-builder-grid,.sv2-admin-split{grid-template-columns:1fr}.sv2-admin-split aside{border-right:0;border-bottom:1px solid var(--line);padding:0 0 10px;max-height:230px;overflow:auto}.sv2-picked-line{grid-template-columns:minmax(170px,1fr) 70px 95px}.sv2-picked-line>.check,.sv2-picked-line>span,.sv2-picked-line>.icon-btn{grid-column:auto}.sv2-price-card{grid-template-columns:1fr 1fr}.sv2-price-card>div{grid-column:1/-1}.sv2-admin-tabs{top:-18px;overflow:auto}.sv2-builder-modal,.sv2-admin-modal{padding:0}.sv2-builder,.sv2-admin-dialog{width:100vw;max-height:100vh;min-height:100vh;border-radius:0}.sv2-consult-row{flex-wrap:wrap}}

/* ===== P2.1 Team core read-parity ===== */
.team-readonly-note{max-width:520px;line-height:1.45}.team-stats{align-items:stretch}.team-stat-button{appearance:none;text-align:left;font:inherit;color:inherit;width:100%;cursor:pointer}.team-stat-button:hover{transform:translateY(-1px);border-color:var(--accent)}
.team-home-grid{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr)}.team-ann-mini-list{display:flex;flex-direction:column;gap:8px}.team-ann-mini{appearance:none;border:1px solid var(--border);background:var(--surface2);border-radius:10px;padding:11px 12px;text-align:left;color:var(--text);cursor:pointer}.team-ann-mini span{display:block;font-size:13px;font-weight:750}.team-ann-mini small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.team-ann-mini:hover{border-color:var(--accent)}.panel-actions{margin-top:12px}.ok-text{color:var(--success)}.warn-text{color:var(--warning)}
.team-summary-strip{display:flex;gap:22px;align-items:center;flex-wrap:wrap;padding:12px 16px;margin-bottom:12px;color:var(--muted);font-size:12px}.team-summary-strip b{color:var(--text);font-size:16px}.team-ann-list{display:flex;flex-direction:column;gap:12px}.team-ann-card{padding:16px 18px}.team-ann-card.pinned{box-shadow:inset 3px 0 0 var(--warning)}.team-pin{font-size:10px;font-weight:800;color:var(--warning);text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.team-ann-title{font-size:16px;font-weight:850;color:var(--text)}.team-ann-content{white-space:pre-wrap;margin-top:8px;color:var(--text2);font-size:13px;line-height:1.6}.team-ann-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:10px;margin-top:9px}.team-ann-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.team-ann-admin{margin-left:auto;color:var(--muted);font-size:10px;text-align:right}.team-reader-list{margin-top:2px;max-width:340px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.team-cal-toolbar{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:14px}.team-cal-toolbar strong{min-width:180px;text-align:center}.team-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--border);border-top:1px solid var(--border);overflow:hidden;border-radius:10px}.team-cal-hdr{padding:8px;text-align:center;font-size:10px;font-weight:850;color:var(--muted);background:var(--surface2);border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.team-cal-day{min-height:112px;padding:7px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface)}.team-cal-day.muted{background:var(--surface2);opacity:.45}.team-cal-day.today{box-shadow:inset 0 0 0 2px var(--accent)}.team-cal-day.sunday{background:color-mix(in srgb,var(--surface2) 72%,transparent)}.team-cal-num{font-size:11px;font-weight:850;color:var(--text);margin-bottom:5px}.team-cal-event{font-size:9px;line-height:1.25;padding:4px 5px;border-radius:6px;margin:3px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--surface2);border:1px solid var(--border)}.team-cal-event.task{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));color:var(--accent)}.team-cal-event.leave{border-color:color-mix(in srgb,var(--success) 45%,var(--border));color:var(--success)}.team-cal-event.holiday{border-color:color-mix(in srgb,var(--warning) 45%,var(--border));color:var(--warning)}.team-cal-event.rest{opacity:.72}.team-cal-more{font-size:9px;color:var(--muted);margin-top:4px}
.team-profile-grid{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr)}.team-profile-head{display:flex;gap:14px;align-items:center;margin-bottom:15px}.team-profile-head h2{margin:0;font-size:18px}.team-profile-head p{margin:3px 0;color:var(--muted);font-size:12px}.team-profile-head small{color:var(--faint)}.team-profile-avatar,.team-profile-photo{width:66px;height:66px;border-radius:50%;flex:0 0 66px}.team-profile-avatar{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),var(--accent2));color:white;font-size:26px;font-weight:900}.team-profile-photo{object-fit:cover;border:1px solid var(--border)}.team-profile-list{border-top:1px solid var(--border)}.team-profile-row{display:grid;grid-template-columns:145px minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px solid var(--border);font-size:12px}.team-profile-row span{color:var(--muted)}.team-profile-row strong{font-weight:700;overflow-wrap:anywhere}.team-identity-rule{margin-top:14px;padding:11px 12px;border:1px solid var(--border);background:var(--surface2);border-radius:10px;color:var(--muted);font-size:11px;line-height:1.55}.team-identity-rule code{color:var(--text)}.team-consent{padding:10px 12px;border-radius:9px;border:1px solid var(--border);font-size:12px}.team-consent.ok{color:var(--success);background:color-mix(in srgb,var(--success) 8%,transparent)}.team-consent.pending{color:var(--warning);background:color-mix(in srgb,var(--warning) 8%,transparent)}.team-digital-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(260px,1.2fr);gap:20px;align-items:start}.team-digital-card h3{margin:10px 0 4px;font-size:17px}.team-digital-card p{color:var(--muted);font-size:12px;line-height:1.5}.team-card-status{font-size:11px;font-weight:800}.team-card-status.active{color:var(--success)}.team-card-status.inactive{color:var(--warning)}.team-card-preview{display:inline-block;text-decoration:none;margin-top:8px}.team-card-alias{margin-top:8px;color:var(--muted);font-size:10px;overflow-wrap:anywhere}.team-card-links{display:flex;flex-direction:column;gap:7px}.team-card-link{display:grid;grid-template-columns:100px minmax(0,1fr);gap:10px;padding:8px 10px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;font-size:11px}.team-card-link span{color:var(--muted)}.team-card-link strong{overflow-wrap:anywhere}
@media(max-width:850px){.team-home-grid,.team-profile-grid,.team-digital-card{grid-template-columns:1fr}.team-cal-day{min-height:88px;padding:5px}.team-cal-event{font-size:8px}.team-profile-row{grid-template-columns:120px minmax(0,1fr)}}
@media(max-width:600px){.team-cal-grid{font-size:9px}.team-cal-hdr{padding:5px 2px}.team-cal-day{min-height:76px;padding:4px}.team-cal-event{padding:3px;font-size:7px}.team-cal-num{font-size:10px}.team-summary-strip{gap:14px}.team-ann-card{padding:14px}.team-profile-row{grid-template-columns:1fr;gap:2px}.team-ann-admin{margin-left:0;text-align:left;width:100%}}

/* P2.2 Team Attendance */
.att-toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:12px 14px;margin-bottom:12px}.att-toolbar label,.att-form-grid label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:10px;font-weight:750}.att-toolbar input,.att-toolbar select,.att-form-grid input,.att-form-grid select,.att-form-grid textarea{background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:8px 9px;font:inherit}.att-stats{grid-template-columns:repeat(5,minmax(100px,1fr));margin-bottom:12px}.att-table-wrap{overflow:auto;max-width:100%}.att-table{width:100%;border-collapse:collapse;min-width:860px;font-size:11px}.att-table th{position:sticky;top:0;background:var(--surface2);color:var(--muted);text-align:left;padding:8px;border-bottom:1px solid var(--border);z-index:1}.att-table td{padding:7px 8px;border-bottom:1px solid var(--border);vertical-align:top}.att-table td:first-child small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.att-write-open{border-color:color-mix(in srgb,var(--warning) 55%,var(--border));color:var(--warning)}.att-pending{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(220px,1.4fr) auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.att-pending div span,.att-pending div small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.att-pending textarea{min-height:58px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:8px}.att-msg{min-height:20px;margin-top:8px;font-size:11px}.att-msg.ok{color:var(--success)}.att-msg.bad{color:var(--danger,#f87171)}.att-admin-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.att-admin-tabs .active{border-color:var(--accent);color:var(--accent)}.att-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.att-form-grid .wide{grid-column:1/-1}.att-form-grid .check{flex-direction:row;align-items:center;padding-top:21px}.att-cards-grid{grid-template-columns:1fr 1fr;margin-bottom:12px}.att-card-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(130px,.7fr) auto;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid var(--border)}.att-card-row small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.att-card-row select{background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:7px}.badge.bad{color:#f87171;border-color:color-mix(in srgb,#f87171 40%,var(--border));background:color-mix(in srgb,#f87171 8%,transparent)}.badge.info{color:var(--accent)}
@media(max-width:850px){.att-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.att-cards-grid,.att-form-grid{grid-template-columns:1fr}.att-form-grid .wide{grid-column:auto}.att-pending{grid-template-columns:1fr}.att-card-row{grid-template-columns:1fr auto}.att-card-row select{grid-column:1/-1}}

/* P2.3 Team Leave */
.leave-toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:12px 14px;margin-bottom:12px}.leave-toolbar label,.leave-form-grid label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:10px;font-weight:750}.leave-toolbar input,.leave-toolbar select,.leave-form-grid input,.leave-form-grid select,.leave-form-grid textarea{background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:8px 9px;font:inherit}.leave-stats{grid-template-columns:repeat(4,minmax(130px,1fr));margin-bottom:12px}.leave-confirm-date{font-size:15px!important}.leave-main-grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;margin-bottom:12px}.leave-list{display:flex;flex-direction:column}.leave-request{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--border)}.leave-request:last-child{border-bottom:0}.leave-request-main{min-width:0}.leave-request-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.leave-request-title strong{font-size:13px}.leave-dates,.leave-user{margin-top:5px;color:var(--muted);font-size:10px}.leave-request p{margin:7px 0;color:var(--text2);font-size:11px;line-height:1.5}.leave-request small{color:var(--faint);font-size:9px}.leave-request-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.leave-write-open{border-color:color-mix(in srgb,var(--warning) 55%,var(--border));color:var(--warning)}.leave-msg{min-height:20px;margin-top:9px;font-size:11px}.leave-msg.ok{color:var(--success)}.leave-msg.bad{color:var(--danger,#f87171)}.leave-dialog{width:min(720px,calc(100vw - 24px));max-height:90vh;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);padding:0;box-shadow:var(--shadow-lg)}.leave-dialog::backdrop{background:rgba(0,0,0,.52);backdrop-filter:blur(3px)}.leave-form{padding:18px}.leave-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:14px}.leave-dialog-head h2{margin:2px 0 0}.leave-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.leave-form-grid .wide{grid-column:1/-1}.leave-form-grid .check{flex-direction:row;align-items:center;padding-top:22px}.leave-form-grid .hidden,.hidden{display:none!important}.leave-rule-note{margin-top:12px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);color:var(--muted);font-size:10px;line-height:1.5}.leave-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.leave-attachment-preview{display:flex;gap:7px;flex-wrap:wrap}.leave-attachment-preview img{width:70px;height:54px;object-fit:cover;border-radius:7px;border:1px solid var(--border)}.leave-adjust-table{min-width:560px}.leave-usage-table{min-width:980px}.leave-usage-table td:first-child small{display:block;color:var(--faint);font-size:9px;margin-top:2px}
@media(max-width:900px){.leave-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.leave-main-grid{grid-template-columns:1fr}.leave-form-grid{grid-template-columns:1fr 1fr}.leave-form-grid .wide{grid-column:1/-1}}
@media(max-width:600px){.leave-stats{grid-template-columns:1fr 1fr}.leave-request{flex-direction:column}.leave-request-actions{justify-content:flex-start}.leave-form-grid{grid-template-columns:1fr}.leave-form-grid .wide{grid-column:auto}.leave-dialog{width:100vw;max-width:none;max-height:100vh;height:100vh;border-radius:0}.leave-form{overflow:auto;height:100%;box-sizing:border-box}.leave-toolbar .readonly-note{width:100%}}

/* P2.4A Users */
.team-users-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:12px}.team-users-search{flex:1;min-width:220px}.team-users-boundary{font-size:12px;line-height:1.55;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);margin-bottom:12px}.team-users-table-wrap{overflow:auto}.team-users-table{width:100%;border-collapse:collapse;min-width:880px}.team-users-table th,.team-users-table td{padding:11px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.team-users-table th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.team-user-name{display:flex;flex-direction:column;gap:3px}.team-user-name small{color:var(--muted)}.team-user-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:18px}.team-user-modal-backdrop{position:absolute;inset:0;background:rgba(10,15,25,.5);backdrop-filter:blur(5px)}.team-user-modal-card{position:relative;width:min(920px,96vw);max-height:92vh;overflow:auto;padding:18px}.team-user-modal-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.team-user-modal-head h2{margin:0}.team-user-modal-head p{margin:4px 0 0;color:var(--muted)}.team-user-identity-lock{margin:14px 0;padding:12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);font-size:12px;line-height:1.55}.team-user-identity-lock small{display:block;color:var(--muted);margin-top:4px}.team-user-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.team-user-field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}.team-user-field input,.team-user-field select{width:100%}.team-user-switch{justify-content:flex-end}.team-user-switch input{width:auto;align-self:flex-start;transform:scale(1.15);margin-top:5px}.team-user-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.team-user-meta-grid>div{padding:9px 10px;border:1px solid var(--border);border-radius:9px;display:flex;flex-direction:column;gap:3px}.team-user-meta-grid span{font-size:10px;color:var(--muted);text-transform:uppercase}.team-user-meta-grid strong{font-size:12px;word-break:break-word}.team-user-savebar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.team-user-savebar>div:last-child{display:flex;gap:8px}.users-write-open{border-color:var(--warning);color:var(--warning)}@media(max-width:720px){.team-user-fields,.team-user-meta-grid{grid-template-columns:1fr}.team-user-savebar{align-items:stretch;flex-direction:column}.team-users-toolbar{align-items:stretch;flex-direction:column}.team-users-search{min-width:0}}


/* P2.4B Roles / Permissions */
.team-users-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.team-users-tools .field{min-width:150px}.team-users-tools #roleSearch{flex:1;min-width:220px}.team-roles-table{width:100%;min-width:920px;border-collapse:collapse}.team-roles-table th,.team-roles-table td{padding:11px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.team-roles-table th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.role-code{display:block;color:var(--muted);margin-top:3px}.roles-write-open{border-color:var(--warning);color:var(--warning)}.role-modal-card{width:min(1040px,97vw)}.team-role-form textarea{width:100%;min-height:74px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:8px 9px;font:inherit;box-sizing:border-box}.role-description{grid-column:1/-1}.role-deny-note{margin:14px 0;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);font-size:11px}.role-deny-note strong{display:block;margin-bottom:6px}.role-deny-note code{display:inline-block;margin:2px 4px 2px 0;padding:2px 5px;border:1px solid var(--border);border-radius:5px;color:var(--warning)}.role-perm-tree{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.role-perm-group{border:1px solid var(--border);border-radius:11px;overflow:hidden;background:var(--surface2)}.role-perm-group h3{margin:0;padding:10px 12px;border-bottom:1px solid var(--border);font-size:12px}.role-perm-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:9px;align-items:start;padding:9px 11px;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);cursor:pointer}.role-perm-row:first-of-type{border-top:0}.role-perm-row.locked{opacity:.65;cursor:not-allowed}.role-perm-row input{margin-top:3px;accent-color:var(--accent)}.role-perm-copy strong{display:block;font-size:11px}.role-perm-copy small{display:block;margin-top:3px;color:var(--faint);font-size:8.5px;overflow-wrap:anywhere}.role-perm-tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end;max-width:220px}.role-perm-tags .badge{font-size:7.5px}.role-compat-note{margin-top:12px;font-size:11px;line-height:1.55}.role-compat-note p{margin:5px 0 0;color:var(--muted)}.team-user-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.team-user-modal-actions .team-user-save-state{margin-right:auto;color:var(--muted);font-size:10px}
@media(max-width:820px){.role-perm-tree{grid-template-columns:1fr}.role-modal-card{width:98vw}.role-perm-tags{max-width:150px}}
@media(max-width:600px){.team-users-tools{align-items:stretch;flex-direction:column}.team-users-tools #roleSearch{min-width:0}.role-perm-row{grid-template-columns:20px 1fr}.role-perm-tags{grid-column:2;justify-content:flex-start;max-width:none}.team-user-modal-actions{align-items:stretch;flex-direction:column}.team-user-modal-actions .team-user-save-state{margin-right:0}.role-description{grid-column:auto}}


/* P2.4C Departments */
.team-departments-table td:nth-child(2){min-width:260px}.department-modal-card{max-width:760px}.department-reference-card{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:12px 14px;margin:12px 0;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.department-reference-card small{width:100%;color:var(--muted)}.department-compat-note code{font-size:.9em}
