﻿:root{--bg:#f4f7fb;--panel:#fff;--ink:#172033;--muted:#728096;--line:#e6ebf2;--primary:#2563eb;--primary2:#1d4ed8;--danger:#dc2626;--warning:#d97706;--success:#059669;--info:#0284c7;--shadow:0 8px 28px rgba(37,51,77,.07)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 "Segoe UI","Microsoft YaHei",sans-serif}.sidebar{position:fixed;inset:0 auto 0 0;width:224px;background:#111a2e;color:#dce5f5;padding:24px 16px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 25px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);font-weight:800;color:#fff}.brand strong,.brand small{display:block}.brand strong{font-size:16px;color:#fff}.brand small{color:#8fa2c4;margin-top:2px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{color:#9fb0cb;text-decoration:none;padding:12px 14px;border-radius:10px;display:flex;gap:12px;align-items:center;font-weight:600}.sidebar nav a:hover{background:#182641;color:#fff}.sidebar nav a.active{background:#2563eb;color:#fff;box-shadow:0 8px 20px rgba(37,99,235,.25)}.sidebar nav span{width:18px;text-align:center}.user-card{margin-top:auto;display:flex;gap:10px;align-items:center;padding:14px 10px;border-top:1px solid #26334b}.user-card strong,.user-card small{display:block}.user-card small{color:#8fa2c4}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#33476c;color:#fff;font-weight:700}main{margin-left:224px;min-height:100vh}.topbar{height:102px;padding:24px 32px;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.84);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}h1,h2,p{margin:0}.topbar h1{font-size:25px;letter-spacing:-.4px}.topbar p{color:var(--muted);margin-top:5px}.live{background:#ecfdf5;color:#047857;border:1px solid #d1fae5;border-radius:999px;padding:8px 12px;font-weight:600}.live i{display:inline-block;width:7px;height:7px;background:#10b981;border-radius:50%;margin-right:7px}.content{padding:24px 32px 40px}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(135px,1fr));gap:14px;margin-bottom:18px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:17px 18px;box-shadow:var(--shadow);cursor:pointer;transition:.18s}.metric:hover{transform:translateY(-2px);border-color:#bfdbfe}.metric b{font-size:26px;display:block;margin-top:7px}.metric span{color:var(--muted);font-weight:600}.metric.danger b{color:var(--danger)}.metric.warning b{color:var(--warning)}.metric.success b{color:var(--success)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.toolbar-panel{padding:17px 19px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:end;gap:20px}.filters,.actions{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.filters label{display:grid;gap:6px;color:#607089;font-size:12px;font-weight:700}.filters select,.search{height:38px;border:1px solid #d9e0eb;border-radius:9px;background:#fff;color:var(--ink);padding:0 12px;outline:none}.filters select:focus,.search:focus{border-color:#93b4f8;box-shadow:0 0 0 3px #eff6ff}.btn{height:38px;border:1px solid #dce3ed;background:#fff;color:#344258;border-radius:9px;padding:0 13px;font-weight:650;text-decoration:none;display:inline-flex;align-items:center;cursor:pointer}.btn:hover{background:#f7f9fc}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary2)}.btn.ghost{border-color:transparent;color:var(--muted)}.btn:disabled{opacity:.55;cursor:wait}.table-panel{overflow:hidden}.panel-head{padding:17px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.panel-head h2{font-size:17px}.panel-head span{color:var(--muted);font-size:12px}.search{width:270px}.table-wrap{overflow:auto;max-height:calc(100vh - 365px)}table{width:100%;border-collapse:collapse;min-width:1000px}th{position:sticky;top:0;background:#f8fafc;color:#66758b;text-align:left;font-size:12px;padding:12px 15px;border-bottom:1px solid var(--line);z-index:1}td{padding:13px 15px;border-bottom:1px solid #edf1f6;vertical-align:top}tr:hover td{background:#fbfdff}.cell-main{font-weight:700}.cell-sub{font-size:12px;color:var(--muted);margin-top:4px}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700;background:#eef2f7;color:#536176}.badge.danger{background:#fef2f2;color:#b91c1c}.badge.warning{background:#fff7ed;color:#c2410c}.badge.success{background:#ecfdf5;color:#047857}.badge.info{background:#eff6ff;color:#1d4ed8}.badge+.badge{margin:3px 3px 0 0}.empty{text-align:center!important;color:#94a3b8;padding:50px!important}.failure-panel{padding:14px 17px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:12px;margin-bottom:18px}.hidden{display:none}.toast{position:fixed;right:24px;bottom:24px;background:#182235;color:#fff;border-radius:10px;padding:12px 16px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:30}.toast.show{opacity:1;transform:translateY(0)}.store-grid{padding:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.store-card{border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;justify-content:space-between;gap:15px}.store-card h3{margin:0 0 6px}.platform{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;color:#fff;font-weight:800}.platform.shopee{background:#ee4d2d}.platform.lazada{background:#1236a8}.platform.tiktok{background:#111827}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.setting-card{padding:22px}.setting-card h2{margin-bottom:16px}.setting-card.wide{grid-column:1/-1}.setting-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.status.ok{color:var(--success)}.status.off{color:var(--danger)}.muted{color:var(--muted);margin-top:14px}.mono{font-family:Consolas,monospace;background:#f6f8fb;padding:12px;border-radius:8px}.rule-note{display:flex;gap:12px;align-items:center;padding:12px 16px;background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;margin-bottom:18px;color:#315589}.rule-note span{border-left:1px solid #bfd3f5;padding-left:12px}.upload-label input{display:none}@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(3,1fr)}.toolbar-panel{align-items:stretch;flex-direction:column}.store-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{width:72px;padding:20px 10px}.brand div,.brand small,.sidebar nav a:not(.active) span+*,.user-card>div:not(.avatar){display:none}.brand{padding-left:5px}.brand-mark{width:42px}.sidebar nav a{justify-content:center}.sidebar nav a{font-size:0}.sidebar nav a span{font-size:18px}.user-card{justify-content:center}main{margin-left:72px}.topbar,.content{padding-left:18px;padding-right:18px}.metric-grid{grid-template-columns:repeat(2,1fr)}.store-grid,.settings-grid{grid-template-columns:1fr}.setting-card.wide{grid-column:auto}.topbar{height:auto}.live{display:none}}
button.metric{font:inherit;text-align:left;width:100%}button.metric.active{border-color:var(--primary);box-shadow:0 0 0 3px rgba(37,99,235,.14)}.advisor-panel{margin-bottom:18px}.advisor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:18px}.advisor-grid article{padding:15px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.advisor-grid p{color:var(--muted);margin-top:6px}
.family-panel{overflow:hidden}.family-list{padding:12px 18px 18px;display:grid;gap:10px}.family-card{border:1px solid var(--line);border-radius:12px;background:#fff}.family-card summary{list-style:none;cursor:pointer;padding:15px;display:grid;grid-template-columns:160px 1fr auto;align-items:center;gap:18px}.family-card summary::-webkit-details-marker{display:none}.family-card summary>div:first-child strong,.family-card summary>div:first-child span{display:block}.family-card summary>div:first-child span{font-size:12px;color:var(--muted);margin-top:3px}.family-numbers{display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));gap:10px}.family-numbers span{color:var(--muted);font-size:12px}.family-numbers b{display:block;color:var(--ink);font-size:14px;margin-top:2px}.family-detail{padding:0 15px 15px;border-top:1px solid var(--line)}.family-detail p{padding:12px 0;color:#344258}.family-detail table{min-width:700px}.inventory-metrics{grid-template-columns:repeat(6,1fr)}@media(max-width:1200px){.family-card summary{grid-template-columns:130px 1fr}.family-card summary>.badge{grid-column:1/-1;width:max-content}.family-numbers{grid-template-columns:repeat(3,1fr)}}
.config-columns{display:grid;grid-template-columns:minmax(260px,30%) 1fr;gap:18px;margin-bottom:18px}.config-side,.config-main{margin:0}.plain-list>div,.history-list>div,.member-list>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #e7edf6}.plain-list span,.member-list small{display:block;color:#71809a;font-size:12px;margin-top:3px}.inline-form,.assign-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}.inline-form input,.assign-bar select{min-height:40px;border:1px solid #d6dfed;border-radius:9px;padding:0 12px}.family-edit{padding:0 14px}.family-config-card{border:1px solid #e3eaf4;border-radius:12px;margin:10px 0}.family-config-card summary{display:flex;justify-content:space-between;align-items:center;padding:14px;cursor:pointer}.family-config-card summary span{display:block;color:#71809a;font-size:12px;margin-top:4px}.member-list{padding:0 14px 10px}.text-btn{border:0;background:none;color:#2563eb;cursor:pointer}.text-btn.danger{color:#dc2626}.sku-pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;max-height:430px;overflow:auto}.sku-pick-grid label{display:flex;gap:10px;padding:11px;border:1px solid #e3eaf4;border-radius:10px;cursor:pointer}.sku-pick-grid small{display:block;color:#71809a;margin-top:4px}.history-list form{margin:0}@media(max-width:900px){.config-columns{grid-template-columns:1fr}}
.subnav{display:flex;gap:8px;margin-bottom:16px}.subnav a{padding:9px 16px;border-radius:9px;background:#fff;border:1px solid #dfe7f2;color:#50617e;text-decoration:none}.subnav a.active{background:#2864dc;color:#fff;border-color:#2864dc}.family-toolbar{display:flex;align-items:center;justify-content:space-between}.family-toolbar b,.family-toolbar span{display:block}.family-toolbar span,.family-simple-card summary span,.simple-section summary span{color:#71809a;font-size:13px;margin-top:4px}.family-simple-card{margin-bottom:10px;padding:0}.family-simple-card summary,.simple-section summary{display:flex;justify-content:space-between;align-items:center;padding:17px 20px;cursor:pointer}.family-member-table{border-top:1px solid #e5ebf4}.family-member-head,.family-member-row{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(260px,1.5fr) 180px;gap:15px;align-items:center;padding:11px 20px;border-bottom:1px solid #edf1f7}.family-member-head{background:#f7f9fc;color:#64748b;font-size:12px}.row-actions{display:flex;gap:8px}.row-actions form{margin:0}.simple-section{margin-top:16px}.compact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;padding:14px}.compact-grid div{padding:10px;border:1px solid #e5ebf4;border-radius:8px}.compact-grid span{display:block;color:#71809a;font-size:12px;margin-top:3px}@media(max-width:800px){.family-member-head{display:none}.family-member-row{grid-template-columns:1fr}.family-toolbar{align-items:flex-start;gap:12px;flex-direction:column}}
.mini-metrics{display:flex;gap:24px;flex-wrap:wrap;padding:18px 20px}.mini-metrics span{color:#64748b}.mini-metrics b{color:#10203c;margin-left:5px}
.inbound-metrics{grid-template-columns:repeat(5,minmax(150px,1fr))}
.inbound-family-list{padding:0;display:grid;gap:12px}
.inbound-family-card summary{grid-template-columns:minmax(220px,1fr) minmax(520px,2fr) auto}
.inbound-detail{background:#fbfcfe}
.inbound-shipment-list{display:grid;gap:12px;padding-top:14px}
.inbound-shipment-card{border:1px solid #dfe7f2;border-radius:12px;background:#fff;overflow:hidden}
.inbound-shipment-card summary{list-style:none;cursor:pointer}
.inbound-shipment-card summary::-webkit-details-marker{display:none}
.inbound-shipment-head{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;align-items:center;gap:14px;padding:14px 16px;background:#f8fafc}
.inbound-shipment-card[open] .inbound-shipment-head{border-bottom:1px solid #edf1f7}
.inbound-shipment-head b{font-size:15px;color:#0f172a}
.inbound-shipment-head span{display:block;margin-top:4px;color:#64748b;font-size:12px}
.inbound-shipment-actions{display:flex;gap:8px;flex-wrap:wrap}
.tc-expand-hint{margin:0!important;white-space:nowrap}
.inbound-shipment-card[open] .tc-expand-hint{background:#ecfdf5;color:#047857}
.inbound-mini{padding:12px 16px;border-bottom:1px solid #edf1f7;gap:18px}
.inbound-sku-table{min-width:0}
.inbound-sku-table th{position:static}
.tc-query-dialog{border:0;width:min(720px,calc(100% - 36px));padding:0}
.tc-query-body{padding:18px 20px}
@media(max-width:1100px){.inbound-metrics{grid-template-columns:repeat(2,1fr)}.inbound-family-card summary{grid-template-columns:1fr}.inbound-shipment-head{grid-template-columns:1fr;align-items:flex-start}.inbound-sku-table{min-width:620px}}
.metric small,.order-main small{display:block;color:#71809a;font-size:12px;margin-top:4px}.expand-order{width:28px;height:28px;border:1px solid #dbe4f1;background:#fff;border-radius:8px;color:#2864dc;cursor:pointer}.order-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;padding:14px}.order-products article{display:flex;gap:10px;padding:10px;border:1px solid #e4eaf3;border-radius:10px;background:#f9fbfd}.order-products img,.product-placeholder{width:58px;height:58px;border-radius:8px;object-fit:cover;background:#e9eef6;display:grid;place-items:center;color:#71809a;font-size:12px}.order-products span,.order-products small{display:block;color:#71809a;margin-top:4px}
.ledger-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;margin-bottom:16px}.period-tabs{display:flex;gap:8px;flex-wrap:wrap}.period-tabs a{padding:9px 14px;border:1px solid #d8e0ef;border-radius:9px;color:#40516f;text-decoration:none;background:#fff;font-weight:600}.period-tabs a.active{background:#2864dc;color:#fff;border-color:#2864dc}.ledger-picker{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.ledger-picker label{display:grid;gap:4px;color:#607089;font-size:12px;font-weight:700}.ledger-picker input{height:38px;border:1px solid #d8e0ef;border-radius:8px;padding:0 10px;color:#24324a}.ledger-picker button{height:38px;padding:0 15px;border:0;border-radius:8px;background:#2864dc;color:#fff;font-weight:700;cursor:pointer}.trend-up{color:#059669;font-weight:700}.trend-down{color:#dc2626;font-weight:700}@media(max-width:800px){.ledger-toolbar{align-items:stretch;flex-direction:column}}
.product-wizard{margin-bottom:16px;padding-bottom:18px}.product-wizard form{padding:16px 20px 0}.wizard-fields{display:grid;grid-template-columns:180px 1fr 1fr auto;gap:10px;align-items:end;margin-bottom:12px}.wizard-fields label{display:grid;gap:5px;color:#607089;font-size:12px;font-weight:700}.wizard-fields input,.wizard-fields select,.sku-create-form select{height:40px;border:1px solid #d6dfed;border-radius:9px;padding:0 11px;background:#fff}.wizard-results{max-height:250px;margin-bottom:12px}@media(max-width:1000px){.wizard-fields{grid-template-columns:1fr 1fr}}@media(max-width:650px){.wizard-fields{grid-template-columns:1fr}}
.onboarding-panel{margin-bottom:18px}.onboarding-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px}.onboarding-steps article{border:1px solid var(--line);border-radius:14px;padding:16px;background:#f8fbff}.onboarding-steps article b{display:block;font-size:16px;margin-bottom:7px}.onboarding-steps article p{color:var(--muted);min-height:42px;margin-bottom:12px}.operator-list{margin-bottom:18px}.operator-list article{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:16px;align-items:center;padding:14px 18px;border-top:1px solid var(--line)}.operator-list article:first-child{border-top:0}.operator-list article div{display:flex;gap:10px;align-items:center}.operator-list article span{color:var(--muted)}@media(max-width:900px){.onboarding-steps{grid-template-columns:1fr}.operator-list article{grid-template-columns:1fr auto}}
.topbar-actions{display:flex;align-items:center;gap:12px}.owner-switch{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:700}.owner-switch select{height:38px;border:1px solid #d8e0ec;border-radius:9px;background:#fff;padding:0 30px 0 11px;color:var(--ink);font-weight:700}
.family-simple-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.family-simple-list .family-simple-card{margin:0}.family-simple-list .family-simple-card[open]{grid-column:1/-1}.family-simple-card.search-hit,.sku-pick-item.search-hit{border-color:#f59e0b!important;background:#fffbeb!important;box-shadow:0 0 0 3px rgba(245,158,11,.16)}.sku-pick-grid .sku-pick-item{display:flex;align-items:center;gap:6px;border:1px solid #e3eaf4;border-radius:10px;padding-right:10px}.sku-pick-grid .sku-pick-item label{border:0;flex:1}.sku-pick-grid .sku-pick-item .text-btn{white-space:nowrap}.row-actions{align-items:center;flex-wrap:wrap}.row-actions .inline-form{margin:0;flex-wrap:nowrap}.row-actions select{max-width:150px;height:34px;border:1px solid #d6dfed;border-radius:7px}.family-member-head,.family-member-row{grid-template-columns:minmax(240px,1.1fr) minmax(240px,1.2fr) minmax(360px,auto)}@media(max-width:1000px){.family-simple-list{grid-template-columns:1fr}.family-simple-list .family-simple-card[open]{grid-column:auto}}
.dashboard-metrics .metric{display:block;color:var(--ink);text-decoration:none}.dashboard-metrics .metric small{display:block;color:var(--primary);font-size:12px;margin-top:8px}.sidebar-subnav{display:grid;gap:2px;margin:-2px 0 6px 32px;border-left:1px solid #31415d;padding-left:8px}.sidebar-subnav a{padding:6px 9px!important;font-size:12px;font-weight:500!important;border-radius:7px!important}.advisor-grid>a{padding:15px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;color:var(--ink);text-decoration:none;transition:.18s}.advisor-grid>a:hover{border-color:#93b4f8;background:#f0f6ff;transform:translateY(-1px)}.advisor-grid>a>span{display:block;color:var(--primary);font-size:12px;font-weight:700;margin-top:10px}.report-details{border-top:1px solid var(--line)}.report-details>summary{cursor:pointer;padding:13px 20px;color:var(--primary);font-weight:700}.report-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:0 20px 20px}.report-detail-grid>div{border:1px solid var(--line);border-radius:10px;padding:14px}.report-detail-grid h3{margin:0 0 8px;font-size:14px}.report-detail-grid ol{list-style:none;margin:0;padding:0}.report-detail-grid li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #edf1f6}.report-detail-grid li:last-child{border-bottom:0}.yesterday-report{scroll-margin-top:16px}#today,#actions,#product-actions{scroll-margin-top:16px}@media(max-width:900px){.report-detail-grid{grid-template-columns:1fr}.sidebar-subnav{display:none}}
.special-filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding:11px 14px;background:#fff;border:1px solid var(--line);border-radius:12px}.special-filter-bar strong{margin-right:4px}.special-filter-bar>span{color:var(--muted);font-size:12px;margin-left:auto}.special-filter{border:1px solid #d8e0ec;background:#fff;color:#50617e;border-radius:999px;padding:6px 11px;cursor:pointer;font-weight:650}.special-filter:hover,.special-filter.active{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}
.operational-alert-bar{margin:14px 32px 0;padding:12px 16px;border:1px solid #fecaca;border-left:5px solid #dc2626;border-radius:12px;background:#fff7f7;color:#7f1d1d;display:flex;align-items:center;gap:14px;box-shadow:0 8px 24px rgba(220,38,38,.08)}
.operational-alert-bar strong{color:#b91c1c;white-space:nowrap}
.operational-alert-bar a{padding:7px 11px;border-radius:999px;background:#fee2e2;color:#b91c1c;font-weight:700;text-decoration:none;white-space:nowrap}
.operational-alert-bar a:hover{background:#fecaca}
.operational-alert-bar span{color:#991b1b;font-size:13px}
.text-danger{color:#b91c1c!important;max-width:260px}
.order-select{width:16px;height:16px;margin-right:7px;accent-color:#2563eb}
.settings-grid .table-panel{overflow:auto}.settings-grid .table-panel table{min-width:0}dialog.panel{border:0;max-width:520px;width:calc(100% - 32px)}dialog::backdrop{background:rgba(15,23,42,.4)}

.notice{margin-bottom:16px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.notice.success{background:#ecfdf5;border-color:#bbf7d0;color:#047857}
.notice.danger{background:#fff7ed;border-color:#fed7aa;color:#9a3412}
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.section-head h2{font-size:18px;letter-spacing:-.25px}
.grid-form{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;align-items:end;margin-top:14px}
.grid-form label{display:grid;gap:6px;color:#6f7582;font-size:12px;font-weight:700;min-width:0}
.grid-form label.wide,.grid-form .wide{grid-column:span 2}
.grid-form label.full,.grid-form .full{grid-column:1/-1}
.grid-form input,.grid-form select{width:100%;min-width:0;min-height:40px;border:1px solid var(--line-strong);border-radius:12px;background:#fff;color:var(--ink);padding:0 12px;outline:0}
.grid-form input[type=file]{padding:8px 12px;width:100%;min-width:0}
.grid-form input:focus,.grid-form select:focus{border-color:rgba(0,113,227,.62);box-shadow:0 0 0 4px rgba(0,113,227,.11)}
.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}
.paste-shot{border:1px dashed var(--line-strong);border-radius:14px;background:#f8fafc;min-height:170px;padding:16px;display:grid;place-items:center;text-align:center;gap:8px;outline:0}
.paste-shot:focus{border-color:rgba(0,113,227,.62);box-shadow:0 0 0 4px rgba(0,113,227,.11);background:#fff}
.paste-shot strong,.paste-shot span{display:block}
.paste-shot span{color:var(--muted);font-size:13px}
.paste-shot img{max-width:100%;max-height:360px;border-radius:10px;border:1px solid var(--line);object-fit:contain}
.paste-shot.has-shot{place-items:start;text-align:left}
td small{display:block;color:var(--muted);font-size:12px;margin-top:4px;line-height:1.45;word-break:break-all}
td .actions,.actions form{display:flex;gap:8px;flex-wrap:wrap;margin:0}
@media(max-width:1100px){.grid-form{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-form label.wide,.grid-form .wide{grid-column:1/-1}}
@media(max-width:650px){.grid-form{grid-template-columns:1fr}.section-head{flex-direction:column}.grid-form label.wide,.grid-form .wide{grid-column:auto}}

/* 2026-07 Apple-inspired refinement layer
   Keep the interface quiet: navigation -> decisions -> supporting evidence. */
:root{
  color-scheme:light;
  --bg:#f5f5f7;
  --panel:rgba(255,255,255,.94);
  --panel-solid:#fff;
  --ink:#1d1d1f;
  --muted:#6e6e73;
  --line:rgba(60,60,67,.12);
  --line-strong:rgba(60,60,67,.2);
  --primary:#0071e3;
  --primary2:#0068d1;
  --danger:#d70015;
  --warning:#b54708;
  --success:#00875a;
  --info:#0071e3;
  --shadow:0 1px 2px rgba(0,0,0,.025),0 12px 34px rgba(0,0,0,.055);
  --shadow-hover:0 2px 5px rgba(0,0,0,.035),0 18px 42px rgba(0,0,0,.08);
  --radius-xl:22px;
  --radius-lg:16px;
  --radius-md:12px;
  --ease:cubic-bezier(.2,.8,.2,1);
}

html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 74% -12%,rgba(0,113,227,.07),transparent 32rem),
    var(--bg);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI","Microsoft YaHei",sans-serif;
  font-feature-settings:"kern" 1,"tnum" 1;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
button,input,select,textarea{font:inherit}
button,a,summary,input,select{ -webkit-tap-highlight-color:transparent }
::selection{background:rgba(0,113,227,.18)}

/* Persistent navigation */
.sidebar{
  width:232px;
  padding:24px 14px 18px;
  background:
    linear-gradient(180deg,rgba(18,28,48,.98),rgba(13,22,39,.99));
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:12px 0 38px rgba(17,24,39,.08);
}
main{margin-left:232px}
.brand{padding:0 10px 27px;gap:12px}
.brand-mark{
  width:44px;height:44px;border-radius:14px;
  background:linear-gradient(145deg,#2784ff,#075fd3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 8px 22px rgba(0,113,227,.28);
}
.brand strong{font-size:17px;letter-spacing:-.2px}
.brand small{color:#9ba9bf}
.sidebar nav{gap:5px}
.sidebar nav a{
  min-height:46px;padding:0 14px;border-radius:12px;
  color:#aebbd0;font-weight:650;
  transition:background-color .22s var(--ease),color .22s var(--ease),transform .22s var(--ease),box-shadow .22s var(--ease);
}
.sidebar nav a:hover{background:rgba(255,255,255,.075);color:#fff;transform:translateX(2px)}
.sidebar nav a.active{
  background:linear-gradient(135deg,#1479f6,#0767df);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 10px 26px rgba(0,113,227,.26);
}
.sidebar-subnav{margin:1px 8px 8px 32px;border-color:rgba(255,255,255,.12)}
.sidebar-subnav a{min-height:32px!important;color:#91a1ba!important}
.sidebar-subnav a:hover{color:#fff!important}
.user-card{padding:16px 10px 4px;border-color:rgba(255,255,255,.1)}
.avatar{background:linear-gradient(145deg,#466083,#2a3f62);box-shadow:inset 0 1px 0 rgba(255,255,255,.16)}

.topbar{
  position:sticky;top:0;z-index:9;
  height:96px;padding:22px clamp(22px,2.6vw,42px);
  background:rgba(250,250,252,.82);
  border-color:var(--line);
  box-shadow:0 1px 0 rgba(255,255,255,.75);
  -webkit-backdrop-filter:saturate(180%) blur(22px);
  backdrop-filter:saturate(180%) blur(22px);
}
.topbar h1{font-size:27px;line-height:1.15;letter-spacing:-.65px;font-weight:760}
.topbar p{margin-top:6px;color:#7b8190}
.topbar-actions{gap:14px}
.owner-switch select,.filters select{
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%236e6e73' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='m1 1.5 5 5 5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;
}
.owner-switch select{
  height:40px;border-color:var(--line-strong);border-radius:12px;
  padding:0 34px 0 13px;
  box-shadow:0 1px 2px rgba(0,0,0,.025);
}
.live{
  padding:8px 12px;border:0;background:#e9f8f1;color:#087758;
  box-shadow:inset 0 0 0 1px rgba(0,135,90,.11);
}

.content{
  width:min(100%,1720px);margin:0 auto;
  padding:26px clamp(22px,2.6vw,42px) 64px;
}

/* Surfaces and hierarchy */
.panel{
  background:var(--panel);
  border-color:var(--line);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
}
.panel-head{
  min-height:70px;padding:18px 22px;border-color:var(--line);
}
.panel-head h2{font-size:18px;line-height:1.25;letter-spacing:-.25px}
.panel-head span{margin-top:4px;line-height:1.45}
.toolbar-panel{
  padding:18px 20px;margin-bottom:20px;gap:24px;
}
.metric-grid{gap:16px;margin-bottom:20px}
.metric{
  min-height:112px;padding:20px;border-color:var(--line);
  border-radius:18px;box-shadow:var(--shadow);cursor:default;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease),background-color .25s var(--ease);
}
a.metric,button.metric{cursor:pointer}
a.metric:hover,button.metric:hover{
  transform:translateY(-2px);border-color:rgba(0,113,227,.22);box-shadow:var(--shadow-hover);
}
.metric b{font-size:28px;line-height:1.12;letter-spacing:-.5px;margin-top:11px}
.metric span{font-size:13px;color:#737988}
button.metric.active{
  border-color:rgba(0,113,227,.55);
  background:linear-gradient(180deg,#fff,#f7fbff);
  box-shadow:0 0 0 4px rgba(0,113,227,.1),var(--shadow);
}
.advisor-panel{margin-bottom:20px}
.advisor-grid{gap:12px;padding:18px}
.advisor-grid article,.advisor-grid>a{
  border-color:var(--line);border-radius:16px;background:#f7f7f9;padding:17px;
}
.advisor-grid>a:hover{background:#fff;border-color:rgba(0,113,227,.25);box-shadow:0 8px 22px rgba(0,0,0,.05)}

/* Controls */
.filters,.actions{gap:9px}
.filters label,.wizard-fields label,.ledger-picker label{color:#6f7582;font-size:12px;letter-spacing:.05px}
.filters select,.search,.inline-form input,.wizard-fields input,.wizard-fields select,
.sku-create-form select,.ledger-picker input,.owner-switch select{
  border-color:var(--line-strong);border-radius:12px;background-color:rgba(255,255,255,.96);
  color:var(--ink);outline:0;
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background-color .2s var(--ease);
}
.filters select,.search{height:42px}
.filters select{padding:0 38px 0 13px}
.search{padding:0 14px}
.filters select:hover,.search:hover,.inline-form input:hover,.wizard-fields input:hover,.ledger-picker input:hover{border-color:rgba(60,60,67,.32)}
.filters select:focus,.search:focus,.inline-form input:focus,.wizard-fields input:focus,
.ledger-picker input:focus,.owner-switch select:focus{
  border-color:rgba(0,113,227,.62);background:#fff;
  box-shadow:0 0 0 4px rgba(0,113,227,.11);
}
.btn{
  min-height:40px;height:40px;padding:0 15px;border-color:var(--line-strong);
  border-radius:12px;background:rgba(255,255,255,.92);color:#34343a;
  font-weight:650;box-shadow:0 1px 2px rgba(0,0,0,.02);
  transition:transform .18s var(--ease),background-color .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease);
}
.btn:hover{background:#fff;border-color:rgba(60,60,67,.28);box-shadow:0 5px 14px rgba(0,0,0,.055);transform:translateY(-1px)}
.btn:active{transform:scale(.98)}
.btn.primary,.ledger-picker button{
  background:var(--primary);border-color:var(--primary);color:#fff;
  box-shadow:0 5px 14px rgba(0,113,227,.18);
}
.btn.primary:hover,.ledger-picker button:hover{background:var(--primary2);box-shadow:0 8px 19px rgba(0,113,227,.24)}
.text-btn{font-weight:650;border-radius:8px;padding:5px 7px}
.text-btn:hover{background:rgba(0,113,227,.07)}
.subnav{gap:6px;padding:4px;width:max-content;max-width:100%;border-radius:14px;background:rgba(118,118,128,.1)}
.subnav a{
  border:0;border-radius:10px;background:transparent;padding:9px 15px;color:#575d69;
  transition:background-color .18s var(--ease),color .18s var(--ease),box-shadow .18s var(--ease);
}
.subnav a:hover{background:rgba(255,255,255,.6)}
.subnav a.active{background:#fff;color:var(--primary);border:0;box-shadow:0 2px 7px rgba(0,0,0,.1)}
.period-tabs{gap:6px;padding:4px;border-radius:14px;background:rgba(118,118,128,.1)}
.period-tabs a{border:0;background:transparent;border-radius:10px;padding:8px 13px}
.period-tabs a.active{background:#fff;color:var(--primary);box-shadow:0 2px 7px rgba(0,0,0,.1)}
.ledger-toolbar{padding:15px 18px;margin-bottom:18px}

/* Tables: readable evidence, not a spreadsheet wall */
.table-panel{border-radius:var(--radius-xl)}
.table-wrap{
  max-height:calc(100vh - 350px);
  scrollbar-gutter:stable;
}
table{font-variant-numeric:tabular-nums}
th{
  padding:13px 16px;background:rgba(247,247,249,.96);
  color:#747b89;border-color:var(--line);font-weight:650;
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
td{padding:15px 16px;border-color:rgba(60,60,67,.09);line-height:1.55}
tbody tr{transition:background-color .16s var(--ease)}
tbody tr:hover td{background:rgba(0,113,227,.028)}
.cell-main{letter-spacing:-.1px}
.cell-sub{color:#7d8492;line-height:1.45}
.badge{padding:4px 10px;background:#f0f1f4;color:#5e6470;font-weight:650}
.badge.danger{background:#fff0f1;color:#c1121f}
.badge.warning{background:#fff5e9;color:#b54708}
.badge.success{background:#eaf8f1;color:#087758}
.badge.info{background:#eaf4ff;color:#0066c9}
.empty{padding:58px 24px!important;color:#8b909a}

/* Product family disclosure cards */
.family-list{gap:12px;padding:14px 18px 20px}
.family-card{
  position:relative;border-color:var(--line);border-radius:18px;background:rgba(255,255,255,.9);
  overflow:clip;
  transition:border-color .22s var(--ease),box-shadow .22s var(--ease),transform .22s var(--ease);
}
.family-card:hover{border-color:rgba(60,60,67,.2);box-shadow:0 7px 20px rgba(0,0,0,.045)}
.family-card[open]{border-color:rgba(0,113,227,.2);box-shadow:0 12px 34px rgba(0,0,0,.065)}
.family-card summary{
  min-height:82px;padding:17px 48px 17px 20px;gap:22px;
}
.family-card summary::after{
  content:"";position:absolute;right:20px;top:33px;width:8px;height:8px;
  border-right:1.7px solid #7d8492;border-bottom:1.7px solid #7d8492;
  transform:rotate(45deg);transition:transform .24s var(--ease),top .24s var(--ease);
}
.family-card[open] summary::after{top:37px;transform:rotate(225deg)}
.family-numbers{gap:16px}
.family-numbers span{font-size:12px;color:#858b97}
.family-numbers b{font-size:15px;margin-top:3px}
.family-detail{
  padding:0 18px 18px;border-color:var(--line);
  animation:disclose-in .25s var(--ease);
}
.family-detail>p{color:#646b78;padding:14px 2px}
.family-detail table{border:1px solid var(--line);border-radius:14px}
.family-sticky-context{
  position:sticky;top:96px;z-index:12;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin:0 -6px 12px;padding:12px 14px;
  border:1px solid rgba(0,113,227,.14);border-radius:14px;
  background:rgba(250,253,255,.94);
  box-shadow:0 6px 18px rgba(0,0,0,.045);
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
}
.family-sticky-context strong,.family-sticky-context span{display:block}
.family-sticky-context strong{font-size:15px;letter-spacing:-.12px}
.family-sticky-context span{color:var(--muted);font-size:12px;margin-top:2px}
.family-context-numbers{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.family-context-numbers span{
  min-width:86px;padding:7px 10px;border-radius:11px;
  background:rgba(118,118,128,.08);color:#6f7582;font-size:12px;
}
.family-context-numbers b{display:block;color:var(--ink);font-size:13px;margin-top:2px}
.inventory-table-wrap{
  max-height:min(560px,calc(100vh - 245px));
  overflow:auto;border:1px solid var(--line);border-radius:16px;
  background:#fff;scrollbar-gutter:stable;
}
.inventory-sku-table{min-width:1180px;border:0!important;border-radius:0!important}
.inventory-sku-table thead{
  position:sticky;top:0;z-index:10;
  box-shadow:0 1px 0 var(--line),0 8px 14px rgba(15,23,42,.06);
}
.inventory-sku-table th{
  position:sticky;top:0;z-index:10;
  background:#f8fafc;
}
.inventory-sku-table th:first-child{
  left:0;z-index:11;box-shadow:1px 0 0 var(--line);
}
.inventory-sku-table td{padding:12px 14px}
.inventory-sku-table tr:nth-child(even) td{background:rgba(247,247,249,.52)}
.inventory-sku-table tr:hover td{background:#f2f8ff}
.sku-sticky-cell{
  position:sticky;left:0;z-index:2;min-width:260px;max-width:330px;
  background:inherit;box-shadow:1px 0 0 var(--line);
}
.sku-sticky-cell b{display:block;font-size:13px;line-height:1.35}
.inventory-action-cell{min-width:230px}
.inventory-risk-high .sku-sticky-cell{box-shadow:inset 4px 0 0 rgba(215,0,21,.75),1px 0 0 var(--line)}
.inventory-risk-medium .sku-sticky-cell{box-shadow:inset 4px 0 0 rgba(181,71,8,.7),1px 0 0 var(--line)}
.inventory-risk-low .sku-sticky-cell{box-shadow:inset 4px 0 0 rgba(0,135,90,.55),1px 0 0 var(--line)}
.family-simple-list{gap:12px}
.family-simple-card{
  border-radius:16px;transition:border-color .2s var(--ease),box-shadow .2s var(--ease);
}
.family-simple-card[open]{box-shadow:var(--shadow)}
.family-simple-card summary,.simple-section summary{padding:18px 20px}
.family-config-card{border-color:var(--line);border-radius:16px}
.family-config-card[open]{box-shadow:0 7px 20px rgba(0,0,0,.04)}

/* Configuration, store and picker cards */
.store-grid{gap:14px;padding:20px}
.store-card{
  border-color:var(--line);border-radius:16px;padding:18px;background:#fff;
  transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease);
}
.store-card:hover{transform:translateY(-2px);border-color:rgba(0,113,227,.18);box-shadow:var(--shadow-hover)}
.platform{border-radius:13px;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.sku-pick-grid{gap:9px;padding:2px 2px 6px;scrollbar-gutter:stable}
.sku-pick-grid .sku-pick-item,.sku-pick-grid label{
  border-color:var(--line);border-radius:13px;background:#fff;
  transition:border-color .18s var(--ease),background-color .18s var(--ease),box-shadow .18s var(--ease);
}
.sku-pick-grid .sku-pick-item:hover,.sku-pick-grid label:hover{border-color:rgba(0,113,227,.3);background:#fafdff}
.sku-pick-grid .sku-pick-item:has(input:checked){border-color:rgba(0,113,227,.5);background:#f2f8ff;box-shadow:0 0 0 3px rgba(0,113,227,.08)}
input[type="checkbox"],input[type="radio"]{accent-color:var(--primary)}
.onboarding-steps{gap:16px;padding:20px}
.onboarding-steps article{border-color:var(--line);border-radius:18px;background:#fafafd}
.setting-card{padding:24px}
.metric small{display:block;margin-top:5px;color:var(--muted);font-size:12px;font-weight:600}
.finance-note{margin:12px 4px 22px;color:var(--muted);font-size:12px}
.finance-settings-form{display:flex;align-items:end;gap:14px;flex-wrap:wrap}
.finance-settings-form label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:650}
.finance-settings-form label span{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:14px}
.finance-settings-form input{width:150px;height:42px;border:1px solid var(--line);border-radius:12px;padding:0 12px;background:#fff;font:inherit}
.finance-settings-form input:focus{border-color:rgba(0,113,227,.55);box-shadow:0 0 0 4px rgba(0,113,227,.1);outline:0}
.policy-settings-form{display:grid;gap:10px}
.policy-settings-form label{display:grid;grid-template-columns:minmax(150px,1fr) 92px 24px;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);color:var(--muted);font-weight:650}
.policy-settings-form label span{color:var(--ink)}
.policy-settings-form input{height:36px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:#fff;font:inherit;text-align:right}
.policy-settings-form input:focus{border-color:rgba(0,113,227,.55);box-shadow:0 0 0 4px rgba(0,113,227,.1);outline:0}
.policy-settings-form .btn{justify-self:start;margin-top:4px}
.rule-note{
  border-color:rgba(0,113,227,.14);border-radius:14px;background:rgba(0,113,227,.055);color:#315b86;
}
.mono{border-radius:12px;background:#f5f5f7}

/* Alerts are prominent but no longer visually loud */
.operational-alert-bar{
  position:sticky;top:96px;z-index:8;
  width:calc(100% - clamp(44px,5.2vw,84px));max-width:1636px;
  margin:14px auto 0;padding:12px 16px;
  border:1px solid rgba(215,0,21,.14);border-left:4px solid var(--danger);border-radius:16px;
  background:rgba(255,247,248,.9);box-shadow:0 8px 28px rgba(164,0,18,.07);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
}
.operational-alert-bar a{background:rgba(215,0,21,.075);color:#b00015}
.operational-alert-bar a:hover{background:rgba(215,0,21,.12)}
.failure-panel{border-color:rgba(181,71,8,.18);border-radius:16px;background:#fff8ef}
.toast{
  right:28px;bottom:28px;padding:13px 17px;border-radius:14px;
  background:rgba(29,29,31,.92);box-shadow:0 14px 42px rgba(0,0,0,.22);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
}
dialog.panel{border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.25)}
dialog::backdrop{background:rgba(29,29,31,.36);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}

/* Scrolling and keyboard accessibility */
*{scrollbar-width:thin;scrollbar-color:rgba(60,60,67,.28) transparent}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:rgba(60,60,67,.2);border:3px solid transparent;border-radius:999px;background-clip:content-box}
*::-webkit-scrollbar-thumb:hover{background-color:rgba(60,60,67,.34)}
:where(a,button,input,select,summary):focus-visible{outline:3px solid rgba(0,113,227,.34);outline-offset:2px}

@keyframes disclose-in{
  from{opacity:0;transform:translateY(-5px)}
  to{opacity:1;transform:translateY(0)}
}

@media(max-width:1200px){
  .sidebar{width:216px}
  main{margin-left:216px}
  .content{padding-inline:24px}
  .topbar{padding-inline:24px}
  .operational-alert-bar{width:calc(100% - 48px)}
  .family-card summary{grid-template-columns:145px 1fr}
}
@media(max-width:760px){
  .sidebar{width:76px;padding-inline:10px}
  main{margin-left:76px}
  .topbar{min-height:82px;height:auto;padding:18px}
  .topbar h1{font-size:23px}
  .content{padding:18px 14px 44px}
  .operational-alert-bar{position:relative;top:auto;width:calc(100% - 28px);margin-top:10px;flex-wrap:wrap}
  .panel,.table-panel{border-radius:17px}
  .metric{min-height:102px;padding:17px}
  .metric b{font-size:24px}
  .panel-head{padding:16px 17px}
  .toolbar-panel{padding:16px}
  .family-list{padding:10px}
  .family-card summary{grid-template-columns:1fr;padding:17px 44px 17px 17px;gap:12px}
  .family-card summary>.badge{grid-column:auto}
  .family-numbers{grid-template-columns:repeat(2,minmax(95px,1fr));gap:10px}
  .family-detail{padding:0 10px 12px;overflow:auto}
  .family-sticky-context{position:sticky;top:82px;align-items:flex-start;flex-direction:column}
  .family-context-numbers{justify-content:flex-start}
  .inventory-table-wrap{max-height:none}
  .sku-sticky-cell{min-width:220px}
  .subnav{width:100%;overflow:auto}
  .store-grid{grid-template-columns:1fr;padding:14px}
  .table-wrap{max-height:none}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}

