:root{--bg-cream:#fbf5ec;--bg-cream-deep:#f4ecdc;--bg-paper:#fffbf3;--bg-card:#fff;--bg-tint:#faf1e1;--ink-1:#2a1f15;--ink-2:#5a4a38;--ink-3:#8a7a65;--ink-4:#b7a992;--line:#e8dec9;--line-soft:#f0e7d2;--brand:#c76749;--brand-deep:#9f422b;--brand-soft:#ffe0ce;--brand-tint:#ffeee2;--art:#cc6349;--art-soft:#ffe4d7;--music:#7165ad;--music-soft:#eae8ff;--pe:#42815a;--pe-soft:#d7f4e0;--ok:#519962;--warn:#cd9130;--warn-soft:#fdecd1;--info:#218cb5;--r-xs:6px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:24px;--sh-sm:0 1px 0 #3c28140a, 0 2px 6px #3c28140a;--sh-md:0 1px 0 #3c28140a, 0 6px 18px #3c28140f;--sh-lg:0 1px 0 #3c28140a, 0 14px 36px #3c28141a;--font-sans:"Noto Sans SC", -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-serif:"Noto Serif SC", "Songti SC", "STSong", Georgia, serif;--font-mono:"JetBrains Mono", "SF Mono", Menlo, Consolas, monospace}@supports (color:lab(0% 0 0)){:root{--brand:lab(54.8925% 37.2189 34.8489);--brand-deep:lab(40.8813% 38.6229 33.8427);--brand-soft:lab(91.6531% 11.2442 15.0616);--brand-tint:lab(95.2635% 5.93674 9.54802);--art:lab(54.739% 41.2723 35.1671);--art-soft:lab(92.7612% 12.264 13.8963);--music:lab(46.4054% 17.9622 -37.2391);--music-soft:lab(92.6426% 5.13813 -14.0335);--pe:lab(48.9802% -28.4705 14.6503);--pe-soft:lab(93.5794% -12.4075 6.35813);--ok:lab(57.3252% -33.0089 21.5408);--warn:lab(65.0917% 17.1256 57.4885);--warn-soft:lab(94.2941% 2.68632 15.3633);--info:lab(53.8302% -18.9 -30.6435)}}*{box-sizing:border-box}html,body{background:var(--bg-cream);color:var(--ink-1);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;font-size:14px;line-height:1.55}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.62}.topbar nav.primary button.nav-item{background:0 0;border:0}.topbar .search{margin:0}#root{flex-direction:column;min-height:100vh;display:flex}.shell{flex-direction:column;flex:1;display:flex}.topbar{z-index:50;-webkit-backdrop-filter:saturate(140%)blur(10px);backdrop-filter:saturate(140%)blur(10px);border-bottom:1px solid var(--line-soft);background:#fbf5eceb;align-items:center;gap:8px;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.topbar .brand-lockup{cursor:pointer;align-items:center;gap:10px;margin-right:28px;display:flex}.topbar .brand-mark{background:var(--brand);border-radius:8px;width:30px;height:30px;position:relative;overflow:hidden}.topbar .brand-mark:before,.topbar .brand-mark:after{content:"";position:absolute;inset:0}.topbar .brand-mark:before{clip-path:polygon(0 60%,100% 30%,100% 100%,0 100%);background:#f0c781;background:lab(82.72% 8.74323 40.8395)}.topbar .brand-mark:after{clip-path:circle(28% at 78% 30%);background:#318454;background:lab(49.2309% -35.0404 18.0628)}.topbar .brand-name{font-family:var(--font-serif);letter-spacing:1px;color:var(--ink-1);font-size:18px;font-weight:700}.topbar .brand-sub{color:var(--ink-3);letter-spacing:.5px;white-space:nowrap;margin-top:1px;font-size:11px}.topbar nav.primary{flex:1;align-items:center;gap:2px;display:flex}.topbar nav.primary .nav-item{color:var(--ink-2);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;transition:background .12s,color .12s;display:flex;position:relative}.topbar nav.primary .nav-item:hover{background:var(--bg-tint);color:var(--ink-1)}.topbar nav.primary .nav-item.active{color:var(--brand-deep);background:var(--brand-soft);font-weight:600}.topbar nav.primary .nav-item .caret{opacity:.55;border-bottom:1.5px solid;border-right:1.5px solid;width:8px;height:8px;transform:rotate(45deg)translate(-2px,-2px)}.topbar .right-cluster{align-items:center;gap:8px;display:flex}.topbar .search{background:var(--bg-paper);border:1px solid var(--line);width:200px;color:var(--ink-3);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:flex}.topbar .search input{color:var(--ink-1);background:0 0;border:none;outline:none;flex:1;font-size:13px}.topbar .quota-chip{background:var(--brand-soft);color:var(--brand-deep);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;display:flex}.topbar .quota-chip b{font-weight:700}.topbar .avatar{color:#fff;width:34px;height:34px;font-size:13px;font-weight:600;font-family:var(--font-serif);cursor:pointer;box-shadow:var(--sh-sm);background:linear-gradient(135deg,#eca57d,#ce7069);background:linear-gradient(135deg,lab(73.9569% 23.7547 31.6569),lab(58.2382% 37.4657 21.0909));border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.dropdown{background:var(--bg-card);border:1px solid var(--line);box-shadow:var(--sh-lg);z-index:100;border-radius:12px;min-width:240px;padding:8px;animation:.14s ease-out pop;position:absolute;top:calc(100% + 6px);left:0}@keyframes pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown .dd-item{color:var(--ink-1);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-size:13px;font-weight:400;display:flex}.dropdown .dd-item:hover{background:var(--bg-tint)}.dropdown .dd-item .dd-ico{width:28px;height:28px;font-size:14px;font-family:var(--font-serif);border-radius:8px;justify-content:center;align-items:center;font-weight:700;display:flex}.dropdown .dd-item .dd-sub{color:var(--ink-3);font-size:11px;font-weight:400}.dropdown .dd-item .dd-text{flex-direction:column;gap:0;display:flex}.page{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:28px 28px 80px}.page-full{flex:1;width:100%;padding:0}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 16px;font-size:13px;font-weight:500;transition:transform 80ms,background .12s,box-shadow .12s,border-color .12s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--brand);color:#fff;box-shadow:0 1px #0000000f,inset 0 -1px #0000001a}.btn-primary:hover{background:var(--brand-deep)}.btn-secondary{background:var(--bg-card);color:var(--ink-1);border-color:var(--line)}.btn-secondary:hover{background:var(--bg-tint)}.btn-ghost{color:var(--ink-2);background:0 0}.btn-ghost:hover{background:var(--bg-tint);color:var(--ink-1)}.btn-lg{border-radius:12px;height:44px;padding:0 22px;font-size:14px}.btn-sm{border-radius:8px;height:28px;padding:0 10px;font-size:12px}.btn-xs{border-radius:6px;height:24px;padding:0 8px;font-size:11px}.chip{background:var(--bg-tint);color:var(--ink-2);border:1px solid var(--line-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:11px;line-height:1.6;display:inline-flex}.chip-art{background:var(--art-soft);color:#7f230b;color:lab(29.2402% 39.1384 37.393);border-color:#fbcbba;border-color:lab(85.6791% 15.946 15.2671)}.chip-music{background:var(--music-soft);color:#3c2c6f;color:lab(22.95% 20.8605 -36.8187);border-color:#d6d3f7;border-color:lab(85.5717% 6.57648 -17.4614)}.chip-pe{background:var(--pe-soft);color:#004424;color:lab(24.5943% -29.0694 15.0448);border-color:#bee2c9;border-color:lab(86.752% -15.5413 7.9671)}.chip-warn{background:var(--warn-soft);color:#6d3800;color:lab(29.7092% 29.6407 60.6006);border-color:#f2d1ad;border-color:lab(86.0614% 7.83369 22.3934)}.chip-ok{color:#004424;color:lab(24.5943% -29.0694 15.0448);background:#dcf7e1;background:lab(94.7335% -11.8404 7.56122);border-color:#bee2c9;border-color:lab(86.752% -15.5413 7.9671)}.chip-info{color:#004460;color:lab(25.8342% -15.0119 -30.0949);background:#e5f5fd;background:lab(95.4362% -4.20743 -5.82395);border-color:#bedded;border-color:lab(86.2224% -8.2061 -11.5453)}.card{background:var(--bg-card);border:1px solid var(--line-soft);border-radius:var(--r-lg);box-shadow:var(--sh-sm)}.input,.textarea,.select{background:var(--bg-paper);border:1px solid var(--line);width:100%;color:var(--ink-1);border-radius:10px;outline:none;padding:10px 12px;font-size:13px;transition:border-color .12s,background .12s}.input:focus,.textarea:focus,.select:focus{border-color:var(--brand);background:#fff}.textarea{resize:vertical;min-height:80px;line-height:1.5}.label{color:var(--ink-2);margin-bottom:6px;font-size:12px;font-weight:500;display:block}.label .required{color:var(--brand)}.field{margin-bottom:14px}.seg{background:var(--bg-tint);border:1px solid var(--line-soft);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.seg .seg-opt{color:var(--ink-2);cursor:pointer;white-space:nowrap;border-radius:7px;padding:6px 12px;font-size:12px}.seg .seg-opt:hover{color:var(--ink-1)}.seg .seg-opt.active{background:var(--bg-card);color:var(--ink-1);box-shadow:var(--sh-sm);font-weight:500}.toggle{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.toggle .track{background:var(--line);border-radius:999px;width:34px;height:20px;transition:background .14s;position:relative}.toggle .track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .14s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0000002e}.toggle.on .track{background:var(--brand)}.toggle.on .track:after{transform:translate(14px)}.toggle .lbl{color:var(--ink-1);font-size:13px}.placeholder-img{background:repeating-linear-gradient(135deg, var(--bg-tint) 0 12px, var(--bg-cream-deep) 12px 24px);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.3px;text-align:center;justify-content:center;align-items:center;padding:12px;font-size:11px;display:flex;position:relative;overflow:hidden}.placeholder-img.art{color:#7b2813;color:lab(29.3439% 35.9518 32.993);background:repeating-linear-gradient(135deg,#ffe7da 0 12px,#ffd6ca 12px 24px);background:repeating-linear-gradient(135deg,lab(93.9214% 12.2596 13.8924) 0 12px,lab(89.1035% 16.9052 13.6034) 12px 24px);border-color:#fac2af;border-color:lab(83.2862% 18.716 17.9316)}.placeholder-img.music{color:#3c2c6f;color:lab(22.95% 20.8605 -36.8187);background:repeating-linear-gradient(135deg,#eeecff 0 12px,#ddd9fe 12px 24px);background:repeating-linear-gradient(135deg,lab(93.8028% 5.13428 -14.0356) 0 12px,lab(87.8927% 6.5628 -17.4683) 12px 24px);border-color:#d0ccf0;border-color:lab(83.2506% 6.59075 -17.4543)}.placeholder-img.pe{color:#004424;color:lab(24.5943% -29.0694 15.0448);background:repeating-linear-gradient(135deg,#daf7e3 0 12px,#c5e8d0 12px 24px);background:repeating-linear-gradient(135deg,lab(94.7394% -12.4067 6.35767) 0 12px,lab(89.0722% -15.5385 7.96537) 12px 24px);border-color:#b8dbc3;border-color:lab(84.4318% -15.5443 7.96895)}.placeholder-img.cream{color:#713408;color:lab(29.7709% 25.4785 37.4201);background:repeating-linear-gradient(135deg,#ffefd8 0 12px,#fddfc2 12px 24px);background:repeating-linear-gradient(135deg,lab(95.4087% 3.83016 15.0742) 0 12px,lab(90.6577% 7.67955 17.8319) 12px 24px);border-color:#efc8aa;border-color:lab(83.6068% 10.9438 20.648)}.h1-serif{font-family:var(--font-serif);letter-spacing:1px;color:var(--ink-1);margin:0;font-size:36px;font-weight:700;line-height:1.25}.h2-serif{font-family:var(--font-serif);letter-spacing:.5px;color:var(--ink-1);margin:0;font-size:22px;font-weight:600}.eyebrow{letter-spacing:2px;text-transform:uppercase;color:var(--brand);font-size:11px;font-weight:600;font-family:var(--font-mono)}.muted{color:var(--ink-3)}.tiny{font-size:11px}.row{align-items:center;gap:8px;display:flex}.col{flex-direction:column;gap:8px;display:flex}.spread{justify-content:space-between;align-items:center;display:flex}.grow{flex:1}.divider{background:var(--line-soft);height:1px;margin:12px 0}.divider-v{background:var(--line-soft);align-self:stretch;width:1px}.scroll-area{scrollbar-width:thin;scrollbar-color:var(--ink-4) transparent;overflow-y:auto}.scroll-area::-webkit-scrollbar{width:8px;height:8px}.scroll-area::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}::selection{background:var(--brand-soft);color:var(--brand-deep)}@keyframes pulse-dot{0%,to{opacity:.35}50%{opacity:1}}.typing-dot{animation:1.2s infinite pulse-dot;display:inline-block}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}
