@font-face{font-family:Inter;src:url("/static/fonts/inter-cyrillic.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;src:url("/static/fonts/inter-latin.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Oswald;src:url("/static/fonts/oswald-cyrillic.woff2") format("woff2");font-weight:500 700;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Oswald;src:url("/static/fonts/oswald-latin.woff2") format("woff2");font-weight:500 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{color-scheme:dark;--bg:#050505;--panel:#0c0c0c;--panel2:#121212;--line:#292929;--line-bright:#494949;--text:#f5f5f0;--muted:#969691;--accent:#ffd42a;--accent-soft:#d4aa00;--danger:#ff7a7a}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font:15px/1.55 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
h1,h2,h3{font-family:Oswald,Arial Narrow,sans-serif;text-transform:uppercase;font-weight:700;line-height:.98;letter-spacing:-.025em}
.shell{width:min(1180px,calc(100% - 40px));margin:auto}
.top{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.08em}
.mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffd42a;border-radius:50%;background:#050505 url("/static/tuch-logo.jpg") center/cover no-repeat;color:transparent;font-size:0;box-shadow:0 0 15px #ffd42a33}
.logout{border:0;background:none;color:var(--muted);cursor:pointer;font:600 13px/1 Inter,sans-serif;text-transform:uppercase;letter-spacing:.08em}
.logout:hover{color:var(--accent)}
.hero{padding:70px 0 35px;border-bottom:1px solid var(--line)}
.hero h1{margin:0 0 12px;font-size:clamp(55px,8vw,100px)}
.hero p{margin:0;color:var(--muted);font-size:16px}
.grid{display:grid;grid-template-columns:1.1fr .9fr;gap:1px;margin:0 0 70px;background:var(--line);border:1px solid var(--line)}
.card{background:var(--panel);padding:34px;box-shadow:none;border:0;border-radius:0}
.card h2{margin:12px 0 12px;font-size:clamp(30px,4vw,48px)}
.eyebrow{color:var(--accent);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.18em}
.muted{color:var(--muted)}
.status{display:inline-flex;align-items:center;padding:9px 12px;border:1px solid #6d5a15;background:#1d1807;color:var(--accent);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.status.off{border-color:#5d2929;background:#1b0c0c;color:#ff9696}
.actions{display:grid;gap:9px;margin-top:24px}
.btn{display:block;width:100%;border:1px solid var(--accent);border-radius:0;padding:15px 18px;background:var(--accent);color:#050505;font:700 13px/1.2 Inter,sans-serif;text-align:center;text-decoration:none;text-transform:uppercase;letter-spacing:.055em;cursor:pointer;transition:.16s ease}
.btn:hover{background:#ffe46b;border-color:#ffe46b;transform:translateY(-1px)}
.btn.secondary{background:transparent;color:var(--text);border-color:var(--line-bright)}
.btn.secondary:hover{border-color:var(--accent);color:var(--accent);background:transparent}
.servers{display:grid;gap:0;margin-top:25px;border-top:1px solid var(--line)}
.server{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line)}
.server strong{display:block;font-weight:700}
.server small{color:var(--muted)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px #ffd42a88}
.flag{display:inline-block;width:22px;height:14px;margin-right:9px;border:1px solid #ffffff42;vertical-align:-2px;box-shadow:0 0 0 1px #000}.flag-nl{background:linear-gradient(to bottom,#ae1c28 0 33.333%,#fff 33.333% 66.666%,#21468b 66.666%)}.flag-lv{background:linear-gradient(to bottom,#9e3039 0 40%,#fff 40% 60%,#9e3039 60%)}
.notice{margin:0;padding:13px 16px;border:1px solid #6d5a15;background:#1d1807;color:var(--accent)}
.fine{font-size:12px;color:var(--muted)}
.account-link{margin-top:28px;padding-top:25px;border-top:1px solid var(--line)}
.pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}
.login-page{display:grid;place-items:center;min-height:100vh;padding:24px;background:linear-gradient(90deg,transparent 49.8%,#101010 50%,transparent 50.2%),linear-gradient(#060606,#0b0b0b)}
.auth{width:min(470px,100%);padding:38px;border:1px solid var(--line-bright);background:var(--panel);position:relative}
.auth:before{content:"";position:absolute;left:-1px;top:-1px;width:90px;height:4px;background:var(--accent)}
.auth .brand{margin-bottom:45px}
.auth h1{font-size:48px;margin:0 0 13px}
.auth>p{color:var(--muted);margin:0 0 24px}
label{display:block;margin:17px 0 7px;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.055em}
.input{width:100%;padding:15px;border:1px solid var(--line-bright);border-radius:0;background:#050505;color:var(--text);font:15px/1.2 Inter,sans-serif;outline:none}
.input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.error{color:#ffb1b1;background:#210e0e;border:1px solid #6d3030;padding:12px 14px}
.check{display:flex;align-items:flex-start;gap:9px;font-weight:500;color:var(--muted);text-transform:none;letter-spacing:0}
.check input{margin-top:5px;accent-color:var(--accent)}
.check a{color:var(--accent)}
.legal{white-space:pre-line;color:#d7d7d2}.legal b{color:#fff}
.pay-grid .btn{display:flex;align-items:center;justify-content:center;height:62px;padding:10px 8px;font-size:11px;white-space:nowrap}
@media(max-width:760px){.shell{width:min(100% - 24px,1180px)}.top{height:70px}.hero{padding:48px 0 28px}.grid{grid-template-columns:1fr}.card{padding:25px}.pay-grid{grid-template-columns:1fr}.auth{padding:28px 22px}.auth h1{font-size:40px}}
