/* SUPMART presentation layer. No hidden controls, route changes or business scripts. */
:root{--sm-ui-bg:#0f1422;--sm-ui-card:#171e2e;--sm-ui-soft:#202a3e;--sm-ui-ink:#eaf0fb;--sm-ui-muted:#a7b4cb;--sm-ui-line:#2e3a51;--sm-ui-accent:#aaa3ff;--sm-ui-brand:#6355db;--sm-ui-shadow:0 8px 24px #03081724;--sm-ui-font:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif}
.theme-gray,[data-security-theme=light]{--sm-ui-bg:#f3f5fb;--sm-ui-card:#fff;--sm-ui-soft:#f0f2fa;--sm-ui-ink:#1e2940;--sm-ui-muted:#5b6880;--sm-ui-line:#dbe1ef;--sm-ui-accent:#5845c3;--sm-ui-shadow:0 5px 20px #2437640b}
[data-security-theme=dark]{--sm-ui-bg:#0f1422;--sm-ui-card:#171e2e;--sm-ui-soft:#202a3e;--sm-ui-ink:#eaf0fb;--sm-ui-muted:#a7b4cb;--sm-ui-line:#2e3a51;--sm-ui-accent:#aaa3ff;--sm-ui-shadow:0 8px 24px #03081724}
.admin-shell,.supplier-portal-shell,.shop-shell{--sm-ui-bg:#0f1422;--sm-ui-card:#171e2e;--sm-ui-soft:#202a3e;--sm-ui-ink:#eaf0fb;--sm-ui-muted:#a7b4cb;--sm-ui-line:#2e3a51;--sm-ui-accent:#aaa3ff;--sm-ui-shadow:0 8px 24px #03081724}
.theme-gray .admin-shell,.theme-gray .supplier-portal-shell,.theme-gray .shop-shell{--sm-ui-bg:#f3f5fb;--sm-ui-card:#fff;--sm-ui-soft:#f0f2fa;--sm-ui-ink:#1e2940;--sm-ui-muted:#5b6880;--sm-ui-line:#dbe1ef;--sm-ui-accent:#5845c3;--sm-ui-shadow:0 5px 20px #2437640b}
body,.admin-shell,.shop-shell,.supplier-portal-shell,#app.sm-security-page,#app.sm-review-page{font-family:var(--sm-ui-font)!important;line-height:1.6;-webkit-font-smoothing:antialiased}
html .admin-shell,html .supplier-portal-shell{background:var(--sm-ui-bg)!important}
.admin-shell::before{opacity:.035!important}
html .admin-shell .admin-sidebar{background:var(--sm-ui-card)!important;border-right-color:var(--sm-ui-line)!important;box-shadow:none!important;perspective:none}
.admin-sidebar::before{opacity:.12!important}
html .admin-shell .admin-brand,html .admin-shell .admin-desktop-header,html .admin-shell .admin-mobile-header{background:var(--sm-ui-card)!important;border-color:var(--sm-ui-line)!important;box-shadow:var(--sm-ui-shadow)!important;border-radius:16px}
html .admin-shell .admin-nav-group-button,html .admin-shell .admin-nav-single,html .admin-shell .admin-nav-item,html .admin-shell .admin-nav-children .admin-nav-item{border-radius:10px!important;border-color:transparent!important;box-shadow:none!important;background:transparent!important;transform:none!important}
.admin-nav-group-button:hover,.admin-nav-single:hover,.admin-nav-item:hover{background:var(--sm-ui-soft)!important;box-shadow:none!important;border-color:var(--sm-ui-line)!important}
html .admin-shell .admin-nav-single.router-link-active,html .admin-shell .admin-nav-children .admin-nav-item.router-link-active{background:var(--sm-ui-soft)!important;color:var(--sm-ui-accent)!important;border-color:var(--sm-ui-line)!important;box-shadow:none!important}
.admin-kpi-card,.admin-rank-panel{background:var(--sm-ui-card)!important;border-color:var(--sm-ui-line)!important;border-radius:16px!important;box-shadow:var(--sm-ui-shadow)!important;transform:none!important}
.admin-kpi-card:hover,.admin-rank-panel:hover{transform:none!important;box-shadow:var(--sm-ui-shadow)!important}
.admin-kpi-card::after{opacity:.15!important}
.admin-kpi-card span[class*=font-heading]{text-shadow:none!important;font-variant-numeric:tabular-nums}
.admin-content h1,.shop-shell h1,.supplier-portal-shell h1{letter-spacing:-.025em;line-height:1.35}
.shop-shell h1{font-size:clamp(28px,3.4vw,44px)!important;line-height:1.35!important;letter-spacing:-.035em!important}
.shop-shell form input:not([type=checkbox]):not([type=radio]),.shop-shell form textarea,.shop-shell form select{border-radius:12px!important;font-family:var(--sm-ui-font)}
.shop-shell a[href="/shop"]{white-space:nowrap}
.admin-content table,.admin-content .overflow-x-auto,.admin-content>div:not(.admin-dashboard)>.bg-dark-surface{border-radius:14px!important;box-shadow:none!important}
html .admin-shell .admin-content .bg-dark-surface{background:var(--sm-ui-card)!important;box-shadow:var(--sm-ui-shadow)!important}
html .admin-shell .admin-content .rounded-3xl{border-radius:16px!important}
.admin-content table th{font-size:13px;font-weight:600;letter-spacing:.02em;background:var(--sm-ui-soft);color:var(--sm-ui-muted)!important}
.admin-content table td{font-size:14px;line-height:1.65;font-variant-numeric:tabular-nums;border-color:var(--sm-ui-line)!important}
.admin-content table tbody tr:hover{background:var(--sm-ui-soft)}
.admin-content input:not([type=checkbox]):not([type=radio]),.admin-content select,.admin-content textarea{border-radius:10px!important}
.admin-content button,.supplier-portal-shell button{border-radius:10px}
nav[aria-label="安全与资金入口"] a{color:#f5f3ff!important;-webkit-text-fill-color:#f5f3ff!important;font-size:13px;font-weight:600}
.admin-shell :focus-visible,.shop-shell :focus-visible,.supplier-portal-shell :focus-visible{outline:3px solid var(--sm-ui-accent)!important;outline-offset:3px}
.shop-shell .shop-product-row,.shop-shell .shop-order-card,.shop-shell .shop-key-card,.shop-shell .shop-ledger-entry,.shop-shell .shop-substation-panel{border-radius:14px!important;box-shadow:var(--sm-ui-shadow)!important}
.shop-shell .shop-product-row:hover,.shop-shell .shop-order-card:hover,.shop-shell .shop-key-card:hover{box-shadow:var(--sm-ui-shadow)!important}
.shop-shell .shop-catalog-search,.shop-shell .shop-open-api-field{border-radius:12px!important}
.shop-shell .shop-product-row h2,.shop-shell .shop-product-row h3{font-weight:600;line-height:1.55}
#app.sm-review-page{--bg:var(--sm-ui-bg)!important;--card:var(--sm-ui-card)!important;--ink:var(--sm-ui-ink)!important;--muted:var(--sm-ui-muted)!important;--border:var(--sm-ui-line)!important;--accent:var(--sm-ui-accent)!important;padding:32px 28px 48px!important;font-size:14px}
#app.sm-review-page header{background:var(--card);border:1px solid var(--border);padding:24px 28px;border-radius:18px;box-shadow:var(--sm-ui-shadow);margin-bottom:18px}
#app.sm-review-page header>p{font-size:12px;font-weight:700;letter-spacing:.13em;color:var(--accent);margin:0 0 6px}
#app.sm-review-page h1{font-size:28px;line-height:1.4;letter-spacing:-.03em;margin:0 0 18px}
#app.sm-review-page header nav{gap:8px}
#app.sm-review-page header nav a{padding:8px 12px;background:var(--sm-ui-soft);border-radius:9px;text-decoration:none;font-weight:600;min-height:40px}
#app.sm-review-page header nav a:hover{text-decoration:underline}
#app.sm-review-page .sm-review-controls{gap:10px}
#app.sm-review-page button,#app.sm-review-page input,#app.sm-review-page select{font-size:14px;min-height:42px;border-radius:10px}
#app.sm-review-page section{gap:18px}
#app.sm-review-page .sm-review-card{padding:24px;border-radius:16px;box-shadow:var(--sm-ui-shadow)}
#app.sm-review-page .sm-review-card h2{margin:0 0 16px;font-size:19px}
#app.sm-review-page .sm-review-card dl{border-top:1px solid var(--border);padding-top:16px;gap:12px;font-size:14px}
#app.sm-review-page .sm-review-card dd{font-variant-numeric:tabular-nums}
#app.sm-review-page .sm-state-line{background:var(--sm-ui-soft);padding:10px 12px;border-radius:0 8px 8px 0;margin:8px 0;font-weight:600}
#app.sm-review-page dialog,.sm-security-dialog{border-radius:18px;box-shadow:0 24px 80px #0005}
html[data-security-theme] #app.sm-security-page{background:var(--sm-ui-bg)!important;color:var(--sm-ui-ink)!important;padding:clamp(20px,5vh,48px) 20px!important;font-size:15px}
#app.sm-security-page .sm-security-card{width:min(100%,620px);padding:32px 36px;background:var(--sm-ui-card)!important;border-color:var(--sm-ui-line)!important;box-shadow:var(--sm-ui-shadow);border-radius:20px}
#app.sm-security-page header span{font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--sm-ui-accent)!important}
#app.sm-security-page h1{font-size:28px;letter-spacing:-.03em;margin:8px 0 16px}
#app.sm-security-page form{gap:14px}
#app.sm-security-page label{font-size:14px;font-weight:600;gap:7px}
html[data-security-theme] #app.sm-security-page input{font-size:16px;padding:11px 13px;border-radius:10px;background:var(--sm-ui-soft)!important;border-color:var(--sm-ui-line)!important;color:var(--sm-ui-ink)!important;-webkit-text-fill-color:var(--sm-ui-ink)!important}
#app.sm-security-page form>p{font-size:13px;line-height:1.8;color:var(--sm-ui-muted);margin:0}
#app.sm-security-page button{font-size:14px;border-radius:10px;padding:10px 16px;min-height:42px}
#app.sm-security-page form>button[type=submit]{background:var(--sm-ui-brand);color:white;min-height:46px;font-weight:600;margin-top:6px}
#app.sm-security-page :focus-visible,#app.sm-review-page :focus-visible{outline:3px solid var(--sm-ui-accent);outline-offset:3px}
@media(max-width:640px){#app.sm-review-page{padding:16px 12px 32px!important}#app.sm-review-page header{padding:20px 18px}#app.sm-review-page h1{font-size:23px}#app.sm-review-page header nav{gap:6px}#app.sm-review-page header nav a{font-size:13px;padding:8px 10px}#app.sm-review-page .sm-review-card{padding:18px}html[data-security-theme] #app.sm-security-page{padding:20px 12px!important}#app.sm-security-page .sm-security-card{padding:24px 20px}#app.sm-security-page h1{font-size:25px}.shop-shell .shop-product-row{border-radius:12px!important}}
@media(prefers-reduced-motion:reduce){.admin-kpi-card,.admin-rank-panel,.admin-nav-item,.admin-nav-group-button,.admin-nav-single{animation:none!important;transition:none!important}.admin-nav-item::after,.admin-nav-single::after,.admin-nav-group-button::after{animation:none!important}}
