:root { font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background:#000; color:#f5f7fb; color-scheme:dark; }
* { box-sizing:border-box; }
html, body { background:#000; }
body { margin:0; min-height:100vh; background:#000; }
.shell { max-width:1400px; margin:auto; padding:30px 42px 56px; }
header { text-align:center; margin-bottom:30px; }
.brand { display:flex; justify-content:center; align-items:center; }
.brand-logo { display:block; width:min(310px,36vw); height:auto; filter:drop-shadow(0 0 18px rgba(125,145,220,.14)); }
.store-name { margin-top:14px; font-size:17px; font-weight:900; letter-spacing:.2em; color:#d5ddff; }
.subtitle { margin-top:8px; font-size:20px; color:#8f98aa; }
.mode { margin:11px auto 0; width:max-content; padding:6px 12px; border:1px solid #242936; border-radius:999px; font-size:12px; background:#08090c; color:#7f8aa1; }
.section { margin:28px 0; }
.section-title { font-size:17px; font-weight:850; letter-spacing:.14em; margin-bottom:13px; color:#b8c0d0; }
.grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.card { border:1px solid #1b1f28; width:100%; color:#f5f7fb; text-align:left; padding:20px; min-height:230px; border-radius:22px; background:#08090b; box-shadow:none; cursor:pointer; transition:.18s transform,.18s border-color,.18s background; }
.card:hover { transform:translateY(-2px); border-color:#465171; background:#0b0d11; }
.card[disabled] { cursor:not-allowed; opacity:.45; transform:none; }
.topline { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
.icon { width:48px; height:48px; border-radius:15px; display:grid; place-items:center; font-size:30px; background:#0f1320; color:#8fa3f0; border:1px solid #1d2745; }
.machine-name { font-size:20px; font-weight:850; margin-top:17px; }
.capacity { color:#7e8798; margin-top:2px; }
.price { font-size:27px; font-weight:850; margin-top:16px; }
.program-hint { color:#717b90; font-size:13px; margin-top:3px; }
.status { margin-top:11px; font-weight:800; }
.status.available { color:#48d27d; }
.status.running { color:#63aaf5; }
.status.error { color:#ff6b66; }
.status.offline { color:#7a8190; }
.badge { padding:7px 10px; font-size:12px; border-radius:999px; background:#11131a; border:1px solid #252935; color:#bbc3d5; }
dialog { width:min(600px,92vw); border:1px solid #252a36; border-radius:26px; padding:0; background:#08090c; color:#f5f7fb; box-shadow:0 30px 100px rgba(0,0,0,.7); }
dialog::backdrop { background:rgba(0,0,0,.82); backdrop-filter:blur(3px); }
.modal { padding:30px; }
.modal h2 { margin:0 0 4px; font-size:30px; }
.muted { color:#8b94a7; }
.modal .bigprice { font-size:46px; font-weight:900; margin:24px 0 6px; }
.program-title { margin:22px 0 10px; font-size:13px; font-weight:900; letter-spacing:.12em; color:#9aa4b9; }
.program-options { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:18px; }
.program-option { text-align:left; border:1px solid #282e3b; border-radius:17px; padding:16px; background:#0d0f14; color:#f6f7fb; cursor:pointer; }
.program-option.selected { border-color:#7d91dc; box-shadow:0 0 0 1px #7d91dc inset; background:#111522; }
.program-time,.program-price { display:block; font-weight:900; font-size:20px; }
.program-price { margin-top:6px; color:#aab9f2; }
.program-option small { display:block; color:#778197; margin-top:5px; }
.actions { display:grid; gap:12px; }
.action { border:0; border-radius:17px; padding:18px; font-size:18px; font-weight:850; cursor:pointer; }
.primary { background:#7d91dc; color:#05070b; }
.secondary { background:#171a21; color:#f5f7fb; border:1px solid #292e39; }
.notice { padding:14px 16px; border-radius:15px; background:#11141a; margin:14px 0; color:#9ca5b7; border:1px solid #222734; }
.success { background:#07160e; color:#65d590; border-color:#133a23; }
.errorbox { background:#1a0909; color:#ff817d; border-color:#4a1717; }
@media (max-width:1000px) { .grid { grid-template-columns:repeat(2,1fr); } .shell { padding:24px; } }
@media (max-width:600px) { .grid { grid-template-columns:1fr; } .program-options { grid-template-columns:1fr; } }
.language-selector{display:flex;gap:7px;flex-wrap:wrap;align-items:center;justify-content:center}.flag-btn{width:38px;height:34px;border:1px solid #282e39;background:#0b0d11;border-radius:10px;display:grid;place-items:center;font-size:21px;cursor:pointer;opacity:.7;padding:0}.flag-btn:hover,.flag-btn.active{opacity:1;border-color:#7187d6;background:#111726;box-shadow:0 0 0 1px rgba(125,145,220,.18) inset}.header-languages{position:absolute;right:28px;top:24px;max-width:210px}.admin-languages{justify-content:flex-end}.login-languages{margin-bottom:18px}
@media(max-width:780px){.header-languages{position:static;max-width:none;margin:0 auto 16px}.flag-btn{width:34px;height:32px;font-size:19px}}
