.dashboard-meta[data-v-b996615d]{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:11px}.status-indicator[data-v-b996615d]{display:inline-flex;align-items:center;gap:7px;color:var(--success)}.status-indicator .online-dot[data-v-b996615d]{width:6px;height:6px;box-shadow:none}.status-indicator.error[data-v-b996615d]{color:var(--danger)}.status-indicator.error .online-dot[data-v-b996615d]{background:var(--danger)}.sync-time[data-v-b996615d]{padding-left:10px;border-left:1px solid var(--border)}.dashboard-refresh[data-v-b996615d]{min-height:30px;padding:0 10px}.dashboard-alert[data-v-b996615d]{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-6px 0 18px;padding:12px 14px;border:1px solid rgba(240,113,120,.32);border-radius:var(--radius);background:var(--danger-soft)}.dashboard-alert div[data-v-b996615d]{min-width:0}.dashboard-alert strong[data-v-b996615d]{display:block;color:#ffb3b6;font-size:12px}.dashboard-alert span[data-v-b996615d]{display:block;margin-top:3px;color:var(--text-secondary);font-size:11px}.kpi.is-loading .v[data-v-b996615d]{color:var(--text-muted)}.dashboard-main-grid[data-v-b996615d]{margin-bottom:14px}.dashboard-panel .card-body[data-v-b996615d]{min-height:300px;padding:18px}.panel-heading h3[data-v-b996615d]{margin-bottom:4px}.panel-heading span[data-v-b996615d]{display:block}.panel-kicker[data-v-b996615d]{color:var(--primary)!important;font-size:10px!important;letter-spacing:.1em}.text-link[data-v-b996615d],.todo-action[data-v-b996615d]{color:var(--primary-strong);font-size:11px;text-decoration:none;white-space:nowrap}.text-link[data-v-b996615d]:hover,.todo-action[data-v-b996615d]:hover{color:var(--text)}.trend-chart[data-v-b996615d]{margin:4px -4px 0}.chart-grid-line[data-v-b996615d]{stroke:var(--border);stroke-width:1;stroke-dasharray:3 5}.chart-area[data-v-b996615d]{fill:#56c3c01a}.chart-line[data-v-b996615d]{fill:none;stroke:var(--primary);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-point[data-v-b996615d]{fill:var(--surface);stroke:var(--primary-strong);stroke-width:2}.chart-label[data-v-b996615d]{fill:var(--text-muted);font-size:10px}.chart-legend[data-v-b996615d]{display:flex;flex-wrap:wrap;gap:14px;margin-top:2px;color:var(--text-muted);font-size:11px}.legend-dot[data-v-b996615d]{width:7px;height:7px;display:inline-block;margin-right:5px;border-radius:50%;background:var(--primary)}.legend-dot.recipes[data-v-b996615d]{background:var(--success)}.legend-dot.mixings[data-v-b996615d]{background:var(--warning)}.dashboard-empty[data-v-b996615d]{height:210px;display:grid;place-items:center;color:var(--text-muted);font-size:12px}.todo-dot.primary[data-v-b996615d]{background:var(--primary)}.todo-dot.warning[data-v-b996615d]{background:var(--warning)}.todo-dot.danger[data-v-b996615d]{background:var(--danger)}.dashboard-actions-card[data-v-b996615d]{margin-bottom:16px}.dashboard-actions-card .card-header[data-v-b996615d]{min-height:68px}.quick-arrow[data-v-b996615d]{margin-left:auto;color:var(--text-muted);font-size:16px}.quick-action:hover .quick-arrow[data-v-b996615d]{color:var(--primary-strong)}@media (max-width: 720px){.dashboard-meta[data-v-b996615d]{align-self:stretch;flex-wrap:wrap}.dashboard-refresh[data-v-b996615d]{margin-left:auto}.dashboard-alert[data-v-b996615d]{align-items:flex-start;flex-direction:column}.dashboard-panel .card-body[data-v-b996615d]{min-height:0}}.catalog-notice[data-v-0e81c95c],.table-state[data-v-0e81c95c]{padding:12px 20px;color:var(--text-secondary);font-size:13px}.catalog-notice[data-v-0e81c95c]{border-bottom:1px solid var(--border);background:var(--bg-alt)}.table-state-error[data-v-0e81c95c]{color:#b45309}.recipe-cell[data-v-0e81c95c]{display:flex;align-items:center;gap:10px}.recipe-thumb[data-v-0e81c95c],.recipe-placeholder[data-v-0e81c95c]{width:42px;height:42px;border-radius:7px;flex:none}.recipe-thumb[data-v-0e81c95c]{object-fit:cover;border:1px solid var(--border)}.recipe-placeholder[data-v-0e81c95c]{display:grid;place-items:center;background:var(--bg-alt);font-size:20px}.recipe-sub[data-v-0e81c95c]{max-width:300px;margin-top:3px;color:var(--text-secondary);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-cell[data-v-0e81c95c]{display:grid;justify-items:start;gap:5px}.source-cell small[data-v-0e81c95c]{max-width:160px;overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.pagination-bar[data-v-0e81c95c]{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-top:1px solid var(--border);color:var(--text-secondary);font-size:14px}.pagination-controls[data-v-0e81c95c]{display:flex;align-items:center;gap:8px}.btn-page[data-v-0e81c95c]{min-width:34px;height:34px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);cursor:pointer}.btn-page.active[data-v-0e81c95c]{background:var(--primary);border-color:var(--primary);color:#fff}.btn-page[data-v-0e81c95c]:disabled{opacity:.4;cursor:not-allowed}.recipe-modal[data-v-0e81c95c]{width:min(920px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto}.recipe-form[data-v-0e81c95c]{display:grid;gap:24px}.recipe-form section[data-v-0e81c95c]{padding-bottom:20px;border-bottom:1px solid var(--border)}.recipe-form h4[data-v-0e81c95c]{margin:0 0 14px;font-size:14px}.media-section input[type=file][data-v-0e81c95c]{display:block;max-width:100%;font-size:13px}.section-heading[data-v-0e81c95c]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-heading h4[data-v-0e81c95c]{margin:0}.check-row[data-v-0e81c95c]{display:flex;align-items:center;gap:8px;padding-top:26px;font-size:13px}.flavor-options[data-v-0e81c95c]{display:flex;flex-wrap:wrap;gap:8px}.flavor-option[data-v-0e81c95c]{padding:6px 9px;border:1px solid var(--border);border-radius:6px;font-size:12px}.ingredient-search[data-v-0e81c95c]{display:flex;align-items:center;gap:12px;margin-bottom:10px}.ingredient-search input[data-v-0e81c95c]{flex:1}.ingredient-search span[data-v-0e81c95c],.editor-hint[data-v-0e81c95c]{color:var(--text-muted);font-size:12px}.editor-row[data-v-0e81c95c]{display:grid;gap:8px;align-items:center;margin-bottom:8px;padding:8px;background:var(--bg-alt);border-radius:6px}.ingredient-row[data-v-0e81c95c]{grid-template-columns:minmax(150px,2fr) 78px 76px minmax(90px,1fr) auto auto 34px}.step-row[data-v-0e81c95c]{grid-template-columns:26px 100px minmax(160px,1fr) 68px auto 34px}.step-number[data-v-0e81c95c]{font-weight:700;color:var(--text-secondary);text-align:center}.editor-row input[data-v-0e81c95c],.editor-row select[data-v-0e81c95c]{min-width:0}.editor-row label[data-v-0e81c95c]{white-space:nowrap;font-size:12px}.editor-loading[data-v-0e81c95c]{padding:56px 24px;text-align:center;color:var(--text-secondary)}@media (max-width:760px){.pagination-bar[data-v-0e81c95c]{align-items:flex-start;flex-direction:column}.ingredient-row[data-v-0e81c95c],.step-row[data-v-0e81c95c]{grid-template-columns:1fr 1fr}.ingredient-row .btn-icon[data-v-0e81c95c],.step-row .btn-icon[data-v-0e81c95c]{justify-self:end}.check-row[data-v-0e81c95c]{padding-top:0}.recipe-sub[data-v-0e81c95c]{max-width:180px}}.import-modal[data-v-0e81c95c]{width:min(580px,calc(100vw - 32px))}.import-form[data-v-0e81c95c]{display:grid;gap:18px}.import-intro[data-v-0e81c95c]{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.6}.import-file[data-v-0e81c95c]{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-alt);font-size:13px}.import-file span[data-v-0e81c95c]{color:var(--text-muted);white-space:nowrap}.import-result[data-v-0e81c95c]{display:grid;gap:6px;padding:12px;border-radius:6px;font-size:13px}.import-result span[data-v-0e81c95c],.import-result p[data-v-0e81c95c]{color:inherit;opacity:.86}.import-result ul[data-v-0e81c95c]{margin:4px 0 0;padding-left:20px;line-height:1.55}.import-result-success[data-v-0e81c95c]{background:#ecfdf3;color:#166534}.import-result-error[data-v-0e81c95c]{background:#fff7ed;color:#9a3412}.modal-footer-spacer[data-v-0e81c95c]{flex:1}.step-editor[data-v-0e81c95c]{margin-bottom:8px}.step-row[data-v-0e81c95c]{margin-bottom:0}.dispense-command[data-v-0e81c95c]{display:grid;grid-template-columns:90px 110px minmax(120px,1fr) 110px;gap:8px;padding:8px 8px 0;background:var(--bg-alt);border-radius:0 0 6px 6px}.dispense-command label[data-v-0e81c95c]{display:grid;gap:4px;color:var(--text-secondary);font-size:11px}.dispense-command input[data-v-0e81c95c]{min-width:0}.dispense-validation[data-v-0e81c95c]{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:center;margin-top:16px;padding:12px;border:1px solid var(--border);border-radius:6px;background:var(--surface)}.dispense-validation strong[data-v-0e81c95c]{font-size:13px}.dispense-validation p[data-v-0e81c95c]{margin:4px 0 0;color:var(--text-muted);font-size:12px}.dispense-validation-controls[data-v-0e81c95c]{display:flex;gap:8px;align-items:center}.dispense-validation-controls select[data-v-0e81c95c]{min-width:120px}.validation-result[data-v-0e81c95c]{grid-column:1/-1;padding:8px 10px;border-radius:5px;font-size:12px}.validation-result ul[data-v-0e81c95c]{margin:6px 0 0;padding-left:18px}.validation-success[data-v-0e81c95c]{background:#ecfdf3;color:#166534}.validation-error[data-v-0e81c95c]{background:#fff7ed;color:#9a3412}@media (max-width:760px){.dispense-command[data-v-0e81c95c]{grid-template-columns:1fr 1fr}.dispense-validation[data-v-0e81c95c]{grid-template-columns:1fr}.dispense-validation-controls[data-v-0e81c95c]{align-items:stretch;flex-direction:column}}.catalog-notice[data-v-be6b55c3]{padding:12px 20px;border-bottom:1px solid var(--border);background:var(--bg-alt);color:var(--text-secondary);font-size:13px}.editor-hint[data-v-be6b55c3]{margin:8px 0 0;color:var(--text-secondary);font-size:12px}.table-state[data-v-be6b55c3]{padding:18px 20px;color:var(--text-secondary);font-size:13px}.table-state-error[data-v-be6b55c3]{color:#b45309}.stats-row[data-v-be6b55c3]{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.stat-card[data-v-be6b55c3]{flex:1;min-width:180px;display:flex;align-items:center;gap:16px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:12px;transition:all .2s}.stat-card[data-v-be6b55c3]:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 8px 24px #4a6fa51a}.stat-card.stat-success[data-v-be6b55c3]{background:linear-gradient(135deg,rgba(46,204,113,.08) 0%,var(--surface) 60%)}.stat-card.stat-warning[data-v-be6b55c3]{background:linear-gradient(135deg,rgba(243,156,18,.08) 0%,var(--surface) 60%)}.stat-icon[data-v-be6b55c3]{font-size:36px;line-height:1}.stat-value[data-v-be6b55c3]{font-size:28px;font-weight:700;color:var(--text);line-height:1;margin-bottom:4px}.stat-label[data-v-be6b55c3]{font-size:13px;color:var(--text-secondary)}.ingredient-cell[data-v-be6b55c3]{display:flex;align-items:flex-start;gap:12px}.ingredient-thumb[data-v-be6b55c3]{width:48px;height:48px;border-radius:8px;object-fit:cover;border:1px solid var(--border);flex-shrink:0}.ingredient-emoji[data-v-be6b55c3]{width:48px;height:48px;border-radius:8px;background:var(--bg-alt);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;border:1px solid var(--border)}.ingredient-text[data-v-be6b55c3]{flex:1;min-width:0}.ingredient-name[data-v-be6b55c3]{font-weight:600;color:var(--text);font-size:14px;margin-bottom:2px}.ingredient-sub[data-v-be6b55c3]{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.ingredient-desc[data-v-be6b55c3]{font-size:12px;color:var(--text-secondary);line-height:1.4;opacity:.8}.ingredient-aliases[data-v-be6b55c3]{font-size:11px;color:var(--text-secondary);opacity:.7;margin-top:4px;font-style:italic}.stat-num[data-v-be6b55c3]{font-weight:600;color:var(--text-secondary);font-size:14px}.stat-num-primary[data-v-be6b55c3]{color:var(--primary);font-weight:700}.stat-num-success[data-v-be6b55c3]{color:#27ae60;font-weight:700}.stat-num-warning[data-v-be6b55c3]{color:#f39c12;font-weight:700}.toolbar[data-v-be6b55c3]{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.filter-select[data-v-be6b55c3]{height:38px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:0 12px;font-size:14px;cursor:pointer}.filter-select[data-v-be6b55c3]:hover{border-color:var(--primary)}.tag-info[data-v-be6b55c3]{background:#4a6fa526;color:var(--primary);border:1px solid rgba(74,111,165,.25)}.source-cell small[data-v-be6b55c3]{display:block;max-width:160px;margin-top:5px;overflow:hidden;color:var(--text-secondary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.form-row[data-v-be6b55c3]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:12px}.image-preview[data-v-be6b55c3]{margin-top:8px;width:80px;height:80px;border-radius:8px;overflow:hidden;border:1px solid var(--border)}.image-preview img[data-v-be6b55c3]{width:100%;height:100%;object-fit:cover}.pagination-bar[data-v-be6b55c3]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-top:1px solid var(--border);font-size:14px;color:var(--text-secondary);flex-wrap:wrap;gap:12px}.pagination-info[data-v-be6b55c3]{color:var(--text-secondary)}.pagination-info strong[data-v-be6b55c3]{color:var(--text)}.pagination-controls[data-v-be6b55c3]{display:flex;align-items:center;gap:8px}.btn-page[data-v-be6b55c3]{min-width:34px;height:34px;padding:0 10px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:6px;cursor:pointer;font-size:13px;transition:all .15s}.btn-page[data-v-be6b55c3]:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.btn-page.active[data-v-be6b55c3]{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:600}.btn-page[data-v-be6b55c3]:disabled{opacity:.4;cursor:not-allowed}.page-numbers[data-v-be6b55c3]{display:inline-block}.import-result[data-v-be6b55c3]{border:1px solid;border-radius:8px;padding:0}.import-success[data-v-be6b55c3]{border-color:#10b981;background:linear-gradient(135deg,#10b98114,#10b98105)}.import-error[data-v-be6b55c3]{border-color:#ef4444;background:linear-gradient(135deg,#ef444414,#ef444405)}.import-result-content[data-v-be6b55c3]{padding:14px 20px;display:flex;align-items:center;font-size:14px;color:var(--text)}.btn-close[data-v-be6b55c3]{margin-left:auto;background:transparent;border:none;cursor:pointer;padding:4px 8px;font-size:14px;color:var(--text-secondary);border-radius:4px}.btn-close[data-v-be6b55c3]:hover{background:var(--surface);color:var(--text)}button[data-v-be6b55c3]:disabled{opacity:.5;cursor:not-allowed}.brands-page[data-v-0f405659]{width:100%}.category-card[data-v-0f405659]{margin-bottom:14px}.category-list[data-v-0f405659]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border)}.category-item[data-v-0f405659]{display:flex;align-items:center;gap:10px;min-width:0;padding:12px 16px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.category-item[data-v-0f405659]:nth-child(3n){border-right:0}.category-icon[data-v-0f405659],.brand-logo[data-v-0f405659]{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--primary)}.category-item strong[data-v-0f405659],.category-item small[data-v-0f405659],.brand-cell strong[data-v-0f405659],.brand-cell small[data-v-0f405659],.block-meta[data-v-0f405659]{display:block}.category-item strong[data-v-0f405659],.brand-cell strong[data-v-0f405659]{color:var(--text);font-size:12px}.category-item small[data-v-0f405659],.brand-cell small[data-v-0f405659],.block-meta[data-v-0f405659]{margin-top:3px;overflow:hidden;color:var(--text-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.category-actions[data-v-0f405659]{display:flex;gap:4px;margin-left:auto}.brand-toolbar[data-v-0f405659]{min-height:68px}.brand-cell[data-v-0f405659]{display:flex;align-items:center;gap:9px;min-width:170px}.brand-logo[data-v-0f405659]{object-fit:cover}.brand-logo.placeholder[data-v-0f405659]{font-size:16px}.actions[data-v-0f405659]{display:flex;align-items:center;gap:5px}.actions-column[data-v-0f405659]{width:150px}.btn-sm[data-v-0f405659]{min-height:29px;padding:0 8px;font-size:11px}.btn-icon.danger[data-v-0f405659]{color:var(--danger)}.page-error[data-v-0f405659],.form-error[data-v-0f405659]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.form-error[data-v-0f405659]{margin:0}.empty-inline[data-v-0f405659]{padding:18px;color:var(--text-muted);font-size:12px}.brand-modal[data-v-0f405659]{width:min(560px,calc(100vw - 32px))}.compact-modal[data-v-0f405659]{width:min(500px,calc(100vw - 32px))}.form-stack[data-v-0f405659]{display:grid;gap:14px}.form-grid[data-v-0f405659]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pagination-controls[data-v-0f405659]{display:flex;gap:8px}.btn-page[data-v-0f405659]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}@media (max-width: 960px){.category-list[data-v-0f405659]{grid-template-columns:repeat(2,minmax(0,1fr))}.category-item[data-v-0f405659]:nth-child(3n){border-right:1px solid var(--border)}.category-item[data-v-0f405659]:nth-child(2n){border-right:0}}@media (max-width: 720px){.page-header[data-v-0f405659],.brand-toolbar .toolbar[data-v-0f405659]{align-items:stretch;flex-direction:column}.category-list[data-v-0f405659],.form-grid[data-v-0f405659]{grid-template-columns:1fr}.category-item[data-v-0f405659]{border-right:0!important}.filter-input[data-v-0f405659],.filter-select[data-v-0f405659]{width:100%;box-sizing:border-box}}.playlists-page[data-v-90b47dc1]{width:100%}.playlist-summary[data-v-90b47dc1],.detail-metrics[data-v-90b47dc1]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.playlist-summary div[data-v-90b47dc1],.detail-metrics div[data-v-90b47dc1]{min-height:70px;padding:13px 16px;background:var(--surface)}.playlist-summary span[data-v-90b47dc1],.playlist-summary strong[data-v-90b47dc1]{display:block}.playlist-summary span[data-v-90b47dc1],.block-meta[data-v-90b47dc1]{color:var(--text-muted);font-size:11px}.playlist-summary strong[data-v-90b47dc1]{margin-top:7px;color:var(--text);font-size:18px}.playlist-toolbar[data-v-90b47dc1]{min-height:68px}.playlist-name[data-v-90b47dc1]{display:flex;align-items:center;gap:9px;min-width:150px}.playlist-emoji[data-v-90b47dc1]{display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--primary)}.playlist-name strong[data-v-90b47dc1],.playlist-name small[data-v-90b47dc1],.block-meta[data-v-90b47dc1]{display:block}.playlist-name strong[data-v-90b47dc1]{color:var(--text);font-size:12px}.playlist-name small[data-v-90b47dc1]{margin-top:3px;color:var(--text-muted);font-size:10px}.actions[data-v-90b47dc1]{display:flex;align-items:center;gap:5px}.actions-column[data-v-90b47dc1]{width:154px}.btn-icon.danger[data-v-90b47dc1]{color:var(--danger)}.page-error[data-v-90b47dc1]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.pagination-controls[data-v-90b47dc1]{display:flex;align-items:center;gap:8px}.btn-page[data-v-90b47dc1]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.detail-modal[data-v-90b47dc1]{width:min(620px,calc(100vw - 32px))}.modal-description[data-v-90b47dc1]{margin:4px 0 0;color:var(--text-muted);font-size:11px}.detail-metrics[data-v-90b47dc1]{margin:0}.detail-metrics dt[data-v-90b47dc1]{color:var(--text-muted);font-size:10px}.detail-metrics dd[data-v-90b47dc1]{margin:7px 0 0;color:var(--text);font-size:13px}.recipe-ids[data-v-90b47dc1]{margin-top:20px}.recipe-ids h4[data-v-90b47dc1]{margin:0 0 9px;color:var(--text);font-size:12px}.recipe-id-list[data-v-90b47dc1]{display:flex;flex-wrap:wrap;gap:6px}.recipe-id-list span[data-v-90b47dc1]{padding:5px 7px;border:1px solid var(--border);border-radius:4px;background:var(--surface-raised);color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.empty-inline[data-v-90b47dc1]{color:var(--text-muted);font-size:12px}@media (max-width: 760px){.page-header[data-v-90b47dc1],.playlist-toolbar .toolbar[data-v-90b47dc1]{align-items:stretch;flex-direction:column}.playlist-summary[data-v-90b47dc1],.detail-metrics[data-v-90b47dc1]{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-input[data-v-90b47dc1],.filter-select[data-v-90b47dc1]{width:100%;box-sizing:border-box}}.top100-page[data-v-2c14378d]{display:flex;flex-direction:column;gap:16px}.top100-alert[data-v-2c14378d],.top100-success[data-v-2c14378d]{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px;border:1px solid rgba(241,101,101,.36);border-radius:7px;background:#f1656514;color:#ef8b8b;font-size:12px}.top100-success[data-v-2c14378d]{border-color:#52c87852;background:var(--success-soft);color:#76dc95}.top100-summary[data-v-2c14378d]{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.summary-item[data-v-2c14378d]{min-width:0;padding:16px 18px;border-right:1px solid var(--border)}.summary-item[data-v-2c14378d]:last-child{border-right:0}.summary-item span[data-v-2c14378d],.recipe-name small[data-v-2c14378d],.score-detail[data-v-2c14378d]{display:block;color:var(--text-muted);font-size:11px}.summary-item strong[data-v-2c14378d]{display:block;margin-top:6px;color:var(--text);font-size:16px;overflow-wrap:anywhere}.status-text.online[data-v-2c14378d]{color:#76dc95}.source-panel[data-v-2c14378d],.ranking-panel[data-v-2c14378d]{overflow:hidden}.source-list[data-v-2c14378d]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.source-row[data-v-2c14378d]{display:grid;grid-template-columns:72px minmax(0,1fr) 44px 64px;align-items:center;gap:10px;min-height:48px;padding:0 18px;border-bottom:1px solid var(--border);color:var(--text-secondary);text-decoration:none;font-size:11px}.source-row[data-v-2c14378d]:nth-child(odd){border-right:1px solid var(--border)}.source-row[data-v-2c14378d]:hover{background:var(--surface-raised)}.source-row strong[data-v-2c14378d]{color:var(--text);font-size:12px}.source-kind[data-v-2c14378d]{color:var(--primary-strong)}.generated-time[data-v-2c14378d]{color:var(--text-muted);font-size:11px}.ranking-table th[data-v-2c14378d]:first-child,.ranking-table td[data-v-2c14378d]:first-child{width:72px;text-align:center}.rank-number[data-v-2c14378d]{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-raised);color:var(--text-secondary);font-weight:700}.rank-number.top-1[data-v-2c14378d]{background:#b9963c;color:#111}.rank-number.top-2[data-v-2c14378d]{background:#aeb7bd;color:#111}.rank-number.top-3[data-v-2c14378d]{background:#a96e47;color:#111}.recipe-name[data-v-2c14378d]{min-width:210px}.recipe-name strong[data-v-2c14378d]{display:block;color:var(--text);font-size:12px}.recipe-name small[data-v-2c14378d]{margin-top:4px}.score[data-v-2c14378d]{display:block;color:var(--text);font-variant-numeric:tabular-nums}.score-detail[data-v-2c14378d]{margin-top:3px}.signal-list[data-v-2c14378d]{display:flex;flex-wrap:wrap;gap:5px;min-width:180px}.signal-list span[data-v-2c14378d]{padding:3px 6px;border-radius:4px;background:var(--surface-raised);color:var(--text-muted);font-size:10px}.compact-empty[data-v-2c14378d]{padding:48px 20px}@media (max-width: 980px){.top100-summary[data-v-2c14378d]{grid-template-columns:repeat(3,minmax(120px,1fr))}.summary-item[data-v-2c14378d]:nth-child(3){border-right:0}.source-list[data-v-2c14378d]{grid-template-columns:1fr}.source-row[data-v-2c14378d]:nth-child(odd){border-right:0}}.users-page[data-v-4581f1f1]{width:100%}.page-actions[data-v-4581f1f1],.row-actions[data-v-4581f1f1],.pagination-controls[data-v-4581f1f1]{display:flex;align-items:center;gap:8px}.user-summary[data-v-4581f1f1]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.user-summary div[data-v-4581f1f1]{min-height:72px;padding:13px 16px;background:var(--surface)}.user-summary span[data-v-4581f1f1],.user-summary strong[data-v-4581f1f1],.user-cell strong[data-v-4581f1f1],.user-cell small[data-v-4581f1f1],.cell-detail[data-v-4581f1f1]{display:block}.user-summary span[data-v-4581f1f1],.user-cell small[data-v-4581f1f1],.cell-detail[data-v-4581f1f1],.modal-header p[data-v-4581f1f1],.form-group small[data-v-4581f1f1]{color:var(--text-muted);font-size:11px}.user-summary strong[data-v-4581f1f1]{margin-top:8px;color:var(--text);font-size:18px}.users-toolbar[data-v-4581f1f1]{min-height:72px}.date-input[data-v-4581f1f1]{min-height:34px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.user-cell[data-v-4581f1f1]{display:flex;align-items:center;gap:10px;min-width:220px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.user-cell strong[data-v-4581f1f1]{color:var(--text);font-size:13px}.user-cell small[data-v-4581f1f1]{max-width:210px;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-detail[data-v-4581f1f1]{margin-top:5px}.metrics-cell[data-v-4581f1f1],.date-cell[data-v-4581f1f1],.region-cell[data-v-4581f1f1]{color:var(--text-secondary);font-size:12px;white-space:nowrap}.region-cell[data-v-4581f1f1]{max-width:160px;overflow:hidden;text-overflow:ellipsis}.actions-column[data-v-4581f1f1]{width:132px}.btn-sm[data-v-4581f1f1]{min-height:30px;padding:0 9px;font-size:11px}.pagination-bar[data-v-4581f1f1]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid var(--border);color:var(--text-secondary);font-size:12px}.btn-page[data-v-4581f1f1]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.btn-page[data-v-4581f1f1]:disabled{opacity:.45}.compact-modal[data-v-4581f1f1]{width:min(460px,calc(100% - 32px))}.create-modal[data-v-4581f1f1]{width:min(620px,calc(100% - 32px))}.modal-header p[data-v-4581f1f1]{margin:4px 0 0}.form-grid[data-v-4581f1f1]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.form-grid .full[data-v-4581f1f1]{grid-column:1 / -1}.modal-description[data-v-4581f1f1]{margin:0 0 16px;color:var(--text-secondary)}.modal-error[data-v-4581f1f1]{margin:0 18px 14px;color:var(--danger);font-size:12px}@media (max-width:720px){.page-header[data-v-4581f1f1],.page-actions[data-v-4581f1f1],.users-toolbar .toolbar[data-v-4581f1f1],.pagination-bar[data-v-4581f1f1]{align-items:stretch;flex-direction:column}.user-summary[data-v-4581f1f1],.form-grid[data-v-4581f1f1]{grid-template-columns:1fr}.form-grid .full[data-v-4581f1f1]{grid-column:auto}.users-toolbar .search-box[data-v-4581f1f1],.users-toolbar .filter-select[data-v-4581f1f1],.users-toolbar .date-input[data-v-4581f1f1]{width:100%;box-sizing:border-box}.user-cell[data-v-4581f1f1]{min-width:180px}}.user-detail-page[data-v-438091b8]{width:100%}.back-link[data-v-438091b8]{margin:0 0 9px;padding:0;border:0;background:transparent;color:var(--primary-strong);cursor:pointer;font-size:12px}.page-actions[data-v-438091b8],.panel-heading[data-v-438091b8],.panel-filters[data-v-438091b8]{display:flex;align-items:center;gap:8px}.profile-strip[data-v-438091b8]{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:14px;padding:18px;border:1px solid var(--border);background:var(--surface)}.profile-identity[data-v-438091b8]{display:flex;align-items:center;gap:13px;min-width:230px}.avatar-large[data-v-438091b8]{width:44px;height:44px;font-size:18px}.profile-identity h2[data-v-438091b8]{margin:0;color:var(--text);font-size:18px}.profile-identity p[data-v-438091b8]{margin:5px 0 0;color:var(--text-muted);font-size:12px}.profile-facts[data-v-438091b8]{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:1px;border:1px solid var(--border);background:var(--border)}.profile-facts div[data-v-438091b8]{min-height:58px;padding:10px 13px;background:var(--surface-raised)}.profile-facts span[data-v-438091b8],.profile-facts strong[data-v-438091b8]{display:block}.profile-facts span[data-v-438091b8]{color:var(--text-muted);font-size:10px}.profile-facts strong[data-v-438091b8]{margin-top:7px;color:var(--text);font-size:12px}.detail-tabs[data-v-438091b8]{display:flex;gap:4px;margin:0 0 14px;border-bottom:1px solid var(--border)}.detail-tabs button[data-v-438091b8]{min-height:36px;padding:0 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;font-size:12px}.detail-tabs button.active[data-v-438091b8]{border-bottom-color:var(--primary);color:var(--primary-strong);font-weight:650}.detail-grid[data-v-438091b8]{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px}.info-panel[data-v-438091b8],.tab-panel[data-v-438091b8]{padding:16px}.info-panel h3[data-v-438091b8],.tab-panel h3[data-v-438091b8],.two-column h4[data-v-438091b8]{margin:0;color:var(--text);font-size:13px}.info-panel dl[data-v-438091b8]{margin:13px 0 0}.info-panel dl div[data-v-438091b8]{display:grid;grid-template-columns:86px minmax(0,1fr);gap:8px;padding:9px 0;border-bottom:1px solid var(--border);font-size:12px}.info-panel dt[data-v-438091b8]{color:var(--text-muted)}.info-panel dd[data-v-438091b8]{min-width:0;margin:0;color:var(--text-secondary);overflow-wrap:anywhere}.privacy-hint[data-v-438091b8]{margin:12px 0 0;color:var(--text-muted);font-size:11px}.metric-grid[data-v-438091b8]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:13px;border:1px solid var(--border);background:var(--border)}.metric-grid div[data-v-438091b8]{min-height:74px;padding:12px;background:var(--surface-raised)}.metric-grid span[data-v-438091b8],.metric-grid strong[data-v-438091b8]{display:block}.metric-grid span[data-v-438091b8]{color:var(--text-muted);font-size:10px}.metric-grid strong[data-v-438091b8]{margin-top:9px;color:var(--text);font-size:20px}.panel-heading[data-v-438091b8]{justify-content:space-between;margin-bottom:14px}.two-column[data-v-438091b8]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.two-column h4[data-v-438091b8]{margin-bottom:9px}.record-row[data-v-438091b8],.note-row[data-v-438091b8]{padding:11px 0;border-bottom:1px solid var(--border)}.record-row strong[data-v-438091b8],.record-row span[data-v-438091b8],.note-row span[data-v-438091b8]{display:block}.record-row strong[data-v-438091b8]{color:var(--text);font-size:12px}.record-row span[data-v-438091b8],.note-row span[data-v-438091b8],.empty-inline[data-v-438091b8]{margin-top:4px;color:var(--text-muted);font-size:11px}.compact-table[data-v-438091b8]{min-width:620px}.note-row p[data-v-438091b8]{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.55;white-space:pre-wrap}.notes-list[data-v-438091b8]{max-width:840px}.filter-input[data-v-438091b8]{min-height:32px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.compact-modal[data-v-438091b8]{width:min(460px,calc(100% - 32px))}.modal-header p[data-v-438091b8]{margin:4px 0 0;color:var(--text-muted);font-size:11px}.modal-description[data-v-438091b8]{margin:0 0 16px;color:var(--text-secondary)}.modal-error[data-v-438091b8]{margin:0 18px 14px;color:var(--danger);font-size:12px}@media (max-width:980px){.profile-strip[data-v-438091b8]{align-items:stretch;flex-direction:column}.profile-facts[data-v-438091b8],.detail-grid[data-v-438091b8]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.page-header[data-v-438091b8],.page-actions[data-v-438091b8],.panel-heading[data-v-438091b8]{align-items:stretch;flex-direction:column}.detail-tabs[data-v-438091b8]{overflow-x:auto}.detail-tabs button[data-v-438091b8]{flex:0 0 auto}.profile-facts[data-v-438091b8],.detail-grid[data-v-438091b8],.two-column[data-v-438091b8]{grid-template-columns:1fr}}.deletions-page[data-v-98b6337e]{width:100%}.deletion-summary[data-v-98b6337e]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.deletion-summary div[data-v-98b6337e]{min-height:76px;padding:14px 16px;background:var(--surface)}.deletion-summary span[data-v-98b6337e],.deletion-summary strong[data-v-98b6337e]{display:block}.deletion-summary span[data-v-98b6337e]{color:var(--text-muted);font-size:11px}.deletion-summary strong[data-v-98b6337e]{margin-top:8px;color:var(--text);font-size:18px}.deletions-toolbar[data-v-98b6337e]{min-height:66px}.deletions-error[data-v-98b6337e]{margin:0 18px 14px;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.table td strong[data-v-98b6337e],.table td small[data-v-98b6337e]{display:block}.table td strong[data-v-98b6337e]{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12px}.table td small[data-v-98b6337e]{max-width:210px;margin-top:4px;overflow:hidden;color:var(--text-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.actions-column[data-v-98b6337e]{width:148px}.row-actions[data-v-98b6337e]{display:flex;align-items:center;gap:7px;white-space:nowrap}.btn-sm[data-v-98b6337e]{min-height:30px;padding:0 9px;font-size:11px}.muted[data-v-98b6337e]{color:var(--text-muted);font-size:11px}.compact-modal[data-v-98b6337e]{width:min(460px,calc(100% - 32px))}.modal-description[data-v-98b6337e]{margin:0 0 16px;color:var(--text-secondary)}.form-group textarea[data-v-98b6337e]{width:100%;resize:vertical}.pagination-bar[data-v-98b6337e]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid var(--border);color:var(--text-secondary);font-size:12px}.pagination-controls[data-v-98b6337e]{display:flex;align-items:center;gap:8px}.btn-page[data-v-98b6337e]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.btn-page[data-v-98b6337e]:disabled{opacity:.45}@media (max-width: 720px){.deletion-summary[data-v-98b6337e]{grid-template-columns:1fr}.deletions-toolbar[data-v-98b6337e]{align-items:stretch}.deletions-toolbar .toolbar[data-v-98b6337e]{align-items:stretch;flex-direction:column}.deletions-toolbar .filter-input[data-v-98b6337e],.deletions-toolbar .filter-select[data-v-98b6337e]{width:100%}.pagination-bar[data-v-98b6337e]{align-items:flex-start;flex-direction:column}}.tickets-page[data-v-7d629bac]{width:100%}.ticket-summary[data-v-7d629bac]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.ticket-summary div[data-v-7d629bac]{min-height:72px;padding:13px 16px;background:var(--surface)}.ticket-summary span[data-v-7d629bac],.ticket-summary strong[data-v-7d629bac]{display:block}.ticket-summary span[data-v-7d629bac]{color:var(--text-muted);font-size:11px}.ticket-summary strong[data-v-7d629bac]{margin-top:8px;color:var(--text);font-size:18px;font-variant-numeric:tabular-nums}.pending-value[data-v-7d629bac]{color:var(--warning)!important}.tickets-toolbar[data-v-7d629bac]{align-items:flex-start;min-height:82px}.date-filters[data-v-7d629bac]{display:flex;align-items:center;gap:7px;color:var(--text-muted);font-size:11px}.date-filters input[data-v-7d629bac]{height:32px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:11px}.handler-filter[data-v-7d629bac]{max-width:140px}.tickets-error[data-v-7d629bac],.ticket-detail-error[data-v-7d629bac]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.tickets-table td[data-v-7d629bac]{vertical-align:middle}.tickets-table td strong[data-v-7d629bac],.tickets-table td small[data-v-7d629bac]{display:block}.tickets-table td small[data-v-7d629bac]{max-width:165px;margin-top:4px;overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.ticket-no[data-v-7d629bac]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.content-cell[data-v-7d629bac]{width:28%;min-width:190px}.content-cell p[data-v-7d629bac]{display:-webkit-box;max-width:330px;margin:0;overflow:hidden;color:var(--text-secondary);font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.priority-dot[data-v-7d629bac]{display:inline-flex;align-items:center;min-width:38px;height:22px;justify-content:center;border-radius:4px;font-size:11px}.priority-high[data-v-7d629bac],.priority-urgent[data-v-7d629bac]{background:var(--danger-soft);color:#ffafb3}.priority-normal[data-v-7d629bac]{background:var(--primary-soft);color:var(--primary)}.priority-low[data-v-7d629bac]{background:var(--surface-raised);color:var(--text-muted)}.handler-cell[data-v-7d629bac],.date-cell[data-v-7d629bac]{color:var(--text-secondary);font-size:12px;white-space:nowrap}.actions-column[data-v-7d629bac]{width:76px}.btn-sm[data-v-7d629bac]{min-height:30px;padding:0 9px;font-size:11px}.pagination-controls[data-v-7d629bac]{display:flex;align-items:center;gap:8px}.btn-page[data-v-7d629bac]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.btn-page[data-v-7d629bac]:disabled{opacity:.45}.ticket-overlay[data-v-7d629bac]{align-items:stretch;justify-content:flex-end;padding:0}.ticket-modal[data-v-7d629bac]{display:flex;flex-direction:column;width:min(1000px,calc(100vw - 52px));height:100%;max-height:none;border:0;border-left:1px solid var(--border);border-radius:0;background:var(--surface);box-shadow:-24px 0 60px #00000052}.ticket-modal-header[data-v-7d629bac]{display:flex;align-items:flex-start;justify-content:space-between;min-height:86px;padding:20px 24px;border-bottom:1px solid var(--border)}.ticket-modal-header h2[data-v-7d629bac]{margin:5px 0 0;color:var(--text);font-size:20px}.detail-eyebrow[data-v-7d629bac]{color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.ticket-modal-body[data-v-7d629bac]{display:grid;min-height:0;flex:1;grid-template-columns:minmax(0,1fr) 250px;overflow:hidden}.ticket-conversation[data-v-7d629bac]{overflow-y:auto;padding:24px}.ticket-origin[data-v-7d629bac]{padding:16px;border-left:3px solid var(--primary);background:var(--surface-raised)}.origin-meta[data-v-7d629bac],.origin-footer[data-v-7d629bac],.reply-meta[data-v-7d629bac]{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.origin-meta strong[data-v-7d629bac],.reply-meta strong[data-v-7d629bac]{color:var(--text);font-size:12px}.origin-meta span[data-v-7d629bac],.origin-meta time[data-v-7d629bac],.origin-footer[data-v-7d629bac],.reply-meta time[data-v-7d629bac]{color:var(--text-muted);font-size:11px}.ticket-origin p[data-v-7d629bac]{margin:13px 0;color:var(--text-secondary);font-size:13px;line-height:1.65;white-space:pre-wrap}.origin-footer[data-v-7d629bac]{padding-top:11px;border-top:1px solid var(--border)}.image-count[data-v-7d629bac]{display:inline-flex;margin-bottom:12px;color:var(--primary);font-size:11px}.conversation-heading[data-v-7d629bac]{display:flex;align-items:baseline;justify-content:space-between;margin:24px 0 12px;color:var(--text);font-size:13px;font-weight:700}.conversation-heading small[data-v-7d629bac]{color:var(--text-muted);font-size:11px;font-weight:400}.reply-timeline[data-v-7d629bac]{display:grid;gap:10px}.reply-item[data-v-7d629bac]{padding:12px 14px;border:1px solid var(--border);border-radius:7px;background:var(--surface)}.reply-item.admin-reply[data-v-7d629bac]{border-left:3px solid var(--primary)}.reply-item p[data-v-7d629bac]{margin:8px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.6;white-space:pre-wrap}.timeline-empty[data-v-7d629bac]{padding:17px 0;color:var(--text-muted);font-size:12px;text-align:center}.reply-editor[data-v-7d629bac]{margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}.reply-editor>label[data-v-7d629bac],.control-label[data-v-7d629bac]{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:12px;font-weight:700}.reply-editor textarea[data-v-7d629bac]{width:100%;resize:vertical}.reply-editor>div[data-v-7d629bac]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.notify-check[data-v-7d629bac]{display:flex;align-items:center;gap:7px;color:var(--text-secondary);font-size:12px}.ticket-controls[data-v-7d629bac]{overflow-y:auto;padding:24px 18px;border-left:1px solid var(--border);background:var(--surface-raised)}.control-block[data-v-7d629bac]{display:grid;gap:9px;padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid var(--border)}.control-block[data-v-7d629bac]:last-child{border-bottom:0}.status-readout[data-v-7d629bac]{display:grid;gap:8px;justify-items:start}.status-readout small[data-v-7d629bac]{color:var(--text-muted);font-size:11px;line-height:1.4}.control-block .filter-select[data-v-7d629bac],.control-button[data-v-7d629bac]{width:100%}.status-actions[data-v-7d629bac]{display:grid;gap:8px}.ticket-loading[data-v-7d629bac]{padding:30px;color:var(--text-muted);font-size:12px}.status-modal[data-v-7d629bac]{width:min(480px,calc(100% - 32px))}.modal-description[data-v-7d629bac]{margin:0 0 16px;color:var(--text-secondary);font-size:12px;line-height:1.55}@media (max-width: 900px){.ticket-summary[data-v-7d629bac]{grid-template-columns:repeat(2,minmax(0,1fr))}.tickets-toolbar[data-v-7d629bac]{align-items:stretch}.date-filters[data-v-7d629bac]{width:100%}.ticket-modal[data-v-7d629bac]{width:min(760px,calc(100vw - 28px))}.ticket-modal-body[data-v-7d629bac]{grid-template-columns:1fr;overflow-y:auto}.ticket-conversation[data-v-7d629bac],.ticket-controls[data-v-7d629bac]{overflow:visible}.ticket-controls[data-v-7d629bac]{border-top:1px solid var(--border);border-left:0}.ticket-controls .control-block[data-v-7d629bac]{max-width:420px}}@media (max-width: 640px){.ticket-summary[data-v-7d629bac]{grid-template-columns:1fr}.tickets-toolbar .toolbar[data-v-7d629bac]{align-items:stretch;flex-direction:column}.tickets-toolbar .search-box[data-v-7d629bac],.tickets-toolbar .filter-select[data-v-7d629bac]{width:100%;max-width:none}.date-filters[data-v-7d629bac]{flex-wrap:wrap}.ticket-modal[data-v-7d629bac]{width:100%}.ticket-modal-header[data-v-7d629bac],.ticket-conversation[data-v-7d629bac],.ticket-controls[data-v-7d629bac]{padding-right:16px;padding-left:16px}.ticket-conversation[data-v-7d629bac]{padding-top:18px}.reply-editor>div[data-v-7d629bac]{align-items:flex-end;flex-direction:column}.pagination-bar[data-v-7d629bac]{align-items:flex-start;flex-direction:column}}.notifications-page[data-v-11b0ee58]{width:100%}.section-tabs[data-v-11b0ee58]{display:flex;gap:4px;margin:0 0 14px;border-bottom:1px solid var(--border)}.section-tabs button[data-v-11b0ee58]{min-height:38px;padding:0 13px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;font-size:12px}.section-tabs button.active[data-v-11b0ee58]{border-bottom-color:var(--primary);color:var(--primary-strong);font-weight:700}.page-error[data-v-11b0ee58],.form-error[data-v-11b0ee58]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.form-error[data-v-11b0ee58]{margin:0}.content-preview[data-v-11b0ee58]{display:-webkit-box;max-width:360px;margin:5px 0 0;overflow:hidden;color:var(--text-muted);font-size:11px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.code-text[data-v-11b0ee58],.block-meta[data-v-11b0ee58]{display:block;margin-top:4px;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.block-meta[data-v-11b0ee58]{font-family:inherit}.variable-list[data-v-11b0ee58],.muted[data-v-11b0ee58]{color:var(--text-muted);font-size:11px}.actions[data-v-11b0ee58]{display:flex;align-items:center;gap:6px}.actions-column[data-v-11b0ee58]{width:110px}.btn-icon.danger[data-v-11b0ee58]{color:var(--danger)}.date-input[data-v-11b0ee58]{min-height:32px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:11px}.notification-modal[data-v-11b0ee58]{width:min(640px,calc(100vw - 32px))}.preview-modal[data-v-11b0ee58]{width:min(440px,calc(100vw - 32px))}.preview-modal p[data-v-11b0ee58]{margin:12px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.65;white-space:pre-wrap}.form-stack[data-v-11b0ee58]{display:grid;gap:14px}.form-grid[data-v-11b0ee58]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-group small[data-v-11b0ee58]{display:block;margin-top:5px;color:var(--text-muted);font-size:11px;line-height:1.45}.task-detail dl[data-v-11b0ee58]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:18px 0 0;border:1px solid var(--border);background:var(--border)}.task-detail dl div[data-v-11b0ee58]{padding:11px;background:var(--surface-raised)}.task-detail dt[data-v-11b0ee58]{color:var(--text-muted);font-size:11px}.task-detail dd[data-v-11b0ee58]{margin:6px 0 0;color:var(--text);font-size:14px}.modal-footer[data-v-11b0ee58]{margin-top:0}@media (max-width: 720px){.page-header[data-v-11b0ee58],.card-header .toolbar[data-v-11b0ee58]{align-items:stretch;flex-direction:column}.form-grid[data-v-11b0ee58]{grid-template-columns:1fr}.date-input[data-v-11b0ee58]{width:100%;box-sizing:border-box}}.audit-page[data-v-4f21ed46]{width:100%}.audit-summary[data-v-4f21ed46]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.audit-summary div[data-v-4f21ed46]{min-height:72px;padding:13px 16px;background:var(--surface)}.audit-summary span[data-v-4f21ed46],.audit-summary strong[data-v-4f21ed46]{display:block}.audit-summary span[data-v-4f21ed46]{color:var(--text-muted);font-size:11px}.audit-summary strong[data-v-4f21ed46]{margin-top:8px;color:var(--text);font-size:18px;font-variant-numeric:tabular-nums}.warning-value[data-v-4f21ed46]{color:var(--warning)!important}.audit-toolbar[data-v-4f21ed46]{align-items:center;min-height:72px}.batch-actions[data-v-4f21ed46]{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:11px}.audit-error[data-v-4f21ed46]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.audit-table td[data-v-4f21ed46]{vertical-align:middle}.content-cell[data-v-4f21ed46]{width:38%;min-width:220px}.content-cell strong[data-v-4f21ed46]{display:block;color:var(--text);font-size:12px}.content-cell p[data-v-4f21ed46]{display:-webkit-box;max-width:420px;margin:5px 0 0;overflow:hidden;color:var(--text-muted);font-size:11px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.type-tag[data-v-4f21ed46]{color:var(--primary);font-size:12px;white-space:nowrap}.date-cell[data-v-4f21ed46]{color:var(--text-secondary);font-size:12px;white-space:nowrap}.row-actions[data-v-4f21ed46]{display:flex;align-items:center;gap:8px}.btn-sm[data-v-4f21ed46]{min-height:30px;padding:0 9px;font-size:11px}.btn-icon.danger[data-v-4f21ed46]{color:var(--danger)}.pagination-controls[data-v-4f21ed46]{display:flex;align-items:center;gap:8px}.btn-page[data-v-4f21ed46]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.audit-modal[data-v-4f21ed46]{width:min(480px,calc(100% - 32px))}.modal-description[data-v-4f21ed46]{margin:0 0 16px;color:var(--text-secondary);font-size:12px;line-height:1.55}@media (max-width: 760px){.audit-summary[data-v-4f21ed46]{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-toolbar[data-v-4f21ed46]{align-items:stretch}.audit-toolbar .toolbar[data-v-4f21ed46]{align-items:stretch;flex-direction:column}.audit-toolbar .search-box[data-v-4f21ed46],.audit-toolbar .filter-select[data-v-4f21ed46]{width:100%}.batch-actions[data-v-4f21ed46]{justify-content:flex-end}.pagination-bar[data-v-4f21ed46]{align-items:flex-start;flex-direction:column}}@media (max-width: 480px){.audit-summary[data-v-4f21ed46]{grid-template-columns:1fr}.batch-actions[data-v-4f21ed46]{flex-wrap:wrap;justify-content:flex-start}}.reports-page[data-v-83919829]{width:100%}.report-summary[data-v-83919829]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.report-summary div[data-v-83919829]{min-height:72px;padding:13px 16px;background:var(--surface)}.report-summary span[data-v-83919829],.report-summary strong[data-v-83919829]{display:block}.report-summary span[data-v-83919829]{color:var(--text-muted);font-size:11px}.report-summary strong[data-v-83919829]{margin-top:8px;color:var(--text);font-size:18px;font-variant-numeric:tabular-nums}.pending-value[data-v-83919829]{color:var(--warning)!important}.reports-toolbar[data-v-83919829]{align-items:flex-start;min-height:76px}.date-filters[data-v-83919829]{display:flex;align-items:center;gap:7px;color:var(--text-muted);font-size:11px}.date-filters input[data-v-83919829],.form-group input[data-v-83919829]{height:32px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:11px}.reports-error[data-v-83919829],.report-detail-error[data-v-83919829]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.reports-table td[data-v-83919829]{vertical-align:middle}.target-cell[data-v-83919829]{min-width:200px}.target-cell strong[data-v-83919829],.target-cell span[data-v-83919829],.reports-table td small[data-v-83919829]{display:block}.target-cell span[data-v-83919829],.reports-table td small[data-v-83919829]{max-width:260px;margin-top:4px;overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.report-count[data-v-83919829]{color:var(--text-secondary);font-size:12px;font-variant-numeric:tabular-nums}.report-count.hot[data-v-83919829]{color:var(--warning);font-weight:700}.date-cell[data-v-83919829]{color:var(--text-secondary);font-size:12px;white-space:nowrap}.btn-sm[data-v-83919829]{min-height:30px;padding:0 9px;font-size:11px}.pagination-controls[data-v-83919829]{display:flex;align-items:center;gap:8px}.btn-page[data-v-83919829]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.report-modal[data-v-83919829]{width:min(820px,calc(100% - 32px));max-height:min(720px,calc(100vh - 32px));overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.report-modal-header[data-v-83919829]{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border)}.detail-eyebrow[data-v-83919829]{color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.report-modal-header h2[data-v-83919829]{margin:5px 0 0;color:var(--text);font-size:18px}.modal-close[data-v-83919829]{width:30px;height:30px;border:0;background:transparent;color:var(--text-muted);font-size:24px;line-height:1}.report-loading[data-v-83919829]{padding:32px 20px;color:var(--text-muted);font-size:12px}.report-modal-body[data-v-83919829]{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;padding:20px}.target-snapshot[data-v-83919829],.handled-readout[data-v-83919829]{padding:14px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised)}.target-snapshot strong[data-v-83919829]{display:block;margin-top:8px;color:var(--text);font-size:14px}.target-snapshot p[data-v-83919829],.handled-readout p[data-v-83919829]{margin:8px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.55;white-space:pre-wrap}.report-meta[data-v-83919829]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:14px 0;border:1px solid var(--border);background:var(--border)}.report-meta div[data-v-83919829]{min-height:61px;padding:10px 12px;background:var(--surface)}.report-meta dt[data-v-83919829]{color:var(--text-muted);font-size:10px}.report-meta dd[data-v-83919829]{margin:6px 0 0;overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.handled-readout small[data-v-83919829]{display:block;margin-top:8px;color:var(--text-muted);font-size:11px}.report-controls[data-v-83919829]{display:flex;flex-direction:column;gap:10px;padding:14px;border-left:1px solid var(--border)}.control-label[data-v-83919829]{color:var(--text-muted);font-size:11px}.segmented-control[data-v-83919829]{display:grid;grid-template-columns:1fr 1fr;padding:3px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised)}.segmented-control button[data-v-83919829]{min-height:30px;border:0;border-radius:4px;background:transparent;color:var(--text-muted);font-size:11px}.segmented-control button.active[data-v-83919829]{background:var(--primary);color:var(--on-primary)}.form-group[data-v-83919829]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-83919829],.form-group small[data-v-83919829]{color:var(--text-muted);font-size:11px}.form-group textarea[data-v-83919829]{width:100%;resize:vertical;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font:inherit;font-size:12px;line-height:1.5}.report-controls>.btn[data-v-83919829]{margin-top:4px}@media (max-width: 760px){.reports-toolbar[data-v-83919829]{align-items:stretch}.reports-toolbar .toolbar[data-v-83919829]{align-items:stretch;flex-direction:column}.reports-toolbar .filter-select[data-v-83919829]{width:100%}.date-filters[data-v-83919829]{justify-content:flex-end}.report-modal-body[data-v-83919829]{grid-template-columns:1fr}.report-controls[data-v-83919829]{border-top:1px solid var(--border);border-left:0}.pagination-bar[data-v-83919829]{align-items:flex-start;flex-direction:column}}@media (max-width: 480px){.report-summary[data-v-83919829],.report-meta[data-v-83919829]{grid-template-columns:1fr}.date-filters[data-v-83919829]{justify-content:flex-start}.pagination-controls[data-v-83919829]{flex-wrap:wrap}}.devices-page[data-v-045cd424]{width:100%}.device-summary[data-v-045cd424],.detail-metrics[data-v-045cd424]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.device-summary div[data-v-045cd424]{min-height:68px;padding:13px 16px;background:var(--surface)}.device-summary span[data-v-045cd424],.device-summary strong[data-v-045cd424],.table td small[data-v-045cd424]{display:block}.device-summary span[data-v-045cd424],.table td small[data-v-045cd424],.modal-caption[data-v-045cd424],.empty-inline[data-v-045cd424]{color:var(--text-muted);font-size:11px}.device-summary strong[data-v-045cd424]{margin-top:7px;color:var(--text);font-size:18px;font-variant-numeric:tabular-nums}.sn-cell[data-v-045cd424]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.table td small[data-v-045cd424]{margin-top:4px}.date-cell[data-v-045cd424]{white-space:nowrap}.actions[data-v-045cd424],.pagination-controls[data-v-045cd424],.history-pagination div[data-v-045cd424]{display:flex;align-items:center;gap:6px;white-space:nowrap}.btn-sm[data-v-045cd424]{min-height:30px;padding:0 9px;font-size:11px}.btn-page[data-v-045cd424]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.btn-page[data-v-045cd424]:disabled{opacity:.45}.tag-danger[data-v-045cd424],.danger-text[data-v-045cd424]{color:var(--danger)}.tag-danger[data-v-045cd424]{background:var(--danger-soft)}.update-hint[data-v-045cd424]{color:var(--primary-strong)!important}.unbind-modal[data-v-045cd424]{width:min(460px,calc(100% - 32px))}.unbind-summary[data-v-045cd424]{margin:0 0 16px;color:var(--text-secondary)}.device-detail-modal[data-v-045cd424]{width:min(1080px,calc(100% - 32px));max-height:calc(100vh - 32px);overflow:auto}.modal-caption[data-v-045cd424]{margin:4px 0 0}.detail-body[data-v-045cd424]{min-height:340px}.detail-metrics[data-v-045cd424]{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.detail-metrics div[data-v-045cd424]{min-height:72px;padding:12px 14px;background:var(--surface-raised)}.detail-metrics span[data-v-045cd424],.detail-metrics strong[data-v-045cd424]{display:block}.detail-metrics span[data-v-045cd424]{color:var(--text-muted);font-size:10px}.detail-metrics strong[data-v-045cd424]{margin-top:7px;overflow:hidden;color:var(--text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.device-facts[data-v-045cd424]{display:flex;flex-wrap:wrap;gap:7px;padding:13px 0;border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:11px}.device-facts span[data-v-045cd424]{padding:5px 7px;border:1px solid var(--border);border-radius:4px;background:var(--surface-raised)}.detail-tabs[data-v-045cd424]{display:flex;gap:4px;margin:14px 0;border-bottom:1px solid var(--border)}.detail-tabs button[data-v-045cd424]{min-height:34px;padding:0 11px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;font-size:12px}.detail-tabs button.active[data-v-045cd424]{border-bottom-color:var(--primary);color:var(--primary-strong);font-weight:650}.overview-grid[data-v-045cd424]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.history-summary[data-v-045cd424]{min-width:0;padding:13px;border:1px solid var(--border);background:var(--surface-raised)}.history-summary h4[data-v-045cd424]{margin:0 0 10px;color:var(--text);font-size:12px}.summary-row[data-v-045cd424]{padding:9px 0;border-bottom:1px solid var(--border)}.summary-row[data-v-045cd424]:last-of-type{border-bottom:0}.summary-row strong[data-v-045cd424],.summary-row span[data-v-045cd424]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-row strong[data-v-045cd424]{color:var(--text-secondary);font-size:11px}.summary-row span[data-v-045cd424]{margin-top:4px;color:var(--text-muted);font-size:10px}.history-toolbar[data-v-045cd424]{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px;color:var(--text-muted);font-size:11px}.date-input[data-v-045cd424]{min-height:32px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:11px}.compact-table[data-v-045cd424]{min-width:760px}.compact-table td[data-v-045cd424]{padding-top:10px;padding-bottom:10px}.payload-cell[data-v-045cd424]{max-width:360px;overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.empty-cell[data-v-045cd424]{margin:0;padding:40px!important;color:var(--text-muted);text-align:center}.history-pagination[data-v-045cd424]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;color:var(--text-secondary);font-size:11px}@media (max-width:720px){.device-summary[data-v-045cd424],.detail-metrics[data-v-045cd424],.overview-grid[data-v-045cd424]{grid-template-columns:1fr}.card-header .toolbar[data-v-045cd424],.history-toolbar[data-v-045cd424]{align-items:stretch;flex-direction:column}.card-header .search-box[data-v-045cd424],.card-header .filter-select[data-v-045cd424],.history-toolbar .filter-select[data-v-045cd424],.history-toolbar .date-input[data-v-045cd424]{width:100%;box-sizing:border-box}.detail-tabs[data-v-045cd424]{overflow-x:auto}.detail-tabs button[data-v-045cd424]{flex:0 0 auto}.history-pagination[data-v-045cd424]{align-items:flex-start;flex-direction:column}}.firmware-page[data-v-93bf7649]{width:100%}.firmware-summary[data-v-93bf7649]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:14px;border:1px solid var(--border);background:var(--border)}.firmware-summary div[data-v-93bf7649]{min-height:78px;padding:13px 16px;background:var(--surface)}.firmware-summary span[data-v-93bf7649],.firmware-summary strong[data-v-93bf7649],.firmware-summary small[data-v-93bf7649]{display:block}.firmware-summary span[data-v-93bf7649],.firmware-summary small[data-v-93bf7649],.firmware-table td small[data-v-93bf7649]{color:var(--text-muted);font-size:11px}.firmware-summary strong[data-v-93bf7649]{margin:7px 0 2px;color:var(--text);font-size:20px;font-variant-numeric:tabular-nums}.data-source[data-v-93bf7649]{color:var(--text-muted);font-size:10px}.hardware-hint[data-v-93bf7649]{display:block;margin:-2px 0 14px;color:var(--text-muted);font-size:11px;line-height:1.5}.page-error[data-v-93bf7649]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);border-radius:6px;background:var(--danger-soft);color:#ffafb3;font-size:12px}.firmware-table[data-v-93bf7649]{min-width:1050px}.firmware-table td strong[data-v-93bf7649],.firmware-table td small[data-v-93bf7649]{display:block}.firmware-table td small[data-v-93bf7649]{margin-top:4px}.mono-cell[data-v-93bf7649]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.date-cell[data-v-93bf7649]{white-space:nowrap}.text-button[data-v-93bf7649]{padding:5px 0;border:0;background:transparent;color:var(--primary-strong);font-size:11px}.text-button[data-v-93bf7649]:hover{text-decoration:underline}.btn-sm[data-v-93bf7649]{min-height:30px;padding:0 9px;font-size:11px}.compact-modal[data-v-93bf7649]{width:min(500px,calc(100% - 32px))}.firmware-modal[data-v-93bf7649]{width:min(720px,calc(100% - 32px))}.strategy-modal[data-v-93bf7649]{width:min(620px,calc(100% - 32px))}.modal-caption[data-v-93bf7649]{margin:4px 0 0;color:var(--text-muted);font-size:11px;font-weight:400}.modal-summary[data-v-93bf7649]{margin:0 0 16px;color:var(--text-secondary);font-size:12px}.form-grid[data-v-93bf7649]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-group[data-v-93bf7649]{display:block;color:var(--text-secondary);font-size:12px}.form-group input[data-v-93bf7649],.form-group select[data-v-93bf7649],.form-group textarea[data-v-93bf7649]{width:100%;margin-top:6px;padding:9px 10px}.form-group small[data-v-93bf7649]{display:block;margin-top:5px;color:var(--text-muted);font-size:10px;line-height:1.4}.form-group input[readonly][data-v-93bf7649]{background:var(--surface-raised);color:var(--text-muted);cursor:default}.form-group textarea[data-v-93bf7649]{resize:vertical}.file-field small[data-v-93bf7649]{display:block;margin-top:6px;color:var(--text-muted);font-size:10px}.upload-note[data-v-93bf7649],.strategy-warning[data-v-93bf7649]{display:flex;align-items:flex-start;gap:8px;margin-top:15px;padding:10px 11px;border:1px solid rgba(86,195,192,.25);border-radius:6px;background:var(--primary-soft);color:var(--text-secondary);font-size:11px}.note-dot[data-v-93bf7649]{width:7px;height:7px;flex:0 0 auto;margin-top:5px;border-radius:50%;background:var(--primary)}.strategy-intro[data-v-93bf7649]{display:flex;align-items:flex-start;gap:10px;margin-bottom:15px}.strategy-mark[data-v-93bf7649]{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:7px;background:var(--primary-soft);color:var(--primary-strong);font-size:17px}.strategy-intro strong[data-v-93bf7649]{color:var(--text);font-size:13px}.strategy-intro p[data-v-93bf7649]{margin:4px 0 0;color:var(--text-muted);font-size:11px}.strategy-modes[data-v-93bf7649]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}.strategy-mode[data-v-93bf7649]{min-height:72px;padding:10px;border:1px solid var(--border);border-radius:7px;background:var(--surface-raised);color:var(--text-secondary);text-align:left}.strategy-mode strong[data-v-93bf7649],.strategy-mode small[data-v-93bf7649]{display:block}.strategy-mode strong[data-v-93bf7649]{color:var(--text);font-size:12px}.strategy-mode small[data-v-93bf7649]{margin-top:5px;color:var(--text-muted);font-size:10px;line-height:1.35}.strategy-mode.active[data-v-93bf7649]{border-color:var(--primary);background:var(--primary-soft)}.strategy-mode.active strong[data-v-93bf7649]{color:var(--primary-strong)}.switch-row[data-v-93bf7649]{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:48px;margin-top:9px;border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:12px}.switch-row input[data-v-93bf7649]{position:absolute;right:0;width:42px;height:24px;opacity:0;z-index:1;cursor:pointer}.switch-row i[data-v-93bf7649]{width:42px;height:24px;border-radius:20px;background:var(--border);transition:background .16s}.switch-row i[data-v-93bf7649]:after{display:block;width:18px;height:18px;margin:3px;border-radius:50%;background:#fff;content:"";transition:transform .16s}.switch-row input:checked+i[data-v-93bf7649]{background:var(--primary)}.switch-row input:checked+i[data-v-93bf7649]:after{transform:translate(18px)}.strategy-warning[data-v-93bf7649]{display:block;margin-top:15px;border-color:#e0ad5947;background:var(--warning-soft);color:var(--text-secondary)}@media (max-width: 760px){.firmware-summary[data-v-93bf7649],.form-grid[data-v-93bf7649],.strategy-modes[data-v-93bf7649]{grid-template-columns:1fr 1fr}.firmware-summary div[data-v-93bf7649]:last-child{display:none}.data-source[data-v-93bf7649]{display:none}}@media (max-width: 520px){.firmware-summary[data-v-93bf7649],.form-grid[data-v-93bf7649],.strategy-modes[data-v-93bf7649]{grid-template-columns:1fr}.firmware-summary div[data-v-93bf7649]:last-child{display:block}}.ota-page[data-v-d08cbce1]{width:100%}.ota-summary[data-v-d08cbce1]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:14px;border:1px solid var(--border);background:var(--border)}.ota-summary div[data-v-d08cbce1]{min-height:78px;padding:13px 16px;background:var(--surface)}.ota-summary span[data-v-d08cbce1],.ota-summary strong[data-v-d08cbce1],.ota-summary small[data-v-d08cbce1]{display:block}.ota-summary span[data-v-d08cbce1],.ota-summary small[data-v-d08cbce1],.table td small[data-v-d08cbce1]{color:var(--text-muted);font-size:11px}.ota-summary strong[data-v-d08cbce1]{margin:7px 0 2px;color:var(--text);font-size:20px;font-variant-numeric:tabular-nums}.module-tabs[data-v-d08cbce1]{display:flex;gap:4px;margin-bottom:14px;border-bottom:1px solid var(--border)}.module-tabs button[data-v-d08cbce1]{padding:9px 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-size:12px}.module-tabs button.active[data-v-d08cbce1]{border-bottom-color:var(--primary);color:var(--primary-strong)}.card-subtitle[data-v-d08cbce1]{margin:4px 0 0;color:var(--text-muted);font-size:11px}.page-error[data-v-d08cbce1]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);border-radius:6px;background:var(--danger-soft);color:#ffafb3;font-size:12px}.date-input[data-v-d08cbce1]{width:116px;height:36px;padding:0 10px;border:1px solid var(--border);border-radius:7px;outline:0;background:var(--surface-raised);color:var(--text);font-size:12px}.date-input[data-v-d08cbce1]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.task-alert[data-v-d08cbce1]{display:flex;gap:10px;margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.28);border-radius:6px;background:var(--danger-soft)}.task-alert>span[data-v-d08cbce1]{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;background:var(--danger);color:#240c0e;font-weight:800}.task-alert strong[data-v-d08cbce1]{color:#ffb3b6;font-size:12px}.task-alert p[data-v-d08cbce1]{margin:3px 0 0;color:var(--text-muted);font-size:11px}.ota-table[data-v-d08cbce1]{min-width:1040px}.ota-table td strong[data-v-d08cbce1],.ota-table td small[data-v-d08cbce1],.diagnostics-table td strong[data-v-d08cbce1],.diagnostics-table td small[data-v-d08cbce1]{display:block}.ota-table td small[data-v-d08cbce1],.diagnostics-table td small[data-v-d08cbce1]{margin-top:4px}.mono-cell[data-v-d08cbce1]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.date-cell[data-v-d08cbce1]{white-space:nowrap}.progress-line[data-v-d08cbce1]{width:110px;height:6px;overflow:hidden;margin-bottom:6px;border-radius:6px;background:var(--surface-raised)}.progress-line i[data-v-d08cbce1]{display:block;height:100%;border-radius:inherit;background:var(--primary);transition:width .2s ease}.error-code[data-v-d08cbce1]{color:#ff9a9e;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.btn-sm[data-v-d08cbce1]{min-height:30px;padding:0 9px;font-size:11px}.diagnostics-table[data-v-d08cbce1]{min-width:820px}.detail-modal[data-v-d08cbce1]{width:min(680px,calc(100% - 32px))}.compact-modal[data-v-d08cbce1]{width:min(500px,calc(100% - 32px))}.push-modal[data-v-d08cbce1]{width:min(620px,calc(100% - 32px))}.modal-caption[data-v-d08cbce1]{margin:4px 0 0;color:var(--text-muted);font-size:11px}.modal-summary[data-v-d08cbce1]{margin:0 0 16px;color:var(--text-secondary);font-size:12px}.detail-grid[data-v-d08cbce1]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:20px;border:1px solid var(--border);background:var(--border)}.detail-grid div[data-v-d08cbce1]{min-height:66px;padding:10px;background:var(--surface-raised)}.detail-grid span[data-v-d08cbce1],.detail-grid strong[data-v-d08cbce1]{display:block}.detail-grid span[data-v-d08cbce1]{color:var(--text-muted);font-size:10px}.detail-grid strong[data-v-d08cbce1]{margin-top:5px;color:var(--text);font-size:12px}.timeline[data-v-d08cbce1]{position:relative;padding-left:13px}.timeline[data-v-d08cbce1]:before{position:absolute;top:4px;bottom:4px;left:4px;width:1px;background:var(--border-strong);content:""}.timeline-item[data-v-d08cbce1]{position:relative;display:flex;gap:12px;min-height:58px}.timeline-dot[data-v-d08cbce1]{width:9px;height:9px;flex:0 0 auto;margin-top:4px;margin-left:-13px;border:2px solid var(--surface);border-radius:50%;background:var(--primary);box-shadow:0 0 0 1px var(--primary)}.timeline-item strong[data-v-d08cbce1]{color:var(--text);font-size:12px}.timeline-item strong small[data-v-d08cbce1]{margin-left:6px;color:var(--primary-strong);font-size:10px}.timeline-item p[data-v-d08cbce1]{margin:4px 0 0;color:var(--text-muted);font-size:10px}.timeline-empty[data-v-d08cbce1]{padding:20px 0;color:var(--text-muted);font-size:12px}.form-group[data-v-d08cbce1]{display:block;color:var(--text-secondary);font-size:12px}.form-group textarea[data-v-d08cbce1],.form-group select[data-v-d08cbce1]{width:100%;margin-top:6px;padding:9px 10px}.form-group select[data-v-d08cbce1]{border:1px solid var(--border);border-radius:7px;background:var(--surface-raised);color:var(--text)}.push-targets[data-v-d08cbce1]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:15px 0}.target-mode[data-v-d08cbce1]{min-height:66px;padding:9px;border:1px solid var(--border);border-radius:7px;background:var(--surface-raised);color:var(--text);text-align:left}.target-mode small[data-v-d08cbce1]{display:block;margin-top:5px;color:var(--text-muted);font-size:10px}.target-mode.active[data-v-d08cbce1]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong)}.strategy-warning[data-v-d08cbce1]{margin-top:15px;padding:10px 11px;border:1px solid rgba(224,173,89,.28);border-radius:6px;background:var(--warning-soft);color:var(--text-secondary);font-size:11px}.muted[data-v-d08cbce1]{color:var(--text-muted);font-size:11px}@media (max-width: 760px){.ota-summary[data-v-d08cbce1],.detail-grid[data-v-d08cbce1]{grid-template-columns:repeat(2,minmax(0,1fr))}.push-targets[data-v-d08cbce1]{grid-template-columns:1fr}.ota-filter-toolbar[data-v-d08cbce1]{align-items:stretch;flex-direction:column}.ota-filter-toolbar .search-box[data-v-d08cbce1],.ota-filter-toolbar .filter-select[data-v-d08cbce1],.ota-filter-toolbar .date-input[data-v-d08cbce1]{width:100%}}.accounts-page[data-v-512b9aa4]{width:100%}.account-toolbar[data-v-512b9aa4]{min-height:70px}.account-error[data-v-512b9aa4]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.account-name[data-v-512b9aa4]{display:flex;align-items:center;gap:10px;min-width:210px}.account-name strong[data-v-512b9aa4],.account-name small[data-v-512b9aa4]{display:block}.account-name strong[data-v-512b9aa4]{color:var(--text);font-size:13px}.account-name small[data-v-512b9aa4]{margin-top:4px;color:var(--text-muted);font-size:11px}.date-cell[data-v-512b9aa4]{color:var(--text-secondary);font-size:12px;white-space:nowrap}.row-actions[data-v-512b9aa4]{display:flex;align-items:center;gap:8px;white-space:nowrap}.btn-sm[data-v-512b9aa4]{min-height:30px;padding:0 9px;font-size:11px}.pagination-bar[data-v-512b9aa4]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid var(--border);color:var(--text-secondary);font-size:12px}.pagination-controls[data-v-512b9aa4]{display:flex;gap:8px}.btn-page[data-v-512b9aa4]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.btn-page[data-v-512b9aa4]:disabled{opacity:.45}.account-modal[data-v-512b9aa4]{width:min(480px,calc(100% - 32px))}.status-summary[data-v-512b9aa4]{margin:0 0 16px;color:var(--text-secondary)}@media (max-width:720px){.account-toolbar .toolbar[data-v-512b9aa4]{align-items:stretch;flex-direction:column}.account-toolbar .search-box[data-v-512b9aa4],.account-toolbar .filter-select[data-v-512b9aa4]{width:100%}.pagination-bar[data-v-512b9aa4]{align-items:flex-start;flex-direction:column}}.logs-page[data-v-9e0e24e3]{width:100%}.log-toolbar[data-v-9e0e24e3]{min-height:70px}.log-error[data-v-9e0e24e3]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.summary-cell[data-v-9e0e24e3]{min-width:240px;color:var(--text-secondary)}.trace-cell[data-v-9e0e24e3]{max-width:160px;overflow:hidden;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.date-cell[data-v-9e0e24e3]{color:var(--text-secondary);font-size:12px;white-space:nowrap}.pagination-bar[data-v-9e0e24e3]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid var(--border);color:var(--text-secondary);font-size:12px}.pagination-controls[data-v-9e0e24e3]{display:flex;gap:8px}.btn-page[data-v-9e0e24e3]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.btn-page[data-v-9e0e24e3]:disabled{opacity:.45}@media (max-width: 720px){.log-toolbar .toolbar[data-v-9e0e24e3]{align-items:stretch;flex-direction:column}.log-toolbar .search-box[data-v-9e0e24e3],.log-toolbar .filter-select[data-v-9e0e24e3]{width:100%}.pagination-bar[data-v-9e0e24e3]{align-items:flex-start;flex-direction:column}}.settings-page[data-v-1787672a]{width:100%}.health-grid[data-v-1787672a]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.health-item[data-v-1787672a]{min-height:70px;padding:13px 16px;background:var(--surface)}.health-item span[data-v-1787672a],.health-item strong[data-v-1787672a]{display:block}.health-item span[data-v-1787672a]{color:var(--text-muted);font-size:11px}.health-item strong[data-v-1787672a]{margin-top:8px;color:var(--warning);font-size:14px}.health-item strong.healthy[data-v-1787672a]{color:var(--success)}.settings-error[data-v-1787672a]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.key-cell[data-v-1787672a]{color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.description-cell[data-v-1787672a]{max-width:240px;color:var(--text-secondary);font-size:12px}.value-cell[data-v-1787672a]{max-width:260px;overflow:hidden;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.date-cell[data-v-1787672a]{color:var(--text-secondary);font-size:12px;white-space:nowrap}.row-actions[data-v-1787672a]{display:flex;gap:6px}.config-modal[data-v-1787672a]{width:min(620px,calc(100% - 32px))}.config-key[data-v-1787672a]{margin:0 0 16px;color:var(--primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.config-modal textarea[data-v-1787672a]{width:100%;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.history-state[data-v-1787672a]{margin:0;color:var(--text-secondary);font-size:13px}.history-error[data-v-1787672a]{color:var(--danger)}.history-list[data-v-1787672a]{display:grid;gap:10px;margin:0;padding:0;list-style:none}.history-list li[data-v-1787672a]{padding:12px;border:1px solid var(--border);background:var(--surface-raised)}.history-list li>div[data-v-1787672a]{display:flex;justify-content:space-between;gap:12px;color:var(--text-secondary);font-size:12px}.history-list strong[data-v-1787672a]{color:var(--text)}.history-list p[data-v-1787672a]{margin:8px 0 6px;color:var(--text-secondary);font-size:12px}.history-list code[data-v-1787672a]{display:block;overflow:auto;color:var(--text-muted);font-size:11px;line-height:1.6;white-space:pre-wrap}@media (max-width: 720px){.health-grid[data-v-1787672a]{grid-template-columns:1fr 1fr}}.releases-page[data-v-9fb60de8]{width:100%}.release-summary[data-v-9fb60de8]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 14px;border:1px solid var(--border);background:var(--border)}.release-summary div[data-v-9fb60de8]{min-height:68px;padding:13px 16px;background:var(--surface)}.release-summary span[data-v-9fb60de8],.release-summary strong[data-v-9fb60de8],.table small[data-v-9fb60de8]{display:block}.release-summary span[data-v-9fb60de8],.table small[data-v-9fb60de8]{color:var(--text-muted);font-size:11px}.release-summary strong[data-v-9fb60de8]{margin-top:7px;font-size:14px}.normal[data-v-9fb60de8]{color:var(--success)}.blocked[data-v-9fb60de8]{color:var(--danger)}.policy-label[data-v-9fb60de8]{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:5px;font-size:11px;font-weight:700}.policy-label.optional[data-v-9fb60de8]{background:var(--primary-soft);color:var(--primary-strong)}.policy-label.force[data-v-9fb60de8]{background:var(--danger-soft);color:var(--danger)}.date-cell[data-v-9fb60de8]{white-space:nowrap}.actions[data-v-9fb60de8]{display:flex;gap:6px;white-space:nowrap}.btn-sm[data-v-9fb60de8]{min-height:30px;padding:0 9px;font-size:11px}.release-error[data-v-9fb60de8]{margin:14px 18px 0;padding:11px 12px;border:1px solid rgba(240,113,120,.34);background:var(--danger-soft);color:#ffafb3;font-size:12px}.form-error[data-v-9fb60de8]{margin:0 0 14px}.pagination-controls[data-v-9fb60de8]{display:flex;gap:8px}.btn-page[data-v-9fb60de8]{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-raised);color:var(--text);font-size:12px}.release-modal[data-v-9fb60de8]{width:min(720px,calc(100% - 32px))}.confirm-modal[data-v-9fb60de8]{width:min(440px,calc(100% - 32px))}.modal-caption[data-v-9fb60de8]{margin:4px 0 0;color:var(--text-muted);font-size:11px}.confirm-modal p[data-v-9fb60de8]{margin:0 0 16px;color:var(--text-secondary)}.form-grid[data-v-9fb60de8]{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-group[data-v-9fb60de8]{display:block;color:var(--text-secondary);font-size:12px}.form-group input[data-v-9fb60de8],.form-group select[data-v-9fb60de8],.form-group textarea[data-v-9fb60de8]{width:100%;margin-top:6px;padding:9px 10px}.form-group small[data-v-9fb60de8]{display:block;margin-top:5px;color:var(--text-muted);font-size:10px;line-height:1.45}.form-group textarea[data-v-9fb60de8]{resize:vertical}.notes-field[data-v-9fb60de8]{margin-top:14px}.range-value[data-v-9fb60de8]{display:grid;grid-template-columns:1fr 42px;align-items:center;gap:10px;min-height:38px}.range-value input[data-v-9fb60de8]{margin:0;padding:0}.range-value strong[data-v-9fb60de8]{text-align:right;color:var(--text);font-size:12px}.switch-row[data-v-9fb60de8]{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:58px;margin-top:16px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:12px}.switch-row span[data-v-9fb60de8]{display:flex;flex-direction:column;gap:4px;padding-right:60px}.switch-row strong[data-v-9fb60de8]{color:var(--text);font-size:12px}.switch-row small[data-v-9fb60de8]{color:var(--text-muted);font-size:10px}.switch-row input[data-v-9fb60de8]{position:absolute;right:0;width:42px;height:24px;opacity:0;z-index:1;cursor:pointer}.switch-row i[data-v-9fb60de8]{flex:0 0 auto;width:42px;height:24px;border-radius:20px;background:var(--border);transition:background .16s}.switch-row i[data-v-9fb60de8]:after{display:block;width:18px;height:18px;margin:3px;border-radius:50%;background:#fff;content:"";transition:transform .16s}.switch-row input:focus-visible+i[data-v-9fb60de8]{outline:2px solid var(--primary-strong);outline-offset:2px}.switch-row input:checked+i[data-v-9fb60de8]{background:var(--primary)}.switch-row input:checked+i[data-v-9fb60de8]:after{transform:translate(18px)}@media (max-width: 720px){.release-summary[data-v-9fb60de8],.form-grid[data-v-9fb60de8]{grid-template-columns:1fr}.actions[data-v-9fb60de8]{flex-wrap:wrap}}.auth-page[data-v-b301e0a9]{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.auth-card[data-v-b301e0a9]{width:min(410px,100%);padding:32px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 24px 64px #00000040}.auth-brand[data-v-b301e0a9]{display:flex;align-items:center;gap:11px;padding-bottom:25px;border-bottom:1px solid var(--border)}.auth-mark[data-v-b301e0a9]{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(116,216,208,.65);border-radius:50%;background:var(--primary-strong);color:#092022;font-size:18px;font-weight:800}.auth-brand div[data-v-b301e0a9]{display:flex;flex-direction:column;gap:4px}.auth-brand strong[data-v-b301e0a9]{font-size:14px;letter-spacing:.1em}.auth-brand small[data-v-b301e0a9]{color:var(--text-muted);font-size:10px}.auth-heading[data-v-b301e0a9]{padding:28px 0 23px}.auth-eyebrow[data-v-b301e0a9]{color:var(--primary);font-size:10px;font-weight:700;letter-spacing:.16em}.auth-heading h1[data-v-b301e0a9]{margin:8px 0 7px;font-size:25px;font-weight:750}.auth-heading p[data-v-b301e0a9]{margin:0;color:var(--text-muted);font-size:12px}.auth-form[data-v-b301e0a9]{display:flex;flex-direction:column;gap:16px}.auth-field[data-v-b301e0a9]{display:flex;flex-direction:column;gap:7px}.auth-field label[data-v-b301e0a9]{color:var(--text-secondary);font-size:12px;font-weight:650}.auth-field input[data-v-b301e0a9]{width:100%;height:42px;padding:0 12px;border:1px solid var(--border);border-radius:7px;outline:none;background:var(--surface-raised);color:var(--text);font-size:13px}.auth-field input[data-v-b301e0a9]::placeholder{color:var(--text-muted)}.auth-field input[data-v-b301e0a9]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.auth-password[data-v-b301e0a9]{position:relative}.auth-password input[data-v-b301e0a9]{padding-right:42px}.auth-password-toggle[data-v-b301e0a9]{position:absolute;top:50%;right:8px;width:28px;height:28px;border:0;border-radius:5px;background:transparent;color:var(--text-muted);font-size:17px;transform:translateY(-50%)}.auth-password-toggle[data-v-b301e0a9]:hover{background:var(--surface-hover);color:var(--primary-strong)}.auth-message[data-v-b301e0a9]{padding:10px 11px;border:1px solid rgba(240,113,120,.35);border-radius:6px;background:var(--danger-soft);color:#ff9a9e;font-size:12px}.auth-submit[data-v-b301e0a9]{height:42px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--primary);border-radius:7px;background:var(--primary);color:#082021;font-size:13px;font-weight:700}.auth-submit span[data-v-b301e0a9]{font-size:17px}.auth-submit[data-v-b301e0a9]:hover{border-color:var(--primary-strong);background:var(--primary-strong)}.auth-footer[data-v-b301e0a9]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:25px;padding-top:15px;border-top:1px solid var(--border);color:var(--text-muted);font-size:10px}.auth-link[data-v-b301e0a9]{color:var(--primary-strong);font-size:11px;text-decoration:none}.auth-link[data-v-b301e0a9]:hover{color:var(--text)}@media (max-width: 480px){.auth-card[data-v-b301e0a9]{padding:25px 20px}.auth-footer[data-v-b301e0a9]{align-items:flex-start;flex-direction:column}}.access-denied[data-v-ce39e27a]{min-height:min(520px,calc(100vh - 150px));display:grid;align-content:center;justify-items:start;max-width:560px;gap:12px}.access-denied-code[data-v-ce39e27a]{color:var(--primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:700;letter-spacing:.14em}.access-denied h1[data-v-ce39e27a]{margin:0;color:var(--text);font-size:26px}.access-denied p[data-v-ce39e27a]{margin:0 0 10px;color:var(--text-muted);font-size:13px;line-height:1.7}.page-shell[data-v-10cac3ae]{width:100%}.page-error[data-v-10cac3ae],.form-error[data-v-10cac3ae]{margin:0 0 14px;padding:11px 13px;border:1px solid rgba(240,113,120,.35);background:var(--danger-soft);color:#ffadb1;font-size:12px}.tag-muted[data-v-10cac3ae]{border-color:var(--border);background:var(--surface-raised);color:var(--text-muted)}.checkbox-cell[data-v-10cac3ae]{width:42px}.selected-toolbar[data-v-10cac3ae]{color:var(--text-muted)}.carousel-table[data-v-10cac3ae]{min-width:960px}.carousel-table td[data-v-10cac3ae]:nth-child(5){min-width:220px;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.carousel-table th[data-v-10cac3ae]:last-child,.carousel-table td[data-v-10cac3ae]:last-child{position:sticky;right:0;min-width:128px;width:128px;z-index:2;background:var(--surface);box-shadow:-10px 0 14px #0a10162e}.carousel-table th[data-v-10cac3ae]:last-child{z-index:3;background:var(--surface-raised)}.carousel-table tr:hover td[data-v-10cac3ae]:last-child{background:var(--surface-hover)}.banner-cell[data-v-10cac3ae]{display:flex;align-items:center;gap:11px;min-width:260px}.banner-copy[data-v-10cac3ae]{display:flex;flex-direction:column;gap:4px;min-width:0}.banner-copy strong[data-v-10cac3ae]{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.banner-copy small[data-v-10cac3ae],.current-image[data-v-10cac3ae]{overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.form-grid[data-v-10cac3ae]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-preview[data-v-10cac3ae]{display:block;width:180px;max-height:90px;margin-top:8px;border-radius:7px;object-fit:cover}@media (max-width: 760px){.form-grid[data-v-10cac3ae]{grid-template-columns:1fr}.banner-cell[data-v-10cac3ae]{min-width:180px}}.content-page[data-v-f25e2d21]{display:flex;flex-direction:column;gap:16px}.content-tabs[data-v-f25e2d21]{display:flex;gap:8px;border-bottom:1px solid var(--border)}.content-tab[data-v-f25e2d21]{min-height:36px;padding:0 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;font:inherit;font-size:12px}.content-tab.active[data-v-f25e2d21]{border-bottom-color:var(--primary-strong);color:var(--text);font-weight:700}.page-error[data-v-f25e2d21],.form-error[data-v-f25e2d21]{padding:11px 13px;border:1px solid rgba(240,113,120,.35);background:var(--danger-soft);color:#ffadb1;font-size:12px}.page-success[data-v-f25e2d21]{padding:11px 13px;border:1px solid rgba(82,200,120,.32);background:var(--success-soft);color:#76dc95;font-size:12px}.tag-muted[data-v-f25e2d21]{border-color:var(--border);background:var(--surface-raised);color:var(--text-muted)}td strong[data-v-f25e2d21],td small[data-v-f25e2d21]{display:block}td strong[data-v-f25e2d21]{color:var(--text);font-size:12px}td small[data-v-f25e2d21]{max-width:520px;margin-top:4px;overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.draft-state[data-v-f25e2d21]{display:block;margin-top:5px;color:var(--warning);font-size:10px}.compact-empty[data-v-f25e2d21]{padding:44px 20px}.form-grid[data-v-f25e2d21]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.wide-modal[data-v-f25e2d21]{width:min(760px,calc(100vw - 32px))}@media (max-width: 680px){.form-grid[data-v-f25e2d21]{grid-template-columns:1fr}}:root{--bg: #0d1117;--surface: #131a21;--surface-raised: #18222a;--surface-soft: #1d2932;--surface-hover: #22313b;--border: #2b3943;--border-strong: #3b4c57;--text: #e8eef2;--text-secondary: #a6b4bc;--text-muted: #71818b;--primary: #56c3c0;--primary-strong: #74d8d0;--primary-soft: rgba(86, 195, 192, .14);--success: #52c878;--success-soft: rgba(82, 200, 120, .14);--danger: #f07178;--danger-soft: rgba(240, 113, 120, .14);--warning: #e0ad59;--warning-soft: rgba(224, 173, 89, .14);--purple: #b79be8;--primary-bg: var(--primary-soft);--primary-light: var(--primary-soft);--bg-alt: var(--surface-raised);--radius: 8px;--shadow: 0 10px 30px rgba(0, 0, 0, .18);--sidebar-width: 248px;--sidebar-collapsed-width: 76px;color-scheme:dark}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit}.admin-layout{min-height:100vh;display:flex;background:var(--bg)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:var(--sidebar-width);display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);transition:width .2s ease,transform .2s ease}.collapsed .sidebar{width:var(--sidebar-collapsed-width)}.sidebar-brand{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border)}.brand-lockup{display:flex;align-items:center;gap:11px;min-width:0;text-decoration:none}.brand-mark{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border:1px solid rgba(116,216,208,.65);border-radius:50%;color:#092022;background:var(--primary-strong);font-size:17px;font-weight:800}.brand-copy{display:flex;flex-direction:column;line-height:1.1;white-space:nowrap}.brand-copy strong{letter-spacing:.08em;font-size:14px}.brand-copy small{margin-top:4px;color:var(--text-muted);font-size:10px}.sidebar-collapse{width:26px;height:26px;flex:0 0 auto;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-secondary);line-height:1}.sidebar-collapse:hover{color:var(--primary-strong);border-color:var(--primary);background:var(--primary-soft)}.collapsed .sidebar-brand{position:relative;justify-content:center;padding:0}.collapsed .brand-lockup{justify-content:center}.collapsed .brand-copy{display:none}.collapsed .sidebar-collapse{position:absolute;top:22px;right:-13px;z-index:1;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-raised);box-shadow:0 4px 12px #0000003d}.sidebar-nav{flex:1;min-height:0;overflow-y:auto;padding:16px 10px 12px}.nav-section-label{padding:12px 12px 7px;color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.collapsed .nav-section-label{height:20px;overflow:hidden;padding:12px 0 0;font-size:0}.nav-link,.nav-group-toggle{width:100%;display:flex;align-items:center;gap:11px;min-height:40px;padding:9px 12px;margin:2px 0;border:0;border-radius:7px;background:transparent;color:var(--text-secondary);font-size:13px;text-decoration:none;text-align:left;transition:background .16s ease,color .16s ease}.nav-link:hover,.nav-group-toggle:hover{background:var(--surface-raised);color:var(--text)}.nav-link.active{background:var(--primary-soft);color:var(--primary-strong);font-weight:650}.nav-icon{width:20px;flex:0 0 20px;color:var(--text-muted);font-size:17px;line-height:1;text-align:center}.nav-link.active .nav-icon,.nav-link:hover .nav-icon,.nav-group-toggle:hover .nav-icon{color:var(--primary-strong)}.nav-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-group-toggle{justify-content:space-between}.nav-group-title{display:flex;align-items:center;gap:11px;min-width:0}.nav-caret{color:var(--text-muted);font-size:19px;line-height:1;transform:rotate(0);transition:transform .16s ease}.nav-caret.expanded{transform:rotate(90deg)}.nav-subnav{padding-left:17px}.nav-link.sub{min-height:36px;font-size:12px}.nav-link.sub .nav-icon{font-size:15px}.collapsed .nav-link,.collapsed .nav-group-toggle{justify-content:center;padding-left:0;padding-right:0}.collapsed .nav-group-title{justify-content:center}.collapsed .nav-label,.collapsed .nav-caret,.collapsed .nav-subnav{display:none}.sidebar-footer{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 18px;border-top:1px solid var(--border);color:var(--text-muted);font-size:11px}.online-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.version{margin-left:auto;color:var(--text-muted)}.collapsed .sidebar-footer{justify-content:center;padding:0}.collapsed .sidebar-footer .nav-label,.collapsed .sidebar-footer .version{display:none}.sidebar-user{display:flex;align-items:center;gap:8px;padding:13px 14px;border-top:1px solid var(--border)}.user-summary{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.user-avatar{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;background:#29494a;color:var(--primary-strong);font-size:13px;font-weight:700}.user-avatar.small{width:30px;height:30px;font-size:12px}.user-details{display:flex;flex-direction:column;min-width:0;line-height:1.25}.user-details strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.user-details small{margin-top:3px;color:var(--text-muted);font-size:10px}.collapsed .sidebar-user{justify-content:center;padding-left:0;padding-right:0}.collapsed .sidebar-user .user-details,.collapsed .sidebar-user .icon-button{display:none}.main-shell{width:calc(100% - var(--sidebar-width));min-height:100vh;margin-left:var(--sidebar-width);transition:margin-left .2s ease,width .2s ease}.collapsed .main-shell{width:calc(100% - var(--sidebar-collapsed-width));margin-left:var(--sidebar-collapsed-width)}.topbar{position:sticky;top:0;z-index:20;min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 28px;background:#131a21f0;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar-leading,.topbar-actions{display:flex;align-items:center;min-width:0}.topbar-leading{gap:14px}.breadcrumbs{display:flex;align-items:baseline;gap:9px;min-width:0;white-space:nowrap}.breadcrumb-root,.breadcrumb-separator,.breadcrumb-en{color:var(--text-muted);font-size:12px}.breadcrumbs strong{font-size:14px}.breadcrumb-en{color:var(--text-muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.topbar-actions{gap:10px}.data-environment-control{height:38px;display:grid;grid-template-columns:8px auto auto;grid-template-rows:18px 12px;align-items:center;column-gap:7px;padding:4px 8px;border:1px solid var(--border);border-radius:7px;background:var(--surface-raised)}.data-environment-control label{color:var(--text-secondary);font-size:10px;font-weight:650}.data-environment-control select{min-width:68px;height:24px;grid-row:1 / span 2;grid-column:3;padding:0 20px 0 7px;border-color:transparent;background-color:transparent;color:var(--text);font-size:11px;font-weight:700}.data-environment-control small{grid-column:2;color:var(--text-muted);font-size:9px;line-height:1;white-space:nowrap}.data-environment-dot{width:7px;height:7px;grid-row:1 / span 2;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px #54b98a1f}.data-environment-control.is-demo{border-color:#f0b14761;background:#f0b1471a}.data-environment-control.is-demo .data-environment-dot{background:var(--warning);box-shadow:0 0 0 3px #f0b14724}.preview-environment-control{min-width:150px}.global-search{position:relative;display:flex;align-items:center;gap:8px;width:min(270px,28vw);height:36px;padding:0 9px 0 11px;border:1px solid var(--border);border-radius:7px;background:var(--surface-raised)}.global-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.search-symbol{color:var(--text-muted);font-size:21px;line-height:1;transform:rotate(-20deg)}.global-search input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.global-search input::placeholder{color:var(--text-muted)}.global-search kbd{min-width:18px;padding:1px 4px;border:1px solid var(--border-strong);border-radius:4px;color:var(--text-muted);font-size:10px;text-align:center}.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;padding:5px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);box-shadow:var(--shadow)}.search-results button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 9px;border:0;border-radius:5px;background:transparent;color:var(--text);text-align:left}.search-results button:hover{background:var(--surface-hover)}.search-results small,.search-results p{color:var(--text-muted);font-size:10px}.search-results p{margin:8px;text-align:center}.icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:7px;background:var(--surface-raised);color:var(--text-secondary);font-size:18px;line-height:1}.icon-button:hover{border-color:var(--primary);color:var(--primary-strong);background:var(--primary-soft)}.icon-button.ghost{width:28px;height:28px;border-color:transparent;background:transparent;font-size:17px}.account-menu{position:relative}.account-trigger{display:flex;align-items:center;gap:8px;padding:2px 3px 2px 5px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text);text-align:left}.account-trigger:hover{border-color:var(--border);background:var(--surface-raised)}.account-trigger-copy{display:flex;flex-direction:column;line-height:1.2}.account-trigger-copy strong{font-size:12px}.account-trigger-copy small{margin-top:3px;color:var(--text-muted);font-size:10px}.account-chevron{color:var(--text-muted);font-size:15px}.account-popover{position:absolute;top:calc(100% + 8px);right:0;width:190px;padding:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);box-shadow:var(--shadow)}.account-popover-header{display:flex;flex-direction:column;gap:3px;padding:9px;border-bottom:1px solid var(--border)}.account-popover-header strong{font-size:12px}.account-popover-header small{color:var(--text-muted);font-size:10px;overflow:hidden;text-overflow:ellipsis}.account-popover>button{width:100%;margin-top:4px;padding:8px 9px;border:0;border-radius:5px;background:transparent;color:var(--danger);font-size:12px;text-align:left}.account-popover>button:hover{background:var(--danger-soft)}.main-content{min-height:calc(100vh - 68px);padding:28px;overflow-x:hidden}.mobile-menu-button,.mobile-backdrop{display:none}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-title{margin:0;color:var(--text);font-size:23px;font-weight:750}.page-subtitle{margin:5px 0 0;color:var(--text-muted);font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.stat-card{position:relative;overflow:hidden;padding:16px 17px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:none;transition:border-color .16s ease,background .16s ease}.stat-card:hover{border-color:var(--border-strong);background:var(--surface-raised);box-shadow:none;transform:none}.stat-card:after{position:absolute;right:17px;bottom:15px;width:34px;height:3px;border-radius:3px;background:var(--primary);content:"";opacity:.7}.stat-card:nth-child(2):after{background:var(--success)}.stat-card:nth-child(3):after{background:var(--warning)}.stat-card:nth-child(4):after{background:var(--purple)}.stat-card .label{margin-bottom:8px;color:var(--text-secondary);font-size:12px}.stat-card .value{color:var(--text);font-size:28px;font-weight:750;line-height:1.15;font-variant-numeric:tabular-nums}.stat-card .trend{margin-top:5px;color:var(--success);font-size:11px}.card{width:100%;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:none}.card-header{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:62px;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--surface)}.card-title{margin:0;color:var(--text);font-size:14px;font-weight:700}.card-body{padding:18px}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.search-box{position:relative}.search-box input,.filter-select,.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border);border-radius:7px;outline:none;background:var(--surface-raised);color:var(--text)}.search-box input{width:260px;height:36px;padding:0 11px 0 34px;font-size:12px}.search-box input::placeholder{color:var(--text-muted)}.search-box input:focus,.filter-select:focus,.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.search-box .search-icon{position:absolute;top:50%;left:11px;color:var(--text-muted);font-size:18px;line-height:1;transform:translateY(-54%) rotate(-20deg)}.filter-select{height:36px;min-width:126px;padding:0 28px 0 10px;font-size:12px}.table-wrapper{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:12px}.table th{padding:11px 14px;border-bottom:1px solid var(--border);background:var(--surface-raised);color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-align:left;white-space:nowrap}.table td{padding:12px 14px;border-bottom:1px solid rgba(43,57,67,.76);color:var(--text-secondary);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tr:hover td{background:#22313b61}.table td:first-child,.table th:first-child{padding-left:18px}.table td:last-child,.table th:last-child{padding-right:18px}.table td .actions{flex-wrap:nowrap}.checkbox{width:15px;height:15px;accent-color:var(--primary);cursor:pointer}.thumb{width:42px;height:42px;border:1px solid var(--border);border-radius:6px;object-fit:cover}.avatar{width:34px;height:34px;border-radius:50%;object-fit:cover}.avatar-placeholder{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(86,195,192,.35);border-radius:50%;background:var(--primary-soft);color:var(--primary-strong);font-size:13px;font-weight:700}.tag{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border:1px solid transparent;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}.tag-primary,.tag-info{border-color:#56c3c052;background:var(--primary-soft);color:var(--primary-strong)}.tag-success{border-color:#52c87852;background:var(--success-soft);color:#76dc95}.tag-danger{border-color:#f0717857;background:var(--danger-soft);color:#ff9a9e}.tag-warning{border-color:#e0ad5957;background:var(--warning-soft);color:#efc474}.actions{display:flex;align-items:center;gap:6px}.btn{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 13px;border:1px solid var(--border);border-radius:7px;background:var(--surface-raised);color:var(--text-secondary);font-size:12px;font-weight:650;transition:border-color .16s ease,color .16s ease,background .16s ease}.btn:hover{border-color:var(--border-strong);background:var(--surface-hover);color:var(--text)}.btn-primary{border-color:var(--primary);background:var(--primary);color:#082021}.btn-primary:hover{border-color:var(--primary-strong);background:var(--primary-strong);color:#082021;transform:none}.btn-secondary{background:var(--surface-raised);color:var(--text-secondary)}.btn-danger{border-color:#f0717866;background:var(--danger-soft);color:#ff9a9e}.btn-danger:hover{border-color:var(--danger);background:#f0717838;color:#ffb3b6}.btn-icon{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted);font-size:14px}.btn-icon:hover{border-color:var(--border);background:var(--surface-hover);color:var(--primary-strong)}.btn-close{border:0;background:transparent;color:var(--text-muted)}.batch-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:10px 13px;border:1px solid rgba(86,195,192,.26);border-radius:7px;background:var(--primary-soft)}.batch-bar .selected-count{color:var(--primary-strong);font-size:12px;font-weight:650}.empty-state{padding:54px 20px;color:var(--text-secondary);text-align:center}.empty-state .empty-icon{width:50px;height:50px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:12px;border:1px solid var(--border);border-radius:50%;background:var(--surface-raised);color:var(--text-muted);font-size:24px}.empty-state h3{margin:0 0 6px;color:var(--text);font-size:15px}.empty-state p{margin:0 0 16px;color:var(--text-muted);font-size:12px}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;border-top:1px solid var(--border);color:var(--text-muted);font-size:11px}.pagination-controls{display:flex;align-items:center;gap:5px}.btn-page{min-width:28px;height:28px;padding:0 6px;border:1px solid var(--border);border-radius:5px;background:var(--surface-raised);color:var(--text-secondary);font-size:11px}.btn-page:hover:not(:disabled),.btn-page.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong)}.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.quick-action{display:flex;align-items:center;gap:10px;min-height:62px;padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--surface-raised);color:var(--text-secondary);text-decoration:none;font-size:12px;font-weight:650;transition:border-color .16s ease,background .16s ease}.quick-action:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--text)}.quick-action .action-icon{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:var(--primary-soft);color:var(--primary-strong);font-size:17px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#04080cc7;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{display:flex;flex-direction:column;width:min(640px,100%);max-height:88vh;overflow:hidden;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);box-shadow:0 24px 64px #00000061}.modal-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--border)}.modal-header h3{margin:0;font-size:15px}.modal-close{width:30px;height:30px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted);font-size:21px;line-height:1}.modal-close:hover{border-color:var(--border);background:var(--surface-hover);color:var(--text)}.modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:20px}.modal-footer{display:flex;flex:0 0 auto;justify-content:flex-end;gap:8px;padding-top:16px;border-top:1px solid var(--border)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;color:var(--text-secondary);font-size:12px;font-weight:600}.form-group input,.form-group textarea,.form-group select{width:100%;padding:9px 11px;font-size:12px}.form-group textarea{min-height:94px;resize:vertical}.form-hint{margin:6px 0 0;color:var(--text-muted);font-size:11px}.image-preview{max-width:200px;margin-top:9px}.image-preview img{width:100%;border:1px solid var(--border);border-radius:7px}.list-editor{margin-top:9px}.list-item{display:flex;gap:8px;margin-bottom:8px}.list-item input{flex:1}.btn-remove,.list-add{min-height:34px;padding:0 10px;border-radius:6px;font-size:11px}.btn-remove{border:1px solid rgba(240,113,120,.3);background:var(--danger-soft);color:#ff9a9e}.list-add{border:1px dashed var(--border-strong);background:transparent;color:var(--text-secondary)}.list-add:hover{border-color:var(--primary);color:var(--primary-strong)}.loading{padding:54px 20px;color:var(--text-muted);text-align:center}.spinner{width:30px;height:30px;margin:0 auto 12px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-grid,.grid2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:14px}.dashboard-panel{min-height:260px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-heading h3{margin:0;font-size:14px}.panel-heading span{color:var(--text-muted);font-size:11px}.trend-chart{width:100%;height:210px}.trend-chart svg{width:100%;height:100%}.todo-list{display:flex;flex-direction:column;gap:4px}.todo-item{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid var(--border)}.todo-item:last-child{border-bottom:0}.todo-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--warning)}.todo-content{flex:1;min-width:0}.todo-content strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);font-size:12px;font-weight:500}.todo-content small{display:block;margin-top:2px;color:var(--text-muted);font-size:10px}.todo-empty{padding:30px 0;color:var(--text-muted);text-align:center;font-size:12px}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.kpi{padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.kpi .l{color:var(--text-muted);font-size:11px}.kpi .v{margin-top:7px;color:var(--text);font-size:24px;font-weight:750;font-variant-numeric:tabular-nums}.kpi .d{margin-top:3px;color:var(--text-muted);font-size:10px}.kpi .up{color:var(--success)}.kpi .down{color:var(--danger)}@media (max-width: 1180px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid,.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.global-search{width:220px}}@media (max-width: 900px){.topbar{padding:0 18px}.main-content{padding:22px 18px}.dashboard-grid,.grid2{grid-template-columns:1fr}.account-trigger-copy,.account-chevron,.data-environment-control label,.data-environment-control small{display:none}.data-environment-control{display:flex;gap:3px;padding:4px 5px}}@media (max-width: 720px){.sidebar{transform:translate(-100%);box-shadow:18px 0 42px #0000004d}.mobile-open .sidebar{transform:translate(0)}.mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:block;background:#04080c9e}.main-shell,.collapsed .main-shell{width:100%;margin-left:0}.mobile-menu-button{display:inline-flex}.sidebar-collapse{display:none}.topbar{min-height:62px;gap:10px}.breadcrumb-root,.breadcrumb-separator,.breadcrumb-en{display:none}.global-search{width:min(42vw,190px)}.global-search kbd{display:none}.main-content{min-height:calc(100vh - 62px);padding:18px 14px}.page-header{align-items:stretch;flex-direction:column;gap:12px}.page-header>.toolbar,.page-header>.btn{align-self:flex-start}.stats-grid,.kpi-grid,.quick-actions{grid-template-columns:1fr 1fr}.card-header{align-items:stretch;flex-direction:column}.card-header .toolbar,.search-box,.search-box input{width:100%}.pagination-bar{align-items:flex-start;flex-direction:column}.pagination-controls{flex-wrap:wrap}.modal-overlay{padding:12px}.modal-body{padding:16px}}@media (max-width: 430px){.topbar-actions{gap:5px}.global-search{width:42vw}.topbar-actions>.icon-button{display:none}.stats-grid,.kpi-grid,.quick-actions{grid-template-columns:1fr}.toolbar .filter-select{flex:1;min-width:0}}
