:root{color-scheme:light;--canvas: oklch(96% .014 82);--surface: oklch(99% .008 82);--surface-strong: oklch(92% .023 92);--ink: oklch(22% .035 164);--ink-soft: oklch(39% .028 164);--muted: oklch(55% .025 164);--line: oklch(86% .018 105);--brand: oklch(34% .074 160);--brand-2: oklch(53% .12 148);--accent: oklch(71% .15 58);--coral: oklch(63% .16 35);--blue: oklch(60% .07 225);--ok: oklch(56% .12 145);--warn: oklch(70% .16 70);--danger: oklch(56% .16 28);--shadow-1: 0 1px 3px rgba(34, 51, 45, .12);--shadow-2: 0 16px 42px rgba(34, 51, 45, .13);--radius-1: 4px;--radius-2: 6px;--radius-3: 8px;--font: "Aptos", "Segoe UI", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;font-family:var(--font);color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{min-height:100%;background:var(--canvas);overflow-x:hidden}body{min-height:100vh;margin:0;background:linear-gradient(180deg,#fff9ede6,#ecf0e6db),var(--canvas);color:var(--ink);overflow-x:hidden}#root{min-width:0;overflow-x:hidden}button,input,select,textarea{font:inherit}button{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.login-page,.login-visual,.login-side,.client-shell,.client-topbar,.client-nav,.client-main,.client-section,.spot-card,.order-item{max-width:100vw}.login-page>*,.client-nav>*,.client-main>*,.client-section>*,.spot-grid>*,.order-list>*{min-width:0}.skip-link{position:fixed;left:16px;top:12px;z-index:1000;transform:translateY(-160%);border-radius:var(--radius-2);background:var(--ink);color:#fff;padding:10px 14px}.skip-link:focus{transform:translateY(0)}.admin-shell{display:grid;grid-template-columns:268px minmax(0,1fr);min-height:100vh}.admin-sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:22px 18px;background:var(--brand);color:#f6f2e5}.admin-sidebar>div:first-child{flex:1}.brand-lockup{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;margin-bottom:24px}.brand-mark{display:grid;width:44px;height:44px;place-items:center;border-radius:var(--radius-3);background:var(--accent);color:var(--ink);font-weight:800;font-variant-numeric:tabular-nums}.brand-title{margin:0;font-size:16px;font-weight:800;letter-spacing:0}.brand-subtitle{margin:3px 0 0;color:#c8c5b1;font-size:12px}.side-nav{display:grid;gap:6px;align-content:start}.side-link{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:center;min-height:40px;padding:0 12px;border-radius:var(--radius-2);color:#dad9c7;transition:background-color .18s cubic-bezier(.16,1,.3,1),transform .16s cubic-bezier(.16,1,.3,1)}.side-link.active,.side-link:hover{background:#ffffff1f;color:#fff}.side-link:active,.button:active,.icon-button:active,.client-nav-link:active{transform:scale(.96)}.side-foot{display:grid;gap:10px;padding-top:18px;border-top:1px solid rgba(255,255,255,.13)}.side-foot .button-ghost{width:100%}.admin-main{min-width:0;padding:22px clamp(18px,3vw,38px) 40px}.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:22px}.eyebrow{margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:800}h1,h2,h3,p{letter-spacing:0}h1{margin:0;font-size:34px;line-height:1.12;text-wrap:balance}h2{margin:0;font-size:22px;line-height:1.22;text-wrap:balance}h3{margin:0;font-size:16px;line-height:1.35}.muted{color:var(--muted)}.top-actions,.button-row,.client-actions,.card-actions,.table-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.toolbar{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,auto);gap:10px;align-items:center}.toolbar-filters{grid-template-columns:minmax(0,1fr) repeat(5,auto)}.toolbar select{min-width:124px}.toolbar .search-field{flex:1 1 280px;min-width:min(320px,100%)}.table-summary{color:var(--muted);font-size:13px;font-weight:800;white-space:nowrap;justify-self:end}.pagination-bar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid rgba(31,53,45,.08)}.pagination-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.pagination-meta{color:var(--muted);font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.pagination-size{display:flex;gap:7px;align-items:center;color:var(--muted);font-size:13px;font-weight:800;white-space:nowrap}.pagination-size select{width:auto;min-width:84px;min-height:40px}.api-settings{position:relative}.api-settings summary{display:inline-flex;min-height:40px;align-items:center;justify-content:center;border-radius:var(--radius-2);background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;font-weight:800;list-style:none;padding:0 14px;-webkit-user-select:none;user-select:none}.api-settings summary::-webkit-details-marker{display:none}.api-settings[open] summary{background:color-mix(in oklch,var(--brand),white 88%)}.api-settings-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:30;display:grid;width:min(360px,70vw);gap:10px;border-radius:var(--radius-3);background:var(--surface);box-shadow:var(--shadow-2);padding:14px}.button,.button-secondary,.button-danger,.button-ghost,.icon-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--radius-2);cursor:pointer;font-weight:800;line-height:1;transition:transform .16s cubic-bezier(.16,1,.3,1),background-color .18s cubic-bezier(.16,1,.3,1),color .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1)}.button{padding:0 16px;background:var(--brand);color:#fff;box-shadow:var(--shadow-1)}.button:hover{background:#003822;background:oklch(30% .075 160)}.button-secondary{padding:0 14px;background:var(--accent);color:var(--ink)}.button-danger{padding:0 14px;background:color-mix(in oklch,var(--danger),white 88%);color:#7c1e18}.button-ghost{padding:0 14px;background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.icon-button{width:40px;padding:0;background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.table-actions{justify-content:flex-end;flex-wrap:nowrap;gap:6px}.table-action{flex:0 0 auto;min-height:32px;padding:0 10px;font-size:13px;white-space:nowrap}.table-action-primary{background:color-mix(in oklch,var(--blue),white 88%);color:#003e51;color:oklch(34% .07 225);box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--blue),white 66%)}.table-action-state{background:color-mix(in oklch,var(--brand-2),white 88%);color:#10431d;box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--brand-2),white 68%)}.table-action-danger{background:color-mix(in oklch,var(--danger),white 87%);color:#791a16;box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--danger),white 70%)}.button:disabled,.button-secondary:disabled,.button-danger:disabled,.button-ghost:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.55}.field,.search-field{display:grid;gap:7px}.field span{color:var(--ink-soft);font-size:13px;font-weight:800}input,select,textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:var(--radius-2);background:var(--surface);color:var(--ink);padding:0 12px;outline:none}textarea{min-height:112px;padding-top:12px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid color-mix(in oklch,var(--accent),white 35%);outline-offset:2px}.panel,.metric-card,.admin-table-wrap,.client-section,.spot-card,.login-card,.drawer{border-radius:var(--radius-3);background:var(--surface);box-shadow:var(--shadow-1)}.panel{padding:18px}.panel+.panel,.content-stack>*+*{margin-top:18px}.section-head{display:flex;min-width:0;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.metric-card{display:grid;gap:12px;padding:16px}.metric-card .icon-chip{display:grid;width:38px;height:38px;place-items:center;border-radius:var(--radius-2);background:var(--surface-strong);color:var(--brand)}.metric-card strong{font-size:28px;line-height:1;font-variant-numeric:tabular-nums}.metric-card span,.metric-card small{color:var(--muted)}.split-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:18px}.cache-status-panel{display:grid;gap:16px}.cache-status-head,.cache-status-title,.cache-ops{display:flex;align-items:center;gap:12px}.cache-status-head{justify-content:space-between}.cache-status-title h2{margin:0;font-size:18px}.cache-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid rgba(31,53,45,.08);border-radius:var(--radius-2);background:#1f352d14}.cache-stat-grid>div{display:grid;gap:6px;min-width:0;padding:12px;background:var(--surface)}.cache-stat-grid span,.cache-domain-select span{color:var(--muted);font-size:12px;font-weight:800}.cache-stat-grid strong{overflow:hidden;font-size:20px;font-variant-numeric:tabular-nums;text-overflow:ellipsis}.cache-ops{justify-content:flex-end;flex-wrap:wrap}.cache-domain-select{display:flex;align-items:center;gap:8px;margin-right:auto}.cache-domain-select select{min-width:150px}.admin-table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{border-bottom:1px solid rgba(31,53,45,.08);padding:13px 14px;text-align:left;vertical-align:middle}th{color:var(--ink-soft);font-size:12px;font-weight:900}td{color:var(--ink);font-size:14px}.num{text-align:right;font-variant-numeric:tabular-nums}.status-pill,.tag{display:inline-flex;min-height:24px;align-items:center;border-radius:999px;padding:0 9px;font-size:12px;font-weight:800;white-space:nowrap}.status-pill.ok,.tag{background:color-mix(in oklch,var(--ok),white 82%);color:#174c1d}.status-pill.warn{background:color-mix(in oklch,var(--warn),white 78%);color:#724400;color:oklch(43% .11 67)}.status-pill.info{background:color-mix(in oklch,var(--brand),white 84%);color:#004a5f;color:oklch(38% .08 225)}.status-pill.off{background:color-mix(in oklch,var(--danger),white 82%);color:#7c2620}.export-create-action{display:flex;gap:8px;align-items:center}.export-create-action select{width:92px;min-width:92px}.export-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:14px;border-block:1px solid rgba(31,53,45,.09)}.export-stats span{display:grid;gap:2px;min-width:0;padding:12px 14px;color:var(--muted);font-size:12px}.export-stats strong{color:var(--ink);font-size:20px;font-variant-numeric:tabular-nums}.export-jobs-panel .admin-table-wrap table{min-width:1180px}.export-jobs-panel .admin-table-wrap th:last-child,.export-jobs-panel .admin-table-wrap td:last-child{position:sticky;right:0;z-index:1;background:var(--surface);box-shadow:-8px 0 12px #1f352d0a}.export-progress{position:relative;width:118px;height:20px;overflow:hidden;border-radius:4px;background:var(--surface-strong)}.export-progress span{position:absolute;inset:0 auto 0 0;background:color-mix(in oklch,var(--brand),white 25%)}.export-progress strong{position:relative;z-index:1;display:block;padding-right:5px;color:var(--ink);font-size:11px;line-height:20px;text-align:right;font-variant-numeric:tabular-nums}.thumb{width:64px;height:44px;border-radius:var(--radius-2);object-fit:cover;background:var(--surface-strong);outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.chart{width:100%;height:230px}.chart-grid{stroke:#1f352d14}.chart-line{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.drawer-backdrop{position:fixed;inset:0;z-index:50;display:grid;justify-items:end;background:#15211d47}.drawer{width:min(460px,calc(100vw - 22px));min-height:100%;padding:22px;border-radius:0;overflow:auto}.confirm-backdrop{place-items:center;justify-items:center;padding:16px}.confirm-dialog{display:grid;width:min(420px,calc(100vw - 32px));gap:14px;padding:20px;border:1px solid var(--border);border-radius:var(--radius-2);background:var(--surface);box-shadow:var(--shadow-2)}.confirm-dialog .button-row{justify-content:flex-end}.detail-stack{display:grid;gap:18px}.detail-hero{display:grid;grid-template-columns:132px minmax(0,1fr);gap:14px;align-items:end}.detail-cover{width:132px;aspect-ratio:4 / 3;border-radius:var(--radius-2);background:var(--surface-strong);object-fit:cover;outline:1px solid rgba(0,0,0,.08);outline-offset:-1px}.detail-copy{margin:0;color:var(--ink-soft);line-height:1.7;text-wrap:pretty}.detail-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.detail-stat{display:grid;min-height:76px;align-content:center;gap:6px;border-radius:var(--radius-2);background:var(--surface-strong);padding:12px}.detail-stat strong{font-size:24px;line-height:1;font-variant-numeric:tabular-nums}.detail-stat small{color:var(--muted);font-weight:800}.detail-meta-list{display:grid;gap:9px}.detail-meta-list p{display:flex;gap:8px;align-items:flex-start;min-width:0;margin:0;color:var(--ink-soft);font-size:14px;line-height:1.55;overflow-wrap:anywhere}.detail-meta-list svg{flex:0 0 auto;margin-top:3px;color:var(--brand)}.package-item-list{display:grid;gap:9px;border:1px solid var(--line);border-radius:var(--radius-2);padding:12px;background:color-mix(in oklch,var(--surface-strong),white 44%)}.package-item-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;color:var(--ink-soft);font-size:14px}.package-item-summary strong{min-width:0;color:var(--ink);overflow-wrap:anywhere}.form-grid{display:grid;gap:13px}.package-item-picker{display:grid;gap:10px;margin:0;border:1px solid var(--line);border-radius:var(--radius-2);padding:12px}.package-item-picker legend{padding:0 6px;color:var(--ink-soft);font-size:13px;font-weight:800}.package-item-row{display:grid;grid-template-columns:minmax(0,1fr) 88px;align-items:center;gap:12px;padding:10px;border-radius:var(--radius-2);background:color-mix(in oklch,var(--surface-strong),white 48%)}.package-item-check{display:flex;min-width:0;align-items:center;gap:10px}.package-item-check input[type=checkbox]{width:16px;min-height:16px;flex:0 0 16px;padding:0}.package-item-check span{display:grid;min-width:0;gap:2px}.package-item-check strong,.package-item-check small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.package-item-check small{color:var(--muted)}.package-item-copies{display:grid;gap:4px}.package-item-copies span{color:var(--muted);font-size:12px;font-weight:800}.package-item-copies input{min-height:34px;padding:0 8px}.empty-state,.loading-state,.error-state{display:grid;min-height:180px;place-items:center;padding:24px;color:var(--muted);text-align:center}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,480px);background:var(--canvas)}.login-visual{position:relative;display:grid;align-content:end;min-height:100vh;padding:clamp(28px,6vw,76px);overflow:hidden;color:#fff;background:linear-gradient(140deg,#19352feb,#1f4e3fc7),url(../../assets/images/citywalk.webp) center / cover}.login-visual h1{max-width:520px;font-size:44px}.login-visual p{max-width:460px;min-width:0;color:#ffffffc7;font-size:16px;line-height:1.72;text-wrap:pretty}.login-side{display:grid;align-content:center;padding:clamp(24px,4vw,54px)}.login-card{width:100%;min-width:0;padding:24px}.login-card form{display:grid;gap:14px;margin-top:20px}.form-error{border-radius:var(--radius-2);background:color-mix(in oklch,var(--danger),white 87%);color:#78231d;padding:10px 12px;font-weight:800}.client-shell{min-height:100vh;overflow-x:hidden}.client-topbar{position:sticky;top:0;z-index:20;background:#f7f1e8;border-bottom:1px solid rgba(45,66,58,.09)}.client-nav{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:18px;align-items:center;max-width:1180px;margin:0 auto;padding:13px 18px;min-width:0}.client-nav-links{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity}.client-nav-links::-webkit-scrollbar{display:none}.client-nav-link{min-height:38px;padding:0 12px;border-radius:var(--radius-2);display:inline-flex;flex:0 0 auto;min-width:0;align-items:center;color:var(--ink-soft);font-weight:800;scroll-snap-align:start}.client-nav-link.active,.client-nav-link:hover{background:var(--brand);color:#fff}.notification-trigger{position:relative;flex:0 0 auto}.notification-badge{position:absolute;top:-5px;right:-6px;display:grid;min-width:18px;height:18px;place-items:center;padding:0 5px;border:2px solid var(--surface);border-radius:9px;background:var(--danger);color:#fff;font-size:10px;font-weight:900;line-height:1}.notification-head-actions{flex-wrap:nowrap}.notification-list{display:grid;gap:8px}.notification-pagination{display:flex;align-items:center;justify-content:center;gap:12px;min-height:36px;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.notification-item{display:grid;width:100%;gap:8px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-2);background:var(--surface);color:var(--ink-soft);cursor:pointer;font:inherit;line-height:1.5;text-align:left}.notification-item:hover{border-color:color-mix(in oklch,var(--brand),white 45%);background:var(--canvas)}.notification-item.unread{border-color:color-mix(in oklch,var(--brand),white 58%);background:color-mix(in oklch,var(--brand),white 94%)}.notification-item-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink)}.notification-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--brand)}.notification-time{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.notification-drawer .loading-state,.notification-drawer .empty-state,.notification-drawer .error-state{min-height:160px}.notification-error{align-content:center;gap:14px}.client-main{max-width:1180px;margin:0 auto;padding:26px 18px 48px}.client-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(300px,.98fr);gap:22px;align-items:stretch;margin-bottom:22px}.hero-copy{display:grid;align-content:center;min-height:300px;padding:clamp(24px,4vw,42px);border-radius:var(--radius-3);background:var(--brand);color:#fff;box-shadow:var(--shadow-2)}.hero-copy p{max-width:62ch;color:#ffffffc7;line-height:1.8}.hero-image{min-height:300px;border-radius:var(--radius-3);overflow:hidden;box-shadow:var(--shadow-2)}.hero-image img{width:100%;height:100%;object-fit:cover}.filter-shelf{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.4fr) auto auto;gap:10px;margin-bottom:20px}.client-section{padding:18px;margin-bottom:18px}.spot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.spot-card{overflow:hidden}.spot-card img{width:100%;height:168px;object-fit:cover;background:var(--surface-strong);outline:1px solid rgba(0,0,0,.08);outline-offset:-1px}.spot-body{display:grid;gap:10px;padding:14px}.spot-desc{min-height:48px;color:var(--muted);line-height:1.6;text-wrap:pretty}.spot-meta{display:grid;gap:7px;color:var(--ink-soft);font-size:13px;font-weight:750}.spot-meta span{display:inline-flex;min-width:0;align-items:center;gap:6px}.spot-policy,.review-reply{margin:0;border-radius:var(--radius-2);background:color-mix(in oklch,var(--accent),white 74%);color:var(--ink-soft);padding:8px 10px;font-size:13px;font-weight:750;line-height:1.55}.price{color:var(--coral);font-size:20px;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.timeline-list,.order-list,.review-list{display:grid;gap:12px}.timeline-item,.order-item,.review-item{display:grid;min-width:0;gap:8px;padding:14px;border-radius:var(--radius-3);background:var(--surface);box-shadow:var(--shadow-1)}.review-item .table-actions{max-width:100%;overflow-x:auto;scrollbar-width:none}.review-item .table-actions::-webkit-scrollbar{display:none}.toast{position:fixed;right:20px;bottom:20px;z-index:80;max-width:min(420px,calc(100vw - 40px));transform:translateY(16px);opacity:0;border-radius:var(--radius-2);background:var(--ink);color:#fff;padding:12px 14px;box-shadow:var(--shadow-2);pointer-events:none;transition:transform .18s cubic-bezier(.16,1,.3,1),opacity .18s cubic-bezier(.16,1,.3,1)}.toast.show{transform:translateY(0);opacity:1}@media(hover:hover){.spot-card:hover,.metric-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}.spot-card,.metric-card{transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1)}}@media(max-width:1040px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto}.side-nav,.metric-grid,.split-grid,.client-hero,.spot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cache-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.topbar,.login-page,.filter-shelf,.metric-grid,.split-grid,.client-hero,.spot-grid{grid-template-columns:1fr}.cache-stat-grid,.export-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.export-stats span:last-child{grid-column:1 / -1}.export-create-action{width:100%;align-items:stretch}.export-create-action select{flex:0 0 96px}.export-create-action .button-ghost{flex:1 1 auto}.export-jobs-panel .admin-table-wrap{overflow:visible}.export-jobs-panel .admin-table-wrap table,.export-jobs-panel .admin-table-wrap tbody{display:block;min-width:0;width:100%}.export-jobs-panel .admin-table-wrap thead{display:none}.export-jobs-panel .admin-table-wrap tbody{display:grid;gap:10px}.export-jobs-panel .admin-table-wrap tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.export-jobs-panel .admin-table-wrap td{display:grid;gap:3px;min-width:0;padding:0;border:0}.export-jobs-panel .admin-table-wrap td:before{color:var(--muted);font-size:11px}.export-jobs-panel .admin-table-wrap td:nth-child(1):before{content:"数据"}.export-jobs-panel .admin-table-wrap td:nth-child(2):before{content:"格式"}.export-jobs-panel .admin-table-wrap td:nth-child(3):before{content:"状态"}.export-jobs-panel .admin-table-wrap td:nth-child(4):before{content:"进度"}.export-jobs-panel .admin-table-wrap td:nth-child(5):before{content:"行数"}.export-jobs-panel .admin-table-wrap td:nth-child(6):before{content:"文件"}.export-jobs-panel .admin-table-wrap td:nth-child(7):before{content:"创建人"}.export-jobs-panel .admin-table-wrap td:nth-child(9):before{content:"过期时间"}.export-jobs-panel .admin-table-wrap td:nth-child(4),.export-jobs-panel .admin-table-wrap td:nth-child(10){grid-column:1 / -1}.export-jobs-panel .admin-table-wrap td:nth-child(8){display:none}.export-jobs-panel .admin-table-wrap td:last-child{position:static;box-shadow:none}.export-jobs-panel .export-progress{width:100%}.cache-status-head,.cache-ops,.cache-domain-select{align-items:stretch}.cache-status-head,.cache-ops{flex-direction:column}.cache-domain-select,.cache-domain-select select,.cache-ops .button-ghost,.cache-ops .button-secondary{width:100%}.login-page{width:100%;grid-template-columns:minmax(0,1fr);overflow-x:hidden}.login-visual,.login-visual h1,.login-visual p{max-width:100%}.login-visual h1,.login-visual p{overflow-wrap:anywhere}.login-side{width:100%;min-width:0;padding:22px 14px 34px;justify-items:center}.login-card{width:min(380px,calc(100vw - 48px));max-width:100%;padding:22px;overflow:hidden}.login-card form,.login-card .field,.login-card input,.login-card .button{min-width:0;max-width:100%}.client-nav{grid-template-columns:minmax(0,1fr);width:calc(100vw - 28px);gap:12px;padding:10px 14px 12px;overflow:hidden}.admin-main,.client-main{width:100%;max-width:100%;padding-left:14px;padding-right:14px;overflow-x:hidden}.client-nav-links{grid-column:1 / -1;display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity}.client-actions{grid-column:1 / -1;grid-row:auto;justify-content:start;gap:8px}.client-nav-link{flex:0 0 auto;min-width:84px;justify-content:center;min-height:36px;padding:0 6px;font-size:14px;overflow:hidden;text-overflow:ellipsis;scroll-snap-align:start}.client-nav-link span,.client-nav-link{white-space:nowrap}.notification-drawer{width:100%;max-width:100%;padding:18px 14px}.client-section{width:min(100%,calc(100vw - 36px));margin-left:auto;margin-right:auto;padding:16px;overflow:hidden}.client-hero{width:min(100%,calc(100vw - 36px));margin-left:auto;margin-right:auto}.client-section .section-head{display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch}.client-section .section-head>*{min-width:0}.client-section .section-head .button-ghost{width:100%}.client-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar .search-field,.table-summary{width:100%}.toolbar{grid-template-columns:1fr}.toolbar select,.toolbar .button-ghost,.table-summary{width:100%}.table-summary{justify-self:stretch}.pagination-bar{flex-direction:column;align-items:stretch}.pagination-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.pagination-controls .button-ghost,.pagination-size,.pagination-size select{width:100%}.pagination-size,.client-filter-form select,.client-filter-form input{grid-column:1 / -1}.client-discovery .section-head{grid-template-columns:minmax(0,1fr) auto;align-items:center}.client-discovery .section-head .discovery-refresh{width:42px;min-width:42px;padding:0}.client-discovery .discovery-refresh span{display:none}.client-discovery .client-filter-form select,.client-discovery .client-filter-form input{grid-column:auto}.client-hero .hero-image{display:none}.hero-copy{min-height:220px}.spot-body .section-head{grid-template-columns:minmax(0,1fr);gap:6px}.spot-body .price{justify-self:start}.order-item .section-head{grid-template-columns:minmax(0,1fr);align-items:flex-start;gap:6px}.review-item .section-head{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.review-item .table-actions{justify-content:start}.order-item{width:100%;max-width:100%;overflow:hidden}.order-item .price{font-size:18px;justify-self:start}.detail-hero,.detail-stat-grid{grid-template-columns:minmax(0,1fr)}.detail-cover{width:100%}.order-item .muted{overflow-wrap:anywhere}.order-item .tag{max-width:100%;overflow:hidden}.client-actions .muted{max-width:82px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-nav{grid-template-columns:1fr}.login-visual{min-height:auto;padding:28px 22px}.login-visual h1{font-size:30px}h1{font-size:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.session-recovery{min-height:100vh;display:grid;place-items:center;background:var(--surface, #f5f7f8)}.loading-panel{color:var(--text-secondary, #52606d);font-size:15px}
