/* Chaude storefront — Linear-inspired visual layer. Theme v20261031-1.
   Scoped to storefront/auth layouts; original routes, forms and API contracts stay intact. */
:root, :root[data-theme="dark"] {
  color-scheme: dark;
  --lin-bg: #08090b; --lin-surface: #111216; --lin-raised: #191a20;
  --lin-ink: #f3f3f5; --lin-muted: #a0a0ab; --lin-faint: #777985;
  --lin-line: #292a31; --lin-soft-line: #202127; --lin-accent: #a7a4f4;
  --lin-button: #ebebef; --lin-button-ink: #111216; --lin-header: rgba(8,9,11,.9);
  --uc-ink: var(--lin-ink) !important; --uc-ink-med: var(--lin-muted) !important;
  --uc-ink-dis: var(--lin-faint) !important; --uc-primary-deep: var(--lin-accent) !important;
  --uc-field-bg: var(--lin-surface) !important; --uc-focus: #8784db !important;
  --uc-focus-rgb: 135,132,219 !important; --md-primary: #7773c8 !important;
  --md-primary-rgb: 119,115,200 !important; --md-on-primary: #fff !important;
  --md-surface: var(--lin-bg) !important; --md-surface-1: var(--lin-surface) !important;
  --md-surface-2: var(--lin-raised) !important; --md-outline: var(--lin-line) !important;
  --glass-bg: var(--lin-surface) !important; --glass-bg-soft: var(--lin-surface) !important;
  --glass-bg-strong: var(--lin-surface) !important; --glass-border: var(--lin-line) !important;
  --glass-border-soft: var(--lin-soft-line) !important; --glass-filter: none !important;
  --glass-filter-strong: none !important; --glass-shadow: none !important;
  --glass-shadow-lg: 0 16px 50px #0003 !important; --glass-hi: none !important;
}
:root[data-theme="light"] {
  color-scheme: light;
  --lin-bg: #fafafb; --lin-surface: #fff; --lin-raised: #f0f0f4;
  --lin-ink: #202127; --lin-muted: #666873; --lin-faint: #737580;
  --lin-line: #dddde4; --lin-soft-line: #e9e9ee; --lin-accent: #635dc5;
  --lin-button: #25252c; --lin-button-ink: #fff; --lin-header: rgba(250,250,251,.92);
}
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body.lin-store, body.lin-auth {
  margin: 0; background: var(--lin-bg) !important; background-image: none !important;
  color: var(--lin-ink) !important; min-height: 100vh;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif !important;
  font-size: 14px; -webkit-font-smoothing: antialiased;
}
body.lin-store::before, body.lin-auth::before, body.lin-auth::after { display: none !important; }
.lin-store a, .lin-auth a { text-decoration: none; }
.lin-store a:focus-visible, .lin-store button:focus-visible, .lin-auth a:focus-visible,
.lin-auth button:focus-visible { outline: 2px solid var(--lin-accent); outline-offset: 4px; }
.lin-store ::selection, .lin-auth ::selection { background: #7873c866; color: var(--lin-ink); }
.lin-store .container { max-width: 1136px; padding-left: 28px; padding-right: 28px; }
.lin-store .uc-topbar { position: sticky; top: 0; padding: 0; border-bottom: 1px solid var(--lin-soft-line); background: var(--lin-header); backdrop-filter: blur(18px); z-index: 200; }
.lin-store .uc-topbar__inner { max-width: 1136px; padding: 0 28px; margin: auto; }
.lin-store .shop-nav { height: 72px; gap: 24px; border: 0; border-radius: 0; padding: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
.lin-store .shop-brand { color: var(--lin-ink); font-size: 16px; gap: 10px; font-weight: 600; letter-spacing: -.4px; }
.lin-store .shop-brand img { width: 26px; height: 26px; border-radius: 7px; }
.lin-store .shop-nav__list { gap: 20px; }
.lin-store .shop-nav__item { font-size: 13px; height: 34px; padding: 0; color: var(--lin-muted); border-radius: 0; box-shadow: none; background: transparent; }
.lin-store .shop-nav__item.active, .lin-store .shop-nav__item:hover { color: var(--lin-ink); background: transparent; box-shadow: none; }
.lin-store .shop-nav__item .nav-icon, .lin-store .shop-nav__item i, .lin-store .shop-auth i { display: none; }
.lin-store .shop-search { padding: 0; }
.lin-store .shop-search__box { height: 34px; max-width: 210px; margin: 0; border-radius: 7px; background: var(--lin-surface); border-color: var(--lin-line); }
.lin-store .shop-search__box input { font-size: 12px; }
.lin-store .shop-nav__right { gap: 4px; }
.lin-store .shop-icon-btn { width: 32px; height: 34px; border-radius: 7px; }
.lin-store .shop-icon-btn .material-icons-outlined { font-size: 18px; }
.lin-store .shop-icon-btn i { font-size: 14px; }
.lin-store .shop-auth { gap: 6px; margin-left: 8px; }
.lin-store .shop-btn { height: 34px; padding: 0 13px; border-radius: 7px; font-size: 12px; }
.lin-store .shop-btn--ghost { border-color: transparent; color: var(--lin-muted); }
.lin-store .shop-btn--primary { color: var(--lin-button-ink); background: var(--lin-button); box-shadow: none; }
.lin-store .shop-lang__menu, .lin-store .shop-user__menu { background: var(--lin-raised); border-radius: 9px; border: 1px solid var(--lin-line); box-shadow: 0 16px 50px #0004; }
.lin-store .shop-menu__item { border-radius: 6px; font-size: 13px; }
.lin-store .shop-drawer { background: var(--lin-surface); border-color: var(--lin-line); }
.lin-store .shop-burger { background: transparent; color: var(--lin-ink); width: 34px; height: 36px; }
.lin-store .shop-user__btn { background: var(--lin-surface); border-radius: 7px; }
.lin-store main.container { padding-top: 40px !important; padding-bottom: 64px !important; }
.lin-store main.lin-home { padding-top: 0 !important; padding-bottom: 0 !important; }
/* A quiet, architectural hero: typography first, product-object illustration second. */
.lin-hero { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; min-height: 440px; padding: 65px 0 55px; gap: 30px; }
.lin-eyebrow { font-size: 11px; font-weight: 500; color: var(--lin-muted); letter-spacing: 1.7px; display: flex; align-items: center; gap: 9px; line-height: 1.5; }
.lin-dot { width: 5px; height: 5px; border-radius: 50%; background: #9690ee; display: inline-block; flex: 0 0 auto; }
.lin-hero h1 { margin: 24px 0 20px; font-size: clamp(42px, 4.6vw, 60px); letter-spacing: -2.3px; font-weight: 600; line-height: 1.2; color: var(--lin-ink); }
.lin-hero h1 span { color: var(--lin-muted); }
.lin-hero p { font-size: 15px; color: var(--lin-muted); line-height: 1.9; margin: 0; }
.lin-hero-actions { display: flex; gap: 25px; align-items: center; margin-top: 28px; }
.lin-button { height: 40px; padding: 0 16px; display: inline-flex; gap: 20px; align-items: center; justify-content: center; border: 1px solid var(--lin-line); border-radius: 7px; font-size: 13px; font-weight: 500; transition: transform .15s, background .15s; }
.lin-button:hover { transform: translateY(-1px); }
.lin-button-primary, .lin-button-primary:hover { background: var(--lin-button); color: var(--lin-button-ink); border-color: var(--lin-button); }
.lin-text-link { color: var(--lin-muted); font-size: 13px; display: inline-flex; gap: 13px; align-items: center; }
.lin-text-link:hover { color: var(--lin-ink); }
.lin-art { height: 320px; position: relative; perspective: 1000px; overflow: hidden; }
.lin-art-grid { position: absolute; inset: -5%; background: linear-gradient(var(--lin-line) 1px, transparent 1px),linear-gradient(90deg,var(--lin-line) 1px,transparent 1px); background-size: 45px 45px; opacity: .28; transform: rotate(-17deg); mask-image: radial-gradient(ellipse, #000 5%, transparent 70%); }
.lin-sheet { position: absolute; width: 320px; height: 196px; left: 50%; top: 50%; border: 1px solid #3a3b45; border-radius: 13px; background: linear-gradient(140deg, #24252c, #111216 80%); box-shadow: 0 25px 60px #0006; transform: translate(-50%,-50%) rotate(-9deg) rotateY(-14deg); }
.lin-sheet-back { transform: translate(-40%,-69%) rotate(-9deg) rotateY(-14deg); opacity: .24; }
.lin-sheet-mid { transform: translate(-45%,-59%) rotate(-9deg) rotateY(-14deg); opacity: .55; }
.lin-sheet-front { padding: 22px; color: #ededf0; }
.lin-sheet-top { display: flex; align-items: center; justify-content: space-between; font-size: 9px; letter-spacing: 1.3px; color: #a1a1b1; }
.lin-orbit { font-size: 24px; color: #d5d4ed; line-height: 1; }
.lin-sheet-title { font-size: 23px; font-weight: 500; margin: 22px 0 15px; letter-spacing: -.5px; }
.lin-sheet-title span { display: block; font-size: 10px; margin-top: 7px; color: #8e8f9d; letter-spacing: 0; font-weight: 400; }
.lin-sheet-rule { height: 1px; background: linear-gradient(90deg,#484850,#27282e); }
.lin-sheet-bottom { display: flex; align-items: center; justify-content: space-between; margin-top: 14px; font-size: 9px; color: #a0a0ad; letter-spacing: 1px; }
.lin-sheet-barcode { width: 47px; height: 17px; opacity: .5; background: repeating-linear-gradient(90deg,#a0a0ad 0 1px,transparent 1px 4px,#a0a0ad 4px 6px,transparent 6px 9px); }
.lin-art-caption { position: absolute; bottom: 8px; left: 50%; transform: translateX(-50%); color: var(--lin-faint); font: 9px ui-monospace,monospace; letter-spacing: 2px; display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.lin-art-caption span { width: 20px; height: 1px; background: var(--lin-line); }
.lin-notice { display: flex; gap: 24px; align-items: baseline; padding: 18px 0; border-block: 1px solid var(--lin-soft-line); color: var(--lin-muted); font-size: 12px; line-height: 1.7; }
.lin-notice-label { flex: 0 0 auto; display: flex; align-items: center; gap: 8px; font-weight: 500; color: var(--lin-ink); }
.lin-notice-copy { min-width: 0; overflow-wrap: anywhere; }
.lin-notice-copy p { margin: 0; }
.lin-notice-copy img { max-width: 100%; }
.lin-notice-copy font, .lin-notice-copy span { color: inherit !important; }
.lin-catalog { padding: 48px 0 55px; scroll-margin-top: 90px; }
.lin-section-head { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 26px; }
.lin-section-head .lin-eyebrow { font-size: 10px; color: var(--lin-faint); }
.lin-section-head h2 { color: var(--lin-ink); font-size: 28px; letter-spacing: -.8px; font-weight: 500; margin: 9px 0 0; }
.lin-catalog-count { font-size: 12px; color: var(--lin-faint); }
.lin-catalog-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 22px; }
.lin-store .chip-list { gap: 8px; margin: 0; }
.lin-store .chip { height: 32px; padding: 0 12px; font-size: 12px; border-radius: 6px; color: var(--lin-muted); background: transparent; border-color: var(--lin-line); box-shadow: none; }
.lin-store .chip.is-primary { color: var(--lin-ink); background: var(--lin-raised); border-color: #55525f; box-shadow: none; }
.lin-store .chip .chip-icon { width: 16px; height: 16px; border-radius: 4px; }
.lin-catalog-hint { font-size: 12px; color: var(--lin-faint); }
.lin-catalog-hint span { margin-left: 12px; }
.lin-store .item-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin: 0; }
.lin-store .item-list > * { margin-top: 0; }
.lin-store .item-card-cell { min-width: 0; }
.lin-store .acg-card { border: 1px solid var(--lin-line); border-radius: 12px; background: var(--lin-surface); box-shadow: none; }
.lin-store .item-card-cell:hover .acg-card { transform: translateY(-3px); border-color: #5e5b74; box-shadow: 0 12px 40px #0003; }
.lin-store .acg-thumb { height: 170px; aspect-ratio: auto; border-bottom: 1px solid var(--lin-soft-line); background-color: var(--lin-raised); background-size: 92px 92px !important; background-repeat: no-repeat !important; }
.lin-store .acg-card > .acg-body { padding: 20px; gap: 12px; }
.lin-store .goods-title { font-size: 17px; font-weight: 500; color: var(--lin-ink); line-height: 1.45; margin: 0; }
.lin-store .price { color: var(--lin-ink); font-size: 23px; font-weight: 500; letter-spacing: -.7px; }
.lin-store .price .unit { color: var(--lin-muted); font-size: 14px; margin-right: 3px; }
.lin-store .stat-row { margin-top: 4px; }
.lin-store .stat-bottom { color: var(--lin-muted); font-size: 11px; }
.lin-store .badge-soft { font-size: 10px; padding: 2px 7px; border-radius: 4px; line-height: 1.6; }
.lin-store .badge-soft-success { color: #83c5a2; background: #183128; }
.lin-store .badge-soft-primary, .lin-store .badge-soft-info { color: #b5b1eb; background: #27243e; }
:root[data-theme="light"] .lin-store .badge-soft-success { color: #26704c; background: #e9f5ee; }
:root[data-theme="light"] .lin-store .badge-soft-primary, :root[data-theme="light"] .lin-store .badge-soft-info { color: #6257ab; background: #f0edff; }
.lin-product-action { border-top: 1px solid var(--lin-soft-line); margin-top: 3px; padding-top: 13px; display: flex; justify-content: space-between; color: var(--lin-muted); font-size: 12px; }
.item-card-cell:hover .lin-product-action { color: var(--lin-ink); }
.lin-empty { grid-column: 1/-1; border: 1px dashed var(--lin-line); border-radius: 10px; padding: 44px !important; text-align: center; }
.lin-empty > span { font-size: 32px; color: var(--lin-faint); }
.lin-empty h3 { color: var(--lin-ink); font-size: 17px; margin: 10px 0; }
.lin-empty p { color: var(--lin-muted); margin: 0; font-size: 13px; }
.lin-guide { display: grid; grid-template-columns: repeat(3,1fr); gap: 40px; border-top: 1px solid var(--lin-line); padding: 34px 0 48px; }
.lin-step { color: var(--lin-faint); font: 10px ui-monospace,monospace; letter-spacing: 1px; }
.lin-guide h3 { color: var(--lin-ink); font-size: 15px; font-weight: 500; margin: 16px 0 8px; }
.lin-guide p { font-size: 12px; line-height: 1.8; color: var(--lin-muted); margin: 0; }
/* Shared shopping surfaces, not administrator pages. */
.lin-store .panel { background: var(--lin-surface); border: 1px solid var(--lin-line); border-radius: 12px; backdrop-filter: none; box-shadow: none; }
.lin-store .panel-header { padding: 20px 24px; border-bottom: 1px solid var(--lin-soft-line); }
.lin-store .panel-header .icon { background: transparent; color: var(--lin-muted); width: 18px; height: 18px; border-radius: 0; }
.lin-store .panel-title { font-size: 14px; font-weight: 500; }
.lin-store .panel-body { padding: 24px; color: var(--lin-muted); }
.lin-store .form-control, .lin-auth .form-control { border: 1px solid var(--lin-line) !important; background: var(--lin-bg) !important; color: var(--lin-ink) !important; border-radius: 7px; box-shadow: none !important; height: 44px; font-size: 14px; }
.lin-store .form-control::placeholder, .lin-auth .form-control::placeholder { color: var(--lin-faint) !important; }
.lin-store .form-control:focus, .lin-auth .form-control:focus { border-color: #8a85d0 !important; box-shadow: 0 0 0 3px #8a85d015 !important; }
.lin-store .btn-primary, .lin-store .btn-search-query, .lin-auth .btn-gradient { color: var(--lin-button-ink); background: var(--lin-button); border: 1px solid var(--lin-button); border-radius: 7px; box-shadow: none; height: 44px; font-size: 14px; font-weight: 500; }
.lin-store .btn-primary:hover, .lin-auth .btn-gradient:hover { color: var(--lin-button-ink); background: var(--lin-button); opacity: .9; box-shadow: none; }
.lin-store .form-label { color: var(--lin-muted); font-size: 12px; }
.lin-store .lin-breadcrumb { display: flex; gap: 12px; font-size: 12px; color: var(--lin-faint); margin: 0 0 22px; }
.lin-breadcrumb a { color: var(--lin-muted); }
.lin-store .lin-item-page > .panel:first-of-type { margin-top: 0 !important; }
.lin-store .lin-item-page > .panel > .panel-body { padding: 32px; }
.lin-store .item-cover { object-fit: contain; max-height: 320px; padding: 48px; border-radius: 0; }
.lin-store .acg-cover { background: var(--lin-bg); min-height: 320px; justify-content: center; border-color: var(--lin-soft-line); border-radius: 8px; max-height: 430px; }
.lin-store .item-buy { padding-left: 16px; }
.lin-store .item-buy h4 { font-size: 28px; font-weight: 500; margin: 0 0 18px; }
.lin-store .abacus { padding: 12px 0 4px; }
.lin-store .abacus .price { font-size: 34px; }
.lin-store .buy-divider { height: 1px; background: var(--lin-line); margin: 0 0 24px; }
.lin-store .qty-group { border-radius: 7px; background: var(--lin-bg); }
.lin-store .qty-group .change-num-sub, .lin-store .qty-group .change-num-add { width: 40px; color: var(--lin-ink); }
.lin-store .qty-group .form-control { height: 40px; }
.lin-store .captcha-group { height: 44px; border-radius: 7px; background: var(--lin-bg); }
.lin-store .cash-pay { padding: 16px; background: var(--lin-bg); border-radius: 8px; }
.lin-store .pay-list .pay { min-height: 44px; border-radius: 7px; background: var(--lin-raised); }
.lin-store .sku { border-radius: 6px; }
.lin-store .item-detail { margin-top: 24px !important; }
.lin-store .item-detail .panel-body { min-height: 90px; font-size: 14px; line-height: 1.9; }
.lin-query-page { min-height: 68vh; }
.lin-page-intro { padding: 22px 0 35px; }
.lin-page-intro h1 { font-size: clamp(28px,3.5vw,42px); font-weight: 500; letter-spacing: -1px; margin: 15px 0; color: var(--lin-ink); }
.lin-page-intro p { font-size: 14px; line-height: 1.8; color: var(--lin-muted); margin: 0; }
.lin-field-label { font-size: 12px; color: var(--lin-muted); display: block; margin-bottom: 10px; }
.lin-store .order-query-form > .d-flex { justify-content: flex-start !important; gap: 12px !important; }
.lin-store .order-query-form > .d-flex > div:first-child { width: min(100%,540px) !important; }
.lin-store .order-item { border-radius: 9px; box-shadow: none; }
.lin-store .order-item:hover { transform: none; box-shadow: none; }
.lin-store .order-amount, .lin-store .amount-value { color: var(--lin-ink); }
.lin-store .lin-footer { margin: 0; padding: 28px 0; border-top: 1px solid var(--lin-soft-line); color: var(--lin-muted); background: transparent; text-align: left; }
.lin-footer-inner { max-width: 1136px; padding: 0 28px; margin: auto; display: flex; align-items: center; justify-content: space-between; }
.lin-footer-inner > a { font-size: 13px; font-weight: 500; color: var(--lin-ink); }
.lin-footer-inner > a > span { display: block; font-size: 8px; letter-spacing: 1.5px; font-weight: 400; color: var(--lin-faint); margin-top: 7px; }
.lin-footer-inner > div { display: flex; gap: 24px; font-size: 12px; }
.lin-footer-inner > div a { color: var(--lin-muted); }
.lin-footer-inner a:hover { color: var(--lin-ink); }
/* Auth: retain original form behavior, passkeys, captcha and registration conditions. */
.lin-auth .auth-wrapper { min-height: 100vh; padding: 80px 20px 50px; display: flex; align-items: center; justify-content: center; background: transparent; }
.lin-auth .auth-card { width: 100%; max-width: 420px; border: 1px solid var(--lin-line); border-radius: 14px; background: var(--lin-surface); box-shadow: 0 30px 90px #0002; padding: 36px; color: var(--lin-ink); backdrop-filter: none; animation: none; }
.lin-auth .brand-logo { background: transparent; box-shadow: none; }
.lin-auth .brand-icon { width: 42px; height: 42px; border-radius: 10px; }
.lin-auth .auth-subtitle { color: var(--lin-muted); line-height: 1.8; text-align: center; margin-top: 18px; }
.lin-auth .text-link, .lin-auth a { color: var(--lin-accent); }
.lin-auth .form-floating > .form-control { height: 56px; padding-top: 22px; }
.lin-auth .form-floating > label { color: var(--lin-muted); }
.lin-auth .form-floating > label::after { background: var(--lin-bg) !important; }
.lin-auth .form-check label, .lin-auth .text-center { color: var(--lin-muted); font-size: 12px; }
.lin-auth .btn-passkey { background: var(--lin-raised); border: 1px solid var(--lin-line); color: var(--lin-ink); box-shadow: none; border-radius: 7px; }
.lin-auth-back { position: absolute; top: 28px; left: 32px; color: var(--lin-muted) !important; font-size: 13px; }
.lin-store .layui-layer, .lin-auth .layui-layer { background: var(--lin-surface); color: var(--lin-ink); border: 1px solid var(--lin-line); border-radius: 10px; }
.lin-store .layui-layer-title, .lin-auth .layui-layer-title { background: var(--lin-raised); color: var(--lin-ink); border-color: var(--lin-line); }
.lin-mobile-search { display: none; }
@media(max-width:1000px) {
  .lin-store .shop-nav { gap: 16px; }
  .lin-store .shop-nav__list { gap: 15px; }
  .lin-store .shop-search__box { max-width: 170px; }
  .lin-sheet { width: 270px; height: 190px; }
  .lin-sheet-title { font-size: 21px; }
}
@media(max-width:767px) {
  .lin-store .container, .lin-store .uc-topbar__inner { padding-left: 22px; padding-right: 22px; }
  .lin-store .shop-nav { height: 64px; gap: 12px; }
  .lin-store .shop-brand__name { max-width: 145px; }
  .lin-store .shop-nav__list, .lin-store .shop-search, .lin-store .shop-auth { display: none !important; }
  .lin-store .shop-burger { display: inline-flex; }
  .lin-store .shop-drawer, .lin-store .shop-drawer__shade { display: block; }
  .lin-hero { min-height: 0; grid-template-columns: 1fr; gap: 0; padding: 46px 0 24px; }
  .lin-hero h1 { font-size: 45px; letter-spacing: -1.8px; margin-top: 22px; }
  .lin-hero p { font-size: 14px; }
  .lin-hero-actions { gap: 22px; margin-top: 25px; }
  .lin-art { height: 242px; margin-top: 22px; }
  .lin-sheet { width: 285px; height: 182px; }
  .lin-sheet-title { margin-top: 15px; }
  .lin-art-caption { bottom: 0; }
  .lin-notice { align-items: flex-start; gap: 12px; flex-direction: column; padding: 18px 0; }
  .lin-catalog { padding: 32px 0 38px; }
  .lin-section-head { margin-bottom: 22px; }
  .lin-section-head h2 { font-size: 25px; }
  .lin-catalog-hint { display: none; }
  .lin-store .item-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .lin-store .acg-thumb { height: 130px; background-size: 76px 76px !important; }
  .lin-store .acg-card > .acg-body { padding: 14px; gap: 10px; }
  .lin-store .goods-title { font-size: 15px; }
  .lin-store .stat-bottom { flex-wrap: wrap; gap: 3px 8px; font-size: 10px; }
  .lin-guide { grid-template-columns: 1fr; gap: 24px; padding: 30px 0; }
  .lin-guide h3 { margin: 8px 0 5px; }
  .lin-footer-inner { padding: 0 22px; gap: 25px; align-items: flex-start; }
  .lin-footer-inner > div { flex-direction: column; gap: 12px; }
  .lin-store .lin-item-page > .panel > .panel-body { padding: 20px; }
  .lin-store .item-buy { padding: 0; }
  .lin-store .acg-cover { min-height: 220px; max-height: 250px; }
  .lin-store .item-cover { max-height: 250px; padding: 35px; }
  .lin-store .panel-body { padding: 20px; }
  .lin-store .order-query-form > .d-flex { flex-wrap: wrap; }
  .lin-store .order-query-form > .d-flex > div { width: 100% !important; }
  .lin-store .btn-search-query { width: 100%; }
  .lin-page-intro { padding-top: 6px; }
  .lin-auth .auth-card { padding: 28px 22px; }
  .lin-mobile-search { display: flex; gap: 10px; align-items: center; width: 100%; margin-bottom: 20px; height: 42px; padding: 0 12px; border: 1px solid var(--lin-line); border-radius: 7px; color: var(--lin-muted); }
  .lin-mobile-search input { background: transparent; border: 0; color: var(--lin-ink); min-width: 0; flex: 1; outline: 0; font-size: 13px; }
  .lin-mobile-search:focus-within { outline: 1px solid var(--lin-accent); }
}
@media(max-width:390px) {
  .lin-store .container, .lin-store .uc-topbar__inner { padding-left: 18px; padding-right: 18px; }
  .lin-hero h1 { font-size: 42px; }
  .lin-store .item-list { grid-template-columns: 1fr; }
  .lin-store .acg-thumb { height: 164px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  .lin-store *, .lin-auth * { animation: none !important; transition: none !important; }
}
/* Single-product catalogs should feel intentional, not like an empty three-column grid. */
:root[data-theme] .lin-store .price { color: var(--lin-ink); }
.lin-store .item-list:has(> .item-card-cell:only-child) { grid-template-columns: 1fr; }
.lin-store .item-list > .item-card-cell:only-child .acg-card { display: grid; grid-template-columns: 38% 1fr; }
.lin-store .item-list > .item-card-cell:only-child .acg-thumb { min-height: 260px; height: 100%; border-bottom: 0; border-right: 1px solid var(--lin-line); background-size: 120px 120px !important; }
.lin-store .item-list > .item-card-cell:only-child .acg-body { padding: 28px 32px; }
.lin-store .item-list > .item-card-cell:only-child .goods-title { font-size: 23px; }
.lin-store .item-list > .item-card-cell:only-child .price { font-size: 29px; }
@media(max-width:600px) {
  .lin-store .item-list > .item-card-cell:only-child .acg-card { grid-template-columns: 1fr; }
  .lin-store .item-list > .item-card-cell:only-child .acg-thumb { min-height: 170px; height: 170px; border-right: 0; border-bottom: 1px solid var(--lin-line); background-size: 90px 90px !important; }
  .lin-store .item-list > .item-card-cell:only-child .acg-body { padding: 20px; }
  .lin-store .item-list > .item-card-cell:only-child .goods-title { font-size: 20px; }
}
/* Bootstrap floating labels need transparent placeholders to avoid overlapping text. */
.lin-auth .form-floating > .form-control::placeholder { color: transparent !important; }
.lin-auth .brand-icon { filter: none; box-shadow: none; }
.lin-auth-back { z-index: 5; }
@media(max-width:767px) {
  .lin-art { display: none; }
  .lin-hero { padding-bottom: 40px; }
  .lin-store .shop-icon-btn, .lin-store .shop-burger { width: 40px; height: 44px; }
}

/* Vshop brand mark */
.lin-store .shop-brand img,
.lin-store .shop-drawer__brand img,
.sp-feature-head img,
.rc-command-footer img {
  object-fit: contain;
  box-shadow: 0 5px 16px rgba(73, 98, 255, .24);
}

.lin-store .shop-brand img {
  transition: transform .24s cubic-bezier(.2,.8,.2,1), filter .24s ease;
}
.lin-store .shop-brand:hover img {
  transform: translateY(-1px) rotate(-3deg) scale(1.04);
  filter: saturate(1.12) brightness(1.03);
}
.lin-store .shop-brand img { width: 30px; height: 30px; border-radius: 9px; }
