@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-sc-latin-400-normal-C8q2FS1w.woff2) format("woff2"),url(/assets/noto-sans-sc-latin-400-normal-ned8RRXO.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-sc-chinese-simplified-400-normal-Ba7eOkfT.woff2) format("woff2"),url(/assets/noto-sans-sc-chinese-simplified-400-normal-DUWMQbbw.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/noto-sans-sc-latin-500-normal-JVPArRf3.woff2) format("woff2"),url(/assets/noto-sans-sc-latin-500-normal-c5FVqAg8.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/noto-sans-sc-chinese-simplified-500-normal-z_irmif2.woff2) format("woff2"),url(/assets/noto-sans-sc-chinese-simplified-500-normal-Du6iXQtI.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-sc-latin-700-normal-BzR54Sjf.woff2) format("woff2"),url(/assets/noto-sans-sc-latin-700-normal-B17hb4LK.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-sc-chinese-simplified-700-normal-DoUziBww.woff2) format("woff2"),url(/assets/noto-sans-sc-chinese-simplified-700-normal-DdQ4H5Ol.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff) format("woff")}:root{--brand: #A8821A;--brand-hover: #8C6C12;--brand-active: #75590C;--brand-soft: #F7F0DC;--brand-soft-hover: #F0E5C4;--on-brand: #FFFFFF;--brand-grad: linear-gradient(135deg, #B8912A 0%, #D4AF37 100%);--bg: #FFFFFF;--bg-subtle: #FAF8F2;--bg-muted: #F1EDE1;--bg-elevated: #FFFFFF;--text: #1C1A14;--text-secondary: #6B6455;--text-tertiary: #A39B87;--text-disabled: #CFC8B6;--border: #E8E3D5;--border-strong: #D3CCB8;--success: #16A34A;--success-soft: #E9F9EF;--warn: #D97706;--warn-soft: #FDF3E4;--danger: #DC2626;--danger-soft: #FDEBEB;--info: #2563EB;--info-soft: #EAF1FE;--font-sans: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius: 8px;--radius-sm: 6px;--radius-lg: 12px;--radius-full: 9999px;--shadow-pop: 0 4px 16px rgba(16, 20, 28, .1);--shadow-pop-lg: 0 12px 32px rgba(16, 20, 28, .14);--header-h: 56px;--sidebar-w: 232px;--sidebar-w-collapsed: 64px;--mobile-nav-h: 56px;--content-max: 1280px;--page-px: 24px;--ease: cubic-bezier(.2, .6, .2, 1);--dur-fast: .12s;--dur: .18s;--z-header: 100;--z-drawer: 900;--z-modal: 1000;--z-popover: 1100;--z-toast: 1200;--chat-font-size: 17px}[data-theme=dark]{--brand: #D4AF37;--brand-hover: #E2C14E;--brand-active: #C39F2B;--brand-soft: #2C2510;--brand-soft-hover: #383016;--on-brand: #1A1509;--brand-grad: linear-gradient(135deg, #D4AF37 0%, #F0D060 100%);--bg: #111009;--bg-subtle: #171509;--bg-muted: #242010;--bg-elevated: #1C1910;--text: #EDE8D8;--text-secondary: #A69F8A;--text-tertiary: #736D5B;--text-disabled: #524D3F;--border: #2E2A1C;--border-strong: #453F2C;--success: #4FCE85;--success-soft: #1A2A1C;--warn: #F0A94B;--warn-soft: #2E2412;--danger: #F26D6D;--danger-soft: #301A16;--info: #7FA6E8;--info-soft: #1C2333;--shadow-pop: 0 4px 16px rgba(0, 0, 0, .45);--shadow-pop-lg: 0 12px 32px rgba(0, 0, 0, .55)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6,p,ul,ol,dl,figure,blockquote{margin:0}ul,ol{padding:0;list-style:none}h1{font-size:22px;font-weight:700}h2{font-size:18px;font-weight:700}h3{font-size:16px;font-weight:600}h4{font-size:14px;font-weight:600}a{color:inherit;text-decoration:none}a.link{color:var(--brand)}a.link:hover{color:var(--brand-hover)}img,svg,video{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:none;padding:0;cursor:pointer}button:disabled{cursor:not-allowed}code,kbd,pre,samp{font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}::selection{background:var(--brand-soft-hover)}@media(min-width:768px){::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}::-webkit-scrollbar-track{background:transparent}}body,.theme-transition *{transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-1{flex:1 1 0%;min-width:0}.shrink-0{flex-shrink:0}.grid{display:grid}.block{display:block}.hidden{display:none}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-6{padding:24px}.text-xs{font-size:12px}.text-sm{font-size:13px}.text-base{font-size:14px}.text-md{font-size:16px}.text-lg{font-size:18px}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-brand{color:var(--brand)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.text-center{text-align:center}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mono{font-family:var(--font-mono)}.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.card-hover{transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.card-hover:hover{border-color:var(--border-strong);box-shadow:var(--shadow-pop)}.divider{height:1px;background:var(--border)}.w-full{width:100%}.min-w-0{min-width:0}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}@media(max-width:767px){.hide-mobile{display:none!important}}@media(min-width:768px)and (max-width:1023px){.hide-tablet{display:none!important}}@media(min-width:768px){.mobile-only{display:none!important}}@media(min-width:1024px){.hide-desktop{display:none!important}}.input,.textarea,.select{width:100%;padding:8px 12px;font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary)}.input:hover,.textarea:hover,.select:hover{border-color:var(--border-strong)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.input:disabled,.textarea:disabled,.select:disabled{background:var(--bg-muted);color:var(--text-disabled);cursor:not-allowed}.input.is-error,.textarea.is-error{border-color:var(--danger)}.input.is-error:focus,.textarea.is-error:focus{box-shadow:0 0 0 3px var(--danger-soft)}.textarea{resize:vertical;min-height:88px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:fade-in var(--dur) var(--ease) both}
