.app{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.side{position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;gap:18px;padding:18px 12px calc(18px + env(safe-area-inset-bottom));background:var(--bg-subtle);border-right:1px solid var(--line);overflow-y:auto}.side-brand{display:grid;gap:2px;padding:0 10px}.side-brand .brand,.mbar .brand{font-weight:700;font-size:20px;color:var(--text);text-decoration:none}.side-brand .powered{font-size:12px;color:var(--text-3)}.side-brand .powered a{color:var(--text-2)}.side-nav{display:grid;gap:2px}.side-nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);color:var(--text-2);text-decoration:none;font-size:16px}.side-nav a:hover{background:var(--bg);color:var(--text)}.side-nav a[aria-current=page]{background:var(--brand-tint);color:var(--brand);font-weight:600}.side-account{margin-top:auto;border-top:1px solid var(--line);padding-top:10px}.side-foot{display:flex;gap:6px;padding:0 10px;font-size:14px;color:var(--text-3)}.side-foot a{color:var(--text-2);text-decoration:none}.side-foot b{color:var(--text);font-weight:600}.app-main{display:flex;flex-direction:column;min-height:100vh;min-width:0}.app-main main{flex:1;width:100%;max-width:1040px;margin:0;padding:28px 32px 48px}.app-main .foot{max-width:1040px;margin:0;padding:0 32px 28px}.mbar,.side-dim{display:none}@media(max-width:819px){.app{display:block}.mbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg);z-index:20}.menu-btn{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg);color:var(--text);cursor:pointer}.side{position:fixed;left:0;top:0;width:264px;z-index:40;transform:translate(-100%);transition:transform .2s ease}body[data-nav-open] .side{transform:none}body[data-nav-open] .side-dim:not([hidden]){display:block;position:fixed;inset:0;background:#00000059;z-index:30}.app-main{min-height:calc(100vh - 61px)}.app-main main{padding:20px 16px 48px}.app-main .foot{padding:0 16px 28px}}@media(prefers-reduced-motion:reduce){.side{transition:none}}:root{--bg: #ffffff;--bg-subtle: #f7f8fa;--line: #e6e8ec;--line-strong: #d4d8de;--text: #0b0f17;--text-2: #4b5462;--text-3: #8a929f;--brand: #002d68;--brand-hover: #0a3b80;--brand-tint: #eef3fa;--on-brand: #ffffff;--ok: #157f3c;--error: #b42318;--r: 10px;--r-sm: 6px}@media(prefers-color-scheme:dark){:root{--bg: #0b0f17;--bg-subtle: #141a24;--line: #263040;--line-strong: #344156;--text: #eef1f5;--text-2: #b4bdc9;--text-3: #7d8796;--brand: #8fb3ec;--brand-hover: #a9c5f1;--brand-tint: #16233a;--on-brand: #0b0f17}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,Noto Sans SC,system-ui,sans-serif;font-size:18px;line-height:1.6;color:var(--text);background:var(--bg)}main{max-width:980px;margin:0 auto;padding:24px 16px 64px}h1{font-size:28px;font-weight:600;margin-bottom:12px}h2{font-size:21px;font-weight:600;margin:20px 0 8px}a{color:var(--brand)}.muted{color:var(--text-2)}.card{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;font:inherit;font-weight:600;color:var(--on-brand);background:var(--brand);border:1px solid var(--brand);border-radius:var(--r-sm);cursor:pointer;text-decoration:none}.btn:hover{background:var(--brand-hover)}.btn.ghost{color:var(--brand);background:var(--bg);border-color:var(--line-strong)}.btn:disabled{opacity:.6;cursor:default}.field{display:grid;gap:6px;margin-bottom:14px}.field span{font-weight:600}input,textarea{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:10px 12px;width:100%}.error{color:var(--error);min-height:1.6em;margin-top:6px}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.box{flex:1 1 260px;background:var(--bg-subtle);border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 12px;word-break:break-all}.top{border-bottom:1px solid var(--line)}.top nav{max-width:980px;margin:0 auto;padding:10px 16px;display:flex;gap:18px;align-items:center}.top .brand-wrap{display:flex;align-items:baseline;gap:10px;margin-right:auto;min-width:0}.top .brand{font-weight:700;color:var(--text);text-decoration:none}.top .powered{font-size:13px;color:var(--text-3);white-space:nowrap}.top .powered a{color:var(--text-2)}.top .langs{display:flex;gap:6px;font-size:15px;color:var(--text-3)}.top .langs a{color:var(--text-2);text-decoration:none}.top .langs b{color:var(--text);font-weight:600}@media(max-width:560px){.top nav{gap:12px;flex-wrap:wrap}}.foot{max-width:980px;margin:0 auto;padding:0 16px 28px;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:var(--text-3)}.foot a{color:var(--text-2)}
