.metric-strip[data-v-0482aeb6]{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:28px;display:grid}.metric-strip div[data-v-0482aeb6]{border:1px solid var(--line);border-radius:var(--radius-m);background:#fff;padding:16px 18px}.metric-strip span[data-v-0482aeb6]{color:var(--muted);margin-bottom:8px;font-size:11px;display:block}.metric-strip strong[data-v-0482aeb6]{font-size:24px;font-weight:650}.dashboard-grid[data-v-0482aeb6]{gap:24px;display:grid}form[data-v-cdaaa6ca]{gap:1rem;display:grid}label[data-v-cdaaa6ca]{gap:.5rem;display:grid}form input[data-v-cdaaa6ca]:not([type=checkbox]),form select[data-v-cdaaa6ca]{width:100%}.provider-dialog[data-v-cdaaa6ca]{box-sizing:border-box;color:var(--ink);border-radius:var(--radius-l);overflow-wrap:anywhere;background:#fff;border:0;width:min(32rem,100% - 2rem);max-height:calc(100dvh - 2rem);margin:auto;padding:1.5rem;position:fixed;inset:0;overflow:auto;box-shadow:0 1rem 4rem #0004}.provider-dialog[data-v-cdaaa6ca]::backdrop{background:#10232b88}.provider-editor[data-v-cdaaa6ca]{width:min(42rem,100% - 2rem)}.dialog-heading[data-v-cdaaa6ca]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.dialog-heading h2[data-v-cdaaa6ca]{margin:0}.enabled-control[data-v-cdaaa6ca]{align-items:center;display:flex}.status-help[data-v-cdaaa6ca]{color:var(--muted);margin-top:12px;font-size:.875rem}.dialog-message[data-v-cdaaa6ca]:empty{display:none}.row-actions[data-v-cdaaa6ca]{white-space:nowrap}.row-actions .button+.button[data-v-cdaaa6ca]{margin-left:6px}.panel-empty[data-v-cdaaa6ca]{color:var(--muted);padding:24px;font-size:13px}.panel[data-v-cdaaa6ca]{margin-top:28px;overflow-x:auto}@media (width<=480px){.provider-dialog[data-v-cdaaa6ca]{padding:1rem}}.history-panel[data-v-f184a8e5]{margin-top:24px;padding:20px 24px}.history-heading[data-v-f184a8e5]{justify-content:space-between;align-items:center;gap:16px;display:flex}.history-heading h2[data-v-f184a8e5]{font-size:15px}.history-note[data-v-f184a8e5]{color:var(--muted);margin-top:8px;font-size:12px}.table-scroll[data-v-f184a8e5]{margin-top:14px}.settings-panel[data-v-862c8510]{padding:1.5rem}.settings-panel p[data-v-862c8510]{color:var(--muted);margin-top:10px;font-size:13px}.settings-dialog[data-v-862c8510]{box-sizing:border-box;border-radius:var(--radius-l);width:min(36rem,100% - 2rem);max-height:calc(100dvh - 2rem);color:var(--ink);overflow-wrap:anywhere;background:#fff;border:0;margin:auto;padding:1.5rem;position:fixed;inset:0;overflow:auto;box-shadow:0 1rem 4rem #0004}.settings-dialog[data-v-862c8510]::backdrop{background:#10232b88}.settings-panel .empty-actions[data-v-862c8510]{justify-content:flex-start;margin-top:18px}.settings-dialog>p[data-v-862c8510]{margin:12px 0 20px;font-size:13px}.settings-dialog>h2[data-v-862c8510]{font-size:19px}.editor-form label[data-v-862c8510]{gap:6px}form input[data-v-862c8510]:not([type=checkbox]){width:100%}form h2[data-v-862c8510]{margin-bottom:.25rem}.settings-dialog[data-v-36e9d36a]{box-sizing:border-box;border-radius:var(--radius-l);width:min(46rem,100% - 2rem);max-height:calc(100dvh - 2rem);color:var(--ink);overflow-wrap:anywhere;background:#fff;border:0;margin:auto;padding:1.5rem 1.75rem;position:fixed;inset:0;overflow:auto;box-shadow:0 1rem 4rem #0004}.settings-dialog[data-v-36e9d36a]::backdrop{background:#10232b88}.table-toolbar .empty-actions[data-v-36e9d36a]{margin-top:0}.account-pick[data-v-36e9d36a]{align-items:baseline;gap:8px;display:flex}.all-pick[data-v-36e9d36a]{align-items:center;gap:6px;font-weight:600;display:inline-flex}.pager[data-v-36e9d36a]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pager-actions[data-v-36e9d36a]{align-items:center;gap:10px;display:inline-flex}.cell-status .badge[data-v-36e9d36a]{margin-bottom:4px}.cell-status .button[data-v-36e9d36a]{margin-top:6px;display:block}.cell-status .monitor-toggle[data-v-36e9d36a]{margin:0 6px 4px 0;display:inline-flex}.monitor-toggle[aria-pressed=true][data-v-36e9d36a]{color:var(--accent);border-color:var(--accent)}.back-link[data-v-1c4664c6]{color:var(--accent);margin-bottom:12px;font-size:13px;display:inline-block}.account-header[data-v-1c4664c6]{overflow-wrap:anywhere;margin-bottom:26px}.account-facts[data-v-1c4664c6]{flex-wrap:wrap;gap:16px 40px;margin:14px 0 0;display:flex}.account-facts dt[data-v-1c4664c6]{color:var(--muted);font-size:11px}.account-facts dd[data-v-1c4664c6]{margin:4px 0 0;font-size:13px}.range-picker[data-v-1c4664c6]{gap:6px;display:flex}.range-picker button[aria-pressed=true][data-v-1c4664c6]{background:var(--accent);color:#fff;border-color:var(--accent)}.history-summary[data-v-1c4664c6]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px;display:flex}.history-summary span[data-v-1c4664c6],.history-summary p[data-v-1c4664c6]{color:var(--muted);font-size:12px}.history-summary strong[data-v-1c4664c6]{overflow-wrap:anywhere;margin-top:4px;font-size:24px;display:block}.history-summary small[data-v-1c4664c6]{font-size:12px;font-weight:400}.chart-scroll[data-v-1c4664c6]{padding:0 12px;overflow-x:auto}svg[data-v-1c4664c6]{width:100%;display:block}svg text[data-v-1c4664c6]{fill:var(--muted);font-size:11px}.chart-grid line[data-v-1c4664c6]{stroke:var(--line)}.chart-day[data-v-1c4664c6]{cursor:pointer;outline-offset:-2px}.chart-hit[data-v-1c4664c6]{fill:#0000}.chart-day:hover .chart-hit[data-v-1c4664c6],.chart-day:focus .chart-hit[data-v-1c4664c6]{fill:var(--wash)}.spend-bar[data-v-1c4664c6]{fill:var(--accent)}.missing-bar[data-v-1c4664c6]{fill:none;stroke:var(--muted);stroke-dasharray:3 2}.chart-caption[data-v-1c4664c6]{color:var(--muted);min-height:36px;padding:0 22px 18px;font-size:12px}.daily-table summary[data-v-1c4664c6]{cursor:pointer;padding:16px 22px;font-size:13px;font-weight:600}@media (width<=650px){.table-toolbar[data-v-1c4664c6]{flex-direction:column;align-items:flex-start}.history-summary strong[data-v-1c4664c6]{font-size:20px}}:root{color:#15334e;font-synthesis:none;--ink:#15334e;--accent:#4f46e5;--muted:#607488;--line:#dce5ec;--wash:#f5f8fa;--ok:#0e7a4e;--warn:#9a5b13;--bad:#b3372e;--info:#24678d;--radius-s:4px;--radius-m:6px;--radius-l:10px;--mono:ui-monospace, "Cascadia Mono", Consolas, "Courier New", monospace;background:#fff;font-family:Microsoft YaHei UI,PingFang SC,Noto Sans SC,sans-serif;font-weight:400;line-height:1.6}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;color:#687c8e;background:#eef2f5;border-color:#e3e9ee}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin:0}h1{letter-spacing:-.6px;font-size:28px;font-weight:650;line-height:1.4}h2{font-size:20px;font-weight:650}h3{font-size:18px;font-weight:600}.skip-link{z-index:10;border:2px solid var(--accent);background:#fff;padding:10px 20px;position:fixed;top:-80px;left:20px}.skip-link:focus{top:16px}.app-shell{grid-template-columns:228px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--line);background:#f8fafb;flex-direction:column;padding:32px 20px 24px;display:flex}.brand{align-items:center;gap:12px;padding:0 4px 38px;font-size:22px;font-weight:700;display:flex}.brand small{color:var(--muted);letter-spacing:.4px;margin-top:3px;font-size:11px;font-weight:400;display:block}.brand-mark{align-items:end;gap:3px;width:32px;height:33px;display:flex}.brand-mark i{background:var(--ink);width:7px;height:16px}.brand-mark i:nth-child(2){height:31px}.brand-mark i:nth-child(3){background:var(--accent);height:24px}nav{gap:8px;display:grid}.nav-item{color:#4b6276;border-radius:5px;align-items:center;gap:13px;padding:12px 16px;font-size:14px;display:flex}.nav-item:hover{background:#eef1fb}.nav-item.router-link-active{color:#3b34b0;box-shadow:inset 3px 0 0 var(--accent);background:#eceefe;font-weight:600}.nav-icon{text-align:center;width:20px;font-size:20px;line-height:1}.sidebar-note{color:var(--muted);margin-top:auto;padding:36px 16px 0;font-size:12px}.sidebar-note small{margin-top:4px;padding-left:15px;display:block}.status-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-right:8px;display:inline-block}.workspace{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--line);height:76px;color:var(--muted);justify-content:space-between;align-items:center;padding:0 40px;font-size:12px;display:flex}.topbar .empty-actions{margin-top:0}.session-link{border:1px solid var(--line);border-radius:var(--radius-s);color:var(--ink);background:#fff;padding:6px 14px}.session-user{align-items:center;gap:10px;display:inline-flex}.user-avatar{object-fit:cover;border:1px solid var(--line);background:var(--wash);border-radius:50%;flex-shrink:0;width:30px;height:30px}.user-avatar.user-fallback{background:var(--accent);color:#fff;border-color:var(--accent);justify-content:center;align-items:center;font-size:13px;font-weight:600;display:inline-flex}.user-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:12em;font-size:13px;font-weight:600;overflow:hidden}main{flex:1;padding:40px}footer{border-top:1px solid var(--line);color:var(--muted);margin:0 40px;padding:18px 0;font-size:11px}.login-layout{grid-template-columns:minmax(0,1fr) minmax(340px,420px);align-items:center;gap:clamp(32px,5vw,88px);max-width:1120px;margin:60px auto;display:grid}.section-rule{background:var(--accent);width:44px;height:5px;margin-bottom:28px;display:block}.login-intro h1{font-size:22px}.lead{letter-spacing:-.8px;margin:18px 0 24px;font-size:clamp(26px,2.8vw,40px);font-weight:650;line-height:1.55}.intro-description{color:var(--muted);max-width:400px;font-size:14px;line-height:1.9}.scope-list{border-top:1px solid var(--line);color:#47667a;flex-wrap:wrap;gap:20px;margin-top:40px;padding-top:24px;font-size:13px;display:flex}.login-panel{border:1px solid var(--line);border-top:3px solid var(--ink);border-radius:var(--radius-m);padding:30px}.login-panel>p{color:var(--muted);margin-top:12px;font-size:13px}.auth-status{background:var(--wash);border:1px solid var(--line);border-radius:var(--radius-s);align-items:baseline;gap:3px;margin:24px 0;padding:16px;display:flex}.auth-status strong{font-size:13px}.auth-status p{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.8}.auth-status.unavailable .status-dot,.auth-status.error .status-dot,.auth-status.forbidden .status-dot{background:#a86a22}.button{border:1px solid var(--line);border-radius:var(--radius-s);min-height:40px;color:var(--ink);background:#fff;justify-content:center;align-items:center;padding:8px 16px;font-size:13px;font-weight:550;line-height:1.5;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.button.primary{background:var(--ink);border-color:var(--ink);color:#fff}.button.primary:not(:disabled):hover{background:#224961;border-color:#224961}.button.secondary{color:var(--ink);border-color:var(--line);background:#fff}.button.secondary:not(:disabled):hover{border-color:var(--accent);color:var(--accent)}.button.danger{color:var(--bad);background:#fff;border-color:#e6c6c3}.button.danger:not(:disabled):hover{background:var(--bad);border-color:var(--bad);color:#fff}.button.small{min-height:30px;padding:4px 12px;font-size:12px;font-weight:500}.login-button{width:100%;min-height:45px}.login-panel .login-help{margin-bottom:20px;font-size:11px}.login-panel>.secondary{width:100%}.security-note{color:var(--muted);border-top:1px solid var(--line);margin-top:24px;padding-top:16px;font-size:11px}input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),select{border-radius:var(--radius-s);color:var(--ink);font:inherit;background:#fff;border:1px solid #c9d6e0;padding:8px 12px;font-size:13px}input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):focus,select:focus{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:1px}input:disabled,select:disabled{background:var(--wash);color:var(--muted)}input::placeholder{color:#9db0c0}.form-feedback{color:var(--accent);font-size:12px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.page-heading p{color:var(--muted);margin-top:8px;font-size:13px}.eyebrow{letter-spacing:.14em;color:var(--accent);margin-bottom:6px;font-size:11px;font-weight:650}.outline-tag{white-space:nowrap;border-radius:var(--radius-s);color:#426b7b;background:#fff;border:1px solid #c7d9df;padding:4px 10px;font-size:11px}.notice{border-left:3px solid var(--accent);background:#f1f4fd;align-items:baseline;margin-bottom:28px;padding:17px 20px;display:flex}.notice strong{font-size:13px}.notice p{color:var(--muted);margin-top:3px;font-size:12px}.panel,.table-panel{border:1px solid var(--line);border-radius:var(--radius-m);background:#fff;overflow:hidden}.table-panel+.table-panel,.panel+.table-panel,.table-panel+.panel{margin-top:24px}.table-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.table-toolbar h2{font-size:15px}.table-toolbar label{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:flex}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th{white-space:nowrap;background:var(--wash);color:#4a6275;border-bottom:1px solid var(--line);padding:13px 18px;font-size:12px;font-weight:550}td{border-bottom:1px solid var(--line);vertical-align:top;padding:12px 18px;font-size:13px}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}tbody tr:hover td,tbody tr:hover th{background:#f7fafc}tbody th{color:var(--muted);white-space:nowrap;font-weight:500}tbody td{color:var(--ink)}.cell-main{font-weight:550;display:block}.cell-sub{color:var(--muted);font-size:11px;line-height:1.7;display:block}.mono{font-family:var(--mono);font-size:12px}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.num.balance{font-size:14px;font-weight:650}.num.balance small{color:var(--muted);font-size:11px;font-weight:400}.badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:11px;font-weight:600;line-height:1.8;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.badge.ok{color:var(--ok);background:#e9f5ef;border-color:#cbe7d9}.badge.muted{color:#5d7186;background:#eef2f6;border-color:#d7e0e8}.badge.warn{color:var(--warn);background:#fbf3e4;border-color:#ecd9b4}.badge.bad{color:var(--bad);background:#faeceb;border-color:#eccbc8}.badge.info{color:var(--info);background:#e8f1f7;border-color:#c9dcec}.empty-state{text-align:center;min-width:0;padding:64px 24px 72px}.empty-symbol{color:#88aab9;margin-bottom:12px;font-size:38px;display:block}.empty-state p{max-width:470px;color:var(--muted);margin:12px auto 0;font-size:13px;line-height:1.9}.empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.table-footnote{background:var(--wash);border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 22px;font-size:11px;display:flex}.table-footnote .button{min-height:26px;padding:2px 10px;font-size:11px}.error-dialog{border:1px solid var(--line);border-radius:var(--radius-l);width:min(460px,100vw - 32px);color:var(--ink);margin:auto;padding:32px;position:fixed;inset:0;box-shadow:0 24px 80px #15334e26}.error-dialog::backdrop{background:#10232b88}.dialog-symbol{color:#93601f;background:#faf0df;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:16px;font-weight:700;display:inline-flex}.error-dialog h2{margin-bottom:14px;font-size:19px}.error-dialog p{font-size:13px;line-height:1.9}.error-dialog .muted{color:var(--muted);margin:12px 0 24px;font-size:11px}.error-dialog .button{width:100%}.detail-list{grid-template-columns:max-content 1fr;gap:6px 18px;margin:14px 0;font-size:12px;display:grid}.detail-list dt{color:var(--muted)}.detail-list dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}.editor-form{gap:18px;min-width:0;display:grid}.editor-form label{gap:6px;min-width:0;font-size:13px;display:grid}.editor-form input:not([type=checkbox]),.editor-form select{width:100%;min-width:0}.editor-form .check-field,.editor-form .switch-line{cursor:pointer;align-items:flex-start;gap:10px;font-size:13px;display:flex}.check-field input,.switch-line input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:3px 0 0}.check-field small{color:var(--muted);margin-top:3px;font-size:12px;font-weight:400;display:block}.editor-head h3{margin-bottom:4px}.editor-sub{color:var(--muted);overflow-wrap:anywhere;font-size:13px}.editor-sub .mono{margin-top:4px;display:block}.editor-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.editor-block{border:1px solid var(--line);border-radius:var(--radius-m);min-width:0;padding:16px}.editor-block h4{color:var(--muted);margin:0 0 12px;font-size:13px}.editor-block .detail-list{grid-template-columns:max-content minmax(0,1fr);gap:8px 14px;margin:0}.mode-line{margin-bottom:12px;font-size:13px}.mode-note,.field-help{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.8}.muted-note{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.editor-block .switch-line{margin-top:16px}.login-shell{padding:32px}.dashboard-grid>.table-panel{min-width:0;margin-top:0}.editor-form .empty-actions{justify-content:flex-start;margin-top:0}.editor-foot{font-size:inherit;margin:0;padding:16px 0 0}.editor-foot p[role=status]{color:var(--bad);margin-bottom:12px}.dialog-actions{border-top:1px solid var(--line);z-index:1;background:#fff;padding-top:16px;padding-bottom:16px;position:sticky;bottom:-24px}.editor-foot{z-index:1;background:#fff;padding-bottom:16px;position:sticky;bottom:-24px}@media (width<=720px){.login-shell{padding:24px 16px}}.form-warning{color:var(--warn);border-radius:var(--radius-s);background:#fbf3e4;padding:10px 12px;font-size:12px;line-height:1.8}.form-feedback:empty{display:none}.page-actions{justify-content:flex-start;margin:0 0 16px}caption{text-align:left;border-bottom:1px solid var(--line);padding:16px 18px;font-size:14px;font-weight:600}.table-toolbar{flex-wrap:wrap}.table-toolbar>*,.page-heading>*,.empty-state{min-width:0}.notice{overflow-wrap:anywhere}.notice .status-dot{margin-top:6px}.topbar{flex-wrap:wrap;gap:16px;height:auto;min-height:76px;padding-top:12px;padding-bottom:12px}@media (width<=900px){.editor-grid{grid-template-columns:1fr}}@media (width<=720px){.page-heading{flex-wrap:wrap}.table-toolbar label:not(.all-pick){white-space:normal;flex-wrap:wrap;flex:180px}.table-toolbar label input:not([type=checkbox]),.table-toolbar label select{width:100%;min-width:0;max-width:100%}.sidebar nav{flex-wrap:wrap}.nav-item{flex-basis:100px}.empty-state{min-width:0}.detail-list{grid-template-columns:minmax(0,1fr);gap:2px}.detail-list dd{margin-bottom:10px}.editor-block .detail-list{grid-template-columns:max-content minmax(0,1fr)}.dialog-actions .button,.editor-foot .button{flex:140px}}.result-list{color:var(--muted);margin:0;padding-left:18px;font-size:12px;line-height:2}@media (width<=1100px){.login-layout{grid-template-columns:1fr;gap:32px;max-width:660px;margin:12px auto 32px}.lead br{display:none}.scope-list{margin-top:24px}.login-panel{width:100%;max-width:480px}}@media (width<=720px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:20px}.brand{padding-bottom:20px;font-size:20px}.sidebar nav{gap:4px;display:flex}.nav-item{flex:1;justify-content:center;gap:6px;padding:10px 6px;font-size:13px}.nav-icon{width:16px;font-size:17px}.sidebar-note{display:none}.topbar{height:58px;padding:0 20px}main{padding:26px 20px}footer{margin:0 20px}h1{font-size:24px}.login-layout{margin:0}.lead{font-size:28px}.login-panel{padding:24px}.page-heading{align-items:start;gap:12px}.outline-tag{margin-top:4px}.notice{padding:14px}.table-toolbar{padding:16px}.table-toolbar label input,.table-toolbar label select{max-width:40vw}.empty-state{min-width:0;padding:48px 20px}th,td{padding-left:12px;padding-right:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
