:root { --bg: var(--tg-theme-bg-color,#f6f7fb); --fg: var(--tg-theme-text-color,#192435); --muted: var(--tg-theme-hint-color,#768193); --card: var(--tg-theme-secondary-bg-color,#fff); --line: color-mix(in srgb,var(--fg) 12%,transparent); --accent: var(--tg-theme-button-color,#3275db); --onaccent: var(--tg-theme-button-text-color,#fff); font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif; color-scheme:light dark }
* { box-sizing:border-box } html,body {margin:0;min-height:100%; background:var(--bg);color:var(--fg);font-size:14px} button,input,textarea,select{font:inherit} button{cursor:pointer;border:0;border-radius:11px;padding:11px 15px;font-weight:600} button:disabled{opacity:.5;cursor:default} input,select,textarea{border:1px solid var(--line);border-radius:11px;padding:12px;background:var(--bg);color:var(--fg);width:100%} textarea{resize:vertical;min-height:80px} a{color:var(--accent);word-break:break-word}.muted{color:var(--muted)} .small{font-size:12px} .app{display:flex;max-width:1440px;margin:auto;min-height:100vh}.side{width:230px;flex-shrink:0;padding:28px 16px;position:sticky;top:0;height:100vh;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:36px}.side>.small{margin-top:auto}.brand{font-weight:800;font-size:18px;padding-left:12px}.nav{display:grid;gap:7px}.nav button{background:transparent;color:var(--fg);text-align:left}.nav button.selected,.bottom button.selected{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.content{min-width:0;max-width:1100px;flex:1;margin:0 auto;padding:28px 28px 90px}.content header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.content h1{font-size:27px;letter-spacing:-.025em;margin:0 0 4px}.content p{margin:5px 0}.online{color:#35a66b;font-size:20px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.panel{padding:21px;border:1px solid var(--line);border-radius:18px;background:var(--card);margin-bottom:16px;min-width:0}.panel h2{font-size:16px;margin:0 0 14px}.metric{font-size:29px;font-weight:800;margin:10px 0 2px}.label{font-size:12px;color:var(--muted)}.primary{background:var(--accent);color:var(--onaccent)}.secondary{background:color-mix(in srgb,var(--fg) 8%,transparent);color:var(--fg)}.danger{background:#bb3d43;color:white}.stack{display:grid;gap:12px}.inline{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.inline input,.inline select{flex:1;min-width:160px}.split{display:grid;grid-template-columns:1fr 1fr;gap:15px}.list{display:grid;gap:10px}.item{border:1px solid var(--line);padding:15px;border-radius:13px;min-width:0}.item h3{font-size:14px;margin:0 0 6px}.item pre,.comment{font:inherit;white-space:pre-wrap;word-break:break-word;line-height:1.5;margin:10px 0}.tag{display:inline-block;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);border-radius:18px;padding:4px 9px;margin:3px 4px 3px 0;font-size:12px}.status{font-size:12px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.actions button{padding:8px 11px}.notice{padding:12px;border-radius:12px;background:color-mix(in srgb,var(--accent) 8%,transparent);margin-bottom:14px}.login{max-width:450px;margin:11vh auto}.error{color:#d94b53}.toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:#243348;color:white;padding:12px 20px;border-radius:12px;display:none;max-width:90vw;z-index:100;box-shadow:0 8px 24px #0002}.bottom{display:none}.link{display:inline-block;text-decoration:none}.spaced{display:flex;justify-content:space-between;gap:10px;align-items:center}.pill{font-size:12px;border:1px solid var(--line);padding:4px 9px;border-radius:15px}
@media (max-width:830px){.side{display:none}.content{padding:18px 14px 100px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.bottom{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;z-index:20;padding:8px 7px max(8px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--card)}.bottom button{border-radius:10px;background:none;color:var(--muted);font-size:11px;display:flex;align-items:center;flex-direction:column;gap:3px;padding:8px 3px}.bottom .emoji{font-size:20px}.content h1{font-size:24px}.panel{padding:16px}}
