:root{--ink:#18222d;--muted:#5b6774;--line:#d9dfe6;--paper:#f4f6f8;--surface:#fff;--accent:#1b4f72;--warn:#8a3b12;--ok:#1d5f3a}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.55 "Segoe UI","Helvetica Neue",Arial,sans-serif}
a{color:var(--accent)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #7aa7c7;outline-offset:2px}
.top{display:flex;align-items:center;gap:1.25rem;padding:.75rem clamp(1rem,4vw,2.5rem);background:var(--surface);border-bottom:3px solid var(--accent)}
.brand{display:flex;align-items:center;gap:.75rem;margin-right:auto}
.logo{width:40px;height:40px;object-fit:contain}
.brand-name{font-weight:600;font-size:1.05rem}
.who{text-align:right;line-height:1.3}
.who-name{font-weight:600}
.who-meta{color:var(--muted);font-size:.875rem}
.chip{display:inline-block;margin-left:.5rem;padding:0 .55rem;border:1px solid var(--line);border-radius:999px;font-size:.8rem;color:var(--accent)}
.page{max-width:68rem;margin:0 auto;padding:2rem clamp(1rem,4vw,2.5rem) 3rem}
h1{font-size:1.5rem;line-height:1.25;margin:0 0 1.5rem}
.menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:2rem 3rem}
.msec h2{font-size:1rem;margin:0 0 .25rem;padding-bottom:.4rem;border-bottom:2px solid var(--accent)}
.msec ul{list-style:none;margin:0;padding:0}
.msec li{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--line)}
.msec a{text-decoration:none}
.msec a:hover{text-decoration:underline}
.off span{color:var(--muted)}
.off small{color:var(--muted);font-size:.8rem;white-space:nowrap}
.note{margin:0 0 1.5rem;color:var(--muted)}
.auth{max-width:26rem;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1.5rem}
.auth label{display:block;margin:1rem 0 .3rem;font-weight:600}
.auth input{width:100%;padding:.6rem .7rem;border:1px solid #aab4be;border-radius:4px;font:inherit;background:#fff}
.auth small{display:block;color:var(--muted);margin-top:.3rem}
.btn{margin-top:1.25rem;background:var(--accent);color:#fff;border:0;border-radius:4px;padding:.65rem 1.2rem;font:inherit;font-weight:600;cursor:pointer}
.btn:hover{background:#163f5c}
.link{background:none;border:0;padding:0;color:var(--accent);font:inherit;text-decoration:underline;cursor:pointer}
.choice{display:block;width:100%;margin:.6rem 0;padding:.8rem 1rem;text-align:left;background:#fff;border:1px solid #aab4be;border-radius:4px;font:inherit;cursor:pointer}
.choice:hover{border-color:var(--accent)}
.error,.ok{margin:0 0 1rem;padding:.6rem .8rem;border-radius:4px}
.error{color:var(--warn);background:#fbeee6;border:1px solid #efc9b3}
.ok{color:var(--ok);background:#e8f4ec;border:1px solid #b9dcc6}
.langs{margin-top:1.5rem}
.langs a{margin-right:1rem}
.foot{padding:1.5rem clamp(1rem,4vw,2.5rem);color:var(--muted);font-size:.85rem;border-top:1px solid var(--line)}
@media (max-width:560px){.top{flex-wrap:wrap}.who{text-align:left;order:3;width:100%}}
