.onboard-overlay[data-v-ff1a5685]{z-index:9999;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.onboard-card[data-v-ff1a5685]{text-align:center;background:#fff;border-radius:20px;width:90%;max-width:340px;padding:40px 32px;box-shadow:0 20px 60px #0003}.onboard-step[data-v-ff1a5685]{color:var(--muted);margin-bottom:12px;font-size:12px}.onboard-icon[data-v-ff1a5685]{margin-bottom:16px;font-size:56px}.onboard-title[data-v-ff1a5685]{margin-bottom:8px;font-size:20px}.onboard-desc[data-v-ff1a5685]{color:var(--muted);margin-bottom:20px;font-size:14px;line-height:1.6}.onboard-dots[data-v-ff1a5685]{justify-content:center;gap:8px;margin-bottom:16px;display:flex}.dot[data-v-ff1a5685]{background:#ddd;border-radius:50%;width:8px;height:8px;transition:all .2s}.dot.active[data-v-ff1a5685]{background:var(--primary);border-radius:4px;width:24px}.notif-bell[data-v-8a760ed4]{position:relative}.notif-badge[data-v-8a760ed4]{background:var(--danger);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-6px;right:-8px}.notif-dropdown[data-v-8a760ed4]{border-radius:var(--radius);z-index:200;background:#fff;width:340px;max-height:380px;position:fixed;top:56px;right:16px;overflow-y:auto;box-shadow:0 4px 20px #00000026}.notif-item[data-v-8a760ed4]{cursor:pointer;border-bottom:1px solid #f5f5f5;padding:10px 14px;transition:background .1s}.notif-item[data-v-8a760ed4]:hover{background:#f9fafb}.notif-item.unread[data-v-8a760ed4]{background:#f0f7ff}.notif-item.unread[data-v-8a760ed4]:hover{background:#e5f0ff}.notif-dot[data-v-8a760ed4]{background:var(--primary);border-radius:50%;width:6px;height:6px}@media (width<=480px){.notif-dropdown[data-v-8a760ed4]{width:280px;right:4px}}*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f0f2f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#606266;--muted:#909399;--border:#e4e7ed;--border-light:#f0f0f0;--primary:#409eff;--primary-light:#ecf5ff;--primary-dark:#3370e0;--danger:#f56c6c;--danger-light:#fef0f0;--success:#67c23a;--success-light:#f0f9eb;--warning:#e6a23c;--warning-light:#fdf6ec;--radius:10px;--shadow:0 1px 3px #00000014;--shadow-lg:0 4px 20px #0000001f;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--sidebar-bg:#f9fafb;--hover-bg:#f5f7fa;--code-bg:#f8f9fb;--code-border:#e4e7ed;--overlay:#0006}[data-theme=dark]{--bg:#0f0f1a;--surface:#1a1a2e;--text:#e4e6eb;--text-secondary:#b0b3b8;--muted:#6b7280;--border:#2d2d3f;--border-light:#252538;--primary:#5bacff;--primary-light:#1a2535;--primary-dark:#409eff;--danger:#ef4444;--danger-light:#2d1b1b;--success:#4ade80;--success-light:#1b2d1b;--warning:#fbbf24;--warning-light:#2d241b;--shadow:0 1px 3px #0000004d;--shadow-lg:0 4px 20px #00000080;--sidebar-bg:#141422;--hover-bg:#222238;--code-bg:#1e1e30;--code-border:#2d2d3f;--overlay:#000000b3}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6;transition:background .3s,color .3s}button{cursor:pointer;border:none;outline:none;font-family:inherit}input,select,textarea{background:var(--surface);color:var(--text);border-color:var(--border);outline:none;font-family:inherit;font-size:14px}input::placeholder,textarea::placeholder{color:var(--muted)}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}#app{background:var(--bg);max-width:960px;min-height:100vh;margin:0 auto}header{background:var(--surface);z-index:100;border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;height:52px;padding:0 20px;transition:background .3s,border .3s;display:flex;position:sticky;top:0;box-shadow:0 1px 2px #0000000d}header h1{color:var(--text);font-size:17px;font-weight:700}header nav{gap:2px;display:flex}header nav a{color:var(--muted);border-radius:8px;padding:6px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s}header nav a:hover,header nav a.active{background:var(--primary-light);color:var(--primary)}.header-right{align-items:center;gap:10px;font-size:13px;display:flex}.header-profile-link{font-size:18px;text-decoration:none}.page{padding:16px}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border-light);margin-bottom:12px;padding:16px;transition:background .3s,border .3s,box-shadow .3s}.chip{border-radius:12px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-block}.chip-red{background:var(--danger-light);color:var(--danger)}.chip-orange{background:var(--warning-light);color:var(--warning)}.chip-yellow{background:var(--warning-light);color:#b88230}.chip-green{background:var(--success-light);color:var(--success)}.chip-blue{background:var(--primary-light);color:var(--primary)}.chip-gray{background:var(--hover-bg);color:var(--muted)}.btn{border-radius:var(--radius);white-space:nowrap;align-items:center;gap:4px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-danger{background:var(--surface);color:var(--danger);border:1px solid var(--danger-light)}.btn-danger:hover:not(:disabled){background:var(--danger-light)}.btn-success{background:var(--success);color:#fff}.btn-sm{padding:5px 12px;font-size:12px}.btn-outline{background:var(--surface);color:var(--primary);border:1px solid var(--primary-light)}.btn-outline:hover:not(:disabled){background:var(--primary-light)}.btn-ghost{color:var(--muted);background:0 0;padding:4px 8px}.btn-ghost:hover{background:var(--hover-bg);color:var(--text)}.input{border:1.5px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:8px;padding:9px 12px;font-size:14px;transition:all .15s}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #409eff1f}select.input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23909399' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spacer{flex:1}.muted{color:var(--muted);font-size:12px}.text-sm{font-size:13px}.text-center{text-align:center}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.empty-state{color:var(--muted);flex-direction:column;align-items:center;gap:8px;padding:40px 20px;display:flex}.empty-icon{opacity:.6;font-size:40px}.empty-title{font-size:15px;font-weight:500}@keyframes skeleton-shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{background:linear-gradient(90deg, var(--border-light) 25%, var(--hover-bg) 50%, var(--border-light) 75%);background-size:200px 100%;border-radius:6px;animation:1.5s infinite skeleton-shimmer}.error-boundary{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.error-boundary h2{color:var(--danger);font-size:18px}.error-boundary p{color:var(--muted);max-width:400px;font-size:13px}.toast-container{z-index:1000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:64px;right:16px}.toast-item{border-radius:var(--radius);box-shadow:var(--shadow-lg);pointer-events:auto;word-break:break-word;max-width:360px;padding:12px 18px;font-size:14px;font-weight:500;animation:.25s ease-out toast-in}.toast-success{color:#67c23a;background:#f0f9eb;border:1px solid #e1f3d8}.toast-error{background:var(--danger-light);color:var(--danger);border:1px solid #fde2e2}.toast-info{background:var(--primary-light);color:var(--primary);border:1px solid #d9ecff}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.theme-toggle{background:var(--hover-bg);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;transition:background .2s;display:flex}.theme-toggle:hover{background:var(--border)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}@media (width<=768px){#app{max-width:100%}header{padding:0 12px}header nav{gap:0}header nav a{padding:6px 8px;font-size:13px}.header-right{gap:6px;font-size:12px}.page,.card{padding:12px}}@media (width<=480px){header{height:48px}header h1{font-size:15px}header nav{gap:1px}header nav a{border-radius:6px;padding:5px 7px;font-size:12px}.header-right{gap:4px}.header-right label{display:none}.btn{padding:6px 12px;font-size:12px}.page{padding:8px}.card{border-radius:8px;margin-bottom:8px;padding:10px}input,select,textarea{font-size:16px}.toast-container{left:8px;right:8px}.toast-item{max-width:100%}}@media (width<=360px){header nav a{padding:4px 5px;font-size:11px}header h1{font-size:14px}}.btn-loading{opacity:.6;pointer-events:none;position:relative}.btn-loading:after{content:"";border:2px solid #fff;border-top-color:#0000;border-radius:50%;width:12px;height:12px;margin-left:6px;animation:.6s linear infinite spin;display:inline-block}.spinner{border:2.5px solid #e4e7ed;border-top-color:var(--primary);border-radius:50%;width:24px;height:24px;margin:20px auto;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;color:var(--muted);padding:40px 20px}.empty-state .empty-icon{opacity:.6;margin-bottom:12px;font-size:48px}.empty-state .empty-title{color:#606266;margin-bottom:6px;font-size:15px;font-weight:600}.empty-state .empty-desc{margin-bottom:16px;font-size:13px}.empty-state .btn{display:inline-flex}.toast-container{z-index:9999;flex-direction:column;gap:6px;display:flex;position:fixed;top:68px;right:16px}.toast{color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:8px;max-width:300px;padding:10px 18px;font-size:13px;font-weight:500;animation:.25s toastIn,.25s 2.5s forwards toastOut;overflow:hidden;box-shadow:0 2px 8px #00000026}.toast-success{background:var(--success)}.toast-error{background:var(--danger)}.toast-info{background:var(--primary)}@keyframes toastIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0;transform:translateY(-10px)}}header nav a.router-link-exact-active{background:var(--primary-light);color:var(--primary);font-weight:600}@media (width<=480px){#app{max-width:100%}header{height:48px;padding:0 10px}header h1{font-size:15px}header nav{gap:0}header nav a{padding:4px 8px;font-size:12px}.header-right{gap:4px;font-size:11px}.header-right .btn-sm{padding:3px 8px;font-size:10px}.page{padding:10px}.card{padding:12px}.row{flex-wrap:wrap;gap:6px}}.input-error{background:#fef0f0;border-color:var(--danger)!important}.input-error:focus{border-color:var(--danger)}.card{transition:box-shadow .2s,transform .1s}.card:hover{box-shadow:0 2px 8px #0000001a}.card:active{transform:scale(.995)}.badge{text-transform:uppercase;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-pending{color:#e6a23c;background:#fdf6ec}.badge-replied{color:#67c23a;background:#f0f9eb}.badge-closed{color:#909399;background:#f2f3f5}.form-card{background:var(--surface);border-radius:var(--radius);border:2px dashed #e4e7ed;margin-bottom:12px;padding:16px}.form-card:focus-within{border-color:var(--primary)}
