.value-dash{position:relative;background:var(--color-bg-card);border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden}.value-dash__head{position:relative;background:var(--gradient-hero);padding:var(--space-xl) var(--space-2xl);color:#fff;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--space-lg)}.value-dash__head:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--bg-noise);opacity:.5;pointer-events:none}.value-dash__title{position:relative;font-size:var(--font-xl);font-weight:var(--font-weight-bold);letter-spacing:.5px}.value-dash__subtitle{position:relative;margin-top:var(--space-xs);font-size:var(--font-sm);opacity:.9;max-width:640px;line-height:var(--line-height-normal)}.value-dash__actions{position:relative;display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.value-dash__conclusion{position:relative;margin:0 var(--space-2xl) var(--space-xl);padding:var(--space-lg) var(--space-xl);border-radius:var(--radius-lg);background:linear-gradient(180deg,#fffdf7,#fbf6ec);border:1px solid rgba(212,175,55,.35);display:flex;align-items:baseline;gap:var(--space-sm);flex-wrap:wrap}.value-dash__conclusion-text{font-size:var(--font-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);line-height:var(--line-height-normal)}.value-dash__conclusion-amount{font-size:var(--font-3xl);font-weight:var(--font-weight-bold);color:var(--color-gold-dark);letter-spacing:.5px}.value-dash__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-lg);padding:var(--space-xl) var(--space-2xl)}@media(max-width:1180px){.value-dash__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.value-dash__grid{grid-template-columns:minmax(0,1fr)}.value-dash__head,.value-dash__grid{padding-left:var(--space-lg);padding-right:var(--space-lg)}.value-dash__conclusion{margin-left:var(--space-lg);margin-right:var(--space-lg)}}.value-card{position:relative;background:var(--color-bg-card);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-lg);display:flex;flex-direction:column;min-height:176px;transition:var(--transition-base)}.value-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.value-card--violet{border-top:3px solid #8b5cf6}.value-card--blue{border-top:3px solid #1677ff}.value-card--emerald{border-top:3px solid #0fa958}.value-card--amber{border-top:3px solid #faad14}.value-card__top{display:flex;align-items:center;gap:var(--space-sm)}.value-card__icon{width:28px;height:28px;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px}.value-card__icon--violet{background:#8b5cf61f;color:#7c3aed}.value-card__icon--blue{background:#1677ff1f;color:#1677ff}.value-card__icon--emerald{background:#0fa9581f;color:#0fa958}.value-card__icon--amber{background:#faad1429;color:#d48806}.value-card__title{font-size:var(--font-md);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);line-height:var(--line-height-tight)}.value-card__amount{margin-top:var(--space-md);font-size:var(--font-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-strong);line-height:1.15;letter-spacing:.3px}.value-card__amount--pending{font-size:var(--font-xl);color:var(--color-text-tertiary);font-weight:var(--font-weight-semibold)}.value-card__amount--negative{color:var(--color-error)}.value-card__desc{margin-top:var(--space-xs);font-size:var(--font-xs);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.value-card__pending{margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:var(--color-bg-muted);font-size:var(--font-xs);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.value-card__pending b{color:var(--color-text-primary)}.value-card__basis{margin-top:var(--space-sm);border-top:1px dashed var(--color-border);padding-top:var(--space-sm)}.value-card__formula{font-size:var(--font-xs);color:var(--color-text-secondary);background:var(--color-bg-muted);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);line-height:var(--line-height-normal);word-break:break-all}.value-card__inputs{margin:var(--space-sm) 0 0;padding:0;list-style:none;display:grid;grid-template-columns:1fr auto;gap:2px var(--space-md);font-size:var(--font-xs)}.value-card__inputs dt{color:var(--color-text-secondary)}.value-card__inputs dd{margin:0;color:var(--color-text-strong);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums}.value-card__samples{margin-top:var(--space-sm);font-size:var(--font-xs);color:var(--color-text-secondary)}.value-card__sample-row{display:flex;justify-content:space-between;gap:var(--space-sm);padding:2px 0}.value-card__sample-row span:last-child{color:var(--color-text-strong);font-variant-numeric:tabular-nums}.value-card__toggle{margin-top:auto;padding-top:var(--space-sm)}.value-dash__state{padding:var(--space-2xl);text-align:center;color:var(--color-text-tertiary);font-size:var(--font-md)}.up-modal .ant-modal-content{padding:0;overflow:hidden;border-radius:18px}.up-modal .ant-modal-body{padding:0}.up-root{display:flex;flex-direction:column}.up-banner{display:flex;align-items:center;gap:10px;padding:12px 22px;color:#fff;font-size:13px;background:linear-gradient(100deg,#f97316,#ef4444 45%,#7c3aed)}.up-banner-tag{flex:none;padding:1px 8px;border-radius:999px;background:#ffffff38;font-size:12px;font-weight:600}.up-body{display:grid;grid-template-columns:1fr 340px;gap:0;min-height:480px}.up-left{padding:20px 22px 24px;border-right:1px solid var(--color-border, #eef0f4)}.up-right{padding:20px 22px 24px;background:#fafbfd;display:flex;flex-direction:column}.up-section-title{font-size:14px;font-weight:600;color:#0f172a;margin-bottom:10px}.up-section-title--mt{margin-top:20px}.up-plan-sub{margin-top:10px;font-size:12px;color:#64748b}.up-empty{padding:16px 0;font-size:13px;color:#94a3b8;text-align:center}.up-cycles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.up-cycle{position:relative;text-align:left;padding:12px 14px 14px;border:1.5px solid var(--color-border, #e5e7eb);border-radius:12px;background:#fff;cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.up-cycle:hover{border-color:#a5b4fc;transform:translateY(-1px)}.up-cycle.is-active{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f;background:#f5f5ff}.up-cycle-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.up-cycle-name{font-size:13px;font-weight:600;color:#334155}.up-cycle-badge{margin:0;font-size:var(--font-size-caption);line-height:16px}.up-cycle-price{margin-top:8px;color:#0f172a;display:flex;align-items:baseline;gap:2px}.up-cycle-yuan{font-size:13px}.up-cycle-num{font-size:24px;font-weight:700;letter-spacing:-.5px}.up-cycle-origin{font-size:12px;color:#94a3b8;text-decoration:line-through}.up-cycle-note{margin-top:4px;font-size:var(--font-size-caption);color:#64748b}.up-features{display:flex;flex-direction:column;gap:8px}.up-feature-group{display:flex;gap:10px;align-items:flex-start}.up-feature-group-name{flex:none;width:62px;font-size:12px;color:#94a3b8;padding-top:3px}.up-feature-tags{display:flex;flex-wrap:wrap;gap:6px}.up-feature-tag{margin:0;padding:2px 8px;border-radius:6px;background:#eef2ff;color:#4338ca;font-size:12px}.up-addons{display:flex;flex-direction:column;gap:8px}.up-addon{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1.5px solid var(--color-border, #e5e7eb);border-radius:10px;background:#fff;cursor:pointer;transition:border-color .16s}.up-addon:hover{border-color:#a5b4fc}.up-addon.is-active{border-color:#4f46e5;background:#f5f5ff}.up-addon-main{display:flex;flex-direction:column;flex:1;min-width:0}.up-addon-name{font-size:13px;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-addon-credit{font-size:12px;color:#64748b}.up-addon-price{font-size:14px;font-weight:600;color:#0f172a}.up-summary{margin-top:16px;padding-top:14px;border-top:1px dashed var(--color-border, #e5e7eb)}.up-summary-row{display:flex;justify-content:space-between;font-size:12px;color:#64748b;margin-bottom:6px}.up-summary-total{display:flex;align-items:baseline;justify-content:space-between;margin:10px 0 14px}.up-summary-total>span:first-child{font-size:13px;color:#334155}.up-total-num{font-size:var(--font-size-2xl);font-weight:700;color:#dc2626;letter-spacing:-.5px}.up-pay-btn{width:100%;height:42px;border:none;border-radius:10px;background:linear-gradient(100deg,#4f46e5,#7c3aed);color:#fff;font-size:var(--font-size-body);font-weight:600;cursor:pointer;transition:opacity .16s}.up-pay-btn:hover:not(:disabled){opacity:.92}.up-pay-btn:disabled{background:#cbd5e1;cursor:not-allowed}.up-qr{margin-top:18px}.qr-panel{display:flex;flex-direction:column;align-items:center;padding:14px;border-radius:12px;background:#fff;border:1px solid var(--color-border, #eef0f4)}.qr-box{position:relative;width:168px;height:168px;border:1px dashed #cbd5e1;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#f8fafc}.qr-box--disabled{background:repeating-linear-gradient(45deg,#f8fafc,#f8fafc 8px,#f1f5f9 8px,#f1f5f9 16px)}.qr-box-icon{width:64px;height:64px;border-radius:12px;background:#07c160;color:#fff;font-size:13px;font-weight:600;line-height:1.25;display:flex;align-items:center;justify-content:center;text-align:center}.qr-box--disabled .qr-box-icon{background:#cbd5e1}.qr-box-mask{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffdb;display:flex;align-items:center;justify-content:center;border-radius:12px}.qr-amount{margin-top:12px;font-size:20px;font-weight:700;color:#0f172a}.qr-tip{margin-top:4px;font-size:13px;color:#334155}.qr-tip--warn{color:#b45309;font-weight:600}.qr-note{margin-top:6px;font-size:var(--font-size-caption);color:#94a3b8}.qr-paid{display:flex;flex-direction:column;align-items:center;padding:18px 0}.qr-paid-icon{width:48px;height:48px;border-radius:50%;background:#16a34a;color:#fff;font-size:var(--font-size-2xl);display:flex;align-items:center;justify-content:center}.qr-paid-title{margin-top:10px;font-size:var(--font-size-body);font-weight:600;color:#16a34a}.qr-paid-sub{margin-top:4px;font-size:12px;color:#64748b}.up-modal--recharge .up-root{padding:20px 22px 24px}.rc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.rc-title{font-size:16px;font-weight:700;color:#0f172a}.rc-sub{margin-top:4px;font-size:12px;color:#64748b}.rc-balance{display:flex;align-items:baseline;gap:4px;padding:8px 14px;border-radius:10px;background:#eef2ff}.rc-balance-label{font-size:12px;color:#6366f1}.rc-balance-num{font-size:20px;font-weight:700;color:#4338ca}.rc-balance-unit{font-size:12px;color:#6366f1}.rc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.rc-card{padding:14px 12px;border:1.5px solid var(--color-border, #e5e7eb);border-radius:12px;background:#fff;cursor:pointer;text-align:center;transition:border-color .16s,transform .16s}.rc-card:hover{border-color:#a5b4fc;transform:translateY(-2px)}.rc-card.is-active{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f;background:#f5f5ff}.rc-card-name{font-size:12px;color:#64748b}.rc-card-credit{margin-top:6px;font-size:var(--font-size-xl);font-weight:700;color:#0f172a}.rc-card-unit{font-size:12px;font-weight:400;margin-left:2px;color:#64748b}.rc-card-bonus{margin-top:2px;font-size:var(--font-size-caption);color:#dc2626}.rc-card-price{margin-top:8px;font-size:14px;font-weight:600;color:#334155}.as-credit-bar{display:flex;align-items:center;gap:14px;padding:14px 18px;margin-bottom:12px;border-radius:14px;background:linear-gradient(100deg,#eef2ff,#faf5ff);border:1px solid #e9e4ff}.as-credit-item{display:flex;flex-direction:column}.as-credit-label{font-size:12px;color:#64748b}.as-credit-value{font-size:20px;font-weight:700;color:#4338ca;line-height:1.2}.as-credit-value--held{color:#b45309}.as-credit-spacer{flex:1}.as-pricing-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.as-pricing-tag{padding:2px 8px;border-radius:6px;background:#fff;border:1px solid #e9e4ff;font-size:12px;color:#4c1d95}.as-pricing-tag b{color:#dc2626;margin-left:2px}@media(max-width:900px){.up-body{grid-template-columns:1fr}.up-left{border-right:none;border-bottom:1px solid var(--color-border, #eef0f4)}.rc-grid{grid-template-columns:repeat(2,1fr)}}.cost-sheet{position:relative;background:linear-gradient(180deg,#fffdfa,#fdfaf5);border:1px solid #efe7db;border-radius:14px;padding:16px 18px 14px;color:#111827;box-shadow:0 1px 2px #1118270a,0 10px 26px -18px #11182752;animation:cs-in .26s ease-out}@keyframes cs-in{0%{opacity:0;transform:translateY(6px) scale(.995)}to{opacity:1;transform:none}}.cost-sheet.compact{padding:12px 14px 10px}.cs-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:10px;border-bottom:1px dashed #ece2d4}.cs-head-main{min-width:0}.cs-kicker{display:block;font-size:10.5px;letter-spacing:.14em;color:#b0a390;text-transform:uppercase}.cs-name{margin:2px 0 6px;font-size:20px;font-weight:700;line-height:1.25;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cost-sheet.compact .cs-name{font-size:var(--font-size-lg);margin-bottom:4px}.cs-meta{display:flex;flex-wrap:wrap;gap:5px}.cs-chip{font-size:var(--font-size-caption);line-height:17px;padding:0 8px;border-radius:10px;background:#f3ece1;color:#7a6a56}.cs-chip.dim{background:#f7f3ec;color:#a89b88}.cs-price{text-align:right;flex:none}.cs-price-label{display:block;font-size:10.5px;color:#b0a390}.cs-price b{font-size:var(--font-size-xl);font-weight:700;color:#c0392b;font-variant-numeric:tabular-nums}.cs-price b.cs-price-none{font-size:14px;font-weight:500;color:#b8ae9f}.cs-kpis{display:flex;align-items:center;gap:16px;padding:12px 0 10px}.cs-donut-wrap{display:flex;flex-direction:column;align-items:center;gap:3px;flex:none}.cs-donut{width:100px;height:100px;border-radius:50%;display:grid;place-items:center;transition:background .2s ease}.cost-sheet.compact .cs-donut{width:86px;height:86px}.cs-donut-hole{width:76px;height:76px;border-radius:50%;background:#fffdfa;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}.cost-sheet.compact .cs-donut-hole{width:66px;height:66px}.cs-donut-hole b{font-size:var(--font-size-xl);font-weight:800;font-variant-numeric:tabular-nums}.cost-sheet.compact .cs-donut-hole b{font-size:var(--font-size-lg)}.cs-donut-hole span{font-size:var(--font-size-caption);color:#b0a390}.cs-level{font-size:10.5px;padding:0 7px;border-radius:9px;line-height:16px}.cs-level.lv-good{background:#2e7d5b1a;color:#2e7d5b}.cs-level.lv-warn{background:#b4802a1f;color:#b4802a}.cs-level.lv-bad{background:#c0392b1a;color:#c0392b}.cs-level.lv-none{background:#f3ece1;color:#a89b88}.lv-good{color:#2e7d5b}.lv-warn{color:#b4802a}.lv-bad{color:#c0392b}.lv-none{color:#b0a390}.cs-kpi-list{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.cs-kpi{padding:2px 10px;border-left:1px solid #f1e9dc;min-width:0}.cs-kpi:first-child{border-left:none;padding-left:0}.cs-kpi span{display:block;font-size:var(--font-size-caption);color:#a2957f}.cs-kpi b{display:block;margin-top:2px;font-size:var(--font-size-lg);font-weight:700;color:#111827;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cost-sheet.compact .cs-kpi b{font-size:16px}.cs-kpi i{display:block;margin-top:1px;font-style:normal;font-size:var(--font-size-caption);color:#c0b5a4}.cs-hint{margin:0 0 10px;padding:6px 10px;border:1px solid #f5e3c4;border-radius:8px;background:#fff8ec;font-size:12px;color:#8a6520}.cs-hint b{font-weight:700}.cs-compose-head{display:flex;align-items:baseline;justify-content:space-between;font-size:11.5px;color:#a2957f;margin-bottom:5px}.cs-compose-total{font-variant-numeric:tabular-nums;color:#6f6252}.cs-bar{display:flex;height:10px;border-radius:6px;overflow:hidden;background:#f4efe7}.cs-bar-seg{display:block;height:100%;min-width:2px}.cs-bar-empty{display:flex;align-items:center;justify-content:center;width:100%;font-size:var(--font-size-caption);color:#c0b5a4}.seg-0{background:#4e79a7}.seg-1{background:#f28e2b}.seg-2{background:#b07aa1}.seg-3{background:#76b7b2}.seg-4{background:#59a14f}.seg-5{background:#9c755f}.cs-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:7px}.cs-legend-item{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:#6f6252}.cs-legend-item b{font-weight:600;color:#111827;font-variant-numeric:tabular-nums}.cs-legend-item i{font-style:normal;color:#b0a390}.cs-legend-item.dim{opacity:.42}.cs-dot{width:8px;height:8px;border-radius:2px;display:inline-block;flex:none}.cs-items{margin-top:11px;padding-top:9px;border-top:1px dashed #ece2d4}.cs-items-empty{padding:10px 0;text-align:center;font-size:12px;color:#b8ae9f}.cs-group+.cs-group{margin-top:9px}.cs-group-head{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:#6f6252;margin-bottom:3px}.cs-group-head b{margin-left:auto;color:#111827;font-variant-numeric:tabular-nums}.cs-row{display:flex;align-items:center;gap:10px;padding:3px 0 3px 13px;font-size:12.5px;border-bottom:1px dotted #f2ece2}.cs-row:last-child{border-bottom:none}.cs-row-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-row-calc{font-size:11.5px;color:#8a7a66;white-space:nowrap;font-variant-numeric:tabular-nums}.cs-row-calc i{font-style:normal;color:#bdb2a2;margin-right:2px}.cs-row-calc em{font-style:normal;margin:0 4px;padding:0 4px;border-radius:4px;background:#f6efe4;color:#8a6520;font-size:10.5px}.cs-x{margin:0 4px;color:#c8bda9}.cs-row-amt{width:66px;text-align:right;font-weight:600;font-variant-numeric:tabular-nums}@media print{body *{visibility:hidden!important}#cost-sheet-print,#cost-sheet-print *{visibility:visible!important}#cost-sheet-print{position:absolute;left:0;top:0;width:100%;border:none;box-shadow:none;animation:none}@page{margin:12mm}}.cost-price-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 4px;padding:9px 12px;border:1px solid #f1e9dc;border-radius:10px;background:#fdfaf5}.cost-price-label{font-size:12px;color:#8a7a66}.cost-price-live{font-size:12px;color:#6f6252}.cost-price-live b{font-weight:700;color:#111827;font-variant-numeric:tabular-nums}.cost-price-saved{margin-left:auto;font-size:var(--font-size-caption);color:#b0a390}.cost-edit-head{display:flex;align-items:baseline;gap:10px;margin:16px 0 8px}.cost-edit-head b{font-size:13px;color:#111827}.cost-edit-head span{font-size:11.5px;color:#a2957f}.cost-cell-ro{font-size:12px;color:#8a7a66;font-variant-numeric:tabular-nums}.cost-cell-amt{font-size:12.5px;font-weight:600;color:#111827;font-variant-numeric:tabular-nums}.cost-cell-todo{font-size:12px;font-weight:600;color:#b7791f}.cost-tabs{margin-bottom:8px}.cost-tab-label em{margin-left:5px;font-style:normal;font-size:var(--font-size-caption);color:#a2957f;font-variant-numeric:tabular-nums}.cost-tabs .ant-tabs-tab-active .cost-tab-label em{color:#fff}.cost-row-warn>td{background:#fff8ec!important}.cost-row-warn:hover>td{background:#fff3e0!important}.cost-raw-panel{padding:10px 12px;background:#fdfaf5;border:1px solid #f1e9dc;border-radius:8px}.cost-raw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px 14px}.cost-raw-item{display:flex;flex-direction:column;gap:4px}.cost-raw-item>span{font-size:11.5px;color:#8a7a66}.cost-raw-hint{margin-top:10px;font-size:11.5px;color:#a2957f;line-height:1.6}.cs-row-todo{font-style:normal;color:#b7791f;font-weight:600}.cs-row-calc em.up{color:#2e7d5b}.cost-add-row{margin-top:10px}.cost-import-steps{margin:0 0 14px;padding-left:18px;display:flex;flex-direction:column;gap:10px}.cost-import-steps li{font-size:12.5px;color:#6f6252}.cost-import-steps li b{display:block;font-size:13px;color:#111827;margin-bottom:2px}.cost-import-steps li span{display:block;margin-bottom:6px;line-height:1.6}.cost-import-steps code{background:#f4efe7;border-radius:4px;padding:0 4px;font-size:11.5px;color:#8a6520}.cost-import-result{margin-top:12px}.cost-import-err-title{margin:10px 0 6px;font-size:12px;color:#8a7a66}.cost-import-tip{margin-top:8px;padding:6px 10px;border-radius:8px;background:#fff8ec;border:1px solid #f5e3c4;font-size:12px;color:#8a6520}.q-admin{display:flex;flex-direction:column;gap:var(--space-lg)}.q-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-lg);flex-wrap:wrap;background:var(--color-bg-card);border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);padding:var(--space-lg) var(--space-xl);box-shadow:var(--shadow-sm)}.q-head__title{display:flex;align-items:center;gap:var(--space-sm);margin:0;font-size:var(--font-lg);font-weight:var(--font-weight-bold);color:var(--color-text-strong)}.q-head__sub{margin:var(--space-xs) 0 0;font-size:var(--font-sm);color:var(--color-text-muted);max-width:620px;line-height:var(--line-height-normal)}.q-muted{color:var(--color-text-muted);font-size:var(--font-xs)}.q-alert{border-radius:var(--radius-lg)}.q-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-md)}@media(max-width:1280px){.q-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}.q-stat{background:var(--color-bg-card);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);display:flex;flex-direction:column;gap:2px;box-shadow:var(--shadow-sm)}.q-stat__label{font-size:var(--font-xs);color:var(--color-text-muted)}.q-stat__value{font-size:var(--font-size-2xl);line-height:1.15;font-weight:var(--font-weight-bold);color:var(--color-text-strong);font-variant-numeric:tabular-nums}.q-stat__value.is-warn{color:var(--color-danger, #c0392b)}.q-stat__hint{font-size:var(--font-xs);color:var(--color-text-muted)}.q-groups{display:flex;flex-direction:column;gap:var(--space-md)}.q-group{border-radius:var(--radius-lg)}.q-group__head{display:flex;align-items:baseline;gap:var(--space-md);flex-wrap:wrap}.q-group__meta{font-size:var(--font-xs);font-weight:400;color:var(--color-text-muted)}.q-ticket-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:var(--space-md)}.q-empty-line{padding:var(--space-md) 0;color:var(--color-text-muted);font-size:var(--font-sm)}.q-loading{display:flex;justify-content:center;padding:var(--space-2xl)}.q-ticket{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-md);display:flex;flex-direction:column;gap:6px;background:var(--color-bg-card);transition:box-shadow .15s ease,border-color .15s ease}.q-ticket:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-border, #e8c8c2)}.q-ticket.is-called{border-color:var(--color-warning, #d48806);background:var(--color-warning-bg, #fffbe6)}.q-ticket__top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.q-ticket__no{font-size:var(--font-size-xl);line-height:1.1;font-weight:var(--font-weight-bold);letter-spacing:.5px;color:var(--color-text-strong);font-variant-numeric:tabular-nums}.q-ticket__size{display:inline-flex;align-items:center;gap:3px;font-size:var(--font-xs);color:var(--color-text-muted)}.q-ticket__tag{margin-inline-end:0;font-size:var(--font-size-caption);line-height:16px;padding-inline:5px}.q-ticket__meta{display:flex;justify-content:space-between;gap:var(--space-sm);font-size:var(--font-xs);color:var(--color-text-primary)}.q-ticket__est{display:flex;align-items:center;gap:4px;font-size:var(--font-xs);color:var(--color-text-muted);min-height:18px}.q-ticket__actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:2px}.q-called{border-radius:var(--radius-lg);border-color:var(--color-warning, #d48806)}.q-called__title{color:var(--color-warning, #d48806);font-weight:var(--font-weight-medium)}.q-foot{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0 var(--space-lg)}.q-cfg{display:flex;flex-direction:column;gap:var(--space-xs)}.q-cfg__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px dashed var(--color-border-soft);font-size:var(--font-sm);color:var(--color-text-primary)}.q-cfg__hint{margin:0 0 var(--space-md);font-size:var(--font-xs);line-height:var(--line-height-normal);color:var(--color-text-muted)}.q-pool__toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap}.q-pool__soup{display:flex;flex-direction:column;gap:2px}.q-pool__soup-late{color:var(--color-danger, #c0392b);font-weight:var(--font-weight-medium)}.q-pool__soup-ok{color:var(--color-text-muted)}.q-an__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-md)}@media(max-width:1200px){.q-an__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.q-an__chart{display:flex;align-items:flex-end;gap:3px;height:180px;padding:var(--space-md) 0 0}.q-an__bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px;min-width:0}.q-an__bar{width:100%;max-width:26px;border-radius:3px 3px 0 0;background:var(--color-primary, #c0392b);opacity:.75;transition:opacity .15s ease;min-height:2px}.q-an__bar:hover{opacity:1}.q-an__bar.is-peak{opacity:1;background:var(--color-danger, #a93226)}.q-an__bar-label{font-size:var(--font-size-caption);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.q-an__row{display:flex;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px dashed var(--color-border-soft);font-size:var(--font-sm)}.q-an__row b{font-variant-numeric:tabular-nums;color:var(--color-text-strong)}.q-an__note{margin:var(--space-md) 0 0;font-size:var(--font-xs);color:var(--color-text-muted);line-height:var(--line-height-normal)}.agent-page{display:flex;flex-direction:column;width:100%;max-width:1320px;margin:0 auto}.agent-shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;height:calc(100vh - 168px);min-height:560px;position:relative}.agent-shell.no-side{grid-template-columns:minmax(0,1fr)}.agent-shell.no-side .agent-side{display:none}.agent-main{display:flex;flex-direction:column;gap:12px;min-height:0;background:#fff;border:1px solid #eff1f4;border-radius:var(--radius-xl, 16px);box-shadow:0 1px 2px #1018280a;padding:18px 18px 14px}.agent-greeting{margin:auto;text-align:center;max-width:620px;padding:8px 0}.agent-greeting h3{margin:0;font-size:22px;font-weight:700;color:#1f2937;letter-spacing:.2px}.agent-greeting p{margin:10px auto 0;max-width:520px;color:#6b7280;font-size:14px;line-height:1.7}.agent-scenes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px;text-align:left}.agent-scenes .scene{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"ico title" "ico desc";column-gap:10px;align-items:center;text-align:left;border:1px solid #e8eaee;background:#fcfcfd;border-radius:12px;padding:13px 14px;cursor:pointer;transition:border-color .15s,background .15s,transform .1s}.agent-scenes .scene:hover{border-color:var(--color-primary, #c0392b);background:#fff}.agent-scenes .scene:active{transform:scale(.995)}.agent-scenes .scene-ico{grid-area:ico;color:#6b7280}.agent-scenes .scene:hover .scene-ico{color:var(--color-primary, #c0392b)}.agent-scenes .scene b{grid-area:title;font-size:14px;color:#1f2937;font-weight:600}.agent-scenes .scene small{grid-area:desc;font-size:13px;color:#6b7280;margin-top:2px}.agent-msgs{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding:2px 4px 2px 2px}.agent-msg{display:flex}.agent-msg.user{justify-content:flex-end}.agent-bubble{max-width:78%;border-radius:14px;padding:10px 14px;font-size:14px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.agent-bubble-doc{margin-top:6px;font-size:13px;opacity:.85}.agent-bubble.streaming{min-width:32px}.agent-caret{display:inline-block;width:2px;height:1em;margin-left:1px;vertical-align:-2px;background:currentColor;opacity:.5;animation:agent-caret 1s steps(2,start) infinite}@keyframes agent-caret{0%,to{opacity:.15}50%{opacity:.7}}.agent-msg.user .agent-bubble{background:var(--color-primary, #c0392b);color:#fff;border-bottom-right-radius:4px}.agent-msg.ai .agent-bubble{background:#f7f7f8;color:#1f2937;border-bottom-left-radius:4px}.agent-msg.ai .agent-bubble.error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.agent-progress{display:flex;align-items:center;gap:8px;font-size:13px;color:#6b7280;background:#f7f7f8;border-radius:999px;padding:6px 12px;align-self:flex-start}.agent-progress em{font-style:normal;color:#9ca3af}.agent-stop{color:var(--color-primary, #c0392b)}.agent-stop:hover{color:#8e2a20}.agent-spin{animation:agent-rotate 1s linear infinite}@keyframes agent-rotate{to{transform:rotate(360deg)}}.agent-inputcard{flex:none;border:1px solid #e5e7eb;border-radius:16px;background:#fcfcfd;padding:10px 12px 8px;transition:border-color .15s,box-shadow .15s}.agent-inputcard:focus-within{border-color:var(--color-border, #d6dae0);outline:2px solid var(--color-primary, #c0392b);outline-offset:-2px}.agent-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.agent-chip{display:inline-flex;align-items:center;gap:6px;background:#1f2937;color:#fff;border-radius:999px;font-size:13px;padding:3px 11px;line-height:19px}.agent-chip.doc{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.agent-chip .x{cursor:pointer;opacity:.7;font-style:normal;font-size:14px}.agent-chip .x:hover{opacity:1}.agent-chip .note{opacity:.75}.agent-inputcard textarea{width:100%;border:none;outline:none;resize:none;background:transparent;font-size:15px;line-height:1.6;color:#1f2937;min-height:48px;max-height:168px;font-family:inherit}.agent-inputcard textarea::placeholder{color:#9ca3af}.agent-inputcard textarea:focus,.agent-inputcard textarea:focus-visible{outline:none;border:none;box-shadow:none}.agent-toolbar{display:flex;align-items:center;gap:6px;margin-top:2px}.agent-toolbar .spacer{flex:1}.agent-tool{border:none;background:transparent;width:30px;height:30px;border-radius:8px;cursor:pointer;color:#4b5563;display:inline-flex;align-items:center;justify-content:center}.agent-tool:hover{background:#f3f4f6;color:#111827}.agent-tool:disabled{opacity:.45;cursor:not-allowed}.agent-pill{font-size:13px;color:#4b5563;border:1px solid #e5e7eb;border-radius:999px;padding:4px 12px;background:#fff;cursor:pointer;line-height:20px}.agent-pill:hover{border-color:#d1d5db;color:#111827}.agent-send{width:34px;height:34px;border-radius:50%;border:none;background:var(--color-primary, #c0392b);color:#fff;cursor:pointer;font-size:16px;display:inline-flex;align-items:center;justify-content:center;margin-left:4px;transition:opacity .15s,transform .1s}.agent-send:hover{opacity:.9}.agent-send:active{transform:scale(.95)}.agent-send:disabled{opacity:.45;cursor:not-allowed}.agent-btn{font-size:13px;line-height:20px;padding:5px 13px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#374151;cursor:pointer;white-space:nowrap}.agent-btn:hover{border-color:#d1d5db;color:#111827}.agent-btn:disabled{opacity:.5;cursor:not-allowed}.agent-btn.primary{background:var(--color-primary, #c0392b);border-color:var(--color-primary, #c0392b);color:#fff}.agent-btn.primary:hover{opacity:.92;color:#fff}.agent-linkbtn{border:none;background:transparent;color:#6b7280;font-size:13px;cursor:pointer;padding:2px 0;display:inline-flex;align-items:center;gap:4px}.agent-linkbtn:hover{color:var(--color-primary, #c0392b);text-decoration:underline}.agent-side{display:flex;flex-direction:column;min-height:0;background:#fff;border:1px solid #eff1f4;border-radius:var(--radius-xl, 16px);box-shadow:0 1px 2px #1018280a;overflow:hidden}.side-head{display:flex;align-items:baseline;gap:8px;padding:14px 14px 8px}.side-head b{font-size:14px;color:#1f2937}.side-head small{font-size:13px;color:#9ca3af}.side-search{display:flex;align-items:center;gap:6px;margin:0 10px 6px;padding:2px 8px;border:1px solid #e9ebef;border-radius:9px;color:#9ca3af;background:#fbfbfc}.side-search .ant-input{font-size:13px;background:transparent}.side-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:2px 8px 8px}.side-group{margin-top:6px}.side-group-name{font-size:13px;color:#9ca3af;padding:6px 6px 4px}.side-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:none;background:transparent;border-radius:8px;padding:7px 8px;cursor:pointer;color:#374151}.side-item:hover{background:#f6f7f8;color:#111827}.side-item.on{background:#fdf0ee;color:var(--color-primary, #c0392b)}.side-item-label{flex:1;min-width:0;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-badge{flex:none;font-size:13px;line-height:18px;padding:0 6px;border-radius:6px}.side-badge.warn{color:#b45309;background:#fef3c7}.side-badge.gen{color:#6b7280;background:#f3f4f6}.side-foot{flex:none;display:flex;align-items:center;gap:6px;font-size:13px;color:#9ca3af;padding:8px 14px 12px;border-top:1px solid #f2f3f5}.side-empty,.side-err{font-size:13px;color:#9ca3af;padding:12px 8px}.side-err{color:#b91c1c}.agent-result{width:100%;max-width:100%;min-width:0;background:#fff;border:1px solid #eef0f2;border-radius:14px;padding:12px 14px;box-shadow:0 1px 3px #1018280d}.agent-result .head{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.agent-result .head b{font-size:14px;color:#1f2937}.agent-result .head small{color:#6b7280;font-size:13px}.agent-result .hint{font-size:13px;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:7px 10px;margin-bottom:8px;line-height:1.6}.agent-result .hint.ok{color:#047857;background:#f0fdf4;border-color:#bbf7d0}.agent-result .foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}.agent-result .foot .spacer{flex:1}.agent-result .import-err{font-size:13px;color:#b91c1c;background:#fef2f2;border-radius:8px;padding:7px 10px;margin-top:8px;max-height:120px;overflow-y:auto;line-height:1.6}.agent-docsec{border-top:1px dashed #eef0f2;padding:10px 2px}.agent-docsec:first-of-type{border-top:none}.agent-docsec .t{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:600;font-size:14px;color:#1f2937;margin-bottom:4px}.agent-docsec .c{font-size:14px;color:#374151;line-height:1.75;white-space:pre-wrap}.agent-result .ant-table-small .ant-input,.agent-result .ant-table-small .ant-input-number-input{font-size:13px}.agent-cell-input{border:none!important;box-shadow:none!important;padding-left:6px!important;background:transparent!important}.agent-cell-input:hover{background:#f7f7f8!important}.agent-cell-input:focus{background:var(--color-bg-container, #fff)!important;outline:2px solid var(--color-primary, #c0392b);outline-offset:-2px}.agent-card{width:100%;max-width:620px;background:#fff;border:1px solid #eef0f2;border-radius:14px;padding:12px 14px;box-shadow:0 1px 3px #1018280d;display:flex;flex-direction:column;gap:9px}.agent-card.warn{border-color:#fcd34d;background:#fffdf5}.agent-card.err{border-color:#fecaca;background:#fffbfb}.agent-card.ok{border-color:#bbf7d0}.agent-card.mute{opacity:.72}.agent-card-head{display:flex;align-items:center;gap:7px}.agent-card-head .ico{display:inline-flex;align-items:center;color:#6b7280}.agent-card.warn .agent-card-head .ico{color:#b45309}.agent-card.err .agent-card-head .ico{color:#b91c1c}.agent-card.ok .agent-card-head .ico{color:#047857}.agent-card-head b{font-size:14px;color:#1f2937}.agent-card-head .spacer{flex:1}.agent-card-model{font-size:13px;color:#9ca3af}.agent-tag{font-size:13px;line-height:19px;color:#b45309;background:#fef3c7;border-radius:999px;padding:1px 8px}.agent-card-confirmtext{font-size:15px;font-weight:600;color:#1f2937;line-height:1.6}.agent-card-text{font-size:14px;line-height:1.8;color:#1f2937;white-space:pre-wrap}.agent-card-diff{border:1px solid #eef0f2;border-radius:10px;overflow:hidden;background:#fafafa}.agent-card-diff .row{display:flex;align-items:center;gap:8px;padding:8px 11px;font-size:14px;border-bottom:1px solid #f1f2f4}.agent-card-diff .row:last-child{border-bottom:none}.agent-card-diff .row>span{color:#6b7280;min-width:80px;font-size:13px}.agent-card-diff .row .from{color:#9ca3af;text-decoration:line-through;font-style:normal}.agent-card-diff .row em{color:#cbd5e1;font-style:normal}.agent-card-diff .row .to{color:#1f2937;font-weight:600}.agent-minitable{border:1px solid #eef0f2;border-radius:10px;overflow:hidden;font-size:13px}.agent-minitable-head,.agent-minitable-row{display:flex;gap:8px;padding:7px 11px}.agent-minitable-head{background:#fafafa;color:#6b7280;font-weight:600}.agent-minitable-row{border-top:1px solid #f1f2f4;color:#374151}.agent-minitable-head>span,.agent-minitable-row>span{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.agent-kv-item{background:#fafafa;border-radius:9px;padding:8px 11px;display:flex;flex-direction:column;gap:2px}.agent-kv-item span{font-size:13px;color:#6b7280}.agent-kv-item b{font-size:15px;color:#1f2937;font-weight:600}.agent-stat{display:flex;flex-direction:column;gap:12px}.agent-stat-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px}.agent-stat-kpis .kpi{background:#fafafa;border-radius:10px;padding:9px 11px;display:flex;flex-direction:column;gap:3px}.agent-stat-kpis .kpi span{font-size:13px;color:#6b7280}.agent-stat-kpis .kpi b{font-size:19px;color:#111827;font-weight:700;font-variant-numeric:tabular-nums}.agent-bars{display:flex;align-items:flex-end;gap:4px;height:92px;padding:0 2px;border-bottom:1px solid #eef0f2}.agent-bars .bar{flex:1 1 0;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}.agent-bars .bar i{display:block;width:100%;max-width:26px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#c0392bbf,#c0392b59)}.agent-bars .bar span{font-size:13px;color:#9ca3af;white-space:nowrap}.agent-stat-tags{display:flex;flex-wrap:wrap;gap:6px}.agent-stat-tags span{font-size:13px;color:#4b5563;background:#f3f4f6;border-radius:999px;padding:2px 10px}.agent-note{font-size:13px;color:#6b7280;line-height:1.6}.agent-note.ok{color:#047857}.agent-card-err{font-size:13px;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:7px 10px;line-height:1.6}.agent-card-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.agent-card-foot .spacer{flex:1}.agent-correct{display:flex;flex-direction:column;gap:8px;margin-top:4px;padding-top:10px;border-top:1px dashed #eef0f2}.agent-correct .row{display:flex;gap:8px}.agent-redo-presets{display:flex;flex-wrap:wrap;gap:6px}.agent-redo-input{width:100%;box-sizing:border-box;resize:vertical;font:inherit;font-size:13px;line-height:20px;color:#111827;padding:8px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.agent-redo-input:focus{outline:none;border-color:var(--color-primary, #c0392b)}.agent-ask-list{margin:4px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:22px;color:#111827}.agent-ask-list li::marker{color:var(--color-primary, #c0392b);font-weight:600}@media(max-width:1040px){.agent-shell{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.agent-main{min-height:60vh}.agent-side{max-height:320px}}.agent-logbar{flex:none;display:flex;align-items:center;gap:10px;padding:0 2px 8px;border-bottom:1px solid #f1f2f4;font-size:13px;color:#6b7280}.agent-logbar-title{font-weight:600;color:#374151}.agent-logbar-note{color:#b45309;font-size:13px}.agent-logbar .spacer{flex:1}.agent-linkbtn.muted{color:#9ca3af;font-size:13px;display:inline-flex;align-items:center;gap:4px}.agent-linkbtn.muted:hover{color:#dc2626}.agent-bubble-wrap{display:flex;flex-direction:column;max-width:78%;gap:2px}.agent-bubble-wrap .agent-bubble{max-width:100%}.agent-msg.user .agent-bubble-wrap{align-items:flex-end}.agent-bubble-acts{display:flex;gap:12px;padding:0 4px;opacity:0;transition:opacity .12s}.agent-msg:hover .agent-bubble-acts{opacity:1}.agent-price{border:1px solid #e5e7eb;background:#fff;border-radius:12px;padding:10px 12px;margin-bottom:10px;display:flex;flex-direction:column;gap:8px}.agent-price-head{display:flex;align-items:baseline;gap:8px;font-size:13px}.agent-price-head b{font-size:14px;color:#111827}.agent-price-head small{color:#9ca3af}.agent-price-head .spacer{flex:1}.agent-price-opt{display:flex;align-items:baseline;gap:8px;min-width:0}.agent-price-opt b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-price-opt span{margin-left:auto;color:#9ca3af;font-size:12px;flex:none}.agent-price-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:#374151}.agent-price-cur b{color:#111827;font-size:14px}.agent-price-arrow{color:#9ca3af}.agent-tool.on{background:#fef2f2;color:var(--color-primary, #c0392b)}.agent-cost{display:flex;flex-direction:column;gap:10px}.agent-cost-name{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#111827}.agent-note.warn{color:#b45309;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:6px 10px}.agent-chip.ok{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-ui, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif);background:var(--color-bg-page);color:var(--color-text-primary)}.editor{display:flex;flex-direction:column;height:100vh;background:var(--app-bg, #f3f4f6);background-image:var(--ambient, none);color:var(--text-hi, #111827);font-family:var(--font-ui, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif)}.editor-topbar{display:flex;align-items:center;gap:var(--space-3, 12px);padding:10px var(--space-4, 16px);background:var(--topbar-bg, rgba(255, 255, 255, .6));-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border-bottom:1px solid var(--hairline, rgba(17, 24, 39, .08));flex:0 0 auto;flex-wrap:nowrap;min-width:0}.tb-left{display:flex;align-items:center;gap:10px;min-width:0;flex:none}.tb-title{display:flex;flex-direction:column;min-width:0}.tb-title-row{display:flex;align-items:center;gap:8px;min-width:0}.tb-crumb{font-size:var(--fs-13, 13px);color:var(--text-mid, rgba(17, 24, 39, .64));white-space:nowrap}.tb-left h1{margin:0;font-size:var(--font-size-lg);font-weight:700;color:var(--text-hi, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tb-back{flex:none;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-md, 8px);background:transparent;color:var(--text-mid, rgba(17, 24, 39, .64));cursor:pointer;transition:color var(--dur-1, .15s) var(--ease-out),border-color var(--dur-1, .15s) var(--ease-out),background var(--dur-1, .15s) var(--ease-out)}.tb-back:hover{color:var(--color-primary);border-color:var(--color-primary);background:#fff}.tb-ai{flex:1;display:flex;justify-content:center;gap:var(--space-2, 8px);min-width:0}.tb-ai input{flex:0 1 240px;min-width:0;padding:5px 12px;height:32px;box-sizing:border-box;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-md, 8px);background:var(--field-bg, rgba(255, 255, 255, .75));color:var(--text-hi, #111827);font-size:var(--fs-14, 14px);transition:border-color var(--dur-1, .15s) var(--ease-out),box-shadow var(--dur-1, .15s) var(--ease-out)}.tb-ai input::placeholder{color:var(--text-low, rgba(17, 24, 39, .42))}.tb-ai input:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary);background:var(--field-bg-focus, rgba(255, 255, 255, .95))}.btn-ai{height:32px;padding:0 var(--space-4, 16px);display:inline-flex;align-items:center;border:none;border-radius:var(--radius-md, 8px);background:#fff;color:var(--brand-red, #C0392B);border:1px solid rgba(192,57,43,.45);font-size:var(--fs-14, 14px);font-weight:700;cursor:pointer;white-space:nowrap;transition:transform var(--dur-1, .15s) var(--ease-out),background var(--dur-1, .15s) var(--ease-out),box-shadow var(--dur-1, .15s) var(--ease-out)}.btn-ai:hover{transform:translateY(-1px);background:#c0392b0f;box-shadow:0 2px 8px #c0392b24}.btn-ai:active{transform:scale(.98)}.btn-ai:disabled{opacity:.6;cursor:default;transform:none}.tb-right,.tb-group{display:flex;gap:var(--space-2, 8px);align-items:center}.tb-group+.tb-group{padding-left:var(--space-3, 12px);border-left:1px solid rgba(17,24,39,.12)}.tb-switch{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-md, 8px);background:var(--ghost-bg, rgba(255, 255, 255, .6));font-size:var(--fs-14, 14px);color:var(--text-hi, #111827);cursor:pointer;white-space:nowrap;transition:border-color var(--dur-1, .15s) var(--ease-out),color var(--dur-1, .15s) var(--ease-out)}.tb-switch:has(.ant-switch-checked){border-color:var(--color-primary);color:var(--color-primary)}.editor-topbar.collapsed .tb-group{gap:4px}.editor-topbar.collapsed .tb-group+.tb-group{padding-left:8px}.tb-right select{padding:var(--space-2, 8px) 10px;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-md, 8px);background:var(--field-bg, rgba(255, 255, 255, .75));color:var(--text-hi, #111827);font-size:13px;max-width:190px}.btn-save{height:32px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-md, 8px);background:var(--ghost-bg, rgba(255, 255, 255, .6));color:var(--text-hi, #111827);font-size:var(--fs-14, 14px);white-space:nowrap;cursor:pointer;transition:background var(--dur-1, .15s) var(--ease-out),border-color var(--dur-1, .15s) var(--ease-out)}.btn-save:hover{background:var(--ghost-bg-hover, rgba(255, 255, 255, .95));border-color:var(--brand-red, #C0392B)}.btn-publish{height:32px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:none;border-radius:var(--radius-md, 8px);background:var(--brand-red, #C0392B);color:#fff;font-size:var(--fs-14, 14px);font-weight:700;white-space:nowrap;cursor:pointer;box-shadow:var(--shadow-brand, 0 4px 16px rgba(192, 57, 43, .35));transition:transform var(--dur-1, .15s) var(--ease-out),background var(--dur-1, .15s) var(--ease-out)}.btn-publish:hover{background:var(--brand-red-hover, #A93226)}.btn-publish:active{transform:scale(.98)}.editor-body{display:flex;flex:1;min-height:0}.editor-body{min-width:900px}.editor-topbar.collapsed{gap:8px}.editor-topbar.collapsed .tb-ai{flex:0 0 auto}.editor-topbar.collapsed .tb-ai .btn-ai{padding:0 10px;letter-spacing:0}.editor-topbar.collapsed .tb-right{gap:4px}.editor-topbar.collapsed .tb-right .ant-btn{padding:0 7px}.editor-topbar.collapsed .btn-save,.editor-topbar.collapsed .btn-publish{padding:0 10px}@media(max-width:1439px){.editor-topbar:not(.collapsed) .tb-right .ant-btn .tb-lbl{display:none}.editor-topbar:not(.collapsed) .tb-right .ant-btn{padding:0 8px}}@media(max-width:1279px){.editor-topbar:not(.collapsed) .tb-crumb{display:none}.editor-topbar:not(.collapsed) .tb-switch .tb-lbl{display:none}.editor-topbar:not(.collapsed) .tb-switch{padding:0 8px}}.chub{max-width:1280px;margin:0 auto}.chub-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px}.chub-h{margin:0;font-size:var(--font-size-lg);color:#111827}.lsync{display:flex;flex-direction:column;gap:12px;padding:4px 0 12px}.lsync-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.lsync-h{margin:0;font-size:var(--font-size-lg);color:#111827}.lsync-sub{margin:4px 0 0;font-size:12px;color:#11182799}.lsync-alert{margin-bottom:0}.lsync-card{border-radius:var(--radius-lg, 12px)}.chub-sub{margin:4px 0 0;font-size:12px;color:#1118278c}.chub-group{margin-bottom:20px}.chub-group-h{margin:0 0 10px;font-size:14px;color:#111827}.chub-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.chub-card{text-align:left;padding:14px 16px;border-radius:12px;cursor:pointer;background:#fff;border:1px solid rgba(17,24,39,.08);font:inherit;transition:box-shadow .18s ease,transform .18s ease}.chub-card:hover{box-shadow:0 6px 20px #1118271a;transform:translateY(-1px)}.chub-card.disabled{cursor:default;opacity:.55}.chub-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.chub-card-top b{font-size:14px;color:#111827}.chub-card-meta{display:flex;justify-content:space-between;margin-top:6px;font-size:12px;color:#1118278c}.chub-card-expire{margin-top:4px;font-size:var(--font-size-caption);color:#6b7280}.chub-card-notice{margin-top:8px;font-size:var(--font-size-caption);color:#11182780;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chub-drawer h4{margin:14px 0 8px;font-size:13px;color:#111827}.chub-h4-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.chub-h4-row>.ant-space{justify-content:flex-end}.chub-hint{font-size:12px;color:#11182780}.chub-audit{list-style:none;margin:0;padding:0;max-height:260px;overflow-y:auto}.chub-audit li{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px dashed rgba(17,24,39,.08);font-size:12px}.chub-audit li span{flex:1;min-width:0}.chub-audit li small{color:#11182780;white-space:nowrap}.wxp-cand{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px;font-size:12px;color:#1118279e}.vfp .ant-form-item,.wcp{margin-bottom:0}.wcp-url{display:flex;align-items:center;gap:8px}.wcp-url .ant-typography{flex:1;min-width:0;word-break:break-all;font-size:12px}.cbp-url{display:flex;align-items:center;gap:8px}.cbp-url .ant-typography{flex:1;min-width:0;word-break:break-all;font-size:12px}.chub-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.chub-tab{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;border-radius:16px;border:1px solid rgba(17,24,39,.1);background:#fff;font:inherit;font-size:13px;color:#111827;cursor:pointer;transition:background .15s ease,border-color .15s ease}.chub-tab:hover:not(.off){background:#c0392b0f;border-color:#c0392b59}.chub-tab em{font-style:normal;font-size:var(--font-size-caption);padding:0 6px;line-height:18px;border-radius:9px;background:#11182712;color:#11182799}.chub-tab.off{cursor:default;opacity:.5}.chub-check{margin-bottom:10px}.chub-import-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.chub-import-meta{margin-top:8px;font-size:12px;color:#11182799}.chub-import-err{color:var(--color-primary)}.chub-import-fail{margin:6px 0 0;padding-left:18px;max-height:140px;overflow-y:auto;font-size:12px;color:#b42318}.csp-row{padding:10px 12px;border-radius:10px;background:#11182708}.csp-row+.csp-row{margin-top:8px}.csp-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.csp-top b{font-size:13px;color:#111827}.csp-nums{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;font-size:12px;color:#1118279e}.csp-nums b{color:#111827}.csp-hint{margin-top:4px;font-size:var(--font-size-caption);color:#11182780}.csp-entry{margin-top:8px;font-size:var(--font-size-caption);line-height:1.5;color:#1118278c;background:#1118270a;border-radius:8px;padding:6px 8px}.tmw{max-width:1280px;margin:0 auto}.tmw-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:14px}.tmw-h{margin:0;font-size:var(--font-size-lg);color:#111827}.tmw-sub{margin:4px 0 0;font-size:12px;color:#1118278c}.tmw-bar{display:flex;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}.tmw-cats{display:flex;gap:4px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.tmw-cats::-webkit-scrollbar{display:none}.tmw-cats button{height:30px;padding:0 14px;border:0;border-radius:15px;flex:none;background:transparent;color:#111827b8;font-size:13px;cursor:pointer;transition:background .15s ease,color .15s ease}.tmw-cats button:hover{background:#1118270f}.tmw-cats button.on{background:#c0392b14;color:var(--color-primary);font-weight:600}.tmw-grid{columns:4 240px;column-gap:14px}.tmw-card{break-inside:avoid;margin-bottom:14px;border-radius:12px;overflow:hidden;background:#fff;border:1px solid rgba(17,24,39,.08);transition:box-shadow .18s ease,transform .18s ease}.tmw-card:hover{box-shadow:0 8px 24px #1118271f;transform:translateY(-2px)}.tmw-cover{position:relative;aspect-ratio:3 / 4;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#f6efe6,#ead9c9);color:#8c6a4f}.tmw-cover img{width:100%;height:100%;object-fit:cover}.tmw-cover.big{aspect-ratio:auto;height:220px;border-radius:10px}.tmw-cover-word{font-size:var(--font-size-4xl);font-weight:700;opacity:.5}.tmw-cover.ind-tea{background:linear-gradient(160deg,#e7f2e7,#cbe3cb);color:#3e6b45}.tmw-cover.ind-coffee{background:linear-gradient(160deg,#f1e7dc,#d9bfa3);color:#6b4a2e}.tmw-cover.ind-hotpot{background:linear-gradient(160deg,#fbe7dc,#f0c4a8);color:#93402a}.tmw-cover.ind-bakery{background:linear-gradient(160deg,#fdf0e4,#f3d5b6);color:#a0703f}.tmw-price{position:absolute;left:10px;top:10px;padding:2px 9px;border-radius:12px;background:var(--color-primary);color:#fff;font-size:12px;font-weight:600}.tmw-price.free{background:#2e9e5b}.tmw-offline{position:absolute;right:10px;top:10px;padding:2px 8px;border-radius:10px;background:#00000080;color:#fff;font-size:var(--font-size-caption)}.tmw-body{padding:10px 12px 12px}.tmw-title{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tmw-meta{display:flex;justify-content:space-between;gap:8px;margin-top:4px;font-size:var(--font-size-caption);color:#1118278c}.tmw-acts{display:flex;gap:8px;margin-top:10px}.tmw-acts button{flex:1}.tmw-empty{padding:80px 0;text-align:center;color:#11182780}.tmw-stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.tmw-stat{flex:1;min-width:130px;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:12px;padding:12px 16px}.tmw-publish{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:12px;padding:14px 16px;margin-bottom:16px}.tmw-publish h3{margin:0 0 12px;font-size:14px;color:#111827}.tmw-settle-op{margin-bottom:14px}.tmw-hint{font-size:12px;color:#11182780;margin-top:10px}.tmw-join{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:12px;padding:20px;max-width:520px}.tmw-preview .tmw-pages{list-style:none;margin:8px 0 0;padding:0}.tmw-preview .tmw-pages li{display:flex;justify-content:space-between;padding:7px 2px;border-bottom:1px dashed rgba(17,24,39,.1);font-size:13px}.tmw-preview .tmw-pages li span{color:#11182780}@media(max-width:1080px){.editor-body{min-width:860px}}.lib{width:250px;background:var(--glass-bg, rgba(255, 255, 255, .55));-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border-right:1px solid var(--hairline, rgba(17, 24, 39, .08));display:flex;flex-direction:column;overflow:hidden}.ref-wf{padding:10px 10px 0;border-bottom:1px solid var(--hairline, rgba(17, 24, 39, .08));margin-bottom:2px}.ref-wf-toggle{width:100%;padding:8px 10px;background:#fff;color:var(--brand-red, #C0392B);border:1px solid rgba(192,57,43,.4);border-radius:var(--radius-sm, 6px);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--dur-1, .15s) var(--ease-out)}.ref-wf-toggle:hover{background:#c0392b0d}.ref-wf-body{padding:10px 4px 12px;display:flex;flex-direction:column;gap:8px}.ref-wf-upload{padding:7px 0;background:var(--field-bg, rgba(255, 255, 255, .75));border:1px dashed var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-sm, 6px);font-size:13px;cursor:pointer;color:var(--text-mid, rgba(17, 24, 39, .64))}.ref-wf-upload:hover{border-color:var(--brand-gold, #9ca3af);color:var(--text-hi, #111827)}.ref-wf-upload:disabled{opacity:.6;cursor:wait}.ref-wf-file{font-size:12px;color:var(--text-mid, rgba(17, 24, 39, .64));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-wf-err{font-size:12px;color:var(--error, #F5222D)}.ref-wf-palette{display:flex;gap:6px}.ref-wf-swatch{width:26px;height:26px;border-radius:50%;border:1px solid rgba(0,0,0,.08);flex-shrink:0}.ref-wf-swatch.sm{width:16px;height:16px}.ref-wf-meta{font-size:12px;color:var(--text-hi, #111827);display:flex;flex-direction:column;gap:2px}.ref-wf-meta small{color:var(--text-mid, rgba(17, 24, 39, .64))}.ref-wf-preview{border:1px solid var(--hairline, rgba(17, 24, 39, .08));border-radius:var(--radius-sm, 6px);padding:6px;background:var(--comp-bg, rgba(255, 255, 255, .55))}.ref-wf-actions{display:flex;gap:6px;flex-wrap:wrap}.ref-wf-actions button{flex:1;min-width:72px;padding:6px 0;font-size:12px;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));background:var(--field-bg, rgba(255, 255, 255, .75));color:var(--text-hi, #111827);border-radius:var(--radius-sm, 6px);cursor:pointer}.ref-wf-actions button:first-child{background:var(--brand-red, #C0392B);color:#fff;border-color:var(--brand-red, #C0392B)}.ref-wf-library{border-top:1px dashed var(--hairline, rgba(17, 24, 39, .08));padding-top:8px;display:flex;flex-direction:column;gap:6px}.ref-wf-lib-title{font-size:12px;font-weight:600;color:var(--text-hi, #111827)}.ref-wf-lib-item{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid var(--hairline, rgba(17, 24, 39, .08));border-radius:var(--radius-sm, 6px);background:var(--comp-bg, rgba(255, 255, 255, .55));font-size:12px;cursor:pointer;text-align:left;color:var(--text-hi, #111827)}.ref-wf-lib-item:hover{border-color:var(--brand-red, #C0392B);background:var(--comp-bg-hover, rgba(255, 255, 255, .95))}.lib-title{padding:14px 14px var(--space-2, 8px);font-weight:700;font-size:var(--font-size-body);color:var(--text-hi, #111827)}.lib-tabs{display:flex;padding:0 10px var(--space-2, 8px);gap:var(--space-1, 4px);flex-wrap:wrap}.lib-tabs .tab{padding:5px 10px;border:none;border-radius:6px;background:var(--cat-bg, rgba(17, 24, 39, .045));font-size:var(--fs-13, 13px);cursor:pointer;color:var(--text-mid, rgba(17, 24, 39, .64));transition:background var(--dur-1, .15s) var(--ease-out),color var(--dur-1, .15s) var(--ease-out)}.lib-tabs .tab:hover{color:var(--brand-red, #C0392B)}.lib-tabs .tab.active{background:var(--brand-red, #C0392B);color:#fff}.lib-hint{padding:var(--space-1, 4px) 14px var(--space-2, 8px);font-size:var(--fs-13, 13px);color:var(--text-mid, rgba(17, 24, 39, .64))}.lib-list{flex:1;overflow-y:auto;padding:0 10px 12px}.lib-item{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:2px;width:100%;text-align:left;padding:10px 12px 9px;margin-bottom:var(--space-2, 8px);border:1px solid var(--hairline, rgba(17, 24, 39, .08));border-radius:var(--radius-md, 8px);background:var(--comp-bg, rgba(255, 255, 255, .55));color:var(--text-hi, #111827);cursor:grab;touch-action:none;overflow:hidden;transition:border-color var(--dur-1, .15s) var(--ease-out),box-shadow var(--dur-1, .15s) var(--ease-out),transform var(--dur-1, .15s) var(--ease-out),background var(--dur-1, .15s) var(--ease-out)}.lib-item:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--brand-red, #C0392B);opacity:0;transition:opacity var(--dur-1, .15s) var(--ease-out)}.lib-item.dragging{opacity:.5;border-style:dashed}.lib-item:hover{border-color:var(--brand-red, #C0392B);background:var(--comp-bg-hover, rgba(255, 255, 255, .95));box-shadow:var(--shadow-2, 0 2px 4px rgba(16, 24, 40, .1));transform:translateY(-1px)}.lib-item:hover:before{opacity:1}.lib-name{display:flex;align-items:center;font-size:var(--fs-14, 14px);font-weight:700;line-height:1.4;color:var(--text-hi, #111827)}.lib-add{margin-left:auto;font-size:14px;font-weight:600;line-height:1;color:var(--brand-red, #C0392B);opacity:0;transform:translate(-4px);transition:opacity var(--dur-1, .15s) var(--ease-out),transform var(--dur-1, .15s) var(--ease-out)}.lib-item:hover .lib-add{opacity:1;transform:translate(0)}.lib-desc{font-size:12px;line-height:1.45;color:var(--text-mid, rgba(17, 24, 39, .64));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lib-empty{padding:20px;text-align:center;color:var(--text-low, rgba(17, 24, 39, .42));font-size:13px}.lib-tip{margin:10px 12px;font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .42));line-height:1.5}.lib-search{padding:0 12px 10px}.lib-search-meta{display:flex;align-items:center;gap:4px;padding:2px 4px 8px;font-size:12px;color:var(--text-low, rgba(17, 24, 39, .5))}.lib-search-meta b{color:var(--color-text-strong, #111827)}.lib-search-all{color:var(--text-low, rgba(17, 24, 39, .42))}.lib-search-clear{margin-left:auto;border:none;background:none;cursor:pointer;font-size:12px;color:var(--color-brand, #C0392B);padding:0}.lib-search-clear:hover{text-decoration:underline}.lib-cat-tag{margin-left:6px;padding:0 5px;border-radius:4px;background:var(--cat-bg, rgba(17, 24, 39, .06));color:var(--text-low, rgba(17, 24, 39, .5));font-size:var(--font-size-caption);font-weight:400;line-height:15px;flex:none}.canvas-wrap{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--app-bg, #f3f4f6);background-image:var(--ambient, none)}.canvas-tabs{display:flex;gap:6px;padding:10px 16px 0;flex-wrap:wrap}.page-tab{padding:6px 14px;border:none;border-radius:var(--radius-md, 8px) var(--radius-md, 8px) 0 0;background:var(--cat-bg, rgba(17, 24, 39, .045));color:var(--text-mid, rgba(17, 24, 39, .64));font-size:13px;cursor:pointer;transition:background var(--dur-1, .15s) var(--ease-out),color var(--dur-1, .15s) var(--ease-out)}.page-tab.active{background:var(--comp-bg, rgba(255, 255, 255, .55));color:var(--text-hi, #111827);font-weight:700;box-shadow:inset 0 2px 0 var(--color-primary)}.page-tab.add{background:transparent;font-size:var(--fs-16, 16px);color:var(--text-mid, rgba(17, 24, 39, .64))}.canvas-scroll{flex:1;overflow-y:auto;padding:var(--space-4, 16px)}.phone{width:375px;min-height:720px;margin:0 auto;background:var(--canvas-paper, #FFFFFF);color:var(--canvas-paper-text, #111827);border-radius:24px;box-shadow:var(--phone-glow, 0 24px 64px rgba(17, 24, 39, .1)),var(--shadow-3, 0 4px 8px rgba(16, 24, 40, .12));overflow:hidden;border:1px solid rgba(17,24,39,.06);transition:border-color .15s,box-shadow .15s}.phone.drop-target{border-color:var(--brand-gold, #9ca3af);box-shadow:0 8px 28px #11182729,var(--phone-glow, 0 24px 64px rgba(17, 24, 39, .1))}.drop-hint{text-align:center;color:var(--brand-red, #C0392B);font-size:13px;padding:6px 0 14px;animation:pulse .9s ease-in-out infinite alternate}@keyframes pulse{0%{opacity:.5}to{opacity:1}}.phone-nav{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;color:var(--color-bg-card, #fff);font-weight:700;font-size:var(--font-size-body)}.phone-nav small{font-weight:var(--font-weight-normal, 400);font-size:var(--font-size-caption);opacity:.9}.phone-page{padding:10px 12px var(--space-5, 24px);min-height:620px}.placed{position:relative;border:2px dashed transparent;cursor:pointer;transition:border-color .15s;touch-action:none}.placed.selected{border-color:var(--brand-red, #C0392B);outline:2px solid rgba(192,57,43,.25);box-shadow:inset 0 0 0 1px var(--brand-gold-soft, rgba(17, 24, 39, .06))}.sort-handle{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--text-low, rgba(17, 24, 39, .42));letter-spacing:1px;-webkit-user-select:none;user-select:none;cursor:grab;opacity:0;transition:opacity .15s}.placed:hover .sort-handle{opacity:1}.placed-tools{position:absolute;top:-18px;right:0;display:flex;gap:var(--space-1, 4px);background:#1f2329;border-radius:6px;padding:2px;z-index:5;box-shadow:var(--shadow-2, 0 2px 4px rgba(16, 24, 40, .1))}.placed-tools button{border:none;background:transparent;color:var(--color-bg-card, #fff);font-size:13px;padding:3px 7px;cursor:pointer}.placed-tools button.del{color:#ff7875}.bind-tag{position:absolute;right:var(--space-1, 4px);bottom:var(--space-1, 4px);font-size:var(--fs-12, 12px);background:#1f2329bf;color:var(--color-bg-card, #fff);border-radius:var(--radius-sm, 6px);padding:1px 5px;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bind-tag.clickable{display:inline-flex;align-items:center;gap:4px;border:none;cursor:pointer;font-family:inherit;max-width:168px}.bind-tag.clickable:hover{background:var(--color-brand, #C0392B)}.bind-tag-edit{flex:none;padding:0 3px;border-radius:3px;background:#ffffff38;font-size:var(--font-size-caption)}.canvas-empty{padding:60px 20px;text-align:center;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:13px}.canvas-empty-guide{padding:24px 6px 20px}.ceg-title{font-size:var(--fs-15, 15px);font-weight:700;color:var(--text-hi, #111827);text-align:center}.ceg-sub{margin-top:4px;margin-bottom:14px;font-size:var(--fs-12, 12px);color:var(--text-mid, rgba(17, 24, 39, .6));text-align:center}.ceg-cards{display:flex;flex-direction:column;gap:8px}.ceg-card{display:grid;grid-template-columns:26px 1fr;grid-template-areas:"ic name" "ic desc";align-items:center;column-gap:8px;row-gap:1px;padding:10px 12px;text-align:left;border:1px dashed var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-md, 10px);background:#ffffff8c;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.ceg-card:hover,.ceg-card.on{border-color:var(--color-brand, #C0392B);background:#c0392b0f}.ceg-card:hover{transform:translateY(-1px)}.ceg-icon{grid-area:ic;font-size:var(--font-size-lg);color:var(--color-brand, #C0392B)}.ceg-name{grid-area:name;font-size:var(--fs-13, 13px);font-weight:600;color:var(--text-hi, #111827)}.ceg-desc{grid-area:desc;font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .5));line-height:1.4}.ceg-ai{margin-top:10px}.ceg-ai-bar{display:flex;align-items:center;gap:8px;margin-top:8px}.ceg-tip{font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .45))}.ceg-err{font-size:var(--fs-11, 11px);color:var(--brand-red, #C0392B)}.cc-text-title b{display:block;font-size:var(--font-size-lg)}.cc-text-title small{color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px)}.cc-banner{display:flex;justify-content:space-between;align-items:center;color:var(--color-bg-card, #fff)}.cc-banner b{font-size:var(--fs-16, 16px)}.cc-banner-btn{background:#ffffff40;padding:var(--space-1, 4px) 10px;border-radius:20px;font-size:var(--fs-13, 13px)}.cc-carousel{text-align:center;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:13px}.cc-divider{border-top:1px dashed var(--hairline-strong, rgba(17, 24, 39, .16))}.cc-layout{text-align:center;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px);border:1px dashed var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-md, 8px);padding:14px}.cc-bottom-bar{display:flex;justify-content:space-between;align-items:center}.cc-cta{background:var(--brand-red, #C0392B);color:var(--color-bg-card, #fff);padding:7px var(--space-4, 16px);border-radius:20px;font-size:13px;font-weight:700}.cc-dish-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2, 8px)}.cc-dish{background:var(--comp-bg, rgba(255, 255, 255, .55));border:1px solid rgba(17,24,39,.05);border-radius:var(--radius-md, 8px);padding:var(--space-2, 8px)}.cc-dish-thumb{background:var(--cat-bg, rgba(17, 24, 39, .045));border-radius:6px;height:56px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);margin-bottom:6px}.cc-dish b{display:block;font-size:var(--fs-13, 13px);line-height:1.4;color:var(--canvas-paper-text, #111827)}.cc-dish small{color:var(--brand-red, #C0392B);font-size:var(--font-size-caption)}.cc-detail{text-align:center}.cc-detail-thumb{background:var(--cat-bg, rgba(17, 24, 39, .045));border-radius:var(--radius-md, 8px);height:110px;display:flex;align-items:center;justify-content:center;font-size:var(--font-xxl, 32px);margin-bottom:6px}.cc-detail small,.cc-meta small{display:block;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px);margin-top:var(--space-1, 4px)}.cc-cta-block{text-align:center}.cc-cta-block b{display:block;margin-bottom:var(--space-2, 8px)}.cc-meta{position:relative}.cc-tag{position:absolute;top:0;right:0;background:#f5a623;color:var(--color-bg-card, #fff);border-radius:10px;padding:2px var(--space-2, 8px);font-size:var(--font-size-caption)}.cc-chips b{display:block;margin-bottom:6px}.cc-chip-row{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:14px;padding:3px 10px;font-size:var(--fs-13, 13px);color:var(--text-mid, rgba(17, 24, 39, .64))}.chip.on{border-color:var(--brand-red, #C0392B);color:var(--brand-red, #C0392B);background:#c0392b0f}.cc-spec-from{display:block;margin-top:6px;font-size:var(--font-size-caption);color:#11182780;line-height:1.5}.panel-right{width:270px;background:var(--glass-bg, rgba(255, 255, 255, .55));-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border-left:1px solid var(--hairline, rgba(17, 24, 39, .08));overflow-y:auto;padding:16px}.rp-head{margin-bottom:10px}.rp-icon{font-size:var(--fs-20, 20px);margin-right:6px}.rp-head b{font-size:var(--font-size-body);color:var(--text-hi, #111827)}.rp-head small{display:block;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px);margin-top:var(--space-1, 4px)}.rp-sec{border-top:1px solid var(--hairline, rgba(17, 24, 39, .08));padding:12px 0}.rp-sec h4{font-size:13px;color:var(--text-hi, #111827);margin-bottom:10px}.rp-field{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:var(--space-2, 8px)}.rp-field label{font-size:13px;color:var(--text-hi, #111827);min-width:56px}.rp-field input[type=text],.rp-field input[type=number],.rp-field select{flex:1;padding:6px var(--space-2, 8px);border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:6px;background:var(--field-bg, rgba(255, 255, 255, .75));color:var(--text-hi, #111827);font-size:13px;min-width:0}.rp-field input[type=text]:focus-visible,.rp-field input[type=number]:focus-visible,.rp-field select:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary);background:var(--field-bg-focus, rgba(255, 255, 255, .95))}.rp-field input[type=color]{width:44px;height:30px;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:6px}.rp-field input[type=range]{flex:1;accent-color:var(--brand-red, #C0392B)}.rp-field input[type=checkbox]{width:18px;height:18px;accent-color:var(--brand-red, #C0392B)}.rp-val{font-size:var(--fs-13, 13px);color:var(--text-mid, rgba(17, 24, 39, .64));min-width:36px;text-align:right}.rp-binding{background:var(--comp-bg, rgba(255, 255, 255, .55));border-radius:var(--radius-md, 8px);padding:var(--space-2, 8px) 10px}.rp-binding .row{display:flex;justify-content:space-between;margin-bottom:6px;font-size:13px}.rp-binding .row span{color:var(--text-mid, rgba(17, 24, 39, .64))}.rp-binding .row input{flex:1;margin-left:10px;padding:var(--space-1, 4px) var(--space-2, 8px);border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:6px;background:var(--field-bg, rgba(255, 255, 255, .75));color:var(--text-hi, #111827);font-size:13px}.rp-muted{color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px)}.rp-note{display:block;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px);margin-top:var(--space-1, 4px)}.rp-actions{display:flex;gap:var(--space-2, 8px)}.rp-actions button{flex:1;padding:7px 0;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:6px;background:var(--ghost-bg, rgba(255, 255, 255, .6));color:var(--text-hi, #111827);font-size:13px;cursor:pointer}.rp-actions button:hover{border-color:var(--brand-red, #C0392B);background:var(--ghost-bg-hover, rgba(255, 255, 255, .95))}.rp-actions button:disabled{opacity:.4;cursor:default}.rp-actions button.rp-page-more{flex:none;padding:7px 12px;letter-spacing:1px}.rp-delete{width:100%;margin-top:var(--space-2, 8px);padding:9px 0;border:none;border-radius:var(--radius-md, 8px);background:var(--error, #F5222D);color:var(--color-bg-card, #fff);font-size:var(--fs-14, 14px);cursor:pointer}.rp-delete:hover{background:#d40f1f}.rp-delete-sm{background:var(--ghost-bg, rgba(255, 255, 255, .6));border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));color:var(--text-hi, #111827)}.rp-delete-sm:hover{border-color:var(--error, #F5222D);color:var(--error, #F5222D)}.toast{position:fixed;bottom:var(--space-5, 24px);left:50%;transform:translate(-50%);padding:10px 20px;border-radius:var(--radius-md, 8px);font-size:13px;z-index:100;box-shadow:var(--shadow-3, 0 4px 8px rgba(16, 24, 40, .12))}.toast.ok{background:var(--success, #0FA958);color:var(--color-bg-card, #fff)}.toast.error{background:var(--error, #F5222D);color:var(--color-bg-card, #fff)}.toast{display:flex;align-items:center;gap:12px}.toast-act{flex:none;padding:2px 10px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:#ffffff29;color:inherit;font-size:var(--fs-12, 12px);font-weight:600;cursor:pointer;white-space:nowrap}.toast-act:hover{background:#ffffff4d}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182773;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:90}.modal{width:440px;background:var(--glass-bg, rgba(255, 255, 255, .9));-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border:1px solid var(--glass-border, rgba(17, 24, 39, .08));border-top-color:var(--glass-border-hi, rgba(255, 255, 255, .95));box-shadow:var(--shadow-3, 0 4px 8px rgba(16, 24, 40, .12)),var(--glass-inner, inset 0 1px 0 rgba(255, 255, 255, .9));border-radius:var(--radius-xl, 16px);padding:22px}.modal h3{font-size:var(--fs-16, 16px);margin-bottom:6px;color:var(--text-hi, #111827)}.modal-sub{font-size:13px;color:var(--text-mid, rgba(17, 24, 39, .64));margin-bottom:14px}.target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2, 8px);margin-bottom:14px}.target{display:flex;align-items:center;gap:6px;padding:9px 10px;border:1px solid var(--hairline, rgba(17, 24, 39, .08));border-radius:var(--radius-md, 8px);background:var(--comp-bg, rgba(255, 255, 255, .55));color:var(--text-hi, #111827);font-size:13px;cursor:pointer}.target.on{border-color:var(--brand-red, #C0392B);background:#c0392b0f}.modal-field{display:flex;align-items:center;gap:var(--space-2, 8px);margin-bottom:14px}.modal-field label{font-size:13px;min-width:90px;color:var(--text-hi, #111827)}.modal-field input{flex:1;padding:7px 10px;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:6px;background:var(--field-bg, rgba(255, 255, 255, .75));color:var(--text-hi, #111827);font-size:13px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.btn-plain{padding:var(--space-2, 8px) var(--space-4, 16px);border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-md, 8px);background:var(--ghost-bg, rgba(255, 255, 255, .6));color:var(--text-hi, #111827);cursor:pointer}.modal-publish{width:520px;max-height:82vh;overflow-y:auto}.modal-row{display:flex;gap:12px;margin-bottom:14px}.modal-row .modal-field{flex:1;margin-bottom:0}.publish-hint{font-size:13px;color:#6b7280;background:#1118271f;border-radius:6px;padding:var(--space-2, 8px) 10px;margin-bottom:12px}.publish-jobs{margin-top:var(--space-4, 16px);border-top:1px solid var(--hairline, rgba(17, 24, 39, .08));padding-top:12px}.publish-jobs h4,.publish-notices h4{font-size:var(--fs-14, 14px);margin-bottom:10px;color:var(--text-hi, #111827)}.publish-job-card{border:1px solid var(--hairline, rgba(17, 24, 39, .08));border-radius:var(--radius-md, 8px);padding:10px 12px;margin-bottom:10px;background:var(--comp-bg, rgba(255, 255, 255, .55));font-size:13px;color:var(--text-hi, #111827)}.publish-job-card.failed{border-color:var(--error, #F5222D);background:#f5222d0f}.publish-job-card.success{border-color:var(--success, #0FA958);background:#0fa95812}.pj-head{display:flex;align-items:center;gap:10px}.pj-target{font-weight:700}.pj-status{display:inline-flex;align-items:center;gap:6px;color:var(--text-mid, rgba(17, 24, 39, .64))}.pj-status .pj-dot{width:7px;height:7px;border-radius:50%;background:var(--brand-red, #C0392B);animation:pj-blink 1s infinite}@keyframes pj-blink{50%{opacity:.25}}.pj-meta{margin-left:auto;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px)}.pj-error{margin-top:var(--space-2, 8px);color:var(--error, #F5222D);font-size:var(--fs-13, 13px);word-break:break-all}.pj-retry{margin-top:var(--space-2, 8px);font-size:var(--fs-13, 13px);padding:var(--space-1, 4px) 12px}.pj-log{margin-top:var(--space-2, 8px)}.pj-log summary{cursor:pointer;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px)}.pj-log pre{margin-top:6px;padding:var(--space-2, 8px);background:#1f2329;color:#c9cdd4;border-radius:6px;font-size:var(--fs-13, 13px);line-height:1.5;max-height:160px;overflow:auto;white-space:pre-wrap;word-break:break-all}.publish-notices{margin-top:14px;border-top:1px solid var(--hairline, rgba(17, 24, 39, .08));padding-top:12px}.pub-notice{display:flex;flex-direction:column;gap:2px;border-radius:6px;padding:var(--space-2, 8px) 10px;margin-bottom:var(--space-2, 8px);background:var(--cat-bg, rgba(17, 24, 39, .045));font-size:13px;color:var(--text-hi, #111827)}.pub-notice.success{background:#0fa95812;border-left:3px solid var(--success, #0FA958)}.pub-notice.error{background:#f5222d0f;border-left:3px solid var(--error, #F5222D)}.pub-notice small{color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--fs-13, 13px)}.floating-load{position:fixed;right:18px;bottom:18px;width:46px;height:46px;border-radius:50%;border:none;background:var(--text-hi, #111827);color:var(--color-bg-card, #fff);font-size:13px;cursor:pointer;box-shadow:var(--shadow-3, 0 4px 8px rgba(16, 24, 40, .12));z-index:80}.editor-topbar{animation:token-rise var(--dur-3, .32s) var(--ease-out) backwards}.lib{animation:token-rise var(--dur-3, .32s) var(--ease-out) backwards;animation-delay:60ms}.canvas-wrap{animation:token-rise var(--dur-3, .32s) var(--ease-out) backwards;animation-delay:.12s}.panel-right{animation:token-rise var(--dur-3, .32s) var(--ease-out) backwards;animation-delay:.18s}.rp-rail{display:none}@media(max-width:1439px){.editor-body{position:relative}.panel-right{position:absolute;top:0;right:0;bottom:0;width:320px;z-index:25;animation:none;box-shadow:-10px 0 28px #11182724;transition:transform .18s var(--ease-out, ease-out)}.panel-right.is-closed{transform:translate(100%)}.rp-rail{display:flex;flex-direction:column;align-items:center;gap:2px;position:absolute;top:72px;right:320px;transform:none;z-index:30;width:24px;padding:10px 0;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .14));border-right:none;border-radius:8px 0 0 8px;background:#fffffff0;color:var(--text-mid, rgba(17, 24, 39, .66));font-size:var(--font-size-caption);line-height:1;cursor:pointer;writing-mode:vertical-rl}.rp-rail:hover{color:var(--color-primary)}.panel-right.is-closed+.rp-rail{right:0}}.ob-label{font-size:13px;color:var(--color-text-secondary);margin:6px 0}.cc-card{background:#fff;border-radius:14px;padding:14px;box-shadow:0 1px 3px #1118270f;display:flex;flex-direction:column;gap:12px}.cc-card.flush{padding:0;overflow:hidden;gap:0}.cc-card-head{display:flex;align-items:center;gap:6px;min-height:22px}.cc-card-ico{font-size:var(--font-size-body)}.cc-card-title{font-size:var(--font-size-body);color:#111827}.cc-card-action{margin-left:auto;font-size:12px;color:#1118278c;white-space:nowrap}.cc-sub{position:relative;background:#fafafa;border-radius:10px;padding:12px}.cc-sub-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}.cc-sub-head b{font-size:13px;color:#111827}.cc-sub-ico{font-size:13px}.cc-sub-action{margin-left:auto;font-size:var(--font-size-caption);color:#11182780}.cc-sub-hint{display:block;font-size:var(--font-size-caption);color:#11182780;margin-top:4px}.cc-sub.cc-sub-link{padding:12px;cursor:pointer}.cc-sub.cc-sub-link:hover{background:#f4f1ec}.cc-stamp-body{display:flex;align-items:center;justify-content:space-between}.cc-stamp-nums{display:flex;align-items:baseline;gap:4px}.cc-stamp-cup{font-size:var(--font-size-xl)}.cc-stamp-cur{font-size:var(--font-size-2xl);font-weight:800;color:#111827}.cc-stamp-total{font-size:14px;color:#11182780}.cc-decor-star{font-size:var(--font-size-4xl);opacity:.16;line-height:1}.cc-progress{height:5px;border-radius:3px;background:#11182714;overflow:hidden;margin-top:8px}.cc-progress i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--color-primary),#9ca3af)}.cc-progress.green i{background:#9bbb59}.cc-split-row{display:flex;align-items:center;justify-content:space-between}.cc-points b{font-size:24px;font-weight:800;color:#111827}.cc-points .cc-unit{font-size:12px;color:#1118278c;margin-left:3px}.cc-pill-btn{background:#5c4b3a;color:#fff;font-size:12px;padding:7px 16px;border-radius:18px;font-weight:600}.cc-coupon{position:relative;background:#f3f4f6;border-radius:10px;overflow:hidden}.cc-coupon-main{display:flex;flex-direction:column;gap:6px;padding:12px}.cc-coupon-main b{font-size:var(--font-size-body);color:#111827}.cc-coupon-meta{display:flex;align-items:center;gap:6px}.cc-coupon-meta small{color:#1118278c;font-size:var(--font-size-caption)}.cc-coupon-value{position:absolute;top:12px;right:14px;font-size:var(--font-size-2xl);font-weight:800;color:#111827}.cc-coupon-more{border-top:1px dashed rgba(17,24,39,.18);text-align:center;font-size:12px;color:#11182799;padding:8px;background:#ffffff73}.cc-mini-tag{display:inline-block;font-size:var(--font-size-caption);color:#6b7280;background:#1118270f;border:1px solid rgba(17,24,39,.16);border-radius:4px;padding:1px 5px;line-height:1.5}.cc-corner-badge{position:absolute;top:-7px;left:50%;transform:translate(-50%);background:var(--color-primary);color:#fff;font-size:var(--font-size-caption);padding:1px 7px;border-radius:8px 8px 8px 0;white-space:nowrap;z-index:2}.cc-corner-badge.sm{position:absolute;top:4px;right:6px;left:auto;transform:none;background:var(--color-primary);border-radius:8px 8px 8px 0}.cc-stat-row{display:flex}.cc-stat-row.border{border-top:1px solid rgba(17,24,39,.06);padding-top:12px}.cc-stat{flex:1;text-align:center}.cc-stat b{display:block;font-size:20px;font-weight:800;color:#111827}.cc-stat small{font-size:var(--font-size-caption);color:#1118278c}.cc-member-head{display:flex;align-items:center;gap:10px}.cc-avatar{width:46px;height:46px;border-radius:50%;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.cc-member-info{flex:1;min-width:0}.cc-member-name{display:flex;align-items:center;gap:6px}.cc-member-name b{font-size:var(--font-size-body);color:#111827}.cc-badge-dark{background:#111827;color:#fff;font-size:var(--font-size-caption);padding:1px 7px;border-radius:3px}.cc-member-info small{display:block;font-size:var(--font-size-caption);color:#1118278c;margin:4px 0 6px}.cc-qr{text-align:center;flex-shrink:0}.cc-qr-box{display:block;width:34px;height:34px;border:2px solid #111827;border-radius:6px;font-size:20px;line-height:32px;text-align:center}.cc-qr small{font-size:var(--font-size-caption);color:#1118278c}.cc-services-title{font-size:14px;font-weight:700;color:#111827;margin-bottom:10px}.cc-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px 6px}.cc-grid-item{display:flex;flex-direction:column;align-items:center;gap:4px}.cc-grid-ico{font-size:var(--font-size-xl)}.cc-grid-item small{font-size:var(--font-size-caption);color:#111827bf}.cc-promo-banner{position:relative;margin:0 14px 14px;height:110px;border-radius:10px;background:linear-gradient(135deg,#e5e7eb,#ead9c0);overflow:hidden;display:flex;align-items:center}.cc-promo-vertical{writing-mode:vertical-rl;font-size:var(--font-size-lg);font-weight:800;color:#7a4a2b;letter-spacing:4px;margin-left:16px}.cc-promo-img{font-size:var(--font-size-4xl);margin-left:auto;margin-right:24px}.cc-promo-badge{position:absolute;top:10px;left:14px;background:var(--color-primary);color:#fff;font-size:var(--font-size-caption);padding:2px 8px;border-radius:10px 10px 10px 0}.cc-hero{height:150px;background:linear-gradient(180deg,#e5e7eb,#efe3ce);display:flex;align-items:center;justify-content:center}.cc-hero img{width:100%;height:100%;object-fit:cover}.cc-hero-ph{display:flex;flex-direction:column;align-items:center;gap:6px}.cc-hero-emoji{font-size:40px}.cc-hero-brand{font-size:13px;color:#7a4a2b;letter-spacing:2px}.cc-dine-row{display:flex;align-items:stretch;padding:20px 0 14px}.cc-dine-cell{flex:1;text-align:center}.cc-dine-cell b{font-size:20px;letter-spacing:6px;color:#111827;font-weight:700}.cc-dine-cell small{display:block;font-size:12px;color:#11182799;margin-top:6px;letter-spacing:2px}.cc-dine-divider{width:1px;background:#11182724;margin:2px 0}.cc-triple-row{display:flex;border-top:1px solid rgba(17,24,39,.08);margin:0 20px;padding:16px 0}.cc-triple-cell{flex:1;position:relative;text-align:center}.cc-triple-cell b{font-size:14px;letter-spacing:3px;color:#111827;font-weight:600}.cc-verify-bar{display:flex;align-items:center;gap:12px;margin:6px 14px 14px;padding:14px;background:#fafafa;border-radius:10px}.cc-verify-ico{font-size:var(--font-size-2xl)}.cc-verify-bar b{display:block;font-size:14px;color:#111827}.cc-verify-bar small{font-size:var(--font-size-caption);color:#1118278c}.cc-nav-grid{display:grid;gap:14px 8px}.cc-nav-grid.cols3{grid-template-columns:repeat(3,1fr)}.cc-nav-grid.cols4{grid-template-columns:repeat(4,1fr)}.cc-nav-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}.cc-nav-ico{font-size:var(--font-size-3xl);line-height:1.2}.cc-nav-item b{font-size:13px;color:#111827}.cc-nav-item small{font-size:var(--font-size-caption);color:#11182780}.cc-welcome-head{display:flex;flex-direction:column;gap:2px}.cc-greeting{font-size:12px;color:#11182799}.cc-welcome-title{font-size:var(--font-size-lg);color:#111827}.cc-welcome-title .cc-arrow{font-weight:700;margin-left:2px}.cc-entry-row{display:flex;gap:10px}.cc-entry-row.tight{gap:8px}.cc-entry{flex:1;background:#f3f4f6;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:2px}.cc-entry.warm{background:#eae4da}.cc-entry-en{font-size:var(--font-size-caption);letter-spacing:1px;color:#11182780;text-transform:uppercase}.cc-entry b{font-size:14px;color:#111827}.cc-entry-ico{font-size:var(--font-size-xl);margin-top:4px}.cc-notice-bar{display:flex;align-items:center;gap:8px;margin:2px -14px -14px;padding:12px 14px;background:#5c4b3a;border-radius:0 0 14px 14px}.cc-notice-doc{font-size:14px}.cc-notice-bar small{flex:1;font-size:12px;color:#ffffffd9}.cc-notice-action{font-size:12px;color:#fff;white-space:nowrap}.cc-menu-board{display:flex;min-height:320px}.cc-cat-rail{width:84px;background:#f5f6f8;display:flex;flex-direction:column;flex-shrink:0}.cc-cat{position:relative;padding:14px 8px;text-align:center;font-size:12px;color:#111827bf;border-left:3px solid transparent}.cc-cat.on{background:#fff;border-left-color:var(--color-primary)}.cc-cat.on b{color:#111827;font-weight:700}.cc-cat-flame{position:absolute;top:4px;left:8px;font-size:var(--font-size-caption)}.cc-menu-main{flex:1;padding:12px;min-width:0}.cc-section-head{margin-bottom:10px}.cc-section-head b{font-size:var(--font-size-body);color:#111827}.cc-section-head small{display:block;font-size:var(--font-size-caption);color:#11182780;margin-top:2px}.cc-menu-item{display:flex;gap:10px;padding:8px 0}.cc-menu-item+.cc-menu-item{border-top:1px solid rgba(17,24,39,.05)}.cc-menu-thumb{position:relative;width:76px;height:76px;border-radius:10px;background:#f5f6f8;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl);flex-shrink:0}.cc-hot-badge{position:absolute;top:-4px;right:-4px;background:var(--color-primary);color:#fff;font-size:var(--font-size-caption);padding:1px 5px;border-radius:8px 0 8px 8px}.cc-menu-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.cc-menu-info b{font-size:14px;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-dish-tags{display:flex;flex-wrap:wrap;gap:4px}.cc-sales{font-size:var(--font-size-caption);color:#11182780}.cc-dish-foot{display:flex;align-items:center;justify-content:space-between;margin-top:2px}.cc-price{font-size:var(--font-size-body);font-weight:800;color:var(--color-primary)}.cc-price s{font-size:var(--font-size-caption);color:#11182766;font-weight:400;margin-left:4px}.cc-add-btn{width:24px;height:24px;border-radius:50%;background:#2e4ce0;color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-body);font-weight:700}.cc-add-btn.round{width:26px;height:26px}.cc-dish-wrap{display:flex;flex-direction:column;gap:var(--space-2, 8px)}.cc-dish-title{font-size:var(--fs-14, 14px);font-weight:700;color:var(--canvas-paper-text, #111827)}.cc-dish-grid.one,.cc-dish-grid.lz-one,.cc-goods.lz-one{grid-template-columns:1fr}.cc-dish-grid.lz-two,.cc-goods.lz-two{grid-template-columns:1fr 1fr}.cc-dish-grid.lz-detail,.cc-goods.lz-detail{grid-template-columns:1fr;gap:6px}.cc-dish-grid.lz-one-wide,.cc-goods.lz-one-wide{grid-template-columns:1fr}.cc-dish-info,.cc-goods-info{display:flex;flex-direction:column;min-width:0}.cc-dish-grid.lz-detail .cc-dish{display:flex;gap:var(--space-2, 8px);align-items:center}.cc-dish-grid.lz-detail .cc-dish-thumb{width:44px;height:44px;flex:none;margin-bottom:0;font-size:var(--font-size-lg)}.cc-dish-grid.lz-detail .cc-dish-info{flex:1}.cc-dish-grid.lz-one-wide .cc-dish-thumb{height:auto;aspect-ratio:2 / 1;font-size:var(--font-size-3xl)}.cc-dish,.cc-dish-thumb{position:relative}.cc-dish-corner{position:absolute;top:4px;left:4px;padding:1px 6px;border-radius:999px;color:#fff;font-size:var(--font-size-caption);font-weight:600;line-height:1.5}.cc-dish-name{display:block;font-size:var(--fs-13, 13px);line-height:1.4;color:var(--canvas-paper-text, #111827)}.cc-dish-sub{display:block;font-size:var(--fs-11, 11px);color:var(--text-mid, rgba(17, 24, 39, .55));margin-top:1px}.cc-dish-sales{display:block;font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .45));margin-top:2px}.cc-add-btn.circle{width:24px;height:24px;border-radius:50%}.cc-add-btn.pill{width:auto;height:22px;padding:0 10px;border-radius:999px;font-size:var(--fs-11, 11px);font-weight:600}.cc-add-btn.plain{width:auto;height:auto;background:transparent;font-size:var(--font-size-lg)}.cc-seckill{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-radius:var(--radius-md, 8px);color:#fff}.cc-seckill b{font-size:var(--fs-13, 13px)}.cc-seckill span{font-size:var(--fs-11, 11px);opacity:.9}.cc-bottom-bar{gap:var(--space-2, 8px)}.cc-bar-total{font-size:var(--fs-13, 13px);color:var(--canvas-paper-text, #111827)}.cc-bar-total b{font-size:var(--fs-16, 16px);color:var(--brand-red, #C0392B)}.cc-bar-coupon{padding:2px 8px;border:1px solid rgba(192,57,43,.35);border-radius:var(--radius-sm, 6px);color:var(--brand-red, #C0392B);font-size:var(--fs-11, 11px)}.cc-nutri-row{display:flex;text-align:center}.cc-nutri{flex:1}.cc-nutri b{display:block;font-size:var(--font-size-body);color:#111827}.cc-nutri small{font-size:var(--font-size-caption);color:#1118278c}.cc-promo-line{display:flex;align-items:center;gap:6px}.cc-promo-line small{color:#11182799;font-size:12px}.cc-entry-row .cc-entry{background:#fafafa}.cc-store-line{display:flex}.cc-store-line small{font-size:12px;color:#111827b3}.cc-mode-line{display:block;font-size:var(--font-size-caption);color:#ffffffd9;margin-top:2px}.cc-ai-cup{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;background:#fafafa}.cc-ai-main{width:38px;height:38px;border-radius:10px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.cc-ai-cup-body{flex:1;min-width:0}.cc-ai-cup-body b{display:block;font-size:14px;color:#111827}.cc-ai-cup-body small{font-size:var(--font-size-caption);color:#1118278c}.cc-ai-badge{font-size:var(--font-size-caption);color:var(--color-primary);background:#c0392b14;border-radius:8px;padding:2px 8px;flex-shrink:0}.cc-ai-pairs{display:flex;flex-wrap:wrap;gap:6px}.cc-ai-pair{font-size:12px;color:#111827;background:#f5f6f8;border-radius:12px;padding:4px 10px}.cc-ai-pair em{font-style:normal;color:var(--color-primary);font-size:var(--font-size-caption);margin-left:3px}.cc-ai-note{font-size:var(--font-size-caption);color:#11182780;margin-top:8px}.cc-scene-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:2px}.cc-scene-tab{font-size:12px;color:#11182799;background:#f5f6f8;border-radius:14px;padding:4px 12px}.cc-scene-tab.active{color:#fff;background:var(--color-primary);font-weight:700}.rp-sec{padding:0}.rp-sec h4{margin-bottom:0}.rp-sec-h{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#111827;padding:12px 0;cursor:pointer;-webkit-user-select:none;user-select:none}.rp-sec-h:hover{color:var(--color-primary)}.rp-arrow{width:12px;font-size:var(--font-size-caption);color:#11182773;flex-shrink:0}.rp-sec-extra{margin-left:auto;font-weight:400}.rp-badge{font-size:var(--font-size-caption);color:#11182780;background:#f5f6f8;border-radius:8px;padding:1px 8px}.rp-sec-b{padding-bottom:12px}.rp-matrix{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px;padding:8px;margin-bottom:10px;background:var(--cat-bg, rgba(17, 24, 39, .035));border-radius:var(--radius-md, 8px)}.rp-matrix-cell{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:3px 2px;cursor:pointer}.rp-matrix-label{font-size:var(--fs-12, 12px);color:var(--text-hi, #111827);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-field-hint{flex-basis:100%;order:3;font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .45));line-height:1.4}.rp-field{flex-wrap:wrap}.rp-group{border-top:1px dashed var(--hairline, rgba(17, 24, 39, .1))}.rp-group:first-child{border-top:none}.rp-group-h{display:flex;align-items:center;gap:6px;padding:8px 0;font-size:var(--fs-12, 12px);font-weight:600;color:var(--text-mid, rgba(17, 24, 39, .7));cursor:pointer;-webkit-user-select:none;user-select:none}.rp-group-h:hover{color:var(--color-brand, #C0392B)}.rp-group-n{margin-left:auto;font-weight:400;font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .42))}.rp-group-b{padding-bottom:6px}.rp-color-follow{display:flex;align-items:center;gap:8px}.rp-cf-tabs{display:inline-flex;border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16));border-radius:var(--radius-sm, 6px);overflow:hidden}.rp-cf-tabs button{padding:3px 8px;border:none;background:transparent;font-size:var(--fs-11, 11px);color:var(--text-mid, rgba(17, 24, 39, .65));cursor:pointer}.rp-cf-tabs button.on{background:var(--color-brand, #C0392B);color:#fff}.rp-cf-swatch{display:inline-block;width:22px;height:22px;border-radius:var(--radius-sm, 6px);border:1px solid var(--hairline-strong, rgba(17, 24, 39, .16))}.lib-top-tabs{display:flex;gap:4px;margin:0 10px 10px;padding:3px;background:#f3f4f6;border-radius:10px}.lib-top-tabs button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:none;background:transparent;border-radius:8px;padding:7px 0;font-size:13px;color:#1118279e;cursor:pointer}.lib-top-tabs button:hover{color:#111827}.lib-top-tabs button.on{background:#fff;color:#111827;font-weight:700;box-shadow:0 1px 3px #1118271a}.lt-n{font-size:var(--font-size-caption);background:#11182714;color:#11182799;border-radius:8px;padding:0 6px}.pt{display:flex;flex-direction:column;gap:8px}.pt-hint{font-size:var(--font-size-caption);line-height:1.5;color:#11182780}.pt-list{display:flex;flex-direction:column;gap:6px}.pt-row{display:flex;align-items:center;gap:8px;padding:9px 10px;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:10px;cursor:pointer}.pt-row:hover{border-color:#c0392b59}.pt-row.on{border-color:var(--color-primary);background:#c0392b0d}.pt-grip{font-size:13px;letter-spacing:-2px;color:#11182752;cursor:grab;touch-action:none}.pt-grip:active{cursor:grabbing}.pt-idx{flex-shrink:0;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-size-caption);border-radius:6px;background:#f3f4f6;color:#11182799}.pt-title{flex:1;min-width:0;font-size:13px;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pt-count{font-size:var(--font-size-caption);color:#1118276b}.pt-acts{display:inline-flex;gap:2px}.pt-acts button{border:none;background:transparent;color:#11182773;font-size:13px;line-height:1;padding:3px 4px;border-radius:6px;cursor:pointer}.pt-acts button:hover{background:var(--color-bg-hover);color:var(--color-primary)}.pt-acts button.del:hover{color:#f5222d}.pt-acts button:disabled{opacity:.3;cursor:default}.pt-add{margin-top:2px;border:1px dashed rgba(17,24,39,.18);background:transparent;border-radius:10px;padding:8px 0;font-size:13px;color:#111827a6;cursor:pointer}.pt-add:hover{border-color:var(--color-primary);color:var(--color-primary)}.pt-add:disabled{opacity:.45;cursor:default}.pt-limit{font-size:var(--font-size-caption);color:var(--color-primary)}.quick-edit{position:absolute;left:6px;right:6px;top:6px;z-index:6;padding:6px 8px;background:#fffffff7;border:1px solid var(--color-primary);border-radius:8px;box-shadow:0 4px 14px #11182724;cursor:text}.quick-edit input{width:100%;border:none;outline:none;background:transparent;font:inherit;color:#111827}.quick-edit input::placeholder{color:#11182759}.quick-edit small{display:block;margin-top:4px;font-size:var(--font-size-caption);color:#11182780}.lp-field{display:flex;align-items:center;gap:8px;min-height:30px;padding:4px 10px;border:1px solid rgba(17,24,39,.16);border-radius:8px;background:#ffffffb3;cursor:pointer}.lp-field:hover{border-color:var(--color-primary)}.lp-crumb{flex:1;min-width:0;font-size:13px;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lp-acts{display:inline-flex;gap:8px;flex-shrink:0}.lp-acts a{font-size:12px;color:var(--color-primary);cursor:pointer}.lp-empty{font-size:13px;color:#1118276b}.lp-pop{width:320px}.lp-groups{display:flex;flex-direction:column;gap:12px;max-height:300px;overflow-y:auto;margin-top:10px}.lp-group-name{display:flex;align-items:center;font-size:12px;font-weight:700;color:#11182799;margin-bottom:6px}.lp-items{display:flex;flex-wrap:wrap;gap:6px}.lp-item{border:1px solid rgba(17,24,39,.1);background:#fff;border-radius:8px;padding:5px 10px;font-size:12px;color:#111827;cursor:pointer}.lp-item:hover{border-color:var(--color-primary);color:var(--color-primary)}.lp-item.on{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:700}.lp-hint{font-size:var(--font-size-caption);color:#11182773}.lp-external{display:flex;flex-direction:column;margin-top:10px}.lp-external label{font-size:12px;color:#111827a6;margin-bottom:4px}.lp-error{margin-top:8px;font-size:12px;color:#f5222d}.dpl{padding:4px 0 16px}.dpl-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.dpl-stats{display:flex;gap:10px;flex-wrap:wrap}.dpl-stat{min-width:88px;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:10px;padding:8px 16px}.dpl-stat span{display:block;font-size:12px;color:#1118278c;margin-bottom:2px}.dpl-stat b{font-size:var(--font-size-lg);color:#111827}.dpl-stat.wide{min-width:220px}.dpl-stat.wide b{font-size:14px;color:var(--color-primary)}.dpl-scopes{margin-bottom:12px}.dpl-name{display:flex;flex-direction:column}.dpl-name b{font-size:14px;color:#111827}.dpl-name small{font-size:var(--font-size-caption);color:#11182780}.dpl-muted{color:#11182780}.dpl-foot{margin-top:12px;font-size:12px;color:#11182773}.mini-phone{flex-shrink:0;width:150px;display:flex;flex-direction:column;border-radius:14px;overflow:hidden;border:1px solid rgba(17,24,39,.1);box-shadow:0 2px 10px #11182714}.mp-nav{height:26px;display:flex;align-items:center;justify-content:center;padding:0 8px;font-size:var(--font-size-caption);font-weight:700;color:#fff;overflow:hidden;white-space:nowrap}.mp-body{flex:1;display:flex;flex-direction:column;gap:5px;padding:6px;overflow:hidden}.mp-block{font-size:var(--font-size-caption);color:#111827b3;background:#ffffffbf;border:1px solid rgba(17,24,39,.07);padding:6px 7px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mp-block.industry{color:var(--color-primary);font-weight:700;border-color:#c0392b59;background:#c0392b0f}.mp-empty{margin:auto;font-size:var(--font-size-caption);color:#11182759}.vd{display:flex;gap:16px;align-items:flex-start}.vd-list{flex-shrink:0;width:280px;display:flex;flex-direction:column;gap:4px}.vd-item{display:flex;gap:10px;padding:10px;border-radius:10px;cursor:pointer}.vd-item:hover{background:#f9fafb}.vd-item.on{background:#c0392b12}.vd-dot{flex-shrink:0;width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--color-primary)}.vd-main{flex:1;min-width:0}.vd-head{display:flex;align-items:center;gap:6px}.vd-head b{font-size:14px;color:#111827}.vd-time{margin-left:auto;font-size:var(--font-size-caption);color:#1118276b}.vd-meta{margin-top:3px;font-size:12px;color:#1118278c;overflow:hidden;text-overflow:ellipsis}.vd-detail{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px;padding-left:16px;border-left:1px solid rgba(17,24,39,.08)}.vd-tip{padding:30px 0;text-align:center;font-size:13px;color:#11182773}.vd-info{display:flex;gap:20px}.vd-info>div{display:flex;flex-direction:column;gap:2px}.vd-info span{font-size:12px;color:#11182780}.vd-info b{font-size:14px;color:#111827}.vd-diff{font-size:12px}.vd-diff>b{display:block;margin-bottom:6px;color:#111827}.vd-diff ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:150px;overflow-y:auto}.vd-diff li{display:flex;align-items:center;gap:6px;color:#111827a6}.wz-industries{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.wz-ind{display:flex;flex-direction:column;gap:6px;padding:14px 12px;background:#fff;border:1px solid rgba(17,24,39,.1);border-radius:12px;cursor:pointer}.wz-ind:hover{border-color:#c0392b80}.wz-ind.on{border-color:var(--color-primary);box-shadow:0 0 0 2px #c0392b26}.wz-ind-swatch{width:26px;height:26px;border-radius:8px}.wz-ind b{font-size:14px;color:#111827}.wz-ind small{font-size:var(--font-size-caption);line-height:1.5;color:#11182780}.wz-ind-count{color:var(--color-primary)}.wz-source{margin-top:4px}.wz-tpl{display:flex;gap:20px;align-items:flex-start;margin-top:14px}.wz-tpl-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.wz-tpl-info>b{font-size:var(--font-size-body);color:#111827}.wz-tpl-info>small{font-size:12px;line-height:1.6;color:#11182799}.wz-tpl-meta{display:flex;gap:6px;flex-wrap:wrap}.wz-tpl-pages{font-size:12px;color:#11182780}.wz-ai{display:flex;flex-direction:column;gap:12px;margin-top:14px}.wz-chips,.wz-refcolors{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wz-chips-label{font-size:12px;color:#11182799}.wz-refcolors input[type=color]{width:34px;height:26px;padding:0;background:none;border:1px solid rgba(17,24,39,.16);border-radius:6px;cursor:pointer}.wz-variants{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.wz-variant{display:flex;gap:12px;padding:12px;background:#fff;border:1px solid rgba(17,24,39,.1);border-radius:12px}.wz-variant.on{border-color:var(--color-primary);box-shadow:0 0 0 2px #c0392b26}.wz-variant-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.wz-variant-info b{font-size:13px;color:#111827}.wz-variant-tags{display:flex;gap:4px;flex-wrap:wrap}.wz-variant-info small{font-size:var(--font-size-caption);color:#11182780}.wz-basic{display:flex;flex-direction:column;gap:16px}.wz-row{display:flex;gap:16px;align-items:flex-start}.wz-row>label{flex-shrink:0;width:72px;padding-top:6px;font-size:13px;color:#111827}.wz-row>*:not(label){flex:1;min-width:0}.wz-note{font-size:var(--font-size-caption);color:#11182773}.wz-summary{padding:10px 14px;background:#f9fafb;border-radius:10px;font-size:13px;color:#111827b3}.wz-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.brand-register-entry{display:inline-flex;align-items:center;gap:6px;color:var(--color-primary);font-weight:600}.brand-register-entry:hover{text-decoration:underline}.brand-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--color-primary, #C0392B)}.pp-body{display:flex;flex-direction:column;gap:14px}.pp-row{display:flex;align-items:center;gap:12px}.pp-row>span{flex-shrink:0;width:72px;font-size:13px;color:#111827a6}.pp-row>b{font-size:13px;color:var(--color-primary)}.pp-row>input{flex:1;min-width:0;padding:5px 10px;font-size:13px;border:1px solid rgba(17,24,39,.16);border-radius:8px}.pp-note{display:block;padding:8px 12px;background:#f9fafb;border-radius:8px;font-size:12px;line-height:1.6;color:#11182780}.bk{padding:10px 12px;overflow-y:auto}.bk-hint{font-size:var(--font-size-caption);line-height:1.7;color:#11182773;margin-bottom:10px}.bk-empty{padding:26px 8px;text-align:center;font-size:12px;color:#11182766;border:1px dashed rgba(17,24,39,.14);border-radius:10px}.bk-list{display:flex;flex-direction:column;gap:8px}.bk-row{position:relative;display:flex;flex-direction:column;gap:2px;padding:8px 26px 8px 10px;background:#fff;border:1px solid rgba(17,24,39,.12);border-radius:10px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.bk-row:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #c0392b1f}.bk-name{font-size:13px;font-weight:600;color:#111827}.bk-meta{font-size:var(--font-size-caption);color:#11182773}.bk-preview{font-size:12px;color:#1118279e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bk-del{position:absolute;top:6px;right:6px;border:none;background:transparent;font-size:12px;color:#11182759;cursor:pointer}.bk-del:hover{color:var(--color-primary)}.marquee{position:fixed;z-index:60;border:1px solid var(--color-primary);background:#c0392b1a;border-radius:4px;pointer-events:none}.placed.selected.multi{border-style:solid;border-color:var(--color-primary);outline:none}.placed-ord{position:absolute;left:-9px;top:-9px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--color-primary);color:#fff;font-size:var(--font-size-caption);line-height:18px;text-align:center;font-weight:600;box-shadow:0 1px 4px #00000040}.canvas-hint{padding:6px 14px 10px;font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .42));text-align:center}.rp-sel-list{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:6px}.rp-sel-list li{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-hi, #111827)}.rp-sel-list li small{color:var(--text-mid, rgba(17, 24, 39, .64))}.rp-sel-ord{min-width:18px;height:18px;border-radius:9px;background:#c0392b1a;color:var(--color-primary);font-size:var(--font-size-caption);line-height:18px;text-align:center}.rp-tip{margin-top:14px;padding:8px 10px;background:var(--comp-bg, rgba(255, 255, 255, .55));border-radius:var(--radius-md, 8px);font-size:12px;line-height:1.7;color:var(--text-mid, rgba(17, 24, 39, .64))}.rp-ellipsis{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-sub{margin-left:8px;font-size:12px;font-weight:400;color:#11182780}.db-loading{padding:40px 0;text-align:center}.db{display:flex;flex-direction:column;gap:14px}.db-block{border:1px solid rgba(17,24,39,.1);border-radius:10px;padding:10px 12px}.db-block-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.db-block-h b{font-size:13px;color:#111827}.db-count{font-size:12px;color:#11182780}.db-kinds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.db-kind{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid rgba(17,24,39,.14);border-radius:999px;background:#fff;font-size:12px;color:#111827;cursor:pointer}.db-kind.on{border-color:var(--color-primary);background:#c0392b14;color:var(--color-primary);font-weight:600}.db-kind-n{font-size:var(--font-size-caption);color:#11182773}.db-options{display:flex;flex-direction:column;gap:6px;max-height:168px;overflow-y:auto}.db-option{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:7px 26px 7px 10px;border:1px solid rgba(17,24,39,.12);border-radius:8px;background:#fff;text-align:left;cursor:pointer}.db-option:hover{border-color:var(--color-primary)}.db-option.on{border-color:var(--color-primary);background:#c0392b0f}.db-option-main{font-size:13px;color:#111827}.db-option-sub{font-size:var(--font-size-caption);color:#11182773}.db-option-check{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:var(--color-primary);font-size:13px}.db-empty{padding:14px 0;text-align:center;font-size:12px;color:#11182766}.db-note{margin-bottom:8px;padding:6px 8px;background:#1118270f;border-radius:6px;font-size:12px;color:#6b7280}.db-cats{display:flex;flex-wrap:wrap;gap:6px}.db-cat{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid rgba(17,24,39,.14);border-radius:999px;background:#fff;font-size:12px;color:#111827;cursor:pointer}.db-cat.on{border-color:var(--color-primary);background:var(--color-primary);color:#fff;font-weight:600}.db-cat-n{font-size:var(--font-size-caption);opacity:.7}.db-preview{padding:10px 12px;border-radius:10px;background:#c0392b0f;border:1px dashed rgba(192,57,43,.35);font-size:13px;color:#111827}.db-preview-tag{display:inline-block;margin-right:6px;padding:1px 6px;border-radius:4px;background:var(--color-primary);color:#fff;font-size:var(--font-size-caption)}.db-preview-sub{margin-top:4px;font-size:var(--font-size-caption);color:#1118278c}.db-current{font-size:12px;color:#11182780}.rp-sub{margin:12px 0 8px;font-size:var(--font-size-caption);font-weight:700;letter-spacing:.5px;color:#11182785;border-top:1px dashed rgba(17,24,39,.1);padding-top:8px}.rp-sub:first-child{margin-top:0;border-top:none;padding-top:0}.rp-seg{display:flex;flex:1;gap:4px}.rp-seg button{flex:1;min-width:0;padding:5px 0;border:1px solid rgba(17,24,39,.14);border-radius:7px;background:#ffffffb3;color:#111827b8;font-size:12px;cursor:pointer;transition:all .15s ease}.rp-seg button:hover{border-color:#c0392b66}.rp-seg button.on{background:#c0392b14;border-color:var(--color-primary);color:var(--color-primary);font-weight:700}.rp-seg.wide button{font-size:var(--font-size-caption);padding:5px 2px}.rp-reset{width:100%;margin-top:10px;padding:6px 0;border:1px dashed rgba(17,24,39,.18);border-radius:8px;background:transparent;color:#1118279e;font-size:12px;cursor:pointer}.rp-reset:hover{border-color:#c0392b73;color:var(--color-primary)}.vip-tag{display:inline-block;margin-left:6px;padding:0 5px;border-radius:4px;background:linear-gradient(135deg,#9ca3af,#6b7280);color:#fff;font-size:var(--font-size-caption);font-weight:700;line-height:15px;letter-spacing:.5px;vertical-align:middle}.vip-tag.sm{margin-left:6px;font-size:var(--font-size-caption);line-height:14px;padding:0 4px}.rp-vip-note{margin-bottom:10px;padding:7px 9px;border-radius:8px;background:#1118270f;border-left:3px solid #9ca3af;color:#111827c7;font-size:12px;line-height:1.5}.lib-hint-vip{background:#1118270d;border-radius:6px}.lib-item.pro{border-color:#11182733}.pt-group-head{display:flex;align-items:center;gap:6px;margin:10px 0 2px;padding:0 2px}.pt-group-head:first-child{margin-top:0}.pt-group-name{font-size:var(--font-size-caption);font-weight:700;color:#11182785;letter-spacing:.5px}.pt-group-n{padding:0 5px;border-radius:8px;background:#11182712;color:#1118278c;font-size:var(--font-size-caption);line-height:15px}.pt-group{width:62px;padding:2px 4px;border:1px solid rgba(17,24,39,.12);border-radius:6px;background:#ffffffd9;color:#111827b8;font-size:var(--font-size-caption);cursor:pointer}.pt-acts{display:flex;align-items:center;gap:4px}.pt-group-tip{margin-top:10px;font-size:var(--font-size-caption);line-height:1.5;color:#11182773}.nav-cfg{margin-top:2px}.nav-cfg-tabs{display:flex;gap:4px;margin-bottom:10px;padding:3px;border-radius:9px;background:#1118270d}.nav-cfg-tabs .tab{flex:1;padding:6px 0;border:none;border-radius:7px;background:transparent;color:#111827ad;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.nav-cfg-tabs .tab:hover{color:#111827e6}.nav-cfg-tabs .tab.active{background:#fff;color:var(--color-primary);box-shadow:0 1px 3px #1118271f}.nav-cfg-head{display:flex;align-items:center;justify-content:space-between;margin:12px 0 8px;font-size:12px;color:#1118279e}.nav-cfg-head b{color:var(--color-primary)}.nav-add{padding:4px 10px;border:1px dashed rgba(192,57,43,.5);border-radius:7px;background:#c0392b0f;color:var(--color-primary);font-size:12px;font-weight:600;cursor:pointer}.nav-add:hover{background:#c0392b1f}.nav-add:disabled{opacity:.4;cursor:not-allowed;border-style:solid}.nav-item{margin-bottom:8px;padding:8px 9px;border:1px solid rgba(17,24,39,.1);border-radius:10px;background:#ffffffb8}.nav-item:hover{border-color:#c0392b47}.nav-item-row{display:flex;align-items:center;gap:6px}.nav-item-row+.nav-item-row{margin-top:6px}.nav-item-ord{flex:none;width:16px;height:16px;border-radius:50%;background:#11182714;color:#11182799;font-size:var(--font-size-caption);font-weight:700;line-height:16px;text-align:center}.nav-icon{flex:none;width:28px;height:28px;border:1px solid rgba(17,24,39,.14);border-radius:8px;background:#fff;font-size:var(--font-size-body);line-height:1;cursor:pointer}.nav-icon:hover{border-color:#c0392b73}.nav-text{flex:1;min-width:0;padding:5px 7px;border:1px solid rgba(17,24,39,.14);border-radius:7px;background:#fff;color:#111827e6;font-size:12px}.nav-text:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.nav-count{flex:none;min-width:30px;color:#1118276b;font-size:var(--font-size-caption);font-variant-numeric:tabular-nums;text-align:right}.nav-count.full{color:var(--color-primary);font-weight:700}.nav-item-link-label{flex:none;color:#11182780;font-size:var(--font-size-caption)}.nav-acts{margin-left:auto;display:flex;gap:3px}.nav-acts button{width:22px;height:22px;border:1px solid rgba(17,24,39,.14);border-radius:6px;background:#fff;color:#111827a8;font-size:var(--font-size-caption);line-height:1;cursor:pointer}.nav-acts button:hover:not(:disabled){border-color:#c0392b73;color:var(--color-primary)}.nav-acts button:disabled{opacity:.35;cursor:not-allowed}.nav-acts button.danger:hover:not(:disabled){background:#c0392b14;border-color:var(--color-primary);color:var(--color-primary)}.nav-icon-pop{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;width:168px}.nav-icon-btn{height:30px;border:1px solid transparent;border-radius:7px;background:#1118270a;font-size:var(--font-size-body);line-height:1;cursor:pointer}.nav-icon-btn:hover{background:#c0392b1a}.nav-icon-btn.on{border-color:var(--color-primary);background:#c0392b1f}.cc-nav{display:flex;align-items:center;justify-content:space-around;gap:2px;padding:8px 4px;border-radius:12px}.cc-nav-item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:var(--font-size-caption);line-height:1.2}.cc-nav-item.on{font-weight:700}.cc-nav-ico{font-size:var(--font-size-lg);line-height:1.1}.cc-nav-txt{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ai-ball-anchor{position:sticky;bottom:4px;height:0;z-index:30;pointer-events:none}.ai-ball-wrap{position:absolute;right:20px;bottom:0;display:flex;flex-direction:column;align-items:flex-end;pointer-events:auto}.ai-ball{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--color-primary);color:#fff;cursor:pointer;box-shadow:0 6px 18px #c0392b61;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.ai-ball:hover{transform:translateY(-2px) scale(1.03);background:var(--brand-red-hover, #A93226);box-shadow:0 9px 24px #c0392b75}.ai-ball.on{background:#1f2937;box-shadow:0 6px 18px #1118274d}.ai-ball.on:hover{background:#2b241f}.ai-ball-panel{width:268px;margin-bottom:10px;padding:10px;border:1px solid rgba(17,24,39,.08);border-radius:14px;background:#fff;box-shadow:0 14px 40px #1118272e;animation:content-fade .18s var(--ease-decelerate) backwards}.ai-ball-head{display:flex;flex-direction:column;gap:2px;padding:2px 4px 8px;border-bottom:1px dashed rgba(17,24,39,.1)}.ai-ball-head b{font-size:13px;color:#111827e6}.ai-ball-head small{color:#1118277a;font-size:var(--font-size-caption)}.ai-ball-item{display:flex;align-items:flex-start;gap:9px;width:100%;margin-top:6px;padding:8px 9px;border:1px solid transparent;border-radius:10px;background:#11182708;text-align:left;cursor:pointer;transition:all .15s ease}.ai-ball-item:hover:not(:disabled){background:#c0392b12;border-color:#c0392b3d}.ai-ball-item:disabled{opacity:.55;cursor:progress}.ai-ball-ico{flex:none;font-size:16px;line-height:1.3}.ai-ball-txt{display:flex;flex-direction:column;gap:1px;min-width:0}.ai-ball-txt b{font-size:12.5px;color:#111827e6}.ai-ball-txt small{color:#11182785;font-size:var(--font-size-caption);line-height:1.45}.ai-ball-busy{flex:none;margin-left:auto;align-self:center;color:var(--color-primary);font-size:var(--font-size-caption);font-weight:600}.ai-help-list{margin:0;padding-left:20px;color:#111827c7;font-size:13px;line-height:1.9}.ai-help-list b{color:#111827f2}.ai-help-foot{margin-top:12px;padding-top:10px;border-top:1px dashed rgba(17,24,39,.1);color:#11182780;font-size:12px}.ov-strip{padding:var(--card-padding, 20px);border-radius:var(--radius-xl, 16px);background:var(--card-bg, #FFFFFF);box-shadow:var(--card-shadow, 0 2px 10px rgba(17, 24, 39, .06))}.ov-strip-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:14px}.ov-strip-head b{font-size:var(--font-lg, 16px);color:var(--color-text-strong, #111827)}.ov-strip-sub{color:var(--color-text-tertiary, rgba(17, 24, 39, .45));font-size:var(--font-sm, 12px)}.ov-strip-link{margin-left:auto;padding:0;border:none;background:none;color:var(--color-primary, #C0392B);font-size:var(--font-sm, 13px);font-weight:600;cursor:pointer}.ov-strip-link:hover{text-decoration:underline}.ov-strip-empty{padding:18px 0;color:var(--color-text-tertiary, rgba(17, 24, 39, .45));font-size:var(--font-sm, 13px)}.ov-strip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}@media(max-width:1100px){.ov-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}}.ov-cell{display:flex;flex-direction:column;gap:4px;padding:0 18px;border-left:1px solid rgba(17,24,39,.07)}.ov-cell:first-child{padding-left:0;border-left:none}.ov-cell-label{color:var(--color-text-secondary, rgba(17, 24, 39, .6));font-size:var(--font-sm, 12px)}.ov-cell-value{color:var(--color-text-strong, #111827);font-size:var(--font-2xl, 26px);font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums}.ov-cell-value i{margin-left:3px;color:var(--color-text-secondary, rgba(17, 24, 39, .55));font-size:var(--font-sm, 12px);font-style:normal;font-weight:500}.ov-cell-skeleton{display:inline-block;width:62px;height:26px;border-radius:6px;background:linear-gradient(90deg,#1118270d,#1118271a,#1118270d);background-size:200% 100%;animation:ov-shimmer 1.1s linear infinite}@keyframes ov-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ov-cell-note{display:flex;align-items:flex-end;gap:8px;min-height:20px;color:var(--color-text-tertiary, rgba(17, 24, 39, .45));font-size:var(--font-sm, 11.5px)}.ov-bars{display:inline-flex;align-items:flex-end;gap:2px;height:16px}.ov-bars i{display:block;width:4px;border-radius:1px;background:var(--color-primary, #C0392B);opacity:.5}.ov-bars i:last-child{opacity:1}.wb-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:var(--space-4, 16px);background:#11182785;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.wb-panel{display:flex;flex-direction:column;width:100%;max-width:1320px;height:100%;max-height:880px;overflow:hidden;background:var(--canvas-paper, #FAFAFA);border:1px solid var(--hairline-strong, rgba(17, 24, 39, .14));border-radius:var(--radius-xl, 16px);box-shadow:var(--shadow-4, 0 24px 64px rgba(17, 24, 39, .28))}.wb-head{display:flex;flex-wrap:wrap;gap:var(--space-3, 12px);align-items:center;justify-content:space-between;flex:0 0 auto;padding:10px var(--space-4, 16px);background:var(--topbar-bg, rgba(255, 255, 255, .6));-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border-bottom:1px solid var(--hairline, rgba(17, 24, 39, .08))}.wb-head-l{display:flex;align-items:center;gap:var(--space-2, 8px);min-width:0}.wb-head-l b{font-size:var(--fs-14, 14px);color:var(--text-hi, #111827);white-space:nowrap}.wb-name{width:190px;padding:5px 9px;font-size:var(--fs-13, 13px);color:var(--text-hi, #111827);background:var(--field-bg, #fff);border:1px solid var(--glass-border, rgba(17, 24, 39, .12));border-radius:var(--radius-sm, 6px)}.wb-name:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary)}.wb-route{max-width:340px;padding:3px 10px;overflow:hidden;font-size:var(--fs-12, 12px);color:var(--text-mid, rgba(17, 24, 39, .64));white-space:nowrap;text-overflow:ellipsis;background:var(--brand-gold-soft, rgba(17, 24, 39, .06));border-radius:var(--radius-pill, 999px)}.wb-head-r{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2, 8px)}.wb-palette{display:inline-flex;gap:2px;padding:3px;background:var(--comp-bg, rgba(17, 24, 39, .05));border-radius:var(--radius-pill, 999px)}.wb-add{padding:4px 10px;font-size:var(--fs-12, 12px);color:var(--text-hi, #111827);white-space:nowrap;cursor:pointer;background:transparent;border:none;border-radius:var(--radius-pill, 999px);transition:background var(--dur-1, .12s) var(--ease-out, ease-out)}.wb-add:hover:not(:disabled){background:#fff;box-shadow:var(--shadow-1, 0 1px 3px rgba(17, 24, 39, .12))}.wb-add:disabled{cursor:not-allowed;opacity:.45}.wb-btn{padding:5px 12px;font-size:var(--fs-12, 12px);color:var(--text-hi, #111827);cursor:pointer;background:var(--ghost-bg, rgba(17, 24, 39, .04));border:1px solid var(--glass-border, rgba(17, 24, 39, .12));border-radius:var(--radius-sm, 6px);transition:background var(--dur-1, .12s) var(--ease-out, ease-out)}.wb-btn:hover:not(:disabled){background:var(--ghost-bg-hover, rgba(17, 24, 39, .08))}.wb-btn:disabled{cursor:not-allowed;opacity:.45}.wb-run{padding:6px 16px;font-size:var(--fs-13, 13px);font-weight:600;color:#fff;cursor:pointer;background:var(--brand-red, #C0392B);border:none;border-radius:var(--radius-sm, 6px);box-shadow:var(--shadow-brand, 0 4px 14px rgba(192, 57, 43, .28));transition:background var(--dur-1, .12s) var(--ease-out, ease-out)}.wb-run:hover:not(:disabled){background:var(--brand-red-hover, #A93226)}.wb-run:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}.wb-close{width:28px;height:28px;font-size:14px;color:var(--text-mid, rgba(17, 24, 39, .64));cursor:pointer;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm, 6px)}.wb-close:hover{color:var(--text-hi, #111827);background:var(--ghost-bg, rgba(17, 24, 39, .04))}.wb-body{display:flex;flex:1 1 auto;min-height:0}.wb-canvas{position:relative;flex:1 1 auto;min-width:0;overflow:auto;background-image:radial-gradient(rgba(17,24,39,.09) 1px,transparent 1px);background-size:16px 16px;background-position:0 0}.wb-edges{position:absolute;top:0;left:0;pointer-events:none;overflow:visible}.wb-edge{fill:none;stroke:var(--brand-gold, #9ca3af);stroke-width:2;opacity:.75}.wb-edge-dot{fill:var(--brand-red, #C0392B)}.wb-node{position:absolute;display:flex;gap:8px;align-items:center;height:68px;padding:8px 10px;cursor:grab;background:#fff;border:1px solid var(--glass-border, rgba(17, 24, 39, .12));border-left:4px solid var(--brand-red, #C0392B);border-radius:var(--radius-md, 10px);box-shadow:var(--shadow-2, 0 4px 14px rgba(17, 24, 39, .12));-webkit-user-select:none;user-select:none;transition:box-shadow var(--dur-1, .12s) var(--ease-out, ease-out)}.wb-node:active{cursor:grabbing}.wb-node.on{outline:2px solid var(--brand-red, #C0392B);outline-offset:1px}.wb-node-ico{flex:0 0 auto;font-size:var(--font-size-lg)}.wb-node-main{display:flex;flex-direction:column;gap:2px;min-width:0}.wb-node-title{font-size:var(--fs-13, 13px);font-weight:600;color:var(--text-hi, #111827)}.wb-node-sub{overflow:hidden;font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .44));white-space:nowrap;text-overflow:ellipsis}.wb-node-order{position:absolute;top:-8px;left:-8px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:var(--font-size-caption);font-weight:700;color:#fff;background:var(--text-mid, rgba(17, 24, 39, .64));border-radius:50%}.wb-node-badge{position:absolute;right:8px;bottom:-9px;padding:1px 7px;font-size:var(--font-size-caption);color:#fff;white-space:nowrap;background:var(--text-low, rgba(17, 24, 39, .44));border-radius:var(--radius-pill, 999px)}.wb-node.st-running{box-shadow:0 0 0 3px #11182729,var(--shadow-2, 0 4px 14px rgba(17, 24, 39, .12))}.wb-node.st-running .wb-node-badge{background:var(--brand-gold, #9ca3af);color:#111827}.wb-node.st-done{border-color:#4e7c5b66;border-left-color:#4e7c5b!important}.wb-node.st-done .wb-node-badge{background:var(--success, #4E7C5B)}.wb-node.st-error{border-color:#c0392b73}.wb-node.st-error .wb-node-badge{background:var(--error, #C0392B)}.wb-node.st-skipped{opacity:.5;border-style:dashed}.wb-node.st-skipped .wb-node-badge{background:var(--text-low, rgba(17, 24, 39, .44))}.wb-inspector{flex:0 0 322px;padding:var(--space-4, 16px);overflow-y:auto;background:#ffffff8c;border-left:1px solid var(--hairline, rgba(17, 24, 39, .08))}.wb-hint{font-size:var(--fs-13, 13px);line-height:1.7;color:var(--text-mid, rgba(17, 24, 39, .64))}.wb-ins-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.wb-ins-head b{font-size:var(--fs-14, 14px);color:var(--text-hi, #111827)}.wb-node-del{padding:3px 9px;font-size:var(--font-size-caption);color:var(--error, #C0392B);cursor:pointer;background:#c0392b12;border:none;border-radius:var(--radius-sm, 6px)}.wb-node-del:hover{background:#c0392b24}.wb-ins-desc{margin:6px 0 14px;font-size:var(--fs-12, 12px);color:var(--text-low, rgba(17, 24, 39, .44))}.wb-field{display:flex;flex-direction:column;gap:5px;margin-bottom:var(--space-3, 12px)}.wb-field>span{font-size:var(--fs-12, 12px);color:var(--text-mid, rgba(17, 24, 39, .64))}.wb-field input,.wb-field textarea,.wb-field select{width:100%;padding:6px 9px;font-family:inherit;font-size:var(--fs-13, 13px);color:var(--text-hi, #111827);background:var(--field-bg, #fff);border:1px solid var(--glass-border, rgba(17, 24, 39, .12));border-radius:var(--radius-sm, 6px);resize:vertical}.wb-field input:focus-visible,.wb-field textarea:focus-visible,.wb-field select:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary)}.wb-count{font-style:normal;color:var(--text-low, rgba(17, 24, 39, .44))}.wb-muted{color:var(--text-low, rgba(17, 24, 39, .44))}.wb-chips{display:flex;flex-wrap:wrap;gap:6px}.wb-chip{padding:4px 11px;font-size:var(--fs-12, 12px);color:var(--text-mid, rgba(17, 24, 39, .64));cursor:pointer;background:var(--ghost-bg, rgba(17, 24, 39, .04));border:1px solid transparent;border-radius:var(--radius-pill, 999px);transition:all var(--dur-1, .12s) var(--ease-out, ease-out)}.wb-chip:hover{background:var(--ghost-bg-hover, rgba(17, 24, 39, .08))}.wb-chip.on{color:#fff;background:var(--brand-red, #C0392B);border-color:var(--brand-red, #C0392B)}.wb-link-row{display:flex;gap:6px}.wb-link-row select{flex:1}.wb-link-btn,.wb-unlink-btn{flex:0 0 auto;padding:5px 12px;font-size:var(--fs-12, 12px);cursor:pointer;border:1px solid var(--glass-border, rgba(17, 24, 39, .12));border-radius:var(--radius-sm, 6px)}.wb-link-btn{color:#fff;background:var(--brand-red, #C0392B);border-color:var(--brand-red, #C0392B)}.wb-unlink-btn{color:var(--text-mid, rgba(17, 24, 39, .64));background:#fff}.wb-link-btn:disabled,.wb-unlink-btn:disabled{cursor:not-allowed;opacity:.4}.wb-result{margin-top:10px;padding:8px 10px;font-size:var(--fs-12, 12px);color:#3e6b4b;background:#4e7c5b1a;border-radius:var(--radius-sm, 6px)}.wb-result.err{color:var(--error, #C0392B);background:#c0392b17}.wb-img{margin-top:10px}.wb-img img{display:block;width:100%;border-radius:var(--radius-md, 10px)}.wb-img a{display:inline-block;margin-top:6px;font-size:var(--fs-12, 12px);color:var(--brand-red, #C0392B)}.wb-img-ph{display:flex;flex-direction:column;gap:4px;margin-top:10px;padding:12px;font-size:var(--fs-12, 12px);color:var(--text-mid, rgba(17, 24, 39, .64));text-align:center;background:var(--comp-bg, rgba(17, 24, 39, .05));border:1px dashed var(--glass-border, rgba(17, 24, 39, .12));border-radius:var(--radius-md, 10px)}.wb-img-ph small{font-size:var(--font-size-caption)}.wb-foot{flex:0 0 auto;padding:8px var(--space-4, 16px);font-size:var(--fs-12, 12px);background:var(--topbar-bg, rgba(255, 255, 255, .6));border-top:1px solid var(--hairline, rgba(17, 24, 39, .08))}.wb-ok{color:#3e6b4b}.wb-bad{display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:var(--error, #C0392B)}.wb-problem{padding:1px 8px;font-size:var(--font-size-caption);font-style:normal;color:var(--error, #C0392B);background:#c0392b14;border-radius:var(--radius-pill, 999px)}.wb-saved-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;align-items:center;justify-content:center;background:#11182766}.wb-saved{width:540px;max-width:calc(100vw - 32px);max-height:70vh;padding:var(--space-4, 16px);overflow-y:auto;background:#fff;border-radius:var(--radius-lg, 14px);box-shadow:var(--shadow-4, 0 24px 64px rgba(17, 24, 39, .28))}.wb-saved h3{margin-bottom:var(--space-3, 12px);font-size:var(--fs-16, 16px);color:var(--text-hi, #111827)}.wb-saved-item{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;padding:10px;border:1px solid var(--hairline, rgba(17, 24, 39, .08));border-radius:var(--radius-md, 10px)}.wb-saved-item+.wb-saved-item{margin-top:8px}.wb-saved-item b{font-size:var(--fs-13, 13px);color:var(--text-hi, #111827)}.wb-saved-item small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .44))}.wb-saved-acts{display:flex;gap:6px;grid-row:1 / span 2;grid-column:2}.wb-load-btn,.wb-del-btn{padding:4px 11px;font-size:var(--fs-12, 12px);cursor:pointer;border-radius:var(--radius-sm, 6px)}.wb-load-btn{color:#fff;background:var(--brand-red, #C0392B);border:none}.wb-del-btn{color:var(--text-mid, rgba(17, 24, 39, .64));background:#fff;border:1px solid var(--glass-border, rgba(17, 24, 39, .12))}.wb-load-btn:disabled,.wb-del-btn:disabled{cursor:not-allowed;opacity:.45}.admin-sider .ant-layout-sider-children{display:flex;flex-direction:column}.sb-head{display:flex;flex:0 0 auto;align-items:center;gap:10px;height:60px;padding:0 var(--space-4);border-bottom:1px solid var(--color-border)}.sb-head.is-rail{height:44px;justify-content:center;padding:0;border-bottom:none}.sb-logo{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:34px;height:34px;font-size:16px;font-weight:700;color:#fff;background:var(--color-brand);border-radius:var(--radius-lg)}.sb-title{flex:1 1 auto;min-width:0;overflow:hidden;font-size:var(--font-size-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-title);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis}.sb-toggle{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--color-text-secondary);cursor:pointer;background:transparent;border:none;border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.sb-toggle:hover{color:var(--color-text-primary);background:var(--color-fill-hover)}.sb-toggle:active{background:var(--color-fill-strong)}.sb-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sb-rail-toggle{display:flex;flex:0 0 auto;align-items:center;justify-content:center;padding:var(--space-1) 0;border-bottom:1px solid var(--color-border)}.sb-menu{flex:1 1 auto;min-height:0;padding:var(--space-4) var(--space-4) var(--space-3);overflow-y:auto}.sb-menu.is-rail{padding:var(--space-3) var(--space-2)}.sb-foot{display:flex;flex:0 0 auto;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--color-border)}.sb-foot.is-rail{align-items:center;padding:var(--space-3) 0}.sb-menu svg,.sb-toggle svg,.sb-rail-toggle svg{color:#1f1f1f!important;stroke:#1f1f1f!important}.pv-wrap{display:flex;flex-direction:column;align-items:center;gap:10px}.pv-wrap .phone{position:relative;display:flex;flex-direction:column;width:375px;max-height:74vh;min-height:480px;overflow:hidden}.pv-page{flex:1;min-height:0;overflow-y:auto}.pv-linkable{cursor:pointer;transition:opacity .12s}.pv-linkable:active{opacity:.8}.pv-nav{position:sticky;bottom:0}.pv-nav .cc-nav{cursor:pointer}.pv-toast{position:absolute;left:50%;bottom:78px;transform:translate(-50%);background:#111827db;color:#fff;font-size:12px;padding:6px 12px;border-radius:8px;max-width:86%;text-align:center;z-index:5}.pv-empty{text-align:center;color:#11182773;font-size:13px;padding:48px 0}.pv-foot{font-size:12px;color:#1118278c;text-align:center}.cc-seller{display:flex;flex-direction:column;gap:6px}.cc-seller>b{font-size:var(--fs-14, 14px);color:var(--canvas-paper-text, #111827)}.cc-seller.lz-two{display:grid;grid-template-columns:1fr 1fr}.cc-seller.lz-two>b{grid-column:1 / -1}.cc-seller-row{display:flex;align-items:center;gap:6px;min-width:0}.cc-seller-rank{flex:none;width:18px;height:18px;border-radius:5px;background:#1118270f;color:var(--text-mid, rgba(17, 24, 39, .64));font-size:var(--font-size-caption);font-weight:700;display:flex;align-items:center;justify-content:center}.cc-seller-row:nth-child(2) .cc-seller-rank{background:var(--color-primary);color:#fff}.cc-seller-name{flex:1;min-width:0;font-size:var(--fs-13, 13px);color:var(--canvas-paper-text, #111827);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-seller-meta{flex:none;font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-points{display:flex;flex-direction:column;gap:var(--space-2, 8px)}.cc-points-head{display:flex;align-items:center;justify-content:space-between;padding:12px;border-radius:var(--radius-md, 10px);color:#fff}.cc-points-head-l{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.cc-points-head-l small{font-size:var(--fs-11, 11px);opacity:.85}.cc-points-head-l b{font-size:var(--font-size-2xl);font-weight:800;line-height:1;letter-spacing:-.5px}.cc-points-head-l b:after{content:" 积分";font-size:var(--fs-11, 11px);font-weight:600;opacity:.85}.cc-points-src{font-style:normal;font-size:var(--font-size-caption);padding:1px 6px;border-radius:999px;background:#ffffff38}.cc-points-hist{font-size:var(--fs-11, 11px);opacity:.9;flex:none}.cc-points-tabs,.cc-points-types{display:flex;gap:6px;overflow-x:auto}.cc-points-types .chip i{font-style:normal;margin-left:4px;font-size:var(--font-size-caption);opacity:.65}.cc-points-empty{padding:18px 0;text-align:center;font-size:var(--fs-12, 12px);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-goods{display:grid;gap:var(--space-2, 8px);border-radius:var(--radius-md, 8px)}.cc-goods-card{display:flex;gap:var(--space-2, 8px);padding:var(--space-2, 8px);border:1px solid rgba(17,24,39,.05);border-radius:var(--radius-md, 8px);min-width:0}.cc-goods.lz-two .cc-goods-card{flex-direction:column}.cc-goods.lz-detail .cc-goods-card{align-items:center}.cc-goods-thumb{position:relative;width:100%;height:56px;flex:none;border-radius:6px;background:var(--cat-bg, rgba(17, 24, 39, .045));display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl)}.cc-goods.lz-detail .cc-goods-thumb{width:44px;height:44px;font-size:var(--font-size-lg)}.cc-goods.lz-one-wide .cc-goods-thumb{height:auto;aspect-ratio:2 / 1;font-size:var(--font-size-3xl)}.cc-goods-info{flex:1;gap:2px}.cc-goods-info b{font-size:var(--fs-13, 13px);line-height:1.4;color:var(--canvas-paper-text, #111827);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-goods-sub,.cc-goods-sales,.cc-goods-stock{font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-goods-foot{display:flex;align-items:center;gap:6px;margin-top:2px}.cc-goods-points{font-size:var(--fs-14, 14px);font-weight:700;white-space:nowrap}.cc-goods-points i{font-style:normal;font-size:var(--font-size-caption);font-weight:600;margin-left:2px}.cc-goods-mkt{font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .4));margin-right:auto}.cc-goods-btn{margin-left:auto;flex:none;height:22px;padding:0 10px;border-radius:999px;font-size:var(--fs-11, 11px);font-weight:600;display:inline-flex;align-items:center;border:1px solid transparent}.cc-goods-btn.outline{background:transparent;border-color:currentColor}.cc-goods-btn.text{background:transparent;padding:0 2px}.cc-incent{display:flex;flex-direction:column;gap:6px}.cc-incent>b{font-size:var(--fs-14, 14px);color:var(--canvas-paper-text, #111827)}.cc-incent>small{font-size:var(--fs-11, 11px);color:var(--text-mid, rgba(17, 24, 39, .55))}.cc-incent-days{display:flex;flex-wrap:wrap;gap:4px}.cc-incent-day{width:26px;height:26px;border-radius:6px;background:#1118270b;border:1px dashed rgba(17,24,39,.18);color:var(--text-mid, rgba(17, 24, 39, .6));font-size:var(--font-size-caption);display:flex;align-items:center;justify-content:center}.cc-incent-list{display:flex;flex-wrap:wrap;gap:6px}.cc-incent-box{width:38px;height:38px;border-radius:8px;background:#1118270b;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg)}.cc-store-head{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:var(--radius-md, 10px)}.cc-sh-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.cc-sh-id{display:flex;align-items:center;gap:6px;min-width:0}.cc-sh-name{font-size:var(--fs-16, 16px);font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-sh-table{flex:none;font-size:var(--font-size-caption);padding:1px 7px;border-radius:999px;background:#ffffff38;font-weight:600}.cc-sh-member{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-11, 11px);padding:2px 8px;border-radius:999px;background:#ffffff2e}.cc-sh-member i{font-style:normal}.cc-sh-member em{font-style:normal;font-size:var(--font-size-caption);opacity:.85}.cc-sh-sub{font-size:var(--font-size-caption);opacity:.8}.cc-sh-search{display:flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:999px;background:#ffffffeb;color:#11182780;font-size:var(--fs-12, 12px);border:0;width:100%;box-sizing:border-box}.cc-sh-search::placeholder{color:#11182773}.cc-combo{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:var(--radius-md, 10px);border:1px solid rgba(17,24,39,.06)}.cc-combo-cover{height:96px;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:var(--font-size-3xl)}.cc-combo-cover em{font-style:normal;font-size:var(--font-size-caption);color:#11182766}.cc-combo-head b{display:block;font-size:var(--fs-15, 15px);color:var(--canvas-paper-text, #111827)}.cc-combo-head small{font-size:var(--fs-11, 11px);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-combo-group{border-top:1px dashed rgba(17,24,39,.08);padding-top:6px}.cc-combo-gl{display:flex;align-items:baseline;justify-content:space-between}.cc-combo-gl b{font-size:var(--fs-12, 12px);color:var(--canvas-paper-text, #111827)}.cc-combo-gl small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-combo-opts{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.cc-combo-opt{font-size:var(--font-size-caption);padding:3px 8px;border-radius:999px;border:1px solid rgba(17,24,39,.12);background:transparent;color:var(--text-mid, rgba(17, 24, 39, .7));font-family:inherit;line-height:1.4}.cc-combo-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid rgba(17,24,39,.06);padding-top:8px}.cc-combo-price{display:flex;align-items:baseline;gap:5px;min-width:0;flex-wrap:wrap}.cc-combo-price b{font-size:var(--font-size-lg);font-weight:800}.cc-combo-price s{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .4))}.cc-combo-price small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-combo-price small.ok{color:#16a34a}.cc-combo-act{display:flex;align-items:center;gap:6px}.cc-combo-add{border:0;height:28px;padding:0 12px;border-radius:999px;color:#fff;font-size:var(--fs-12, 12px);font-weight:600;font-family:inherit;white-space:nowrap}.cc-step{display:inline-flex;align-items:center;gap:0}.cc-step button{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(17,24,39,.16);background:#fff;color:var(--canvas-paper-text, #111827);font-size:12px;line-height:1;font-family:inherit;padding:0}.cc-step span{min-width:20px;text-align:center;font-size:var(--fs-12, 12px)}.cc-step.style-round button{border-radius:50%}.cc-step.style-square button{border-radius:3px}.cc-step.style-pill{border:1px solid rgba(17,24,39,.16);border-radius:999px;overflow:hidden}.cc-step.style-pill button{border:0;border-radius:0}.cc-cart{display:flex;flex-direction:column;gap:8px}.cc-cart-head{display:flex;align-items:baseline;justify-content:space-between}.cc-cart-head b{font-size:var(--fs-15, 15px);color:var(--canvas-paper-text, #111827)}.cc-cart-head small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-cart-empty{padding:16px 0;text-align:center;font-size:var(--fs-12, 12px);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-cart-sec{border:1px solid rgba(17,24,39,.06);border-radius:8px;padding:6px 8px;background:#fff9}.cc-cart-sec-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px}.cc-cart-sec-h b{font-size:var(--fs-12, 12px);color:var(--canvas-paper-text, #111827)}.cc-cart-sec-h small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-cart-row{display:flex;align-items:center;gap:8px;padding:3px 0;min-width:0}.cc-cart-name{flex:1;min-width:0;font-size:var(--fs-13, 13px);color:var(--canvas-paper-text, #111827);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-cart-qty{flex:none;font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .5))}.cc-cart-amt{flex:none;min-width:36px;text-align:right;font-size:var(--fs-13, 13px)}.cc-cart-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid rgba(17,24,39,.08);padding-top:8px}.cc-cart-total{font-size:var(--fs-12, 12px);color:var(--text-mid, rgba(17, 24, 39, .7))}.cc-cart-total b{font-size:var(--font-size-lg);font-weight:800;margin-left:4px}.cc-cart-btns{display:flex;gap:6px}.cc-cart-btns button{height:28px;padding:0 12px;border-radius:999px;font-size:var(--fs-12, 12px);font-weight:600;font-family:inherit;border:1px solid rgba(17,24,39,.16);background:#fff;color:var(--canvas-paper-text, #111827)}.cc-cart-btns button.solid{border-color:transparent;color:#fff}.cc-bill{display:flex;flex-direction:column;gap:8px}.cc-bill-head{display:flex;align-items:center;justify-content:space-between}.cc-bill-head b{font-size:var(--fs-15, 15px);color:var(--canvas-paper-text, #111827)}.cc-bill-table{font-size:var(--font-size-caption);padding:2px 8px;border-radius:999px;background:#1118270f;color:var(--text-mid, rgba(17, 24, 39, .7))}.cc-bill-items{border:1px solid rgba(17,24,39,.06);border-radius:8px;padding:6px 8px}.cc-bill-items-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:2px}.cc-bill-items-h b{font-size:var(--fs-12, 12px);color:var(--canvas-paper-text, #111827)}.cc-bill-items-h small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-bill-row{display:flex;align-items:center;gap:6px;padding:2px 0}.cc-bill-name{flex:1;min-width:0;font-size:var(--fs-12, 12px);color:var(--text-mid, rgba(17, 24, 39, .8));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-bill-name em{font-style:normal;font-size:var(--font-size-caption);margin-left:4px;padding:0 4px;border-radius:3px;background:#1118270f;color:var(--text-low, rgba(17, 24, 39, .5))}.cc-bill-qty{flex:none;font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-bill-amt{flex:none;min-width:34px;text-align:right;font-size:var(--fs-12, 12px)}.cc-bill-pay{border:1px solid rgba(17,24,39,.06);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:8px}.cc-bill-pay-h{display:flex;align-items:center;justify-content:space-between}.cc-bill-pay-h b{font-size:var(--fs-12, 12px);color:var(--canvas-paper-text, #111827)}.cc-bill-modes{display:flex;gap:4px}.cc-bill-modes button{height:20px;padding:0 8px;border-radius:999px;border:1px solid rgba(17,24,39,.14);background:#fff;font-size:var(--font-size-caption);font-family:inherit;color:var(--text-mid, rgba(17, 24, 39, .7))}.cc-bill-mode-on{font-size:var(--font-size-caption);font-weight:600}.cc-bill-balance{display:flex;align-items:baseline;gap:6px}.cc-bill-balance small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-bill-balance b{font-size:var(--fs-16, 16px);font-weight:800;color:var(--canvas-paper-text, #111827)}.cc-bill-balance em{font-style:normal;font-size:var(--font-size-caption);padding:0 5px;border-radius:999px;background:#1118270f;color:var(--text-low, rgba(17, 24, 39, .5))}.cc-bill-deposit-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px}.cc-bill-deposit-h b{font-size:var(--font-size-caption);color:var(--canvas-paper-text, #111827)}.cc-bill-deposit-h small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-bill-tiers{display:grid;gap:6px}.cc-bill-tier{border:1px solid rgba(17,24,39,.12);border-radius:6px;background:#fff;padding:6px 4px;display:flex;flex-direction:column;align-items:center;gap:2px;font-family:inherit}.cc-bill-tier b{font-size:var(--font-size-caption);color:var(--canvas-paper-text, #111827)}.cc-bill-tier small{font-size:var(--font-size-caption);color:#d97706}.cc-bill-empty{padding:10px 0;text-align:center;font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45));border:1px dashed rgba(17,24,39,.12);border-radius:6px}.cc-bill-line{display:flex;align-items:center;gap:8px;font-size:var(--fs-12, 12px);color:var(--canvas-paper-text, #111827)}.cc-bill-line small{flex:1;font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-bill-line b{font-size:var(--fs-12, 12px)}.cc-bill-link{font-weight:500!important;color:var(--text-mid, rgba(17, 24, 39, .6))}.cc-bill-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;border-top:1px solid rgba(17,24,39,.08);padding-top:8px}.cc-bill-sums{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline}.cc-bill-sums div{display:flex;align-items:baseline;gap:4px}.cc-bill-sums small{font-size:var(--font-size-caption);color:var(--text-low, rgba(17, 24, 39, .45))}.cc-bill-sums span{font-size:var(--fs-12, 12px)}.cc-bill-payable b{font-size:var(--font-size-lg);font-weight:800}.cc-bill-cta{border:0;height:30px;padding:0 14px;border-radius:999px;color:#fff;font-size:var(--fs-12, 12px);font-weight:600;font-family:inherit;white-space:nowrap}.cc-title-blk{border-radius:10px}.cc-title-row{display:flex;flex-direction:column;gap:2px}.cc-title-blk.align-center .cc-title-row{align-items:center;text-align:center}.cc-title-blk.align-right .cc-title-row{align-items:flex-end;text-align:right}.cc-title-row b{line-height:1.3}.cc-title-row small{opacity:.62;line-height:1.4}.cc-title-row.decor-bar{border-left:3px solid currentColor;padding-left:8px}.cc-title-blk.align-right .cc-title-row.decor-bar{border-left:0;border-right:3px solid currentColor;padding-left:0;padding-right:8px}.cc-title-row.decor-underline b{display:inline-block;padding-bottom:4px;border-bottom:2px solid currentColor}.cc-banner2{position:relative;overflow:hidden;padding:12px;display:flex;align-items:flex-end;background-color:#e9e4dc}.cc-banner2-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000 30%,#0000006b)}.cc-banner2-badge{position:absolute;top:8px;right:8px;z-index:2;background:#00000061;color:#fff;font-size:var(--font-size-caption);padding:2px 8px;border-radius:10px}.cc-banner2-body{position:relative;z-index:2;display:flex;flex-direction:column;gap:4px;align-items:flex-start}.cc-banner2-body b{font-size:16px;line-height:1.25}.cc-banner2-body small{font-size:var(--font-size-caption);opacity:.88}.cc-banner2-btn{margin-top:2px;background:#ffffffeb;color:#111827;font-size:var(--font-size-caption);font-weight:700;padding:3px 10px;border-radius:12px}.cc-carousel2{position:relative;overflow:hidden;background-color:#e9e4dc}.cc-carousel2-title{position:absolute;left:10px;bottom:10px;z-index:2;color:#fff;font-size:12px;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.45)}.cc-carousel2-ind{position:absolute;right:10px;bottom:10px;z-index:2;display:flex;align-items:center;gap:4px}.cc-carousel2-ind i{display:block;width:5px;height:5px;border-radius:999px;background:#ffffff8c}.cc-carousel2-ind.bar i{width:10px;height:3px;border-radius:2px}.cc-carousel2-ind.bar i.on{width:16px}.cc-carousel2-num{font-size:var(--font-size-caption);color:#fff;background:#0006;padding:1px 7px;border-radius:9px}.cc-divider2{padding-left:2px;padding-right:2px}.cc-divider2-row{display:flex;align-items:center;gap:8px}.cc-divider2-row.align-left{justify-content:flex-start}.cc-divider2-row.align-right{justify-content:flex-end}.cc-divider2-line{flex:1;height:0;min-width:8px}.cc-divider2-row:not(:has(.cc-divider2-text)) .cc-divider2-line{flex:1 1 100%}.cc-divider2-text{font-size:12px;white-space:nowrap}.cc-detail2{display:flex;flex-direction:column;gap:6px}.cc-detail2-thumb{height:96px;border-radius:10px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);color:#11182773}.cc-detail2-title{font-size:var(--font-size-body);color:#111827}.cc-detail2-tags{display:flex;flex-wrap:wrap;gap:4px}.cc-tag{font-size:var(--font-size-caption);color:var(--color-primary);background:#c0392b14;border-radius:8px;padding:2px 7px;white-space:nowrap}.cc-detail2-line{display:flex;align-items:center;gap:6px;font-size:12px;color:#111827b3}.cc-detail2-line small{color:#11182773;flex-shrink:0}.cc-spicy{display:inline-flex;gap:2px}.cc-spicy i{font-style:normal;font-size:12px;opacity:.28;filter:grayscale(1)}.cc-spicy i.on{opacity:1;filter:none}.cc-detail2-foot{display:flex;align-items:center;justify-content:space-between}.cc-detail2-foot b{font-size:var(--font-size-lg);font-weight:800}.cc-detail2-cta{color:#fff;font-size:var(--font-size-caption);font-weight:700;padding:4px 12px;border-radius:12px}.cc-cta-block .cc-mode-line{color:#11182799}.cc-ai-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;justify-content:center}.cc-ai-tags i{font-style:normal;font-size:var(--font-size-caption);color:var(--color-primary);background:#c0392b14;border-radius:8px;padding:2px 7px}.cc-allergen{margin-top:8px;font-size:var(--font-size-caption);color:#6b7280;background:#1118271a;border-radius:8px;padding:5px 8px;line-height:1.4}.cc-promo-meta{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.cc-promo-meta b{font-size:var(--font-size-body);font-weight:800}.cc-promo-meta small{font-size:var(--font-size-caption);color:#11182780}.cc-promo-line{padding:8px 10px;border-radius:8px;flex-wrap:wrap}.cc-delivery-meta{margin-top:6px;font-size:var(--font-size-caption);color:#11182799}.cc-entry-row .cc-entry b{font-size:13px}.cc-entry-row .cc-entry small{font-size:var(--font-size-caption);color:#11182780}.cc-store-line{align-items:center;gap:6px;margin-top:4px}.cc-store-line b{font-size:14px;color:#111827}.cc-store-status{font-size:var(--font-size-caption);padding:1px 7px;border-radius:8px}.cc-store-status.open{color:#1e7a50;background:#1e7a501a}.cc-store-status.rest{color:#6b7280;background:#1118271a}.cc-navwrap{padding:10px 8px;border-radius:10px}.cc-qnav-grid{display:grid;gap:12px 6px}.cc-qnav-grid.cols3{grid-template-columns:repeat(3,1fr)}.cc-qnav-grid.cols4{grid-template-columns:repeat(4,1fr)}.cc-qnav-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;min-width:0}.cc-qnav-item b{font-size:var(--font-size-caption);font-weight:600;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cc-qnav-item small{font-size:var(--font-size-caption);opacity:.6;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cc-qnav-ico{width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);background:#ffffffe6}.cc-qnav-grid.shape-round .cc-qnav-ico{border-radius:11px}.cc-qnav-grid.shape-square .cc-qnav-ico{border-radius:2px}.cc-qnav-grid.shape-circle .cc-qnav-ico{border-radius:50%}.cc-mbanner{position:relative;overflow:hidden;border-radius:14px;padding:14px;display:flex;align-items:center;gap:10px;background-color:#16120f}.cc-mbanner-glow{position:absolute;right:-30px;top:-40px;width:120px;height:120px;border-radius:50%;background:#ffffff1f}.cc-mbanner-main{position:relative;z-index:2;flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.cc-mbanner-badge{align-self:flex-start;font-size:var(--font-size-caption);letter-spacing:.5px;padding:1px 7px;border-radius:8px;background:#fff3}.cc-mbanner-title{font-size:16px;line-height:1.25}.cc-mbanner-sub{font-size:var(--font-size-caption);opacity:.82}.cc-mbanner-coupon{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;margin-top:2px;font-size:var(--font-size-caption);padding:2px 8px;border-radius:9px;background:#ffffff29}.cc-mbanner-coupon em{font-style:normal;font-size:13px;font-weight:800}.cc-mbanner-coupon.none{background:transparent;border:1px dashed rgba(255,255,255,.45);opacity:.8}.cc-mbanner-cta{position:relative;z-index:2;flex-shrink:0;font-size:var(--font-size-caption);font-weight:700;padding:5px 12px;border-radius:999px}.cc-bking{border-radius:14px;padding:12px}.cc-bking-grid{display:grid;gap:8px}.cc-bking-grid.cols2{grid-template-columns:repeat(2,1fr)}.cc-bking-grid.cols3{grid-template-columns:repeat(3,1fr)}.cc-bking-card{position:relative;display:flex;flex-direction:column;gap:1px;padding:10px;min-width:0}.cc-bking-card.wide{grid-column:span 2}.cc-bking-card b{font-size:13px;font-weight:700}.cc-bking-card small{font-size:var(--font-size-caption);opacity:.7}.cc-bking-ico{font-size:var(--font-size-lg);line-height:1.2}.cc-bking-arrow{position:absolute;right:8px;bottom:6px;font-size:13px;opacity:.45}.cc-bking.style-dark{background:#16120f;color:#f5efe6}.cc-bking.style-dark .cc-bking-card{background:#221c17}.cc-bking.style-warm{background:#f6ede1;color:#6b3f1d}.cc-bking.style-warm .cc-bking-card{background:#fff9f1}.cc-bking.style-light{background:#fafafa;color:#111827}.cc-bking.style-light .cc-bking-card{background:#fff;box-shadow:0 1px 3px #11182714}.cc-welcome-head{flex-direction:row;align-items:baseline;justify-content:space-between;gap:6px}.cc-greeting{font-size:var(--font-size-caption);color:#11182780}.cc-welcome-title{font-size:var(--font-size-body);color:#111827}.cc-wgift-coupon{display:flex;align-items:center;gap:10px;margin-top:8px;padding:10px;border-radius:10px;border:1px dashed var(--color-primary);background:#c0392b0a}.cc-wgift-coupon.none{justify-content:center;border-color:#11182740;background:transparent}.cc-wgift-coupon.none small{font-size:var(--font-size-caption);color:#11182773}.cc-wgift-amt{display:flex;align-items:baseline;gap:1px;font-size:var(--font-size-xl);font-weight:800;line-height:1}.cc-wgift-amt em{font-style:normal;font-size:12px;font-weight:700}.cc-wgift-info{flex:1;min-width:0;display:flex;flex-direction:column}.cc-wgift-info b{font-size:13px;color:#111827}.cc-wgift-info small{font-size:var(--font-size-caption);color:#11182780}.cc-wgift-cta{flex-shrink:0;color:#fff;font-size:var(--font-size-caption);font-weight:700;padding:4px 12px;border-radius:999px}.cc-wgift-claimed{margin-top:6px;font-size:var(--font-size-caption);color:#11182773;text-align:right}.cc-notice-bar{display:flex;align-items:center;gap:6px;margin-top:8px;padding:6px 8px;border-radius:8px;background:#fafafa}.cc-notice-doc{font-size:12px}.cc-notice-bar small{flex:1;min-width:0;font-size:var(--font-size-caption);color:#11182799;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cc-notice-action{flex-shrink:0;font-size:var(--font-size-caption);color:var(--color-primary)}.cc-arrow{color:#1118274d;font-weight:400}.cc-unit{font-style:normal;font-size:var(--font-size-caption);font-weight:400;margin-left:2px;opacity:.65}.cc-qr-hint{padding:5px 12px 7px;font-size:var(--font-size-caption);color:#11182773;text-align:right}.cc-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:12px 4px}.cc-grid-item{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0}.cc-grid-ico{font-size:var(--font-size-lg);line-height:1.2}.cc-grid-item small{font-size:var(--font-size-caption);color:#1118279e;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cc-mbanner-guest{position:absolute;left:14px;top:10px;z-index:3;font-size:var(--font-size-caption);padding:1px 6px;border-radius:7px;background:#00000052;color:#ffffffe6}.cc-lchrome{min-width:0}.cc-lchrome-bar{display:flex;align-items:center;gap:6px;margin-bottom:8px}.cc-lchrome-cats{flex:1;min-width:0;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.cc-lchrome-cats::-webkit-scrollbar{display:none}.cc-lchrome-cats button{flex:none;height:24px;padding:0 10px;border-radius:12px;border:1px solid rgba(17,24,39,.12);background:#fff;color:#111827b8;font-size:var(--font-size-caption);line-height:1;cursor:pointer;white-space:nowrap;transition:all .15s ease}.cc-lchrome-cats button.on{background:var(--theme-primary, #C0392B);border-color:transparent;color:#fff;font-weight:600}.cc-lchrome-funnel{flex:none;height:24px;padding:0 8px;border-radius:12px;border:1px solid rgba(17,24,39,.12);background:#fff;color:#111827b8;font-size:var(--font-size-caption);line-height:1;cursor:pointer}.cc-lchrome-funnel.on,.cc-lchrome-funnel:hover{color:var(--theme-primary, #C0392B);border-color:var(--theme-primary, #C0392B)}.cc-lchrome-chips{display:flex;flex-wrap:wrap;gap:6px;margin:-2px 0 8px}.cc-lchrome-chips button{height:22px;padding:0 9px;border-radius:11px;border:1px dashed rgba(17,24,39,.22);background:#1118270a;color:#111827b8;font-size:var(--font-size-caption);line-height:1;cursor:pointer}.cc-lchrome-chips button.on{border-style:solid;border-color:var(--theme-primary, #C0392B);color:var(--theme-primary, #C0392B);background:#c0392b0f;font-weight:600}.cc-lchrome-chips button:disabled{opacity:.4;cursor:not-allowed}.lib-acc{display:flex;flex-direction:column;gap:6px;padding:2px 2px 12px}.lib-acc-cat{border:1px solid rgba(17,24,39,.08);border-radius:10px;background:#ffffffb8;overflow:hidden;transition:border-color .15s ease}.lib-acc-cat.open{border-color:#c0392b59;background:#fff}.lib-acc-head{display:flex;align-items:center;gap:7px;width:100%;height:34px;padding:0 10px;border:0;background:transparent;cursor:pointer;font-size:13px;color:var(--text-hi, #111827);text-align:left}.lib-acc-cat.open .lib-acc-head{font-weight:600;color:var(--brand-red, #C0392B)}.lib-acc-head:hover{background:#1118270a}.lib-acc-arrow{flex:none;width:12px;font-size:var(--font-size-caption);color:#11182773}.lib-acc-name{flex:1;min-width:0}.lib-acc-n{flex:none;min-width:18px;height:16px;padding:0 5px;border-radius:8px;background:#11182712;color:#11182799;font-size:var(--font-size-caption);line-height:16px;text-align:center}.lib-acc-cat.open .lib-acc-n{background:#c0392b1a;color:var(--brand-red, #C0392B)}.lib-acc-body{padding:2px 6px 8px;display:flex;flex-direction:column;gap:6px}.lib-acc-grp{border-radius:8px}.lib-acc-grp-h{display:flex;align-items:center;gap:6px;width:100%;height:28px;padding:0 8px;border:0;border-radius:8px;background:#1118270b;cursor:pointer;font-size:12px;color:#111827c7;text-align:left}.lib-acc-grp.open .lib-acc-grp-h{background:#c0392b12;color:var(--brand-red, #C0392B);font-weight:600}.lib-acc-grp-h:hover{background:#11182714}.lib-acc-grp-h .lib-acc-arrow{width:10px;font-size:var(--font-size-caption)}.lib-acc-list{display:flex;flex-direction:column;gap:6px;padding:6px 2px 2px 10px}.lib-acc-list .lib-item{padding-top:9px;padding-bottom:9px}.lib-cats{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:2px 10px 12px}.lib-cat-row{border:1px solid rgba(17,24,39,.08);border-radius:10px;background:#ffffffb8;transition:border-color .15s ease,background .15s ease}.lib-cat-row:hover{background:#fff}.lib-cat-row.open{border-color:#c0392b59;background:#fff}.lib-cat-row.open .lib-acc-head{font-weight:600;color:var(--brand-red, #C0392B)}.lib-cat-row.open .lib-acc-n{background:#c0392b1a;color:var(--brand-red, #C0392B)}.lib-fly{position:fixed;z-index:90;width:320px;max-height:min(600px,calc(100vh - 16px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--hairline, rgba(17, 24, 39, .08));border-radius:14px;box-shadow:0 12px 40px #10182829;animation:token-rise var(--dur-2, .2s) var(--ease-out) backwards}.lib-fly-head{display:flex;align-items:center;gap:8px;padding:12px 14px 8px}.lib-fly-head b{font-size:14px;color:var(--text-hi, #111827)}.lib-fly-n{font-size:var(--font-size-caption);color:#11182780}.lib-fly-close{margin-left:auto;width:22px;height:22px;border:0;border-radius:11px;background:transparent;color:#11182773;font-size:14px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.lib-fly-close:hover{background:#1118270f;color:var(--text-hi, #111827)}.lib-fly-body{flex:1;min-height:0;overflow-y:auto;padding:0 12px 12px;display:flex;flex-direction:column;gap:10px}.lib-fly-hint{font-size:var(--font-size-caption);line-height:1.55;color:#11182794;background:#1118270a;border-radius:8px;padding:6px 9px}.lib-fly-hint b{color:var(--brand-red, #C0392B)}.lib-fly-hint-vip{background:#1118270f}.lib-fly-grp-h{display:flex;align-items:center;gap:6px;padding:2px 2px 0;font-size:12px;font-weight:600;color:#111827c7}.lib-fly-grp-n{flex:none;min-width:16px;height:16px;padding:0 5px;border-radius:8px;background:#11182712;color:#11182799;font-size:var(--font-size-caption);font-weight:400;line-height:16px;text-align:center}.lib-fly-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lib-fly-grid .lib-item{margin-bottom:0;padding:9px 10px;background:#fff;border-color:#1118271f}.lib-fly-grid .lib-item:hover{background:#fff}.lib-fly,.lib-fly .lib-name,.lib-fly .lib-empty{color:#111827}.lib-fly .lib-empty{color:#11182780}.lib-fly-grid .lib-name{font-size:12.5px}.dish-admin-stat{font-size:12px;color:#8a8a8a}.dish-chrome{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dish-cats{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1;min-width:0}.dish-cat{border:1px solid #e5e7eb;background:#fff;color:#374151;border-radius:999px;padding:5px 12px;font-size:13px;line-height:18px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.dish-cat:hover{border-color:#d1d5db}.dish-cat.on{background:#c0392b12;border-color:var(--brand-red, #C0392B);color:var(--brand-red, #C0392B);font-weight:600}.dish-cat-n{margin-left:6px;font-size:var(--font-size-caption);color:#9ca3af;font-weight:400}.dish-cat.on .dish-cat-n{color:var(--brand-red, #C0392B)}.dish-funnel{border:1px solid #e5e7eb;background:#fff;color:#374151;border-radius:999px;height:30px;padding:0 14px;font-size:13px;display:inline-flex;align-items:center;gap:6px}.dish-funnel:hover{border-color:#d1d5db;color:#374151;background:#fff}.dish-funnel.on{border-color:var(--brand-red, #C0392B);color:var(--brand-red, #C0392B);background:#c0392b0f}.dish-funnel-n{min-width:16px;height:16px;line-height:16px;border-radius:8px;background:var(--brand-red, #C0392B);color:#fff;font-size:var(--font-size-caption);padding:0 4px}.dish-filterbar{margin-top:12px;padding:10px 12px;background:#fafafa;border:1px solid #f1ece4;border-radius:10px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.dish-chk{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#4b5563;cursor:pointer}.dish-chk input{accent-color:var(--brand-red, #C0392B)}.dish-filter-count{margin-left:auto;font-size:12px;color:#8a8a8a}.dish-grid{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.dish-card{border:1px solid #f3f4f6;border-radius:12px;background:#fff;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .16s ease,border-color .16s ease}.dish-card:hover{box-shadow:var(--card-shadow);border-color:#d1d5db}.dish-card-img{position:relative;aspect-ratio:1 / 1;background:#f9fafb;display:grid;place-items:center;overflow:hidden}.dish-card-img img{width:100%;height:100%;object-fit:cover;display:block}.dish-card-img>span{font-size:12px;color:#d1d5db}.dish-card-badge{position:absolute;top:8px;left:8px;background:#c0392beb;color:#fff;font-size:var(--font-size-caption);font-style:normal;line-height:18px;padding:0 7px;border-radius:4px}.dish-card-badge.soldout{left:auto;right:8px;background:#111827b8}.dish-card-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:5px}.dish-card-name{font-size:14px;font-weight:600;color:var(--color-text-strong, #1F2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dish-card-sub{font-size:12px;color:#8a8a8a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dish-card-price{font-size:14px;font-weight:600;color:var(--brand-red, #C0392B)}.dish-card-price>span{font-size:var(--font-size-caption);font-weight:400;color:#9ca3af}.dish-card-unpriced{font-size:12px;font-weight:400;color:#9ca3af}.dish-card-flags{display:flex;flex-wrap:wrap;gap:4px;min-height:20px}.dish-card-flags .ant-tag{margin:0;font-size:var(--font-size-caption);line-height:18px}.dish-card-ops{display:flex;gap:6px;margin-top:2px}.dish-img-edit{display:flex;gap:12px;align-items:flex-start}.dish-img-box{width:96px;height:96px;border-radius:10px;background:#f9fafb;display:grid;place-items:center;overflow:hidden;flex:none}.dish-img-box img{width:100%;height:100%;object-fit:cover;display:block}.dish-img-box>span{font-size:var(--font-size-caption);color:#d1d5db}.dish-opt-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.dish-opt-thumb{width:40px;height:40px;border-radius:8px;background:#f9fafb;display:grid;place-items:center;overflow:hidden;flex:none}.dish-opt-thumb img{width:100%;height:100%;object-fit:cover;display:block}.dish-opt-thumb>span{font-size:var(--font-size-caption);color:#d1d5db}.dish-nutri-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.dish-nutri-cell{display:flex;align-items:center;gap:6px;min-width:0}.dish-nutri-label{flex:none;width:72px;font-size:13px;color:#4b5563}.dish-nutri-unit{flex:none;font-size:var(--font-size-caption);color:#9ca3af;white-space:nowrap}.dish-side-thumb{position:relative;width:64px;height:64px;border-radius:8px;overflow:hidden;background:#f9fafb}.dish-side-thumb img{width:100%;height:100%;object-fit:cover;display:block}.dish-side-thumb>button{position:absolute;top:2px;right:2px;width:16px;height:16px;line-height:14px;border:none;border-radius:50%;background:#c0392be6;color:#fff;font-size:var(--font-size-caption);cursor:pointer;padding:0}.cat-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #f3f4f6;border-radius:8px;cursor:pointer;transition:all .14s ease;background:#fff}.cat-row:hover{border-color:#d1d5db;background:#fafafa}.cat-row.on{border-color:var(--brand-red, #C0392B);background:#c0392b0d}.cat-row-icon{width:18px;text-align:center;flex:none;font-size:14px;color:#9ca3af}.cat-row-name{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--color-text-strong, #1F2937);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-row-count{font-size:12px;color:#9ca3af;flex:none}.cat-row-ops{display:flex;align-items:center;gap:2px;flex:none}.cat-mini{width:22px;height:22px;border:none;border-radius:5px;background:transparent;color:#9ca3af;font-size:var(--font-size-caption);cursor:pointer;padding:0;line-height:1}.cat-mini:hover{background:#f2ece3;color:#374151}.cat-mini.on{background:#c0392b1a;color:var(--brand-red, #C0392B)}.cat-mini:disabled{opacity:.35;cursor:not-allowed}.cat-mini.danger:hover{background:#c0392b1f;color:var(--brand-red, #C0392B)}.spec-editor{padding-bottom:8px}.spec-group{border:1px solid #e5e7eb;border-radius:10px;background:#fff;padding:10px 12px;margin-bottom:10px}.spec-group-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spec-mini{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#4b5563;white-space:nowrap}.spec-rule{font-size:var(--font-size-caption);color:#9ca3af}.spec-opts{margin-top:10px}.spec-opt{display:grid;grid-template-columns:1.2fr 100px 1.2fr 52px 34px;align-items:center;gap:6px;margin-bottom:6px}.spec-opt-head{font-size:var(--font-size-caption);color:#9ca3af;margin-bottom:4px}.spec-preview{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:10px;padding-top:8px;border-top:1px dashed #e5e7eb}.spec-preview>span:first-child{font-size:var(--font-size-caption);color:#9ca3af;flex:none}.spec-preview .chip{border-color:#d1d5db;color:#6b7280;background:#fff;font-size:12px}.spec-preview .chip.on{border-color:var(--brand-red, #C0392B);color:var(--brand-red, #C0392B);background:#c0392b0f}.spec-sync{display:flex;align-items:flex-start;gap:8px;margin-top:14px;font-size:12px;color:#4b5563;line-height:1.6}.spec-sync small{display:block;color:#9ca3af}.dish-ai-hint{font-size:12px;color:#9ca3af;line-height:1.5}.dish-ai-tools{margin-top:6px;padding:12px;border:1px dashed #e5e7eb;border-radius:10px;background:#fff}.dish-ai-tools-head{font-size:12px;font-weight:600;color:#4b5563;margin-bottom:8px}.dish-ai-out{margin:10px 0 0;padding:10px;max-height:220px;overflow:auto;background:#1f2937;color:#e5e7eb;border-radius:8px;font-size:var(--font-size-caption);line-height:1.5;white-space:pre-wrap;word-break:break-all}.bulk-hint{font-size:12px;color:#9ca3af}.bulk-dim{color:#9ca3af}.bulk-input textarea,.bulk-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.bulk-cols-wrap{margin:8px 0 12px;font-size:12px}.bulk-cols-wrap summary{cursor:pointer;color:#4b5563;-webkit-user-select:none;user-select:none}.bulk-cols{width:100%;border-collapse:collapse;margin-top:8px}.bulk-cols th,.bulk-cols td{border-bottom:1px solid #f3f4f6;padding:5px 8px;text-align:left;vertical-align:top}.bulk-cols th{background:#fafafa;font-weight:600;color:#4b5563}.bulk-check{margin-top:4px}.bulk-stat{font-size:12px;color:#4b5563}.bulk-stat b{color:#111827}.bulk-stat b.bad{color:var(--brand-red, #C0392B)}.bulk-errs{margin:8px 0 0;padding-left:18px;font-size:12px;color:#b42318;max-height:160px;overflow:auto;line-height:1.7}div.bulk-errs{padding-left:0}.bulk-preview-wrap{margin-top:10px;overflow-x:auto}.bulk-preview{border-collapse:collapse;font-size:12px}.bulk-preview th,.bulk-preview td{border:1px solid #f3f4f6;padding:4px 8px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.bulk-preview th{background:#fafafa;font-weight:600;color:#4b5563}.bulk-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #f3f4f6}.ful-stats{margin-bottom:12px}.ful-stat{border-radius:var(--radius-lg)}.ful-stat.is-warn{border-color:#f3c9c2;background:#fff}.ful-stat-sub{margin-top:2px;font-size:12px;color:#9ca3af;display:flex;align-items:center}.ful-switch{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#4b5563}.ful-list{display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 300px);overflow:auto;padding-right:2px}.ful-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #f3f4f6;border-left:3px solid #d1d5db;border-radius:var(--radius-md, 10px);background:#fff;transition:box-shadow var(--duration-fast, .15s) var(--ease-standard, ease)}.ful-row:hover{box-shadow:0 2px 10px #1118270f}.ful-row.is-duesoon{border-left-color:#9ca3af;background:#fafafa}.ful-row.is-overdue{border-left-color:var(--brand-red, #C0392B);background:#fff}.ful-row.is-done{opacity:.62}.ful-row-time{width:92px;flex:none;display:flex;flex-direction:column;line-height:1.3}.ful-row-time b{font-size:var(--font-size-lg);font-variant-numeric:tabular-nums;color:#111827}.ful-row-time span{font-size:var(--font-size-caption);color:#9ca3af}.ful-row.is-overdue .ful-row-time span{color:var(--brand-red, #C0392B);font-weight:600}.ful-row.is-duesoon .ful-row-time span{color:#6b7280}.ful-row-main{flex:1;min-width:0}.ful-row-title{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ful-row-title b{font-size:14px;color:#111827}.ful-qty{font-size:12px;color:#9ca3af}.ful-row-sub{margin-top:3px;font-size:12px;color:#9ca3af}.ful-order{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-size-caption);color:#6b665f;cursor:pointer;border-bottom:1px dashed #d1d5db}.ful-order:hover{color:var(--brand-red, #C0392B)}.ful-row-act{flex:none}.ful-dim{font-size:12px;color:#9ca3af;line-height:1.8}.ful-load{display:flex;flex-direction:column;gap:8px}.ful-load-row{display:flex;align-items:center;gap:8px;font-size:12px}.ful-load-name{width:44px;flex:none;color:#4b5563}.ful-load-bar{flex:1;height:6px;background:#f3efe9;border-radius:3px;overflow:hidden}.ful-load-bar i{display:block;height:100%;background:#d1d5db;border-radius:3px}.ful-load-bar i.is-risk{background:var(--brand-red, #C0392B)}.ful-load-num{width:60px;text-align:right;color:#4b5563;font-variant-numeric:tabular-nums}.ful-load-num em{font-style:normal;color:var(--brand-red, #C0392B)}.ful-risk{display:flex;flex-direction:column;gap:6px}.ful-risk-row{display:flex;align-items:center;gap:8px;font-size:12px;color:#4b5563}.ful-risk-row b{font-variant-numeric:tabular-nums;color:#111827}.ful-risk-row span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ful-risk-row em{font-style:normal;font-size:var(--font-size-caption);color:#9ca3af}.ful-risk-row.is-overdue em{color:var(--brand-red, #C0392B);font-weight:600}.ful-risk-row.is-duesoon em{color:#6b7280}.ful-note{margin-top:12px;padding-top:10px;border-top:1px dashed #f3f4f6;font-size:var(--font-size-caption);color:#9ca3af;line-height:1.7}.ful-tl{position:relative;padding-left:4px}.ful-tl-node{position:relative;display:flex;gap:12px;padding:0 0 22px 18px}.ful-tl-node:before{content:"";position:absolute;left:5px;top:14px;bottom:0;width:1px;background:#e5e7eb}.ful-tl-node:last-child:before{display:none}.ful-tl-node i{position:absolute;left:0;top:5px;width:11px;height:11px;border-radius:50%;background:#e5e7eb;border:2px solid #fff;box-shadow:0 0 0 1px #e5e7eb}.ful-tl-node b{display:block;font-size:13px;color:#9ca3af;font-weight:500}.ful-tl-node span{font-size:12px;color:#9ca3af;font-variant-numeric:tabular-nums}.ful-tl-node.is-done i{background:#2f9e5f;box-shadow:0 0 0 1px #2f9e5f}.ful-tl-node.is-done b{color:#111827}.ful-tl-node.is-done span{color:#6b665f}.ful-tl-node.is-active i{background:var(--brand-red, #C0392B);box-shadow:0 0 0 1px var(--brand-red, #C0392B),0 0 0 4px #c0392b1f}.ful-tl-node.is-active b{color:var(--brand-red, #C0392B);font-weight:700}.ful-tl-node.is-active span{color:var(--brand-red, #C0392B)}.dish-sop-row{display:flex;align-items:center;gap:10px}.dish-sop-preview{margin-top:10px;padding:10px 12px;background:#fafafa;border-radius:var(--radius-md, 10px);font-size:12px;color:#4b5563;line-height:1.8}.dish-sop-preview b{color:#111827}.ful-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:8px 12px;background:#fff;border:1px solid #f3f4f6;border-radius:var(--radius-lg)}.ful-bar-label,.ful-bar-hint{font-size:12px;color:#9ca3af}:root{--raw-red-50: #FDF2F0;--raw-red-100: #FBDFDA;--raw-red-200: #F3B9AE;--raw-red-300: #E06A5A;--raw-red-400: #D25546;--raw-red-500: #C0392B;--raw-red-600: #A93226;--raw-red-700: #96281B;--raw-gold-500: #D4AF37;--raw-gold-700: #8A6D10;--raw-teal-500: #00B4A0;--raw-teal-700: #00776B;--raw-green-50: #ECFDF3;--raw-green-500: #12A150;--raw-green-700: #0B7A42;--raw-amber-50: #FFFAEB;--raw-amber-500: #FAAD14;--raw-amber-700: #B45309;--raw-danger-50: #FEF3F2;--raw-danger-500: #F04438;--raw-danger-700: #B42318;--raw-blue-50: #EFF8FF;--raw-blue-500: #2E90FA;--raw-blue-700: #0958D9;--raw-neutral-50: #F9FAFB;--raw-neutral-100: #F3F4F6;--raw-neutral-200: #E5E7EB;--raw-neutral-300: #D1D5DB;--raw-neutral-400: #9CA3AF;--raw-neutral-450: #8A92A0;--raw-neutral-500: #6B7280;--raw-neutral-600: #4B5563;--raw-neutral-700: #374151;--raw-neutral-800: #1F2937;--raw-neutral-900: #111827;--raw-white: #FFFFFF;--color-primary: var(--raw-red-500);--color-primary-hover: var(--raw-red-600);--color-primary-active: var(--raw-red-700);--color-primary-tint: var(--raw-red-100);--color-primary-tint-weak: var(--raw-red-50);--color-primary-ink: var(--raw-red-700);--color-on-primary: var(--raw-white);--color-brand-decor: #EB483F;--color-success: var(--raw-green-500);--color-success-ink: var(--raw-green-700);--color-success-bg: var(--raw-green-50);--color-success-border: #A9EFC5;--color-warning: var(--raw-amber-500);--color-warning-ink: var(--raw-amber-700);--color-warning-bg: var(--raw-amber-50);--color-warning-border: #FEDF89;--color-danger: var(--raw-danger-500);--color-danger-ink: var(--raw-danger-700);--color-danger-bg: var(--raw-danger-50);--color-danger-border: #FECDCA;--color-info: var(--raw-blue-500);--color-info-ink: var(--raw-blue-700);--color-info-bg: var(--raw-blue-50);--color-info-border: #B2DDFF;--color-text-title: var(--raw-neutral-900);--color-text-primary: var(--raw-neutral-800);--color-text-secondary: var(--raw-neutral-600);--color-text-tertiary: var(--raw-neutral-500);--color-text-placeholder: var(--raw-neutral-450);--color-text-disabled: var(--raw-neutral-400);--color-text-inverse: var(--raw-white);--color-text-link: var(--raw-neutral-800);--color-text-link-hover: var(--raw-red-500);--color-icon: var(--raw-neutral-600);--color-icon-weak: var(--raw-neutral-400);--color-border: var(--raw-neutral-200);--color-border-subtle: var(--raw-neutral-100);--color-border-control: var(--raw-neutral-450);--color-divider: var(--raw-neutral-200);--color-bg-page: #F5F7FA;--color-bg-container: var(--raw-white);--color-bg-elevated: var(--raw-white);--color-bg-subtle: var(--raw-neutral-50);--color-bg-hover: var(--raw-neutral-100);--color-bg-selected: #EEEEF1;--color-bg-mask: rgba(17,24,39,.45);--color-focus-ring: rgba(192,57,43,.35);--button-primary-bg: var(--color-primary);--button-primary-bg-hover: var(--color-primary-hover);--button-primary-bg-active: var(--color-primary-active);--button-primary-fg: var(--color-on-primary);--button-primary-shadow: 0 2px 6px rgba(192,57,43,.2);--button-default-bg: var(--color-bg-container);--button-default-border: var(--color-border-control);--button-default-fg: var(--color-text-primary);--button-text-fg: var(--color-text-link);--button-text-bg-hover: var(--color-primary-tint-weak);--button-disabled-bg: var(--color-bg-hover);--button-disabled-fg: var(--color-text-disabled);--button-height-sm: 24px;--button-height-md: 32px;--button-height-lg: 40px;--button-danger-bg: #B42318;--button-danger-bg-hover: #9F1D14;--button-danger-bg-active: #8A1A11;--button-danger-fg: var(--raw-white);--card-bg: var(--color-bg-container);--card-radius: var(--radius-lg);--card-border: 1px solid var(--color-border);--card-shadow: var(--shadow-sm);--card-padding: var(--space-5);--input-bg: var(--color-bg-container);--input-border: var(--color-border-control);--input-border-hover: var(--color-text-tertiary);--input-border-focus: var(--color-primary);--input-radius: var(--radius-md);--input-height: 32px;--input-ring: 0 0 0 3px var(--color-focus-ring);--table-header-bg: var(--color-bg-subtle);--table-header-fg: var(--color-text-secondary);--table-row-hover-bg: var(--color-primary-tint-weak);--table-row-selected-bg: var(--color-primary-tint);--table-border: var(--color-border);--table-row-height: 40px;--table-cell-padding: 10px 14px;--nav-bg: #FAFAFC;--nav-item-fg: var(--color-text-primary);--nav-item-hover-bg: var(--color-bg-hover);--nav-item-active-bg: var(--color-bg-selected);--nav-item-active-fg: var(--color-text-primary);--nav-item-height: 36px;--nav-item-radius: var(--radius-md);--tag-bg: var(--color-bg-hover);--tag-fg: var(--color-text-secondary);--tag-radius: var(--radius-full);--tag-height: 20px;--skeleton-base: var(--color-bg-hover);--skeleton-shine: var(--color-border);--font-size-caption: 12px;--font-size-compact: 13px;--font-size-body: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--font-size-4xl: 40px;--line-height-caption: 18px;--line-height-compact: 20px;--line-height-body: 22px;--line-height-lg: 24px;--line-height-xl: 28px;--line-height-2xl: 32px;--line-height-3xl: 40px;--line-height-4xl: 48px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-family-ui: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", -apple-system, "Segoe UI", sans-serif;--font-family-num: "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;--font-family-brand: "Noto Serif SC", "Source Han Serif SC", serif;--letter-spacing-tight: -.01em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(16,24,40,.06);--shadow-md: 0 4px 12px rgba(16,24,40,.08);--shadow-lg: 0 12px 32px rgba(16,24,40,.12);--shadow-xl: 0 24px 64px rgba(16,24,40,.16);--shadow-brand: 0 2px 6px rgba(192,57,43,.2);--duration-fast: .15s;--duration-normal: .24s;--duration-slow: .32s;--ease-standard: cubic-bezier(.2, .8, .4, 1);--ease-decelerate: cubic-bezier(0, 0, .2, 1);--ease-accelerate: cubic-bezier(.4, 0, 1, 1);--duration-toast-success: 2s;--duration-toast-info: 3s;--duration-toast-error: 5s;--duration-toast-undo: 8s;--z-base: 0;--z-sticky: 10;--z-canvas-overlay: 20;--z-sider: 30;--z-header: 40;--z-app-overlay: 90;--z-popup: 1000;--z-message: 1010;--z-guide: 1200;--z-debug: 9999;--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1100px;--bp-xl: 1280px;--layout-sider: 280px;--layout-sider-rail: 72px;--layout-header: 56px;--layout-content-max: 1280px;--layout-gutter: 24px}:root{--color-brand-decor-soft: var(--raw-red-300);--gradient-brand: linear-gradient(135deg, #C0392B 0%, #E07B39 100%);--gradient-hero: linear-gradient(135deg, #C0392B 0%, #E07B39 55%, #E8B64C 100%);--gradient-card-warm: linear-gradient(180deg, #FFFFFF 0%, #FBF7F1 100%);--bg-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E")}:root{--brand-red: var(--color-primary);--brand-red-hover: var(--color-primary-hover);--brand-red-deep: var(--color-primary-active);--brand-gold: #9CA3AF;--brand-gold-soft: rgba(17,24,39,.06);--brand-gold-ink: var(--raw-gold-700);--color-brand: var(--color-primary);--color-brand-hover: var(--color-primary-hover);--color-brand-active: var(--color-primary-active);--color-brand-bg: var(--color-primary-tint);--color-primary-light: var(--color-brand-decor-soft);--color-primary-dark: var(--color-primary-active);--color-primary-border: var(--raw-red-200);--color-gold: var(--raw-gold-500);--color-gold-light: #E8C15A;--color-gold-dark: #B8942E;--color-secondary: var(--raw-teal-500);--success: var(--color-success-ink);--error: var(--color-danger-ink);--color-error: var(--color-danger-ink);--color-error-bg: var(--color-danger-bg);--color-text-strong: var(--color-text-title);--color-text-muted: var(--color-text-tertiary);--text-hi: var(--color-text-title);--text-mid: var(--color-text-secondary);--text-low: var(--color-text-tertiary);--color-bg-card: var(--color-bg-container);--color-bg-muted: var(--color-bg-subtle);--color-bg-scrim: var(--color-primary-tint-weak);--color-bg-sidebar: var(--nav-bg);--color-border-soft: var(--color-border-subtle);--color-border-strong: var(--color-border-control);--color-border-light: var(--color-border-subtle);--color-fill-hover: var(--color-bg-hover);--color-fill-selected: var(--color-bg-selected);--color-fill-strong: var(--raw-neutral-200);--hairline: var(--color-border);--hairline-strong: var(--raw-neutral-300);--space-xs: var(--space-1);--space-sm: var(--space-2);--space-md: var(--space-3);--space-lg: var(--space-4);--space-xl: var(--space-6);--space-2xl: var(--space-7);--space-3xl: var(--space-9);--space-4xl: var(--space-10);--font-xs: var(--font-size-caption);--font-sm: var(--font-size-compact);--font-md: var(--font-size-body);--font-lg: var(--font-size-lg);--font-xl: var(--font-size-xl);--font-2xl: var(--font-size-2xl);--font-3xl: var(--font-size-3xl);--font-4xl: var(--font-size-4xl);--font-xxl: var(--font-size-2xl);--fs-12: var(--font-size-caption);--fs-13: var(--font-size-compact);--fs-14: var(--font-size-body);--fs-16: var(--font-size-lg);--fs-20: var(--font-size-xl);--fs-24: var(--font-size-2xl);--fs-32: var(--font-size-3xl);--fs-40: var(--font-size-4xl);--fs-11: var(--font-size-caption);--fs-15: var(--font-size-lg);--font-size-subtitle: var(--font-size-lg);--font-size-title: var(--font-size-xl);--font-ui: var(--font-family-ui);--font-family: var(--font-family-ui);--font-brand: var(--font-family-brand);--font-weight-normal: var(--font-weight-regular);--line-height-subtitle: var(--line-height-lg);--line-height-title: var(--line-height-xl);--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-loose: 1.75;--shadow-1: var(--shadow-sm);--shadow-2: var(--shadow-md);--shadow-3: var(--shadow-lg);--shadow-4: var(--shadow-xl);--shadow-dropdown: var(--shadow-md);--shadow-modal: var(--shadow-lg);--dur-1: var(--duration-fast);--dur-2: var(--duration-normal);--dur-3: var(--duration-slow);--ease-out: var(--ease-standard);--ease-in-out: var(--ease-standard);--transition-base: all var(--duration-normal) var(--ease-standard);--button-primary-color: var(--button-primary-fg);--button-default-color: var(--button-default-fg);--button-text-color: var(--button-text-fg);--button-disabled-color: var(--button-disabled-fg);--button-primary-radius: var(--radius-md);--button-active-scale: .98;--card-shadow-hover: var(--shadow-lg);--card-transition: transform var(--duration-normal) var(--ease-standard), box-shadow var(--duration-normal) var(--ease-standard);--data-card-bg: var(--card-bg);--data-card-radius: var(--card-radius);--data-card-shadow: var(--card-shadow);--data-card-shadow-hover: var(--shadow-md);--data-card-value-size: var(--font-size-2xl);--trend-up-color: var(--color-success-ink);--trend-down-color: var(--color-danger-ink);--spark-line-color: var(--color-primary);--table-header-color: var(--table-header-fg);--table-zebra-bg: var(--color-bg-subtle);--table-radius: var(--radius-lg);--table-sticky-action-bg: var(--color-bg-container);--input-focus-shadow: var(--input-ring);--input-placeholder-color: var(--color-text-placeholder);--nav-active-color: var(--nav-item-active-fg);--nav-active-bg: var(--nav-item-active-bg);--nav-radius: var(--nav-item-radius);--tag-color: var(--tag-fg);--skeleton-bg: linear-gradient(90deg, var(--color-bg-hover) 25%, #ECEEF1 37%, var(--color-bg-hover) 63%);--skeleton-radius: var(--radius-sm);--layout-max-width: var(--layout-content-max);--layout-sider-width: var(--layout-sider);--layout-content-gutter: var(--layout-gutter);--layout-card-padding: var(--space-5);--layout-block-gap: var(--space-9);--layout-block-gap-lg: 80px;--sidebar-width: var(--layout-sider);--menu-item-height: var(--nav-item-height);--menu-icon-size: 20px;--menu-item-gap: var(--space-1);--count-card-height: 42px;--count-card-width: 50px;--divider-size: 1px;--cta-height: 32px;--radius-pill: var(--radius-full);--opacity-80: .8;--popover-padding: 16px 12px 12px;--guide-card-width: 320px;--guide-card-radius: var(--radius-lg);--guide-card-shadow: var(--shadow-md);--app-bg: #F3F4F6;--ambient: radial-gradient(560px 420px at 12% -6%, rgba(17,24,39,.04), transparent 65%), radial-gradient(640px 480px at 96% 108%, rgba(17,24,39,.03), transparent 65%);--canvas-paper: #FFFFFF;--canvas-paper-text: #111827;--glass-border-hi: rgba(255,255,255,.95);--glass-inner: inset 0 1px 0 rgba(255,255,255,.9);--topbar-bg: linear-gradient(180deg, rgba(255,255,255,.75), rgba(255,255,255,.5));--field-bg-focus: rgba(255,255,255,.95);--ghost-bg: rgba(255,255,255,.6);--ghost-bg-hover: rgba(255,255,255,.95);--cat-bg: rgba(17,24,39,.05);--comp-bg: rgba(255,255,255,.55);--comp-bg-hover: rgba(255,255,255,.95);--tab-add-bg: rgba(255,255,255,.6);--phone-glow: 0 24px 64px rgba(17,24,39,.1);--range-track: rgba(17,24,39,.12);--glass-bg: var(--color-bg-elevated);--glass-border: var(--color-border);--field-bg: var(--color-bg-container);--scrollbar: var(--raw-neutral-300);--scrollbar-hover: var(--raw-neutral-400);--gradient-cta: linear-gradient(90deg, #74A2F8 0%, #5561F6 45%, #B26FF4 75%, #EE89F3 100%);--gradient-ai: linear-gradient(135deg, #3D92DE 0%, #6C91F7 50%, #94DBFC 100%);--grid-cols: 12;--grid-gutter: var(--space-6)}.surface-glass{background:var(--color-bg-elevated);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:var(--guide-card-radius);padding:var(--popover-padding);box-shadow:var(--shadow-md)}.card-hoverable{transition:var(--card-transition)}.card-hoverable:hover{transform:translateY(-4px);box-shadow:var(--card-shadow-hover)}a,button,[role=button],.clickable{transition:var(--transition-base)}a:hover,[role=button]:hover,.clickable:hover{color:var(--color-primary)}.table-zebra tbody tr:nth-child(2n) td{background:var(--table-zebra-bg)}.table-zebra tbody tr:hover td{background:var(--table-row-hover-bg)}@keyframes content-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.content-fade{animation:content-fade var(--duration-normal) var(--ease-decelerate) backwards}@keyframes count-up-glow{0%{opacity:.35}to{opacity:1}}.count-up{animation:count-up-glow var(--duration-slow) var(--ease-decelerate) both}body a:focus-visible,body button:focus-visible,body [role=button]:focus-visible,body [tabindex]:focus-visible,body summary:focus-visible,body .ant-btn:not(:disabled):focus-visible,body .ant-tabs-tab-btn:focus-visible,body .ant-pagination-item:focus-visible,body .ant-switch:focus-visible,body .ant-checkbox-input:focus-visible+.ant-checkbox-inner,body .ant-radio-input:focus-visible+.ant-radio-inner{outline:2px solid var(--color-primary);outline-offset:2px}body input:focus-visible,body select:focus-visible,body textarea:focus-visible,body .ant-input:focus-visible,body .ant-input-affix-wrapper:focus-visible,body .ant-input-affix-wrapper.ant-input-affix-wrapper-focused,body .ant-select-focused .ant-select-selector,body .ant-picker-focused{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary);box-shadow:none}body .ant-input-affix-wrapper>.ant-input:focus-visible,body .ant-input-affix-wrapper>.ant-input:focus{outline:none;box-shadow:none}body .ant-menu-item:focus-visible,body .ant-menu-submenu-title:focus-visible,body .ant-menu.ant-menu-root:focus-visible,body .ant-table-tbody tr:focus-visible,body [data-focus-inset]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}::selection{background:#c0392b59}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}::-webkit-scrollbar-track{background:transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.login-page{min-height:100vh;display:flex;align-items:stretch;background:#fff;position:relative}.login-brand{flex:1.15;min-width:0;padding:40px 6vw 40px 56px;display:flex;flex-direction:column;justify-content:center;gap:20px;background:linear-gradient(160deg,#f6f9ff,#fff 62%)}.login-logo{display:flex;align-items:center;gap:10px}.login-logo-badge{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-weight:700;font-size:18px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #f59e0b4d}.login-logo-name{font-size:20px;color:#1f2937;letter-spacing:1px}.login-slogan{margin:0;max-width:420px;color:#475569;font-size:16px;line-height:1.9}.login-illust{width:min(420px,80%);align-self:flex-start}.login-panel{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 24px}.login-card{width:400px;max-width:100%;background:#fff;border-radius:12px;border:1px solid #eef1f6;box-shadow:0 12px 40px #0f172a14;padding:36px 36px 28px}.login-title{margin:0 0 6px;text-align:center;color:var(--color-text-title);font-size:22px;font-weight:600}.login-card .ant-tabs-tab{font-size:15px;padding:12px 4px}.login-card .ant-tabs-ink-bar{width:32px!important;margin-inline-start:calc(50% - 16px)}.login-agree{font-size:12px;color:#94a3b8}.login-agree a{color:var(--color-primary)}.login-error{margin:-4px 0 12px;padding:8px 12px;border-radius:6px;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;font-size:13px;line-height:1.6}.login-links{margin-top:14px;display:flex;justify-content:space-between;font-size:13px;color:#64748b}.login-links a{color:var(--color-primary)}.login-footer{position:absolute;left:0;right:0;bottom:0;padding:14px 0;text-align:center;font-size:12px;color:#cbd5e1}.login-footer-divider{margin:0 12px}.login-footer-link{color:inherit;text-decoration:none}.login-footer-link:hover{color:#94a3b8;text-decoration:underline}@media(max-width:860px){.login-brand{display:none}}
