.visit-stats[data-v-4d9401b4]{display:flex;flex-direction:column;gap:8px;background:linear-gradient(135deg,var(--soft-blue),var(--soft));border:1px solid var(--border);border-radius:12px;padding:10px 14px;margin-top:12px}.vs-grid[data-v-4d9401b4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.vs-card[data-v-4d9401b4]{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--card);border:1px solid var(--border);border-radius:10px}.vs-icon[data-v-4d9401b4]{font-size:16px;flex:0 0 auto}.vs-cell[data-v-4d9401b4]{display:flex;flex-direction:column;gap:1px;min-width:0}.vs-num[data-v-4d9401b4]{font-size:17px;font-weight:800;color:var(--primary);font-variant-numeric:tabular-nums;line-height:1.1}.vs-label[data-v-4d9401b4]{font-size:11px;color:var(--text-sub)}.vs-note[data-v-4d9401b4]{font-size:11px;color:var(--text-light)}.tile-hit[data-v-ae0ddcd4]{font-size:11px;color:var(--primary);background:var(--primary-soft);border-radius:999px;padding:2px 8px;width:fit-content;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-like[data-v-ae0ddcd4]{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border:1px solid var(--border);background:var(--card);border-radius:999px;font-family:inherit;font-size:13px;color:var(--text);cursor:pointer;transition:transform .15s,box-shadow .15s}.site-like[data-v-ae0ddcd4]:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.site-like.on[data-v-ae0ddcd4]{border-color:#e11d48;background:#e11d4814}.site-like .sl-icon[data-v-ae0ddcd4]{font-size:16px}.site-like .sl-num[data-v-ae0ddcd4]{font-weight:800;color:var(--primary);min-width:12px;text-align:left}.site-like.on .sl-num[data-v-ae0ddcd4]{color:#e11d48}.section-head-right[data-v-ae0ddcd4]{display:flex;align-items:center;gap:10px}.about-actions[data-v-ae0ddcd4]{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}.pager[data-v-b5de43a9]{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;align-items:center}.pager .tab.disabled[data-v-b5de43a9]{opacity:.45;pointer-events:none}.pager-ellipsis[data-v-b5de43a9]{color:var(--text-sub);font-size:13px;padding:0 2px;-webkit-user-select:none;user-select:none}.pager-jump[data-v-b5de43a9]{display:inline-flex;align-items:center;gap:6px}.pager-jump .input[data-v-b5de43a9]{width:52px;padding:5px 8px;text-align:center}.week-grid[data-v-b5de43a9]{position:relative;--row: 46px;--tc: 40px}.wg-head-row[data-v-b5de43a9]{display:grid;grid-template-columns:var(--tc,40px) repeat(7,1fr)}.wg-head[data-v-b5de43a9]{text-align:center;font-size:12px;font-weight:700;padding:4px 0;box-sizing:border-box}.wg-body[data-v-b5de43a9]{position:relative;height:calc(var(--row,46px) * 12);border-top:1px solid var(--border)}.wg-time[data-v-b5de43a9]{position:absolute;left:0;width:var(--tc,40px);font-size:11px;color:var(--text-light);text-align:center}.wg-cell[data-v-b5de43a9]{position:absolute;width:calc((100% - var(--tc,40px)) / 7 - 5px);box-sizing:border-box;background:var(--soft-blue);border-left:3px solid var(--primary);border-radius:6px;padding:3px 5px;overflow:hidden;font-size:11px;line-height:1.35;cursor:pointer}.wg-cell b[data-v-b5de43a9]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wg-sub[data-v-b5de43a9]{font-size:10px;color:var(--text-light);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wg-list[data-v-b5de43a9]{display:flex;flex-direction:column;gap:12px}.wg-list-day[data-v-b5de43a9]{display:flex;flex-direction:column;gap:6px}.wg-list-dayname[data-v-b5de43a9]{font-size:13px;font-weight:800;color:var(--primary);margin-top:4px}.wg-list-item[data-v-b5de43a9]{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:10px;background:var(--soft);padding:10px 12px;font-family:inherit;cursor:pointer;transition:.15s}.wg-list-item[data-v-b5de43a9]:active{background:var(--primary-soft)}.wg-li-time[data-v-b5de43a9]{flex:0 0 58px;font-size:12px;font-weight:700;color:var(--primary)}.wg-li-main[data-v-b5de43a9]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.wg-li-main b[data-v-b5de43a9]{font-size:14px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wg-li-sub[data-v-b5de43a9]{font-size:12px;color:var(--text-sub);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wg-li-cls[data-v-b5de43a9]{font-size:11px;color:#92400e;background:var(--soft-yellow);border-radius:6px;padding:1px 6px;align-self:flex-start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.wg-li-go[data-v-b5de43a9]{color:var(--text-light);font-size:16px}.overlay[data-v-b5de43a9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;padding:20px;z-index:60}.overlay-card[data-v-b5de43a9]{background:var(--card);border-radius:16px;padding:18px;width:100%;max-width:420px;box-shadow:0 20px 50px #00000040}.course-detail-head[data-v-b5de43a9]{display:flex;align-items:center;gap:10px;margin-bottom:6px}.course-detail-title[data-v-b5de43a9]{font-size:16px;font-weight:800;flex:1}.overlay-close[data-v-b5de43a9]{border:none;background:none;font-size:16px;cursor:pointer;color:var(--text-sub)}.course-detail-row[data-v-b5de43a9]{display:flex;gap:10px;padding:8px 0;border-bottom:1px dashed var(--border);font-size:13px}.course-detail-row span[data-v-b5de43a9]{flex:0 0 52px;color:var(--text-sub)}.course-detail-row b[data-v-b5de43a9]{flex:1;color:var(--text);font-weight:600;word-break:break-all}@media(max-width:640px){.week-grid[data-v-b5de43a9]{--row: 30px;--tc: 0px}.wg-head-row[data-v-b5de43a9]{grid-template-columns:repeat(7,1fr)}.wg-time-col[data-v-b5de43a9],.wg-time[data-v-b5de43a9]{display:none}.wg-head[data-v-b5de43a9]{font-size:10px;padding:3px 0}.wg-cell[data-v-b5de43a9]{font-size:9px;padding:2px 3px;border-left-width:2px;border-radius:4px;line-height:1.25}.wg-cell b[data-v-b5de43a9]{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;word-break:break-all}.wg-sub[data-v-b5de43a9],.wg-sub.muted[data-v-b5de43a9]{display:none}}.score-raw[data-v-3b5f8386]{font-size:11px;color:var(--text-light);min-width:64px;text-align:right}.score-raw.dim[data-v-3b5f8386]{color:var(--dim-gray)}.score-bar[data-v-3b5f8386]{flex:1}.table-wrap[data-v-3b5f8386]{overflow-x:auto}.mini-table[data-v-3b5f8386]{width:100%;border-collapse:collapse;font-size:13px}.mini-table th[data-v-3b5f8386],.mini-table td[data-v-3b5f8386]{border:1px solid var(--border);padding:6px 10px;text-align:left}.mini-table th[data-v-3b5f8386]{background:var(--bg);font-weight:700}.mini-table tr.hit td[data-v-3b5f8386]{background:var(--blue-bright)}.mini-table tr.hit td[data-v-3b5f8386]:first-child{font-weight:800;color:var(--primary)}.cal-toolbar[data-v-1ddf1e5a]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.cal-nav-btn[data-v-1ddf1e5a]{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:16px;cursor:pointer;transition:all .15s;flex-shrink:0}.cal-nav-btn[data-v-1ddf1e5a]:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.cal-nav-btn[data-v-1ddf1e5a]:disabled{opacity:.35;cursor:not-allowed}.cal-term-select[data-v-1ddf1e5a]{flex:1;min-width:0;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--text);font-size:13px;outline:none}.cal-shell[data-v-1ddf1e5a]{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:var(--soft-fg);cursor:zoom-in;min-height:120px;display:flex;align-items:center;justify-content:center}.cal-skeleton[data-v-1ddf1e5a]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-sub);z-index:1}.cal-img[data-v-1ddf1e5a]{width:100%;height:auto;max-height:420px;object-fit:contain;display:block}.cal-back-enter-active[data-v-1ddf1e5a],.cal-back-leave-active[data-v-1ddf1e5a],.cal-fwd-enter-active[data-v-1ddf1e5a],.cal-fwd-leave-active[data-v-1ddf1e5a]{transition:transform .42s cubic-bezier(.22,.9,.3,1),opacity .42s ease}.cal-back-leave-active[data-v-1ddf1e5a],.cal-fwd-leave-active[data-v-1ddf1e5a]{position:absolute;top:0;left:0}.cal-back-enter-from[data-v-1ddf1e5a]{transform:translate(-45%);opacity:0}.cal-back-leave-to[data-v-1ddf1e5a],.cal-fwd-enter-from[data-v-1ddf1e5a]{transform:translate(45%);opacity:0}.cal-fwd-leave-to[data-v-1ddf1e5a]{transform:translate(-45%);opacity:0}.cal-hint[data-v-1ddf1e5a]{position:absolute;left:0;right:0;bottom:0;text-align:center;font-size:11px;color:#fff;background:linear-gradient(transparent,#0000008c);padding:18px 0 8px;pointer-events:none;opacity:0;transition:opacity .2s}.cal-shell:hover .cal-hint[data-v-1ddf1e5a]{opacity:1}.cal-error[data-v-1ddf1e5a]{padding:24px 12px;text-align:center;font-size:13px;color:var(--text-sub);background:var(--soft-fg);border:1px dashed var(--border);border-radius:var(--radius)}.cal-src-line[data-v-1ddf1e5a]{margin-top:8px;font-size:12px;color:var(--text-sub)}.cal-src-line a[data-v-1ddf1e5a]{color:var(--primary)}.cal-modal[data-v-1ddf1e5a]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:#000000e0;display:flex;flex-direction:column}.cal-modal-toolbar[data-v-1ddf1e5a]{display:flex;align-items:center;gap:10px;justify-content:center;padding:12px;flex-wrap:wrap}.cal-zoom-btn[data-v-1ddf1e5a]{min-width:40px;height:36px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#ffffff1f;color:#fff;font-size:15px;cursor:pointer;transition:all .15s}.cal-zoom-btn[data-v-1ddf1e5a]:hover{background:#ffffff40}.cal-zoom-num[data-v-1ddf1e5a]{color:#fff;font-size:13px;min-width:48px;text-align:center}.cal-close-btn[data-v-1ddf1e5a]{height:36px;padding:0 16px;border-radius:999px;border:none;background:var(--primary);color:#fff;font-size:13px;cursor:pointer}.cal-modal-body[data-v-1ddf1e5a]{flex:1;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative;touch-action:none}.cal-viewport[data-v-1ddf1e5a]{width:100%;height:100%;overflow:hidden;display:flex;align-items:center}.cal-track[data-v-1ddf1e5a]{display:flex;flex-direction:row-reverse;height:100%;width:100%;will-change:transform}.cal-slide[data-v-1ddf1e5a]{flex:0 0 100%;display:flex;align-items:center;justify-content:center;min-width:0;padding:0 8px}.cal-slide img[data-v-1ddf1e5a]{max-width:100%;max-height:88vh;object-fit:contain;-webkit-user-select:none;user-select:none;box-shadow:0 12px 48px #00000080;opacity:.45;transform:scale(.94);transition:opacity .35s ease,transform .35s ease}.cal-slide img.active[data-v-1ddf1e5a]{opacity:1;transform:scale(1)}.cal-zoom-layer[data-v-1ddf1e5a]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.cal-modal-img.zoomed[data-v-1ddf1e5a]{cursor:grab}.cal-modal-img.zoomed[data-v-1ddf1e5a]:active{cursor:grabbing}.cal-side-btn[data-v-1ddf1e5a]{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:60px;border:none;border-radius:12px;background:#ffffff24;color:#fff;font-size:28px;cursor:pointer;transition:all .15s;line-height:1}.cal-side-btn[data-v-1ddf1e5a]:hover:not(:disabled){background:#ffffff4d}.cal-side-btn[data-v-1ddf1e5a]:disabled{opacity:.2;cursor:not-allowed}.cal-side-btn.left[data-v-1ddf1e5a]{left:10px}.cal-side-btn.right[data-v-1ddf1e5a]{right:10px}.cal-modal-term[data-v-1ddf1e5a]{color:#fff;font-size:13px;font-weight:700;min-width:0;max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-modal-tip[data-v-1ddf1e5a]{text-align:center;color:#ffffffa6;font-size:11px;padding:8px 12px 12px}.food-card[data-v-d635d5b3]{background:var(--soft-fg);border:1px solid var(--border);border-radius:14px;padding:14px}.floor-row[data-v-f38dfb62]{display:flex;align-items:flex-start;gap:8px;margin-bottom:6px}.floor-tag[data-v-f38dfb62]{flex:0 0 56px;font-size:12px;font-weight:700;color:var(--primary)}.floor-rooms[data-v-f38dfb62]{display:flex;flex-wrap:wrap;gap:4px;flex:1;min-width:0}.room-chip[data-v-f38dfb62]{font-style:normal;font-size:11px;padding:1px 6px;border-radius:6px;background:var(--soft-gray, #eef3fb);color:var(--text-sub);white-space:nowrap}.mode-tabs[data-v-5f04cd05]{display:flex;gap:8px}.mode-btn[data-v-5f04cd05]{flex:1;border:1px solid var(--border);background:var(--card);color:var(--text);font-family:inherit;font-size:13px;font-weight:700;padding:9px 0;border-radius:10px;cursor:pointer;transition:.15s}.mode-btn.active[data-v-5f04cd05]{background:var(--primary);color:#fff;border-color:var(--primary)}.bank-item[data-v-5f04cd05]{border-bottom:1px dashed var(--border);padding:6px 0}.bank-item[data-v-5f04cd05]:last-child{border-bottom:none}.bank-q[data-v-5f04cd05]{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;background:none;border:none;color:var(--text);font-family:inherit;cursor:pointer;padding:8px 0}.bank-no[data-v-5f04cd05]{flex-shrink:0;width:22px;height:22px;border-radius:6px;background:var(--primary);color:#fff;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.bank-text[data-v-5f04cd05]{flex:1;font-size:14px;font-weight:600;line-height:1.5}.bank-toggle[data-v-5f04cd05]{flex-shrink:0;font-size:12px;color:var(--text-light);padding-top:2px}.bank-detail[data-v-5f04cd05]{padding:4px 0 10px 32px}.bank-opt[data-v-5f04cd05]{font-size:13px;padding:5px 10px;border-radius:8px;background:var(--soft-fg);border:1px solid var(--border)}.bank-opt.right[data-v-5f04cd05]{background:var(--soft-green-bg);border-color:var(--soft-green-text);color:var(--soft-green-text);font-weight:700}.bank-explain[data-v-5f04cd05]{font-size:12px;color:var(--text-sub);margin-top:8px;line-height:1.6}.opt[data-v-5f04cd05]{text-align:left;background:var(--soft-fg);border:1px solid var(--border);border-radius:12px;padding:13px 16px;font-size:14px;cursor:pointer;transition:.15s;color:var(--text);display:flex;align-items:center;gap:10px}.opt-key[data-v-5f04cd05]{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--primary);color:#fff;font-size:13px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.opt-key.ok[data-v-5f04cd05]{background:#0f766e}.opt-key.no[data-v-5f04cd05]{background:#b63a46}.opt[data-v-5f04cd05]:hover:not(:disabled){border-color:var(--primary);background:var(--primary-soft)}.opt.correct[data-v-5f04cd05]{background:var(--soft-green-bg);border-color:var(--soft-green-text);color:var(--soft-green-text);font-weight:700}.opt.wrong[data-v-5f04cd05]{background:var(--soft-red-bg);border-color:var(--soft-red-text);color:var(--soft-red-text)}.opt.dim[data-v-5f04cd05]{opacity:.5}.rank-list[data-v-5f04cd05]{display:flex;flex-direction:column}.rank-row[data-v-5f04cd05]{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.rank-row[data-v-5f04cd05]:last-child{border-bottom:none}.rank-no[data-v-5f04cd05]{flex-shrink:0;width:24px;height:24px;border-radius:6px;background:var(--bar);color:var(--text-sub);font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.rank-no.top[data-v-5f04cd05]{background:#f59e0b;color:#fff}.rank-main[data-v-5f04cd05]{flex:1;font-size:13px;font-weight:600}.wheel-wrap[data-v-9374976f]{position:relative;width:260px;height:260px;margin:14px auto 18px}.wheel[data-v-9374976f]{width:100%;height:100%;border-radius:50%;border:6px solid var(--card);box-shadow:0 10px 30px #1b66c933;transition:transform 3.2s cubic-bezier(.16,.85,.25,1)}.pointer[data-v-9374976f]{position:absolute;top:-8px;left:50%;transform:translate(-50%);width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:20px solid #b63a46;z-index:2;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3))}.tier-tabs[data-v-9374976f]{display:flex;gap:6px;flex-wrap:wrap}.tier-btn[data-v-9374976f]{border:1px solid var(--border);background:var(--card);color:var(--text);font-family:inherit;font-size:12px;font-weight:600;padding:6px 10px;border-radius:999px;cursor:pointer}.tier-btn.active[data-v-9374976f]{background:var(--primary);color:#fff;border-color:var(--primary)}.tier-btn.disabled[data-v-9374976f]{opacity:.45;cursor:not-allowed}.balance-box[data-v-9374976f]{font-size:13px}.food-chip[data-v-9374976f]{font-size:11px;padding:3px 9px;border-radius:999px;background:var(--soft-fg);border:1px solid var(--border);color:var(--text)}.mail-helper[data-v-43f918ad]{background:linear-gradient(160deg,var(--soft-blue) 0%,var(--soft) 60%,var(--soft-yellow) 100%);border:1px solid var(--border);border-radius:16px;padding:16px;margin-bottom:18px;box-shadow:0 6px 20px #1b66c914}.mail-head[data-v-43f918ad]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.mail-emoji[data-v-43f918ad]{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#1b66c9,#4f9cf5);color:#fff;font-size:24px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:0 4px 10px #1b66c94d}.mail-title[data-v-43f918ad]{font-size:16px;font-weight:800;color:var(--text)}.mail-sub[data-v-43f918ad]{font-size:12px;color:var(--text-sub);margin-top:2px}.mail-row[data-v-43f918ad]{display:flex;gap:10px;flex-wrap:wrap}.mail-row .btn[data-v-43f918ad]{flex-shrink:0}.mail-out[data-v-43f918ad]{margin-top:10px;padding:10px 12px;border-radius:10px;background:var(--card);border:1px dashed var(--primary);color:var(--primary);font-weight:700;font-size:15px;word-break:break-all}.mail-out.empty[data-v-43f918ad]{color:var(--text-sub);border-color:var(--border);font-weight:500;font-size:13px}.mail-quip[data-v-43f918ad]{margin-top:10px;font-size:12px;color:var(--notice-text);background:var(--notice-bg);border:1px dashed var(--notice-border);border-radius:10px;padding:8px 12px;line-height:1.7}.status-dot[data-v-dbc35560]{width:12px;height:12px;border-radius:50%;flex-shrink:0}.status-dot.on[data-v-dbc35560]{background:#22c55e;box-shadow:0 0 0 4px #22c55e26}.status-dot.off[data-v-dbc35560]{background:#d1d5db}.stat-pill[data-v-dbc35560]{display:flex;flex-direction:column;align-items:center;min-width:56px;padding:6px 8px;border-radius:10px;background:var(--bg)}.stat-pill b[data-v-dbc35560]{font-size:18px;color:var(--primary)}.stat-pill span[data-v-dbc35560]{font-size:10px;color:var(--text-light)}.hour-row[data-v-dbc35560]{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.hour-tag[data-v-dbc35560]{font-size:11px;padding:4px 10px;border-radius:999px}.hour-tag.basic[data-v-dbc35560]{background:var(--soft-blue);color:var(--primary)}.hour-tag.flavor[data-v-dbc35560]{background:var(--soft-yellow);color:#e65100}.canteen-row[data-v-dbc35560]{border-bottom:1px solid var(--border);padding:9px 2px}.canteen-row[data-v-dbc35560]:last-child{border-bottom:none}.canteen-main[data-v-dbc35560]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%;border:none;background:none;cursor:pointer;font-family:inherit;text-align:left}.canteen-area[data-v-dbc35560]{font-size:11px;color:var(--text-light)}.canteen-toggle[data-v-dbc35560]{margin-left:auto;font-size:11px;color:var(--primary)}.type-tag[data-v-dbc35560]{font-size:10px;padding:2px 8px;border-radius:999px}.type-tag.basic[data-v-dbc35560]{background:var(--soft-blue);color:var(--primary)}.type-tag.flavor[data-v-dbc35560]{background:var(--soft-yellow);color:#e65100}.canteen-metric[data-v-dbc35560]{margin-top:6px;font-variant-numeric:tabular-nums;font-size:14px;display:flex;align-items:baseline;gap:3px}.metric-people[data-v-dbc35560]{font-weight:800;font-size:16px;color:var(--primary)}.metric-slash[data-v-dbc35560],.metric-seats[data-v-dbc35560]{color:var(--text-light)}.metric-count[data-v-dbc35560]{color:var(--text-light);font-size:11px}.food-list[data-v-dbc35560]{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.food-chip[data-v-dbc35560]{font-size:11px;padding:3px 10px;border-radius:999px;background:var(--bg);border:1px solid var(--border);color:var(--text)}.cat-search[data-v-a3f033b2]{position:relative;margin-bottom:16px;background:var(--card);border-radius:14px;box-shadow:0 1px 3px #0000000f;padding:10px 14px;display:flex;align-items:center;gap:8px}.cat-search input[data-v-a3f033b2]{flex:1;border:none;outline:none;font-size:15px;font-family:inherit;background:none}.cat-group[data-v-a3f033b2]{margin-bottom:20px}.cat-group-head[data-v-a3f033b2]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.cat-group-dot[data-v-a3f033b2]{width:10px;height:10px;border-radius:50%}.cat-group-name[data-v-a3f033b2]{font-weight:700;font-size:15px}.cat-group-count[data-v-a3f033b2]{font-size:12px;color:var(--text-sub)}.cat-grid[data-v-a3f033b2]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.cat-tile[data-v-a3f033b2]{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:var(--card);border:1px solid var(--border);cursor:pointer;text-align:left;transition:.15s}.cat-tile[data-v-a3f033b2]:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.cat-tile-icon[data-v-a3f033b2]{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.cat-tile-title[data-v-a3f033b2]{font-weight:700;font-size:14px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-tile-desc[data-v-a3f033b2]{font-size:12px;color:var(--text-sub);display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.cat-like[data-v-a3f033b2]{margin-left:auto;font-size:12px;color:var(--text-sub);cursor:pointer;flex-shrink:0}.cat-like.on[data-v-a3f033b2]{color:#e11d48}.cat-tile-body[data-v-a3f033b2]{flex:1;min-width:0}.card-grid[data-v-d67e1527]{display:grid;grid-template-columns:repeat(var(--cols, 4),1fr);gap:10px;margin-top:14px}@media(max-width:640px){.card-grid[data-v-d67e1527]{grid-template-columns:repeat(3,1fr);gap:8px}}.card[data-v-d67e1527]{aspect-ratio:4 / 3;border-radius:14px;border:1px solid var(--border);background-color:#0d4ea8;background-size:cover;background-position:center;color:#fff;font-family:inherit;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;transition:transform .12s ease,box-shadow .15s ease;overflow:hidden}.card[data-v-d67e1527]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(160deg,#0d4ea82e,#04204e6b);pointer-events:none}.card.open[data-v-d67e1527]{background:var(--soft-fg);color:var(--text);border-color:var(--primary)}.card.open[data-v-d67e1527]:after{display:none}.card.match[data-v-d67e1527]{background:var(--soft-green-bg);color:var(--soft-green-text);border-color:var(--soft-green-text)}.card.match[data-v-d67e1527]:after{display:none}.card.confirm[data-v-d67e1527]{border-color:#f5a623;box-shadow:0 0 0 3px #f5a6238c;animation:glow-d67e1527 1.1s ease-in-out infinite}.card.picked[data-v-d67e1527]{box-shadow:0 0 0 4px var(--primary)}.card.shake[data-v-d67e1527]{animation:shake-d67e1527 .4s ease}.card[data-v-d67e1527]:not(.open):not(.match):not(.confirm):hover{transform:translateY(-2px)}.card-label[data-v-d67e1527]{position:relative;z-index:1;font-size:13px;font-weight:800;padding:0 4px}.card-fallback[data-v-d67e1527]{font-size:30px;line-height:1}.card.open .card-label[data-v-d67e1527]{color:var(--text)}.card.match .card-label[data-v-d67e1527]{color:var(--soft-green-text)}.card-label.new[data-v-d67e1527]{color:var(--primary)}.card-badge[data-v-d67e1527]{position:relative;z-index:1;font-size:11px;font-weight:800;letter-spacing:2px;padding:4px 10px;border-radius:999px;background:#0d4ea88c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border:1px solid rgba(255,255,255,.5)}.stat-pill[data-v-d67e1527]{display:flex;flex-direction:column;align-items:center;min-width:54px;padding:6px 10px;border-radius:10px;background:var(--bg)}.stat-pill b[data-v-d67e1527]{font-size:18px;color:var(--primary)}.stat-pill span[data-v-d67e1527]{font-size:10px;color:var(--text-light)}.found-tip[data-v-d67e1527]{margin-top:12px;padding:8px 12px;border-radius:10px;background:var(--notice-bg);border:1px solid var(--notice-border);color:var(--notice-text);font-size:13px;font-weight:600}.found-tip.bad[data-v-d67e1527]{background:var(--soft-red-bg);border-color:var(--soft-red-border);color:var(--soft-red-text)}.found-tip.good[data-v-d67e1527]{background:var(--soft-green-bg);border-color:var(--soft-green-border);color:var(--soft-green-text)}.overlay[data-v-d67e1527]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0614288c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:60;padding:20px}.overlay-card[data-v-d67e1527]{background:var(--card);border-radius:18px;padding:22px;max-width:380px;width:100%;box-shadow:0 20px 60px #0000004d}.overlay-card p[data-v-d67e1527]{margin:0}.cheat-box[data-v-d67e1527]{background:var(--card);border-radius:16px;padding:18px 20px;max-width:400px;width:100%;box-shadow:0 20px 60px #00000059}.cheat-row[data-v-d67e1527]{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:5px 0;border-bottom:1px dashed var(--border)}.cheat-row[data-v-d67e1527]:last-child{border-bottom:none}@keyframes glow-d67e1527{0%,to{box-shadow:0 0 0 3px #f5a6238c}50%{box-shadow:0 0 0 6px #f5a62340}}@keyframes shake-d67e1527{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.quiz-progress[data-v-1a1d0c6d]{height:6px;border-radius:4px;background:var(--bar);overflow:hidden}.quiz-progress i[data-v-1a1d0c6d]{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#1b66c9,#3b82f6);transition:width .2s}.quiz-nav[data-v-1a1d0c6d]{display:flex;gap:10px;margin-top:16px}.quiz-nav .btn[data-v-1a1d0c6d]{flex:1}.opt-list[data-v-1a1d0c6d]{display:flex;flex-direction:column;gap:8px}.opt-btn[data-v-1a1d0c6d]{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--border);background:var(--card);border-radius:12px;padding:12px 14px;font-family:inherit;font-size:14px;cursor:pointer;color:var(--text)}.opt-btn.active[data-v-1a1d0c6d]{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 1px var(--primary)}.opt-tag[data-v-1a1d0c6d]{flex:0 0 26px;height:26px;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}.likert[data-v-1a1d0c6d]{display:flex;flex-direction:column;gap:8px}.likert-btn[data-v-1a1d0c6d]{border:1px solid var(--border);background:var(--card);border-radius:12px;padding:12px;font-family:inherit;font-size:14px;cursor:pointer;color:var(--text)}.likert-btn.active[data-v-1a1d0c6d]{border-color:var(--primary);background:var(--primary-soft)}.result-panel[data-v-1a1d0c6d]{padding:18px 16px}.result-hero[data-v-1a1d0c6d]{display:flex;align-items:center;gap:14px}.portrait[data-v-1a1d0c6d]{width:86px;height:86px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;overflow:hidden;border:3px solid #fff;box-shadow:0 8px 20px #0000002e}.portrait img[data-v-1a1d0c6d]{width:100%;height:100%;object-fit:cover}.portrait-initial[data-v-1a1d0c6d]{font-size:34px;font-weight:800;color:#fff}.result-hero-txt[data-v-1a1d0c6d]{flex:1;min-width:0}.result-name[data-v-1a1d0c6d]{font-size:22px;font-weight:800;line-height:1.2}.result-bio[data-v-1a1d0c6d]{font-size:14px;font-weight:700;color:var(--primary-dark);margin-top:2px}.result-sec[data-v-1a1d0c6d]{margin-top:16px;padding-top:14px;border-top:1px dashed var(--border)}.sec-title[data-v-1a1d0c6d]{font-size:14px;font-weight:800;margin-bottom:10px}.sec-note[data-v-1a1d0c6d]{font-size:11px;font-weight:500;color:var(--text-sub);margin-left:6px}.dim-block[data-v-1a1d0c6d]{margin-bottom:9px}.dim-head[data-v-1a1d0c6d]{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;margin-bottom:3px}.dim-name[data-v-1a1d0c6d]{color:var(--text)}.dim-nums[data-v-1a1d0c6d]{color:var(--text-sub)}.dim-nums b[data-v-1a1d0c6d]{color:var(--primary)}.dim-track[data-v-1a1d0c6d]{position:relative;height:14px;border-radius:7px;background:var(--bar);overflow:hidden}.dim-you[data-v-1a1d0c6d]{position:absolute;left:0;top:0;height:100%;border-radius:7px 0 0 7px;background:linear-gradient(90deg,#1b66c9,#3b82f6)}.dim-proto[data-v-1a1d0c6d]{position:absolute;left:0;top:0;height:4px;margin-top:5px;border-radius:2px;background:#f59e0b}.near-row[data-v-1a1d0c6d]{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--border)}.near-row[data-v-1a1d0c6d]:last-child{border-bottom:none}.near-rank[data-v-1a1d0c6d]{flex:0 0 22px;font-weight:800;color:var(--text-sub);font-size:13px}.near-img[data-v-1a1d0c6d]{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:none}.near-avatar[data-v-1a1d0c6d]{width:38px;height:38px;border-radius:50%;color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}.near-main[data-v-1a1d0c6d]{flex:1;min-width:0}.near-name[data-v-1a1d0c6d]{font-size:13px;font-weight:700}.share-box[data-v-1a1d0c6d]{margin-top:16px;padding:12px;border:1px dashed var(--primary);border-radius:12px;background:var(--primary-soft)}.kpi-icon[data-v-403d5015]{font-size:24px}.kpi-num[data-v-403d5015]{font-size:22px;font-weight:800;margin:4px 0 2px;color:var(--primary);font-variant-numeric:tabular-nums}.kpi-label[data-v-403d5015]{font-size:12px;color:var(--text-sub)}.kpi-sub[data-v-403d5015]{font-size:12px;color:var(--text-sub);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-row[data-v-45b21bc9]{margin-bottom:8px}.br-head[data-v-45b21bc9]{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;margin-bottom:2px}.br-label[data-v-45b21bc9]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.br-val[data-v-45b21bc9]{flex:none;color:var(--text-sub)}.br-track[data-v-45b21bc9]{height:12px;background:var(--bar);border-radius:8px;overflow:hidden}.br-track i[data-v-45b21bc9]{display:block;height:100%;border-radius:8px}.insight-panel[data-v-d7046c5a]{margin-bottom:16px;background:var(--soft-blue);border-color:var(--bar-bright)}.insight-list[data-v-d7046c5a]{margin:0;padding-left:18px;font-size:13px;line-height:2;color:var(--text)}.kpi-grid[data-v-9693ecc4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.panel-grid[data-v-9693ecc4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:16px}.sim-group[data-v-4e874de7]{margin-bottom:16px}.sim-label[data-v-4e874de7]{font-size:13px;font-weight:700;margin-bottom:8px}.sim-opts[data-v-4e874de7]{display:flex;gap:8px}.sim-opts .tab[data-v-4e874de7]{flex:1}.sim-result[data-v-4e874de7]{margin-top:6px;padding:16px;border-radius:14px;background:linear-gradient(135deg,#0f3d33,#155e54);color:#fff;text-align:center}.sim-result-label[data-v-4e874de7]{font-size:12px;opacity:.85}.sim-result-num[data-v-4e874de7]{font-size:30px;font-weight:800;margin:6px 0}.sim-result .muted[data-v-4e874de7]{color:#fffc}.pt-row[data-v-4e874de7]{display:flex;gap:10px;padding:9px 0;border-bottom:1px dashed var(--border)}.pt-row[data-v-4e874de7]:last-child{border-bottom:none}.pt-tag[data-v-4e874de7]{flex:0 0 auto;align-self:flex-start;font-size:11px;font-weight:700;color:#0f766e;background:var(--soft-green);border-radius:8px;padding:2px 8px}.pt-name[data-v-4e874de7]{font-size:13px;font-weight:700}.budget-total-row[data-v-4e874de7]{display:flex;align-items:center;gap:8px}.preset-row[data-v-4e874de7]{display:flex;align-items:center;gap:6px;margin-top:10px;flex-wrap:wrap}.preset-row .tab[data-v-4e874de7]{flex:0 0 auto}.alloc-row[data-v-4e874de7]{margin-bottom:12px}.alloc-head[data-v-4e874de7]{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;margin-bottom:3px}.alloc-label[data-v-4e874de7]{font-weight:600}.alloc-val[data-v-4e874de7]{color:var(--text-sub)}.alloc-val b[data-v-4e874de7]{color:var(--primary)}.alloc-track[data-v-4e874de7]{height:8px;background:var(--bar);border-radius:6px;overflow:hidden;margin-bottom:4px}.alloc-bar[data-v-4e874de7]{height:100%;border-radius:6px;background:linear-gradient(90deg,#0d9488,#2dd4bf)}.alloc-slider[data-v-4e874de7]{width:100%;accent-color:#0d9488}.alloc-sum[data-v-4e874de7]{margin-top:14px;padding:12px;border-radius:12px;background:var(--primary-soft);border:1px dashed var(--primary);font-size:13px;display:flex;flex-direction:column;gap:3px}.alloc-sum .over[data-v-4e874de7]{color:var(--soft-red-text)}.alloc-msg[data-v-4e874de7]{margin-top:10px;font-size:12px;padding:10px;background:var(--soft-green);border:1px solid var(--soft-green-border);border-radius:10px;color:var(--soft-green-text)}.calib-empty[data-v-4e874de7]{padding:16px 4px;font-size:13px;color:var(--text-sub);line-height:1.8}.calib-conclusion[data-v-4e874de7]{margin-top:14px;padding:12px;border-radius:12px;background:var(--soft-green);border:1px solid var(--soft-green-border);color:var(--soft-green-text);font-size:13px;line-height:1.7}.ref-row[data-v-4e874de7]{display:flex;justify-content:space-between;font-size:13px;padding:6px 0;border-bottom:1px dashed var(--border)}.price-grid[data-v-4e874de7]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.price-item[data-v-4e874de7]{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--border);border-radius:12px;background:var(--card)}.price-icon[data-v-4e874de7]{font-size:20px}.price-main[data-v-4e874de7]{display:flex;flex-direction:column;min-width:0}.price-name[data-v-4e874de7]{font-size:12px;color:var(--text-sub)}.price-val[data-v-4e874de7]{font-size:13px}.rhythm-row[data-v-4e874de7]{display:flex;align-items:flex-start;gap:8px;padding:7px 0;border-bottom:1px dashed var(--border)}.rhythm-row[data-v-4e874de7]:last-child{border-bottom:none}.rhythm-tag[data-v-4e874de7]{flex:0 0 auto;font-size:11px;font-weight:700;border-radius:8px;padding:2px 8px}.rhythm-tag.up[data-v-4e874de7]{color:#b45309;background:#f59e0b24}.rhythm-tag.flat[data-v-4e874de7]{color:#0f766e;background:#0d948824}.rhythm-tag.warn[data-v-4e874de7]{color:#b63a46;background:#b63a4624}.rhythm-tag.low[data-v-4e874de7]{color:#6b7280;background:#6b728024}.tip-list[data-v-4e874de7]{margin:0;padding-left:18px;font-size:13px;line-height:2;color:var(--text)}.pie-box[data-v-09fea9aa]{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:680px;margin:0 auto}.pie-wrap[data-v-09fea9aa]{position:relative;width:100%;max-width:230px;flex:none}.pie-svg[data-v-09fea9aa]{width:100%;height:auto;display:block}.slice[data-v-09fea9aa]{cursor:pointer;stroke:var(--card);stroke-width:2;transition:opacity .15s,transform .15s;transform-box:fill-box;transform-origin:center}.slice.hi[data-v-09fea9aa]{opacity:.85;transform:scale(1.05)}.pie-label[data-v-09fea9aa]{font-size:11px;fill:var(--text-sub)}.pie-center[data-v-09fea9aa]{font-size:15px;font-weight:800;fill:var(--text)}.pie-tip[data-v-09fea9aa]{position:absolute;left:50%;bottom:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:1px;padding:5px 12px;border-radius:10px;background:#111827e6;color:#fff;font-size:12px;white-space:nowrap;pointer-events:none}.pie-tip span[data-v-09fea9aa]{font-weight:700;opacity:.9}.pie-legend[data-v-09fea9aa]{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px;max-height:220px;overflow-y:auto;align-content:start}.pie-item[data-v-09fea9aa]{display:flex;align-items:center;gap:6px;padding:3px 8px;border:none;background:none;border-radius:8px;font-family:inherit;font-size:12px;color:var(--text);cursor:pointer;text-align:left;min-width:0}.pie-item[data-v-09fea9aa]:hover{background:var(--primary-soft)}.dot[data-v-09fea9aa]{width:10px;height:10px;border-radius:3px;flex:none}.pi-name[data-v-09fea9aa]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pi-val[data-v-09fea9aa]{color:var(--text-sub);font-size:11px;white-space:nowrap}@media(min-width:520px){.pie-box[data-v-09fea9aa]{flex-direction:row;align-items:center;gap:18px}.pie-wrap[data-v-09fea9aa]{max-width:220px}.pie-legend[data-v-09fea9aa]{max-height:240px}}.line-chart[data-v-d49ce5ba]{width:100%;margin:0 auto}.line-svg[data-v-d49ce5ba]{width:100%;display:block;cursor:crosshair}.gridline[data-v-d49ce5ba]{stroke:var(--border);stroke-width:1;stroke-dasharray:3 3}.gridline.axis[data-v-d49ce5ba]{stroke-dasharray:none;stroke:var(--text-light)}.neg-bg[data-v-d49ce5ba]{fill:#b63a460d}.hline[data-v-d49ce5ba]{stroke:var(--text-light);stroke-width:1;stroke-dasharray:4 3}.y-lab[data-v-d49ce5ba]{font-size:10px;fill:var(--text-sub);text-anchor:end}.x-lab[data-v-d49ce5ba]{font-size:10px;fill:var(--text-sub);text-anchor:middle}.x-lab.first[data-v-d49ce5ba]{text-anchor:start}.x-lab.last[data-v-d49ce5ba]{text-anchor:end}.x-lab.skip[data-v-d49ce5ba]{opacity:0}.pt[data-v-d49ce5ba]{opacity:0;transition:opacity .12s}.pt.hi[data-v-d49ce5ba]{opacity:1}.line-tip[data-v-d49ce5ba]{margin:6px auto 0;max-width:92%;padding:8px 12px;border-radius:10px;background:var(--primary-soft);border:1px solid var(--border);font-size:12px;color:var(--text);display:flex;flex-direction:column;gap:3px;box-shadow:0 2px 10px #0000000f}.tip-row[data-v-d49ce5ba]{display:flex;align-items:center;gap:6px;font-weight:700}.tip-row i[data-v-d49ce5ba]{width:10px;height:3px;border-radius:2px}.line-legend[data-v-d49ce5ba]{display:flex;gap:12px;margin-top:6px;font-size:11px;color:var(--text-sub);flex-wrap:wrap;justify-content:center}.lg-item[data-v-d49ce5ba]{display:flex;align-items:center;gap:4px}.lg-item i[data-v-d49ce5ba]{width:10px;height:3px;border-radius:2px;display:inline-block}.kpi-row[data-v-8eef93d8]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi[data-v-8eef93d8]{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:12px;background:var(--primary-soft)}.kpi span[data-v-8eef93d8]{font-size:11px;color:var(--text-sub)}.kpi b[data-v-8eef93d8]{font-size:16px}.kpi b.in[data-v-8eef93d8]{color:#0f766e}.kpi b.out[data-v-8eef93d8]{color:#b63a46}.range-row[data-v-8eef93d8]{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.range-inputs[data-v-8eef93d8]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.range-inputs .input[data-v-8eef93d8]{width:128px;font-size:13px}.range-presets[data-v-8eef93d8]{display:flex;gap:6px;flex-wrap:wrap}.range-presets .tab[data-v-8eef93d8]{flex:0 0 auto;font-size:12px}.bar-chart[data-v-8eef93d8]{display:flex;gap:6px;height:168px;overflow-x:auto;padding-bottom:2px}.bc-col[data-v-8eef93d8]{flex:0 0 46px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;border-radius:8px;padding:4px 2px;cursor:pointer}.bc-col.cur[data-v-8eef93d8]{background:var(--primary-soft)}.bc-labels[data-v-8eef93d8]{display:flex;flex-direction:column;align-items:center;gap:1px;font-size:9px;min-height:28px}.bc-inc[data-v-8eef93d8]{color:#0f766e;white-space:nowrap}.bc-exp[data-v-8eef93d8]{color:#b63a46;white-space:nowrap}.bc-bars[data-v-8eef93d8]{display:flex;align-items:flex-end;gap:3px;height:100px;width:100%;justify-content:center}.bc-bars i[data-v-8eef93d8]{width:12px;border-radius:4px 4px 0 0}.bc-inc-bar[data-v-8eef93d8]{background:linear-gradient(180deg,#2dd4bf,#0d9488)}.bc-exp-bar[data-v-8eef93d8]{background:linear-gradient(180deg,#e76f51,#b63a46)}.bc-label[data-v-8eef93d8]{font-size:10px;color:var(--text-sub)}.chart-rows[data-v-8eef93d8]{display:flex;flex-direction:column}.chart-row[data-v-8eef93d8]{border:none;background:none;padding:0;text-align:left;cursor:pointer;border-radius:8px}.chart-row[data-v-8eef93d8]:hover{background:var(--primary-soft)}.chart-type[data-v-8eef93d8]{display:flex;gap:6px}.chart-type .tab[data-v-8eef93d8]{font-size:11px}.sort-row[data-v-8eef93d8]{display:flex;align-items:center;gap:6px;margin-bottom:10px;flex-wrap:wrap}.sort-row .tab[data-v-8eef93d8]{flex:0 0 auto;font-size:12px}.sep[data-v-8eef93d8]{color:var(--text-light);font-size:12px}.cat-chips[data-v-8eef93d8]{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.cat-chips .chip[data-v-8eef93d8]{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:3px 10px;font-size:11px;font-family:inherit;color:var(--text-sub);cursor:pointer}.cat-chips .chip.active[data-v-8eef93d8]{border-color:var(--primary);color:var(--primary);background:var(--primary-soft);font-weight:700}.pro-filter-tip[data-v-8eef93d8]{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:8px 10px;background:var(--soft-green);border:1px solid var(--soft-green-border);border-radius:10px;color:var(--soft-green-text);font-size:12px;flex-wrap:wrap}.rec-list[data-v-8eef93d8]{display:flex;flex-direction:column}.rec-row[data-v-8eef93d8]{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--border)}.rec-row[data-v-8eef93d8]:last-child{border-bottom:none}.rec-icon[data-v-8eef93d8]{font-size:18px}.rec-main[data-v-8eef93d8]{flex:1;min-width:0;display:flex;flex-direction:column}.rec-name[data-v-8eef93d8]{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-name em[data-v-8eef93d8]{font-style:normal;color:var(--text-sub);font-weight:400}.rec-amt[data-v-8eef93d8]{font-size:14px;font-weight:800}.rec-amt.in[data-v-8eef93d8]{color:#0f766e}.rec-amt.out[data-v-8eef93d8]{color:#b63a46}.rec-del[data-v-8eef93d8]{border:none;background:none;color:var(--text-light);font-size:14px;cursor:pointer;padding:4px}.rec-del[data-v-8eef93d8]:hover{color:var(--primary)}.pager[data-v-8eef93d8]{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px}.pager-info[data-v-8eef93d8]{font-size:12px;color:var(--text-sub);font-weight:700}.pro-duo[data-v-8eef93d8]{display:grid;gap:14px}@media(min-width:920px){.pro-duo[data-v-8eef93d8]{grid-template-columns:1fr 1fr;align-items:start}}.g2[data-v-8eef93d8]{display:grid;gap:14px;margin-bottom:14px}@media(min-width:860px){.g2[data-v-8eef93d8]{grid-template-columns:1fr 1fr;align-items:start}}.cal-nav[data-v-8eef93d8]{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.cal-title[data-v-8eef93d8]{font-size:14px;font-weight:800}.cal-grid[data-v-8eef93d8]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.cal-wd[data-v-8eef93d8]{text-align:center;font-size:10px;color:var(--text-sub);padding:2px 0}.cal-cell[data-v-8eef93d8]{aspect-ratio:1 / 1;width:100%;border-radius:8px;border:1px solid var(--border);background:var(--card);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-family:inherit;cursor:pointer;padding:1px;overflow:hidden}.cal-cell.empty[data-v-8eef93d8]{visibility:hidden}.cal-cell.pos[data-v-8eef93d8]{border-color:#0d948873;background:#0d94881f}.cal-cell.neg[data-v-8eef93d8]{border-color:#b63a4673;background:#b63a461f}.cal-d[data-v-8eef93d8]{font-size:11px;font-weight:700;color:var(--text)}.cal-bal[data-v-8eef93d8]{font-size:8px;color:var(--text-sub);white-space:nowrap}.cal-cell.pos .cal-bal[data-v-8eef93d8]{color:#0f766e;font-weight:700}.cal-cell.neg .cal-bal[data-v-8eef93d8]{color:#b63a46;font-weight:700}.cal-week-grid[data-v-8eef93d8]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cal-week[data-v-8eef93d8]{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;border-radius:12px;border:1px solid var(--border);background:var(--card);font-family:inherit;cursor:pointer;font-size:11px;color:var(--text)}.cal-week-label[data-v-8eef93d8]{color:var(--text-sub)}.cal-week-val[data-v-8eef93d8]{font-size:14px}.cal-week.pos[data-v-8eef93d8]{border-color:#0d948880;background:#0d94881f}.cal-week.pos .cal-week-val[data-v-8eef93d8]{color:#0f766e}.cal-week.neg[data-v-8eef93d8]{border-color:#b63a4680;background:#b63a461f}.cal-week.neg .cal-week-val[data-v-8eef93d8]{color:#b63a46}.cal-grid2[data-v-8eef93d8]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cal-tile[data-v-8eef93d8]{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;border-radius:12px;border:1px solid var(--border);background:var(--card);font-family:inherit;cursor:pointer;font-size:12px;color:var(--text)}.cal-tile b[data-v-8eef93d8]{font-size:13px}.cal-tile.pos[data-v-8eef93d8]{border-color:#0d948880;background:#0d94881f;color:#0f766e}.cal-tile.neg[data-v-8eef93d8]{border-color:#b63a4680;background:#b63a461f;color:#b63a46}.pager-jump[data-v-8eef93d8]{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-sub)}.page-input[data-v-8eef93d8]{width:48px;text-align:center;font-size:13px}@media(max-width:480px){.kpi-row[data-v-8eef93d8]{grid-template-columns:repeat(2,minmax(0,1fr))}.range-inputs .input[data-v-8eef93d8]{width:108px}}.month-nav[data-v-cfb46c10]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.month-title[data-v-cfb46c10]{font-size:15px;font-weight:800}.balance-banner[data-v-cfb46c10]{background:linear-gradient(135deg,#0f3d33,#155e54);border-radius:var(--radius);color:#fff;padding:18px 20px}.balance-banner.negative[data-v-cfb46c10]{background:linear-gradient(135deg,#7a2530,#b63a46)}.balance-label[data-v-cfb46c10]{font-size:12px;opacity:.85}.balance-num[data-v-cfb46c10]{font-size:38px;font-weight:800;line-height:1.15;margin:4px 0}.balance-sym[data-v-cfb46c10]{font-size:20px;font-weight:700;opacity:.9}.balance-hint[data-v-cfb46c10]{font-size:12px;opacity:.9;margin-bottom:4px}.balance-live[data-v-cfb46c10]{font-size:12px;opacity:.9;margin-bottom:6px}.balance-live-bar[data-v-cfb46c10]{height:6px;border-radius:4px;background:#ffffff2e;overflow:hidden;margin-top:5px;max-width:260px}.balance-live-bar i[data-v-cfb46c10]{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#f59e0b,#fbbf24)}.balance-cmp[data-v-cfb46c10]{font-size:11px;opacity:.9;margin-bottom:10px}.balance-cmp.up[data-v-cfb46c10]{color:#ffb3a0}.balance-cmp.down[data-v-cfb46c10]{color:#7ee2c4}.balance-row[data-v-cfb46c10]{display:flex;gap:16px;flex-wrap:wrap}.balance-item[data-v-cfb46c10]{font-size:12px;display:flex;flex-direction:column;gap:2px}.balance-item b[data-v-cfb46c10]{font-size:15px}.balance-item.income b[data-v-cfb46c10]{color:#7ee2c4}.balance-item.expense b[data-v-cfb46c10]{color:#ffb3a0}.cat-grid[data-v-cfb46c10]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cat-btn[data-v-cfb46c10]{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--border);background:var(--card);border-radius:12px;cursor:pointer;font-family:inherit;text-align:left}.cat-btn.active[data-v-cfb46c10]{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 1px var(--primary)}.cat-icon[data-v-cfb46c10]{font-size:17px}.cat-name[data-v-cfb46c10]{font-size:13px;font-weight:700}.cat-hint[data-v-cfb46c10]{font-size:10px;color:var(--text-sub);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-btn.active .cat-hint[data-v-cfb46c10]{white-space:normal;overflow:visible;text-overflow:clip}.amount-input[data-v-cfb46c10]{font-size:18px;font-weight:700;flex:1;min-width:120px}.date-input[data-v-cfb46c10]{width:150px}.btn.big[data-v-cfb46c10]{padding:12px;font-size:15px}.scholar-box[data-v-cfb46c10]{margin-top:12px;padding:12px;background:var(--primary-soft);border:1px dashed var(--primary);border-radius:12px}.scholar-label[data-v-cfb46c10]{font-size:12px;font-weight:700;color:var(--primary-dark);margin-bottom:8px}.scholar-grid[data-v-cfb46c10]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.scholar-chip[data-v-cfb46c10]{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:7px 9px;font-family:inherit;font-size:12px;cursor:pointer;text-align:left;display:flex;justify-content:space-between;gap:6px}.scholar-chip b[data-v-cfb46c10]{color:var(--primary)}.import-msg[data-v-cfb46c10]{margin-top:10px;font-size:12px;padding:10px;background:var(--soft-green);border:1px solid var(--soft-green-border);border-radius:10px;color:var(--soft-green-text)}.clean-toggle[data-v-cfb46c10]{display:flex;align-items:flex-start;gap:8px;margin-top:10px;font-size:11px;line-height:1.7;color:var(--text-sub);cursor:pointer}.clean-toggle input[data-v-cfb46c10]{margin-top:2px;accent-color:#0d9488;flex:none;cursor:pointer}.clean-toggle label[data-v-cfb46c10]{cursor:pointer}.clean-toggle b[data-v-cfb46c10]{color:var(--text)}.privacy-note[data-v-cfb46c10]{margin-top:10px;font-size:11px;line-height:1.7;padding:10px;background:var(--primary-soft);border:1px dashed var(--primary);border-radius:10px;color:var(--text-sub)}.ref-toggle[data-v-cfb46c10]{width:100%;display:flex;justify-content:space-between;align-items:center;border:none;background:none;font-family:inherit;font-size:14px;font-weight:700;color:var(--text);cursor:pointer;padding:2px 0}.ref-row[data-v-cfb46c10]{display:flex;justify-content:space-between;font-size:13px;padding:6px 0;border-bottom:1px dashed var(--border)}.trend-wrap[data-v-cfb46c10]{display:flex;align-items:flex-end;gap:10px;height:130px}.trend-col[data-v-cfb46c10]{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;gap:4px}.trend-val[data-v-cfb46c10]{font-size:10px;color:var(--text-sub);min-height:14px;white-space:nowrap}.trend-bar[data-v-cfb46c10]{width:100%;max-width:34px;height:90px;display:flex;align-items:flex-end;background:var(--bar);border-radius:7px;overflow:hidden}.trend-bar i[data-v-cfb46c10]{width:100%;background:linear-gradient(180deg,#3b82f6,#1b66c9);border-radius:7px}.trend-label[data-v-cfb46c10]{font-size:11px;color:var(--text-sub)}.rec-list[data-v-cfb46c10]{display:flex;flex-direction:column}.rec-row[data-v-cfb46c10]{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--border)}.rec-row[data-v-cfb46c10]:last-child{border-bottom:none}.rec-icon[data-v-cfb46c10]{font-size:18px}.rec-main[data-v-cfb46c10]{flex:1;min-width:0;display:flex;flex-direction:column}.rec-name[data-v-cfb46c10]{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-name em[data-v-cfb46c10]{font-style:normal;color:var(--text-sub);font-weight:400}.rec-amt[data-v-cfb46c10]{font-size:14px;font-weight:800}.rec-amt.in[data-v-cfb46c10]{color:#0f766e}.rec-amt.out[data-v-cfb46c10]{color:#b63a46}.rec-del[data-v-cfb46c10]{border:none;background:none;color:var(--text-light);font-size:14px;cursor:pointer;padding:4px}.rec-del[data-v-cfb46c10]:hover{color:var(--primary)}.egg-toast-wrap[data-v-cfb46c10]{position:fixed;left:50%;top:46%;transform:translate(-50%);z-index:300;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.egg-toast[data-v-cfb46c10]{max-width:82vw;padding:14px 22px;border-radius:16px;background:#111827eb;color:#fff;font-size:17px;font-weight:800;letter-spacing:1px;text-align:center;box-shadow:0 10px 40px #00000059;pointer-events:none;white-space:nowrap}.egg-fade-enter-active[data-v-cfb46c10],.egg-fade-leave-active[data-v-cfb46c10]{transition:opacity .3s,transform .3s}.egg-fade-enter-from[data-v-cfb46c10],.egg-fade-leave-to[data-v-cfb46c10]{opacity:0;transform:scale(.85)}.egg-fade-move[data-v-cfb46c10]{transition:transform .3s}.px-rain[data-v-cfb46c10]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:290;pointer-events:none;overflow:hidden}.px-drop[data-v-cfb46c10]{position:absolute;top:-20px;border-radius:2px;animation-name:px-fall-cfb46c10;animation-timing-function:linear;animation-iteration-count:infinite;opacity:.9}@keyframes px-fall-cfb46c10{0%{transform:translateY(-10px) rotate(0);opacity:0}8%{opacity:.95}to{transform:translateY(110vh) rotate(360deg);opacity:.85}}.balance-egg[data-v-cfb46c10]{display:inline-block;margin-bottom:8px;padding:4px 12px;border-radius:999px;background:#ffffff29;color:#ffe9a8;font-size:13px;font-weight:800;letter-spacing:1px;animation:egg-pop-cfb46c10 .4s ease}@keyframes egg-pop-cfb46c10{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.batch-row[data-v-cfb46c10]{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.batch-input[data-v-cfb46c10]{width:64px;text-align:center;font-weight:700}.batch-tip[data-v-cfb46c10]{font-size:11px;color:var(--primary);background:var(--primary-soft);border-radius:8px;padding:2px 8px}.top-actions[data-v-cfb46c10]{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.pro-btn[data-v-cfb46c10]{border-color:var(--primary)!important;color:var(--primary)!important}.sort-row[data-v-cfb46c10]{display:flex;align-items:center;gap:6px;margin-bottom:10px;flex-wrap:wrap}.sort-row .tab[data-v-cfb46c10]{flex:0 0 auto;font-size:12px}.sep[data-v-cfb46c10]{color:var(--text-light);font-size:12px}.pager[data-v-cfb46c10]{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px}.pager-info[data-v-cfb46c10]{font-size:12px;color:var(--text-sub);font-weight:700}.pager-jump[data-v-cfb46c10]{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-sub)}.page-input[data-v-cfb46c10]{width:48px;text-align:center;font-size:13px}.chart-type[data-v-cfb46c10]{display:flex;gap:6px}.chart-type .tab[data-v-cfb46c10]{font-size:11px}.cat-chips[data-v-cfb46c10]{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.cat-chips .chip[data-v-cfb46c10]{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:3px 10px;font-size:11px;font-family:inherit;color:var(--text-sub);cursor:pointer}.cat-chips .chip.active[data-v-cfb46c10]{border-color:var(--primary);color:var(--primary);background:var(--primary-soft);font-weight:700}.ach-panel[data-v-cfb46c10]{margin-top:14px;padding-top:12px;border-top:1px dashed var(--border)}.ach-count[data-v-cfb46c10]{font-size:12px;font-weight:800;color:var(--primary)}.ach-grid[data-v-cfb46c10]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ach-item[data-v-cfb46c10]{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:9px 10px;border-radius:12px;border:1px solid var(--border);background:var(--card);opacity:.55;filter:grayscale(.9)}.ach-item.on[data-v-cfb46c10]{opacity:1;filter:none;border-color:#7c3aed80;background:linear-gradient(135deg,#7c3aed1f,#4f46e51a)}.ach-top[data-v-cfb46c10]{display:flex;align-items:center;gap:6px}.ach-icon[data-v-cfb46c10]{font-size:18px;flex:none}.ach-name[data-v-cfb46c10]{font-size:12px;font-weight:700}.ach-item.on .ach-name[data-v-cfb46c10]{color:#6d28d9}.ach-desc[data-v-cfb46c10]{font-size:10px;color:var(--text-sub)}.ach-progress[data-v-cfb46c10]{display:flex;align-items:center;gap:6px;width:100%}.ach-bar[data-v-cfb46c10]{flex:1;height:6px;border-radius:4px;background:var(--bar);overflow:hidden}.ach-bar i[data-v-cfb46c10]{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#7c3aed,#a855f7)}.ach-more[data-v-cfb46c10]{margin-top:10px;width:100%;padding:8px;border:1px dashed var(--border);background:none;border-radius:10px;font-size:12px;font-family:inherit;color:var(--text-sub);cursor:pointer}.ach-more[data-v-cfb46c10]:hover{color:var(--primary);border-color:var(--primary)}.budget-root.cyber .balance-banner[data-v-cfb46c10]{background:linear-gradient(135deg,#0f172a,#312e81 55%,#0f766e);border:1px solid rgba(34,211,238,.6);box-shadow:0 0 24px #22d3ee40,inset 0 0 40px #a855f726}.budget-root.cyber .balance-num[data-v-cfb46c10],.budget-root.cyber .balance-live[data-v-cfb46c10],.budget-root.cyber .rec-amt[data-v-cfb46c10]{font-family:Consolas,Courier New,monospace;text-shadow:0 0 8px rgba(34,211,238,.75)}.budget-root.cyber .balance-num[data-v-cfb46c10]{color:#67e8f9}.budget-root.cyber .balance-live-bar i[data-v-cfb46c10]{background:linear-gradient(90deg,#22d3ee,#a855f7)}.budget-root.cyber .balance-banner.negative[data-v-cfb46c10]{background:linear-gradient(135deg,#1c1917,#7f1d1d 55%,#831843);border-color:#f43f5e99}.budget-root.cyber .panel[data-v-cfb46c10]{border-color:#22d3ee40}.btn.festival-on.festival-spring[data-v-cfb46c10]{background:linear-gradient(135deg,#dc2626,#f59e0b)!important;box-shadow:0 6px 22px #dc262666;animation:fest-pulse-cfb46c10 1.6s ease-in-out infinite}.btn.festival-on.festival-april[data-v-cfb46c10]{background:linear-gradient(135deg,#ec4899,#8b5cf6,#22d3ee,#f59e0b)!important;background-size:300% 300%;animation:fest-rainbow-cfb46c10 4s ease infinite}.btn.festival-on.festival-qdu[data-v-cfb46c10]{background:linear-gradient(135deg,#0f3d33,#155e54,#1b66c9)!important;box-shadow:0 6px 22px #155e5473}@keyframes fest-pulse-cfb46c10{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes fest-rainbow-cfb46c10{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.kpi-grid[data-v-2388e005]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.tieba-enter[data-v-2388e005]{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#4b6cb7,#2f5fb8);color:#fff;border-radius:14px;padding:14px}.tieba-enter[data-v-2388e005]:hover{opacity:.92}.tieba-logo[data-v-2388e005]{width:42px;height:42px;border-radius:12px;background:var(--card);color:var(--primary);font-weight:800;font-size:20px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.tieba-main[data-v-2388e005]{display:flex;flex-direction:column;gap:2px;flex:1}.tieba-main .muted[data-v-2388e005]{color:#fffc}.tieba-enter .site-go[data-v-2388e005]{font-size:18px}.hot-row[data-v-2388e005]{display:flex;align-items:center;gap:10px;padding:8px 2px;border-bottom:1px dashed var(--border);color:inherit;text-decoration:none}.hot-row[data-v-2388e005]:last-child{border-bottom:none}.hot-rank[data-v-2388e005]{font-weight:800;color:var(--text-sub);min-width:20px;text-align:center}.hot-rank.top[data-v-2388e005]{color:#eab308}.hot-main[data-v-2388e005]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.hot-title[data-v-2388e005]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.hot-sub[data-v-2388e005]{font-size:11px}.hot-replybar[data-v-2388e005]{flex:0 0 90px;height:6px;border-radius:4px;background:var(--border);overflow:hidden}.hot-replybar i[data-v-2388e005]{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#eab308,#f59e0b)}.hot-meta[data-v-2388e005]{font-size:12px;flex:0 0 auto;color:var(--text);font-weight:700}.kw-cloud[data-v-2388e005]{display:flex;flex-wrap:wrap;gap:8px 12px;padding:6px 0;line-height:1.7}.kw-tag[data-v-2388e005]{color:var(--text);display:inline-flex;align-items:baseline;gap:3px;font-weight:600}.kw-tag em[data-v-2388e005]{font-style:normal;color:var(--text-sub);font-size:11px;font-weight:500}.chart-type[data-v-2388e005]{display:flex;gap:6px}.chart-type .tab[data-v-2388e005]{font-size:11px}.mini-bar-chart[data-v-2388e005]{display:flex;align-items:flex-end;gap:6px;height:150px;overflow-x:auto}.mb-col[data-v-2388e005]{flex:1;min-width:34px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;height:100%;cursor:pointer;position:relative}.mb-tip[data-v-2388e005]{position:absolute;top:0;font-size:11px;font-weight:700;color:var(--notice-text);background:var(--notice-bg);border:1px solid var(--notice-border);border-radius:6px;padding:1px 7px;opacity:0;transition:opacity .15s;line-height:1.6;white-space:nowrap;pointer-events:none}.mb-tip.show[data-v-2388e005]{opacity:1}.mb-bar[data-v-2388e005]{width:100%;max-width:34px;height:118px;display:flex;align-items:flex-end;background:var(--bar);border-radius:6px 6px 0 0;overflow:hidden;transition:background .15s}.mb-bar i[data-v-2388e005]{width:100%;background:linear-gradient(180deg,#22d3ee,#0891b2);border-radius:6px 6px 0 0;transition:background .15s}.mb-bar.hi[data-v-2388e005]{background:#f59e0b40}.mb-bar.hi i[data-v-2388e005]{background:linear-gradient(180deg,#fbbf24,#f59e0b)}.mb-label[data-v-2388e005]{font-size:9px;color:var(--text-sub)}.cloud[data-v-f7fe3cb3]{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;padding:28px 16px;min-height:220px}.cloud-item[data-v-f7fe3cb3]{display:flex;flex-direction:column;align-items:center;gap:5px;max-width:250px;padding:14px 16px 12px;border-radius:16px;color:#fff;text-decoration:none;background:linear-gradient(135deg,hsl(var(--hue) 65% 45%),hsl(calc(var(--hue) + 30) 65% 60%));box-shadow:0 6px 18px #00000024;transition:transform .18s ease,box-shadow .18s ease;text-align:center}.cloud-item[data-v-f7fe3cb3]:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 26px #0003}.cloud-avatar[data-v-f7fe3cb3]{width:52px;height:52px;border-radius:50%;border:2px solid rgba(255,255,255,.75);object-fit:cover;flex:none}.cloud-emoji[data-v-f7fe3cb3]{font-size:26px}.cloud-name[data-v-f7fe3cb3]{font-weight:800;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.cloud-role[data-v-f7fe3cb3]{font-size:11px;opacity:.95;line-height:1.5;white-space:normal;max-width:220px;word-break:break-word}.changelog[data-v-f7fe3cb3]{margin:0;padding-left:20px;font-size:13px;line-height:1.8;color:var(--text)}.changelog a[data-v-f7fe3cb3]{color:var(--primary, #1b66c9)}.snapshot-tip[data-v-f999cf5d]{background:var(--soft-yellow, #fef3c7);border:1px solid #f59e0b;color:#92400e;border-radius:10px;padding:8px 12px;font-size:12px;line-height:1.7;margin-bottom:14px}.kpi-grid[data-v-f999cf5d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px}.duo-grid[data-v-f999cf5d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:16px}.chart-type[data-v-f999cf5d]{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.chart-type .tab[data-v-f999cf5d]{font-size:11px;padding:3px 8px}.bar-wrap[data-v-f999cf5d]{display:flex;align-items:flex-end;gap:8px;height:150px}.bar-col[data-v-f999cf5d]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%}.bar-val[data-v-f999cf5d]{font-size:10px;color:var(--text-sub);min-height:13px}.bar-box[data-v-f999cf5d]{width:100%;height:100px;display:flex;align-items:flex-end;background:var(--bar);border-radius:7px;overflow:hidden}.bar-box i[data-v-f999cf5d]{width:100%;background:linear-gradient(180deg,#0891b2,#06b6d4);border-radius:7px}.bar-label[data-v-f999cf5d]{font-size:11px;color:var(--text-sub)}.mini-bars[data-v-f999cf5d]{display:flex;align-items:flex-end;gap:3px;height:110px;overflow-x:auto}.mini-col[data-v-f999cf5d]{flex:1;min-width:14px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;height:100%}.mini-bar[data-v-f999cf5d]{width:100%;height:90px;display:flex;align-items:flex-end;background:var(--bar);border-radius:4px;overflow:hidden}.mini-bar i[data-v-f999cf5d]{width:100%;background:linear-gradient(180deg,#7c3aed,#a78bfa);border-radius:4px}.mini-label[data-v-f999cf5d]{font-size:9px;color:var(--text-sub)}.row-list[data-v-f999cf5d]{display:flex;flex-direction:column;gap:8px}.row-item[data-v-f999cf5d]{display:flex;align-items:center;gap:8px}.row-label[data-v-f999cf5d]{flex:0 0 64px;font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-bar[data-v-f999cf5d]{flex:1;height:10px;border-radius:6px;background:var(--bar);overflow:hidden}.row-bar i[data-v-f999cf5d]{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#0891b2,#22d3ee)}.row-bar.purple i[data-v-f999cf5d]{background:linear-gradient(90deg,#7c3aed,#a78bfa)}.row-bar.orange i[data-v-f999cf5d]{background:linear-gradient(90deg,#d97706,#f59e0b)}.row-val[data-v-f999cf5d]{flex:0 0 auto;font-size:12px;color:var(--text-sub);white-space:nowrap}.app-top[data-v-f999cf5d]{display:flex;flex-direction:column}.app-row[data-v-f999cf5d]{display:flex;align-items:center;gap:8px;padding:6px 0}.app-rank[data-v-f999cf5d]{flex:0 0 20px;text-align:center;font-weight:800;color:var(--text-sub);font-size:13px}.app-rank.top[data-v-f999cf5d]{color:#eab308}.app-name[data-v-f999cf5d]{flex:0 0 96px;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-bar[data-v-f999cf5d]{flex:1;height:10px;border-radius:6px;background:var(--bar);overflow:hidden}.app-bar i[data-v-f999cf5d]{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#d97706,#f59e0b)}.app-val[data-v-f999cf5d]{flex:0 0 auto;font-size:12px;color:var(--text-sub)}:root{--primary: #1b66c9;--primary-dark: #144e9c;--primary-soft: #e8f0fb;--accent: #f59e0b;--bg: #f2f6fc;--card: #ffffff;--text: #1c2430;--text-sub: #6b7686;--text-light: #98a4b5;--border: #e4ebf5;--shadow: 0 6px 24px rgba(27, 102, 201, .08);--radius: 16px;--nav-h: 60px;--bar: #EEF3FB;--soft: #FAFCFF;--soft-blue: #EEF6FF;--soft-yellow: #FFF8E6;--soft-green: #EEFAF3;--header-bg: rgba(255, 255, 255, .92);--nav-bg: rgba(255, 255, 255, .96);--soft-gray: #eef3fa;--soft-fg: #f6f9ff;--hover-bg: #dce9fb;--sk-a: #eef3fa;--sk-b: #e3ecf7;--notice-bg: #fdf6e7;--notice-border: #f3e0b5;--notice-text: #92400e;--welcome-motto-bg: rgba(255, 255, 255, .85);--soft-green-bg: #e8f6ee;--soft-green-border: #7ec9a0;--soft-green-text: #0f766e;--soft-red-bg: #fdf0f0;--soft-red-border: #e6a3a3;--soft-red-text: #b63a46;--blue-bright: #e8f2ff;--dim-gray: #c2c9d6;--bar-bright: #bcd6f5}[data-theme=dark]{--primary: #5b9cf0;--primary-dark: #8ab8ff;--primary-soft: #1d2c44;--accent: #fbbf24;--bg: #10141b;--card: #1a212b;--text: #e7edf5;--text-sub: #9aa8bb;--text-light: #79879b;--border: #2b3645;--shadow: 0 6px 24px rgba(0, 0, 0, .45);--bar: #2a3442;--soft: #1d2632;--soft-blue: #1b2940;--soft-yellow: #33290f;--soft-green: #12291f;--header-bg: rgba(26, 33, 43, .92);--nav-bg: rgba(26, 33, 43, .96);--soft-gray: #2a3442;--soft-fg: #1d2632;--hover-bg: #1d2c44;--sk-a: #232c3a;--sk-b: #181f29;--notice-bg: #33290f;--notice-border: #4a3c18;--notice-text: #e7d8a8;--welcome-motto-bg: rgba(26, 33, 43, .9);--soft-green-bg: #12291f;--soft-green-border: #1f5c43;--soft-green-text: #6ee7b7;--soft-red-bg: #2a1418;--soft-red-border: #5c2a30;--soft-red-text: #f2a3ab;--blue-bright: #1d2c44;--dim-gray: #79879b;--bar-bright: #2b3645}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh}#app{display:flex;flex-direction:column;min-height:100vh}.welcome{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.welcome-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px 400px at 15% 10%,rgba(59,130,246,.35),transparent),radial-gradient(500px 380px at 85% 20%,rgba(245,158,11,.28),transparent),radial-gradient(700px 500px at 50% 100%,rgba(27,102,201,.25),transparent),linear-gradient(160deg,#eef4fc,#e7f0fb)}[data-theme=dark] .welcome-bg{background:radial-gradient(600px 400px at 15% 10%,rgba(59,130,246,.14),transparent),radial-gradient(500px 380px at 85% 20%,rgba(245,158,11,.1),transparent),radial-gradient(700px 500px at 50% 100%,rgba(27,102,201,.14),transparent),linear-gradient(160deg,#12161f,#10141b)}.welcome-inner{position:relative;text-align:center;padding:40px 28px;max-width:420px;width:100%;animation:rise .6s ease}.welcome-logo{height:88px;margin:0 auto;padding:0 26px;border-radius:24px;background:linear-gradient(135deg,#0f2f5e,#1b66c9);display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px #1b66c952}.welcome-logo span{font-size:30px;font-weight:800;letter-spacing:1px;background:linear-gradient(120deg,#fff,#a8d4ff 55%,#4ea6f0);-webkit-background-clip:text;background-clip:text;color:transparent}.welcome-title{font-size:30px;font-weight:800;margin:22px 0 6px;color:var(--primary-dark)}.welcome-sub{color:var(--text-sub);font-size:14px;margin:0}.welcome-motto{display:inline-block;margin-top:18px;padding:8px 20px;background:var(--welcome-motto-bg);border:1px solid var(--border);border-radius:999px;font-size:14px;font-weight:700;color:var(--primary);letter-spacing:2px}.welcome-badges{margin-top:20px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.welcome-badge{background:var(--primary-soft);color:var(--primary-dark);font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px}.welcome-btn{margin-top:28px;width:100%;padding:15px;border:none;border-radius:14px;background:linear-gradient(135deg,#1b66c9,#3a86e8);color:#fff;font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 10px 24px #1b66c94d;transition:transform .18s,box-shadow .18s}.welcome-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px #1b66c961}.welcome-tip{margin-top:18px;font-size:11px;color:var(--text-sub)}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.header{position:sticky;top:0;z-index:50;background:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.header-inner{max-width:1080px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:14px}.brand{display:flex;align-items:center;gap:12px;cursor:pointer}.brand-logo{height:42px;padding:0 13px;border-radius:12px;background:var(--card, #fff);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #1b66c91f}.brand-logo span{white-space:nowrap;font-size:15px;font-weight:800;letter-spacing:.5px;background:linear-gradient(90deg,#f43f5e,#f59e0b,#10b981,#06b6d4,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.brand-name{font-size:19px;font-weight:700;color:var(--primary-dark);line-height:1.1;white-space:nowrap}.brand-sub{font-size:12px;color:var(--text-sub)}.header-right{margin-left:auto;display:flex;align-items:center;gap:10px}.ghost-btn{white-space:nowrap;background:var(--primary-soft);color:var(--primary);border:none;padding:8px 14px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:.2s}.ghost-btn:hover{background:var(--hover-bg)}.lang-btn{min-width:0;padding:8px 10px}.lang-label{font-size:12px;font-weight:700;letter-spacing:.5px}.main{flex:1;max-width:1080px;width:100%;margin:0 auto;padding:20px 20px calc(var(--nav-h) + 28px)}.app-like-bar{display:flex;justify-content:center;margin-bottom:14px}.app-like-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 18px;border:1px solid var(--border);background:var(--card);border-radius:999px;font-family:inherit;font-size:13px;color:var(--text);cursor:pointer;transition:transform .15s,box-shadow .15s}.app-like-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000014;border-color:var(--primary)}.app-like-btn b{font-weight:800;color:var(--primary);min-width:12px;text-align:left}.app-like-btn.on{border-color:#e11d4866;color:#e11d48;background:#e11d480f}.app-like-btn.on b{color:#e11d48}.hero{padding:6px 0 4px}.hero-title{font-size:26px;font-weight:800;margin:0;color:var(--primary-dark)}.hero-sub{color:var(--text-sub);font-size:14px;margin:8px 0 0}.search-bar{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px 16px;margin-top:16px;box-shadow:var(--shadow)}.search-icon{font-size:16px}.search-input{flex:1;border:none;outline:none;font-size:14px;background:transparent;color:var(--text)}.section{margin-top:22px}.section-head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.section-title{font-size:18px;font-weight:700;margin:0;color:var(--text);display:flex;align-items:center;gap:8px}.section-title .bar{width:4px;height:18px;border-radius:2px;background:var(--accent);flex-shrink:0}.wiki-card{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:linear-gradient(135deg,#0f2f5e,#1b66c9);border-radius:var(--radius);padding:18px 20px;color:#fff;box-shadow:0 10px 26px #1b66c947}.wiki-main{display:flex;align-items:center;gap:14px;flex:1;min-width:240px}.wiki-emoji{font-size:34px}.wiki-title{font-size:17px;font-weight:800}.wiki-desc{font-size:12px;opacity:.85;margin-top:3px;line-height:1.6}.wiki-links{display:flex;flex-wrap:wrap;gap:10px}.wiki-link{background:#ffffff29;border:1px solid rgba(255,255,255,.3);color:#fff;text-decoration:none;font-size:13px;font-weight:600;padding:9px 16px;border-radius:10px;transition:.2s;white-space:nowrap}.wiki-link:hover{background:#ffffff47}.notice-banner{background:var(--notice-bg);border:1px solid var(--notice-border);color:var(--notice-text);border-radius:12px;padding:12px 16px;font-size:13px;margin-bottom:14px}.news-list{display:flex;flex-direction:column}.news-item{display:flex;align-items:center;gap:12px;padding:13px 6px;border-bottom:1px solid var(--border);text-decoration:none;transition:.16s}.news-item:hover{background:var(--primary-soft);border-radius:10px;padding-left:12px;padding-right:12px}.news-item:last-child{border-bottom:none}.news-date{flex-shrink:0;font-size:12px;font-weight:700;color:var(--primary);background:var(--primary-soft);border-radius:8px;padding:4px 10px}.news-title{flex:1;font-size:14px;font-weight:600;color:var(--text);line-height:1.5}.news-thumb{width:72px;height:46px;flex-shrink:0;border-radius:8px;overflow:hidden;background:var(--soft-gray)}.news-thumb img{width:100%;height:100%;object-fit:cover}.news-go{color:var(--primary);font-weight:700;flex-shrink:0}.news-click{width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:inherit}.news-click:hover,.news-click:hover .news-title{color:var(--primary)}.link{color:var(--primary);text-decoration:none}.link:hover{text-decoration:underline}.source-bar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:9px 14px;margin-bottom:14px;font-size:12px;color:var(--text-sub);box-shadow:var(--shadow)}.source-bar .sep{opacity:.4}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.dot.live{background:#16a34a;box-shadow:0 0 0 3px #16a34a26}.dot.off,.dot.demo{background:#f59e0b}.dot.tool{background:#94a3b8}.refresh-btn{margin-left:auto;border:none;background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:600;padding:6px 12px;border-radius:8px;cursor:pointer;font-family:inherit}.refresh-btn:hover{background:var(--hover-bg)}.refresh-btn:disabled{opacity:.5;cursor:default}.skeleton{background:linear-gradient(90deg,var(--sk-a) 25%,var(--sk-b) 50%,var(--sk-a) 75%);background-size:200% 100%;animation:sk 1.2s infinite;border-radius:6px}@keyframes sk{to{background-position:-200% 0}}.skeleton-list{display:flex;flex-direction:column;gap:12px}.skeleton-row{display:flex;gap:12px;align-items:center}.demo-badge{display:inline-block;vertical-align:middle;background:var(--notice-bg);color:var(--notice-text);border:1px solid var(--notice-border);font-size:11px;font-weight:600;padding:2px 8px;border-radius:6px;margin-left:8px}.detail-title{font-size:20px;font-weight:800;margin:14px 0 6px;line-height:1.5}.detail-meta{font-size:13px;color:var(--text-sub);margin-bottom:16px}.article-body{font-size:14px;line-height:1.9;color:var(--text);word-break:break-word}.article-body p{margin:0 0 12px}.article-body img{max-width:100%;height:auto;border-radius:8px}.article-body a{color:var(--primary)}.article-body table{border-collapse:collapse;width:100%;margin:10px 0;font-size:13px}.article-body th,.article-body td{border:1px solid var(--border);padding:8px}.article-body th{background:var(--primary-soft)}.article-body h1,.article-body h2,.article-body h3{margin:16px 0 8px}.cal-list{display:flex;flex-direction:column}.cal-item{display:flex;align-items:center;gap:12px;padding:12px 6px;border-bottom:1px solid var(--border);text-decoration:none;transition:.16s}.cal-item:hover{background:var(--primary-soft);border-radius:10px;padding-left:12px;padding-right:12px}.cal-item:last-child{border-bottom:none}.cal-title{flex:1;font-size:14px;font-weight:600;color:var(--text)}.cal-date{flex-shrink:0;font-size:12px;color:var(--text-sub)}.cal-count{flex-shrink:0;font-size:12px;color:var(--text-sub);margin-left:8px;white-space:nowrap}.cal-go{flex-shrink:0;font-size:12px;font-weight:600;color:var(--primary)}.footer{max-width:1080px;width:100%;margin:0 auto;padding:18px 20px calc(var(--nav-h) + 20px);color:var(--text-sub);font-size:12px;line-height:1.9}.footer-legend{display:flex;flex-wrap:wrap;gap:10px 20px;margin-bottom:8px}.legend-item{display:inline-flex;align-items:center;gap:6px}.footer-copy{opacity:.75}.footer-ver{font-weight:700;color:var(--primary);margin-left:4px}.footer-dev{opacity:.55;margin-top:2px}.about-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;font-size:13px;line-height:1.9;color:var(--text-sub);display:flex;flex-direction:column;gap:6px}.about-card b{color:var(--text);font-weight:600}.insight-card{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:linear-gradient(135deg,#0f3d33,#155e54);border-radius:var(--radius);padding:18px 20px;color:#fff;box-shadow:0 10px 26px #0f665e40}.insight-main{flex:1;min-width:220px}.insight-title{font-size:16px;font-weight:800}.insight-desc{font-size:12px;opacity:.9;margin-top:6px;line-height:1.7}.insight-desc b{color:#7ee2c4}.insight-bars{display:flex;align-items:flex-end;gap:6px;height:64px;padding:0 4px}.insight-bar{width:16px;height:100%;display:flex;align-items:flex-end;background:#ffffff1f;border-radius:6px;overflow:hidden}.insight-bar-fill{width:100%;background:linear-gradient(180deg,#7ee2c4,#2dd4bf);border-radius:6px}.section-sub{font-size:12px;color:var(--text-sub)}.section-link{margin-left:auto;border:none;background:var(--primary-soft);color:var(--primary);padding:7px 14px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer}.section-link:hover{background:var(--hover-bg)}.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;min-width:0}.service-tile{display:flex;align-items:center;gap:12px;text-align:left;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px;cursor:pointer;transition:transform .16s,box-shadow .16s;font-family:inherit}.service-tile:hover{transform:translateY(-2px);box-shadow:0 10px 22px #1b66c924}.tile-icon{width:46px;height:46px;border-radius:13px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:23px}.tile-body{display:flex;flex-direction:column;min-width:0}.tile-title{font-size:15px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile-desc{font-size:12px;color:var(--text-sub);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty{color:var(--text-sub);text-align:center;padding:30px 0;font-size:14px}.hint{color:var(--text-sub);font-size:13px;padding:14px 2px}.group-list{display:flex;flex-direction:column;gap:18px}.group-block{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px}.group-name{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--primary-dark)}.mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.mini-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;background:var(--soft-fg);border:1px solid var(--border);border-radius:12px;cursor:pointer;font-family:inherit;transition:.16s}.mini-tile:hover{background:var(--primary-soft)}.mini-icon{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:19px}.mini-title{font-size:12px;font-weight:600;color:var(--text)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.stat{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px 10px;text-align:center;box-shadow:var(--shadow)}.stat-value{font-size:24px;font-weight:800;color:var(--primary)}.stat-label{font-size:12px;color:var(--text-sub);margin-top:4px}.campus-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.campus-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:var(--shadow);font-family:inherit;text-align:left;color:var(--text);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.campus-card:hover{border-color:var(--primary)}.campus-card.open{border-color:var(--primary);box-shadow:0 6px 20px #1b66c91f}.campus-head{display:flex;align-items:center;gap:10px}.campus-main{flex:1}.campus-emoji{font-size:30px}.campus-name{font-size:16px;font-weight:800}.campus-alias{font-size:12px;color:var(--primary);font-weight:600;margin-top:2px}.campus-toggle{font-size:12px;color:var(--text-light)}.campus-addr{font-size:12px;color:var(--text-sub);margin-top:6px}.campus-detail{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}.campus-desc{font-size:12px;color:var(--text-sub)}.campus-colleges{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.campus-tag{font-size:11px;padding:4px 9px;border-radius:999px;background:var(--soft-blue);color:var(--primary);font-weight:600}.campus-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.btn.small{padding:6px 12px;font-size:12px}.view-top{margin-bottom:18px}.back-btn{background:none;border:none;color:var(--primary);font-size:14px;font-weight:600;cursor:pointer;padding:6px 0;display:inline-flex;align-items:center;gap:6px}.view-title{font-size:22px;font-weight:800;margin:8px 0 2px}.view-sub{color:var(--text-sub);font-size:13px}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin-bottom:16px}.input-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}.input{flex:1;min-width:180px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;background:var(--soft);outline:none;transition:.2s;font-family:inherit}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1b66c91f}.btn{background:var(--primary);color:#fff;border:none;padding:12px 22px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:.2s;font-family:inherit}.btn:hover{background:var(--primary-dark)}.btn.accent{background:var(--accent)}.btn.ghost{background:var(--primary-soft);color:var(--primary)}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th,table.data td{border:1px solid var(--border);padding:9px 10px;text-align:left}table.data th{background:var(--primary-soft);color:var(--primary-dark);font-weight:700}.tab-row{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.tab{padding:9px 16px;border-radius:10px;background:var(--soft-gray);color:var(--text-sub);border:none;font-size:14px;font-weight:600;cursor:pointer;transition:.2s;font-family:inherit}.tab.active{background:var(--primary);color:#fff}.result-box{background:var(--primary-soft);border-radius:12px;padding:18px;margin-top:14px}.muted{color:var(--text-sub)}.tag{display:inline-block;background:var(--primary-soft);color:var(--primary);border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600;margin:2px}.tag-btn{border:none;cursor:pointer;font-family:inherit;transition:.15s}.tag-btn:hover{background:var(--hover-bg);transform:translateY(-1px)}.seg{display:flex;gap:8px;margin-bottom:18px}.seg-btn{flex:1;padding:11px;border:1px solid var(--border);border-radius:12px;background:var(--soft-fg);font-size:14px;font-weight:700;cursor:pointer;color:var(--text-sub);transition:.2s;font-family:inherit}.seg-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.chip{padding:8px 15px;border-radius:999px;background:var(--soft-gray);border:1px solid transparent;color:var(--text-sub);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:.2s}.chip.active{background:var(--primary);color:#fff}.bldg-list{display:flex;flex-direction:column;gap:10px}.bldg-card{border:1px solid var(--border);border-radius:14px;overflow:hidden}.bldg-head{width:100%;display:flex;align-items:center;gap:12px;padding:14px;background:var(--soft);border:none;cursor:pointer;text-align:left;font-family:inherit}.bldg-head:hover{background:var(--primary-soft)}.bldg-icon{font-size:24px}.bldg-main{flex:1;min-width:0}.bldg-name{font-size:16px;font-weight:800;color:var(--text)}.bldg-meta{font-size:12px;color:var(--text-sub);margin-top:2px;display:block}.bldg-desc{font-size:12px;color:var(--text);margin-top:4px;display:block;opacity:.85}.bldg-arrow{color:var(--text-sub);font-size:14px}.bldg-detail{padding:14px 16px;border-top:1px solid var(--border);background:var(--card)}.detail-title{font-size:13px;font-weight:800;margin-bottom:8px;color:var(--primary-dark)}.route-steps{margin:0;padding-left:20px;line-height:1.9;font-size:13px}.detail-box{margin-top:14px}.tags{display:flex;flex-wrap:wrap;gap:6px}.floor-row{display:flex;gap:10px;align-items:baseline;padding:4px 0;font-size:13px}.floor-tag{flex-shrink:0;background:var(--primary-soft);color:var(--primary);font-weight:700;border-radius:6px;padding:2px 8px;font-size:12px}.floor-rooms{color:var(--text)}.year-tabs{display:flex;gap:8px;margin-bottom:18px}.year-tab{flex:1;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--soft-fg);font-size:14px;font-weight:700;cursor:pointer;color:var(--text-sub);font-family:inherit;transition:.2s}.year-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.result-banner{background:linear-gradient(135deg,#1b66c9,#3a86e8);border-radius:14px;color:#fff;padding:20px;display:flex;align-items:center;gap:18px;margin-bottom:18px}.result-score{display:flex;align-items:baseline;gap:4px}.result-num{font-size:44px;font-weight:800}.result-total{opacity:.7;font-size:15px}.result-grade{font-size:20px;font-weight:800;padding:6px 16px;border-radius:999px}.grade-excellent{background:#0f766e}.grade-good{background:#0e7490}.grade-pass{background:#b45309}.grade-fail{background:#b91c1c}.result-hint{margin-left:auto;font-size:12px;opacity:.85}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:13px;font-weight:600;color:var(--text-sub)}.field-split{grid-column:span 2}.split-row{display:flex;align-items:center;gap:8px}.split-row .input{flex:1;min-width:0}.split-colon{font-weight:700;color:var(--text-sub)}.score-list{display:flex;flex-direction:column;gap:10px;margin-top:22px}.score-row{display:flex;align-items:center;gap:10px;font-size:13px}.score-name{width:110px;flex-shrink:0;color:var(--text);font-weight:600}.score-bar{flex:1;height:8px;background:var(--soft-gray);border-radius:4px;overflow:hidden}.score-bar i{display:block;height:100%;background:linear-gradient(90deg,#1b66c9,#3a86e8);border-radius:4px;transition:width .3s}.score-val{width:70px;text-align:right;font-weight:700;color:var(--primary)}.score-val.dim{color:var(--text-sub);font-weight:400}.official-group{margin-bottom:20px}.site-link{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;margin-bottom:8px;text-decoration:none;background:var(--soft);transition:.16s}.site-link:hover{background:var(--primary-soft);border-color:var(--primary)}.site-link.featured{border-color:var(--notice-border);background:linear-gradient(135deg,var(--soft-yellow),var(--soft-yellow));box-shadow:0 3px 12px #f2c14e40}.site-link.featured .site-name{color:var(--notice-text)}.site-link.featured .site-desc{color:var(--notice-text);opacity:.85}.site-link.featured .site-go{color:var(--notice-text)}.site-name{font-size:14px;font-weight:700;color:var(--text);flex-shrink:0}.site-desc{font-size:12px;color:var(--text-sub);flex:1}.site-go{color:var(--primary);font-weight:700}.college-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:14px}.college-card{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--soft);text-decoration:none;transition:.16s}.college-card:hover{background:var(--primary-soft);border-color:var(--primary)}.college-name{font-size:13px;font-weight:600;color:var(--text)}.college-go{color:var(--primary);font-size:12px}.phone-list{display:flex;flex-direction:column}.phone-row{display:flex;justify-content:space-between;align-items:center;padding:13px 4px;border-bottom:1px solid var(--border);font-size:14px}.phone-name{font-weight:600}.phone-num{color:var(--primary);font-weight:800;letter-spacing:.5px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:var(--nav-h);background:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border);display:flex;z-index:40;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:none;font-size:11px;color:var(--text-sub);cursor:pointer;font-family:inherit;transition:.2s}.bottom-nav__item.is-active{color:var(--primary);font-weight:700}.bn-icon{font-size:19px;line-height:1}@media(max-width:860px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.hero-title{font-size:22px}.header-inner{padding:10px 12px;gap:10px}.brand{gap:8px;min-width:0}.brand-logo{height:36px;padding:0 10px}.brand-logo span{font-size:13px}.brand-name{font-size:15px}.header-right{gap:6px}.ghost-btn{padding:7px 10px;font-size:12px}.desktop-only{display:none!important}.lang-btn{padding:6px 8px}.lang-label{font-size:11px}.brand-sub{display:none}.result-banner{flex-wrap:wrap}.result-hint{width:100%;margin-left:0}.field-split{grid-column:span 1}}.mourning-bar{max-width:1080px;margin:0 auto 12px;padding:8px 14px;border-radius:10px;background:#e5e7eb;color:#374151;font-size:12px;text-align:center}html[data-theme=dark] .mourning-bar{background:#1f2937;color:#d1d5db}html.mourning .welcome,html.mourning .header,html.mourning .main,html.mourning .footer,html.mourning .bottom-nav{filter:grayscale(1)}.notice-bell{position:relative}.notice-dot{position:absolute;top:-4px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#e11d48;color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;box-shadow:0 0 0 2px var(--header-bg)}.notice-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:#00000073;display:flex;align-items:center;justify-content:center;padding:20px}.notice-modal{width:100%;max-width:560px;max-height:80vh;display:flex;flex-direction:column;background:var(--card);border-radius:16px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.notice-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}.notice-modal-title{font-size:15px;font-weight:800}.notice-modal-close{border:none;background:none;font-size:18px;color:var(--text-light);cursor:pointer;padding:2px 6px;border-radius:8px}.notice-modal-close:hover{background:var(--hover-bg);color:var(--text)}.notice-modal-body{overflow-y:auto;padding:8px 18px 16px}.notice-item{padding:12px 0;border-bottom:1px dashed var(--border)}.notice-item:last-child{border-bottom:none}.notice-item-title{font-size:13px;font-weight:700;display:flex;gap:8px;align-items:center}.notice-item-date{font-size:11px}.notice-item-content{margin-top:6px;font-size:12px;line-height:1.9;color:var(--text-sub);white-space:pre-line}
