:root{color:#e9e7ef;font-synthesis:none;--bg:#17161c;--surface:#211f28;--surface2:#282530;--line:#393440;--muted:#aaa5b4;--accent:#a789e8;--accent2:#7256bf;--danger:#e8909b;--amber:#e4b66d;background:#17161c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}button{font:inherit;color:inherit;cursor:pointer}.app{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);flex-direction:column;flex:none;width:246px;padding:28px 18px 22px;display:flex}.brand{align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.brand-mark{background:var(--accent);color:#201a2b;border-radius:8px;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.eyebrow,.label,.page-kicker{letter-spacing:.12em;color:#908b9a;font-size:10px;font-weight:700}.sidebar .eyebrow{margin:48px 10px 12px}.nav{text-align:left;color:#aaa5b4;background:0 0;border:0;border-radius:8px;width:100%;margin:3px 0;padding:12px 14px;display:block}.nav:hover,.nav.active{color:#f4f0ff;background:#2b2638}.nav.active{box-shadow:inset 3px 0 var(--accent);color:#fff}.sidebar-foot{color:#bcb7c5;border-top:1px solid var(--line);margin-top:auto;padding:14px 10px;font-size:12px;line-height:1.8}.sidebar-foot small{color:#85808f}.dot{background:#777;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.dot.ok{background:#75d1a3}.main{width:100%;max-width:1500px;margin:auto;padding:32px 42px 50px}.topbar{justify-content:space-between;align-items:flex-start;display:flex}.topbar .eyebrow{margin:0 0 8px}.topbar h1{letter-spacing:-.03em;margin:0;font-size:25px}.top-actions{align-items:center;gap:14px;display:flex}.env{color:#c8b9f2;background:#29233a;border:1px solid #5f4f8c;border-radius:999px;padding:7px 11px;font-size:12px}.avatar{color:#322427;background:#d8b599;border:0;border-radius:50%;width:34px;height:34px;font-weight:800}.notice{background:#272333;border:1px solid #4a3e63;border-radius:8px;align-items:flex-start;gap:12px;margin:30px 0 28px;padding:13px 16px;font-size:13px;display:flex}.notice-icon{color:#c2b1f0;text-align:center;border:1px solid #9c86db;border-radius:50%;width:18px;height:18px;line-height:17px}.notice p{color:#aaa5b4;margin:3px 0 0}.close{color:#8d8897;background:0 0;border:0;margin-left:auto;font-size:20px}.toolbar{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.page-kicker{color:#9a8ac9;margin-bottom:7px;display:block}.toolbar h2{margin:0;font-size:28px}.toolbar-actions{gap:10px;display:flex}.btn{border:1px solid var(--line);background:#292631;border-radius:7px;padding:9px 13px;font-size:12px;font-weight:650}.btn:hover{filter:brightness(1.12)}.btn.primary{color:#17131e;background:#9474df;border-color:#a789e8}.btn.danger{color:#e89aa5}.btn.ghost{background:0 0}.stop-banner{color:#edb2b8;background:#302127;border:1px solid #6d414a;border-radius:8px;gap:12px;margin-bottom:16px;padding:13px 16px;font-size:13px;display:flex}.grid{gap:16px;display:grid}.top-grid{grid-template-columns:1.4fr 1fr}.bottom-grid{grid-template-columns:1.4fr 1fr;margin-top:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:20px}.card-head{justify-content:space-between;align-items:flex-start;display:flex}.label{color:#817a8e}.card h3{margin:5px 0 0;font-size:17px}.live-pill,.chip,.filter,.bot-state{border:1px solid var(--line);color:#bcb7c5;background:#282530;border-radius:999px;padding:5px 9px;font-size:11px}.live-pill{color:#a9a4b2}.next-content{align-items:center;gap:16px;padding:27px 0 22px;display:flex}.date-tile{text-align:center;background:#332b42;border:1px solid #5c4d7a;border-radius:8px;flex:none;place-content:center;width:64px;height:70px;display:grid}.date-tile b{font-size:28px;line-height:1}.date-tile span{color:#baa8e4;letter-spacing:.1em;font-size:10px}.next-content h4{margin:0 0 6px;font-size:18px}.next-content p,.editor p{color:var(--muted);margin:0;font-size:12px}.chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.chip.purple{color:#c7b5ef;background:#352b4b;border-color:#66528d}.card-actions{border-top:1px solid var(--line);gap:8px;padding-top:14px;display:flex}.count{color:#f0afb5;background:#63383d;border-radius:999px;padding:4px 9px;font-size:12px}.count.violet{color:#c4b1f0;background:#40325e}.attention{margin:0;padding:10px 0 0;list-style:none}.attention li{border-bottom:1px solid #34303a;align-items:center;gap:10px;padding:12px 0;display:flex}.attention li:last-child{border:0}.alert-dot{border-radius:50%;flex:none;width:8px;height:8px}.amber{background:var(--amber)}.red{background:var(--danger)}.blue{background:#80aee7}.attention strong,.attention small,.queue strong,.queue small{display:block}.attention strong,.queue strong{font-size:13px}.attention small,.queue small{color:#9993a3;margin-top:3px;font-size:11px}.arrow,.row-arrow{color:#7f788b;margin-left:auto;font-size:21px}.link-btn{color:#ad98e9;background:0 0;border:0;font-size:12px}.filters{border-bottom:1px solid var(--line);gap:7px;padding:17px 0 12px;display:flex}.filter{background:0 0;border:0;padding:6px 9px}.filter.active{color:#d7c9f3;background:#3a3150}.event-row{cursor:pointer;border-bottom:1px solid #34303a;align-items:center;gap:14px;padding:15px 0;display:flex}.event-row:last-child{border-bottom:0}.event-time{flex:none;width:58px}.event-time b{font-size:12px;display:block}.event-time span{color:#9993a3;font-size:10px}.event-main{flex:1;min-width:0}.event-main strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.event-meta{color:#9993a3;gap:8px;margin-top:5px;font-size:10px;display:flex}.bot-state{white-space:nowrap;color:#c3b1ec;background:#302742;border-color:#735d9f}.bot-state.off{color:#9b95a5;background:0 0;border-color:#49434f}.internal{opacity:.72}.queue>div{border-bottom:1px solid #34303a;gap:11px;padding:14px 0;display:flex}.queue-icon{color:#bd9fee;font-size:20px}.queue-icon.muted{color:#8d8798}.line-usage{border-top:1px solid var(--line);margin-top:17px;padding-top:16px}.line-usage>div:first-child{justify-content:space-between;font-size:12px;display:flex}.line-usage strong{color:#d4b87f;font-size:11px}.progress{background:#37323e;border-radius:99px;height:6px;margin:10px 0}.progress span{background:#8d6bd4;border-radius:99px;height:100%;display:block}.line-usage small{color:#918b9b;font-size:10px}.editor{border-color:#66528c;justify-content:space-between;align-items:center;gap:20px;margin-top:16px;display:flex}.editor-actions{flex:none;gap:8px;display:flex}.toast{color:#26202e;background:#ede8f9;border-radius:8px;padding:12px 15px;font-size:12px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 30px #0005}.toast button{color:#65557c;background:0 0;border:0;margin-left:8px}@media (width<=900px){.sidebar{width:72px;padding:20px 10px}.brand span:last-child,.sidebar .eyebrow,.nav{font-size:0}.nav{height:44px}.nav:first-letter{font-size:18px}.sidebar-foot{padding:10px 0;font-size:0}.main{padding:26px 22px}.top-grid,.bottom-grid{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:flex-start;gap:15px}.editor{flex-direction:column;align-items:flex-start}}@media (width<=560px){.main{padding:20px 14px 35px}.topbar h1{font-size:20px}.notice{margin:22px 0}.top-actions .env{display:none}.toolbar-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.toolbar-actions .btn{font-size:11px}.card{padding:16px}.next-content{align-items:flex-start}.next-content h4{font-size:15px}.next-content p{line-height:1.5}.event-row{align-items:flex-start;gap:8px}.event-time{width:49px}.event-main{max-width:calc(100% - 90px)}.bot-state{width:10px;height:10px;margin-top:4px;padding:7px;font-size:0;position:relative}.bot-state:after{content:"";background:#a789e8;border-radius:50%;position:absolute;inset:2px}.bot-state.off:after{background:#6e6877}.row-arrow{display:none}.editor-actions{flex-wrap:wrap;width:100%}.editor-actions .btn,.card-actions .btn{flex:1}}.editor.card>p,.editor.card>.published-snapshot{flex:none;width:100%}.editor.card textarea{background:var(--bg);border:1px solid var(--line);color:var(--text,#e9e7ef);font:inherit;border-radius:7px;padding:10px 11px;line-height:1.6}.editor.card textarea:focus{outline:2px solid var(--accent);outline-offset:2px}@media (width<=600px){.event-list>.event-row{flex-direction:column;align-items:stretch;gap:12px}.event-row>.event-select{flex:none;grid-template-columns:49px minmax(0,1fr);align-items:start;gap:12px;width:100%;min-height:44px;display:grid}.event-row .event-main{width:100%;min-width:0;max-width:none}.event-row .event-main strong{overflow-wrap:anywhere;white-space:normal}.event-row .event-meta{overflow-wrap:anywhere;flex-wrap:wrap}.event-row>.bot-state{overflow-wrap:anywhere;text-align:left;white-space:normal;border-radius:8px;flex:none;width:100%;min-width:0;max-width:100%;height:auto;min-height:44px;margin:0;line-height:1.6}}.login-shell{background:radial-gradient(circle at 50% 25%,#302449 0,#17161c 45%);place-items:center;min-height:100vh;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:12px;width:min(420px,100% - 32px);padding:34px}.login-card .brand-mark{margin:0 auto 22px}.login-card h1{margin:8px 0;font-size:24px}.login-card p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.7}.login-card small{color:#85808f;margin-top:16px;display:block}.login-btn{width:100%;margin-top:14px}.fan-shell{color:#26222c;background:#f7f5f8;min-height:100vh}.fan-header{background:#fff;border-bottom:1px solid #e4e0e8;justify-content:space-between;align-items:center;height:72px;padding:0 5vw;display:flex}.fan-header .brand{color:#26222c}.fan-main{max-width:900px;margin:auto;padding:60px 20px}.fan-main h1{margin:6px 0;font-size:38px}.fan-lead{color:#746d7e}.fan-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:35px;display:grid}.fan-event{background:#fff;border:1px solid #e4e0e8;border-radius:12px;padding:22px;box-shadow:0 4px 16px #2e203a0b}.fan-event h2{margin:16px 0 8px;font-size:18px}.fan-event p{color:#746d7e;font-size:13px}@media (width<=600px){.fan-main{padding:38px 16px}.fan-main h1{font-size:30px}.fan-list{grid-template-columns:1fr}}.panel-card{margin-bottom:16px}.panel-card h2{margin:8px 0 18px}.audit-row{border-top:1px solid var(--line);grid-template-columns:150px 1fr auto;gap:16px;padding:14px 0;font-size:13px;display:grid}.audit-row small{color:var(--muted)}.diff-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:20px 0;font-size:13px;display:flex}.diff-row strong{color:#d8b8ee}.panel-note{color:var(--muted);font-size:12px;line-height:1.7}.editor{margin-top:16px}.editor-actions{gap:8px;margin-top:16px;display:flex}@media (width<=600px){.audit-row{grid-template-columns:1fr}.diff-row{flex-wrap:wrap}}.editor label{color:#bdb7c7;gap:6px;margin-top:14px;font-size:12px;display:grid}.editor input,.editor select{border:1px solid var(--line);color:#f0edf5;background:#18171d;border-radius:7px;min-height:42px;padding:10px 11px}.editor input:focus,.editor select:focus{outline:2px solid var(--accent);outline-offset:2px}.editor h3{margin:8px 0 12px}.sidebar-foot .amber{background:var(--amber)}@media (width<=600px){.sidebar{z-index:5;border-right:0;border-top:1px solid var(--line);background:#211f28;width:100%;height:62px;padding:6px 8px;position:fixed;bottom:0;left:0;right:0}.sidebar .brand,.sidebar>.eyebrow,.sidebar-foot{display:none}.sidebar nav{justify-content:space-around;gap:4px;display:flex}.sidebar .nav{text-align:center;margin:0;padding:10px 8px;font-size:11px}.main{padding-bottom:84px}.toolbar-actions{grid-template-columns:1fr 1fr}.toolbar-actions .btn{min-height:42px}}.btn:disabled,.filter:disabled,.bot-state:disabled{cursor:not-allowed;filter:none;opacity:.55}.event-row.cancelled{opacity:.68}.editor{flex-wrap:wrap;min-width:0}.editor>label{flex:180px;min-width:0}.editor textarea{resize:vertical;width:100%;min-height:88px}.published-snapshot{border:1px solid var(--line);background:#2b2638c7;border-radius:8px;flex:100%;gap:6px;min-width:0;padding:12px;display:grid}.published-snapshot span,.published-snapshot small,.editor-hint{color:var(--muted);overflow-wrap:anywhere;font-size:12px;line-height:1.6}.checkbox-label{align-items:center;gap:10px;width:100%;min-height:44px;flex:100%!important;display:flex!important}.checkbox-label input{height:20px;margin:0;flex:0 0 20px!important;width:20px!important;min-width:20px!important;min-height:20px!important}.editor>.editor-actions{min-width:0}.event-select{color:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:14px;min-width:0;padding:0;display:flex}.event-select:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:6px}.form-error{color:#f0aab2;font-size:12px;line-height:1.6}.proposal-list{gap:8px;margin:16px 0;display:grid}.proposal-row{border:1px solid var(--line);color:var(--muted);text-align:left;background:0 0;border-radius:7px;justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.proposal-row.active,.proposal-row:focus-visible{border-color:var(--accent);color:var(--text,#f0edf5);outline:2px solid var(--accent);outline-offset:2px}.proposal-row span{color:var(--muted);margin-left:12px;font-size:11px}@media (width<=900px){.editor>label{flex:none;width:100%}.editor input,.editor select,.editor textarea{width:100%;min-height:44px}.editor textarea{min-height:88px}.published-snapshot{padding:10px}}@media (width<=600px){.editor-actions{flex-wrap:initial;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.editor-actions .btn{flex:initial;width:auto;min-width:0;min-height:44px;font-size:14px}.toolbar-actions .btn{min-height:44px}.bot-state{width:auto;min-width:90px;height:auto;min-height:44px;padding:9px 12px;font-size:12px;position:static}.bot-state:after{content:none}}.withdrawal-row{border-top:1px solid var(--line,#e4e0ea);justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem 0;display:flex}.withdrawal-row>span:first-child{gap:.2rem;display:grid}.withdrawal-row small{color:var(--muted,#6d6875)}.withdrawal-actions{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}@media (width<=560px){.withdrawal-row{flex-direction:column;align-items:flex-start}.withdrawal-actions{justify-content:flex-start;width:100%}}
