[hidden]{display:none!important}
:root{
  --green:#1F4A3A; --green2:#2E5E4A; --orange:#E8833A; --mustard:#F2B544; --cream:#FFF4E0;
  --bg:#FFF4E0; --card:#FFFFFF; --card2:#FFF9EE; --text:#1E2B24; --muted:#6F7A70; --line:#EADBC0;
  --shadow:0 6px 22px rgba(31,74,58,.10); --radius:20px;
  --grad:linear-gradient(135deg,#1F4A3A 0%,#2E5E4A 60%,#3C7059 100%);
  --accent:linear-gradient(135deg,#E8833A 0%,#F2B544 100%);
}
@media (prefers-color-scheme:dark){
  :root{--bg:#10261E; --card:#1A3A2E; --card2:#1F4A3A; --text:#FFF4E0; --muted:#B9C4B5; --line:#2E5E4A;
        --shadow:0 6px 22px rgba(0,0,0,.35)}
}
html[data-theme=dark]{--bg:#10261E; --card:#1A3A2E; --card2:#1F4A3A; --text:#FFF4E0; --muted:#B9C4B5; --line:#2E5E4A; --shadow:0 6px 22px rgba(0,0,0,.35)}
html[data-theme=light]{--bg:#FFF4E0; --card:#FFFFFF; --card2:#FFF9EE; --text:#1E2B24; --muted:#6F7A70; --line:#EADBC0}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:var(--bg);color:var(--text);
  font:15px/1.4 -apple-system,BlinkMacSystemFont,"SF Pro Rounded","Segoe UI",Roboto,"Nunito",sans-serif}
a{color:inherit}
.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;padding:12px 16px;
  padding-top:max(12px,env(safe-area-inset-top));background:var(--grad);color:var(--cream);
  box-shadow:0 4px 18px rgba(16,38,30,.25)}
.logo{width:40px;height:40px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.brand{display:flex;flex-direction:column;line-height:1.15}
.brand b{font-size:17px;letter-spacing:.2px}
.brand span{font-size:12px;opacity:.8}
.balance-pill{margin-left:auto;background:rgba(255,244,224,.14);border:1px solid rgba(255,244,224,.25);
  padding:6px 12px;border-radius:999px;font-weight:700;font-size:14px;cursor:pointer}
.view{padding:16px 16px 100px;max-width:560px;margin:0 auto;animation:fade .28s ease}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes pop{0%{transform:scale(.96)}60%{transform:scale(1.03)}100%{transform:scale(1)}}
h1{font-size:24px;margin:6px 0 6px;line-height:1.15}
h2{font-size:18px;margin:22px 0 10px}
p.lead{color:var(--muted);margin:0 0 16px}
.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;margin-bottom:12px;
  border:1px solid var(--line)}
.hero{position:relative;overflow:hidden;border-radius:24px;margin-bottom:16px;box-shadow:var(--shadow)}
.hero img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;object-position:right}
.hero .badge{position:absolute;left:12px;bottom:12px;background:var(--accent);color:#2a1a08;font-weight:800;
  padding:8px 14px;border-radius:999px;box-shadow:0 4px 14px rgba(232,131,58,.45)}
.steps{display:flex;gap:6px;margin:4px 0 14px}
.steps i{flex:1;height:5px;border-radius:5px;background:var(--line)}
.steps i.on{background:var(--accent)}
.search{width:100%;padding:13px 16px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);
  color:var(--text);font-size:16px;outline:none;margin-bottom:12px}
.search:focus,.input:focus{border-color:var(--orange)}
.list{display:flex;flex-direction:column;gap:8px}
.city{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;background:var(--card);
  border:1.5px solid var(--line);cursor:pointer;transition:.18s}
.city .ic{width:34px;height:34px;border-radius:10px;background:var(--card2);display:grid;place-items:center}
.city.sel{border-color:var(--orange);background:linear-gradient(0deg,rgba(232,131,58,.10),rgba(232,131,58,.10)),var(--card)}
.city.sel::after{content:"✓";margin-left:auto;color:var(--orange);font-weight:900}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cat{position:relative;padding:14px;border-radius:18px;background:var(--card);border:1.5px solid var(--line);
  cursor:pointer;transition:transform .15s,border-color .15s,background .15s;min-height:92px;display:flex;
  flex-direction:column;justify-content:space-between;user-select:none}
.cat:active{transform:scale(.97)}
.cat .em{font-size:26px}
.cat .nm{font-weight:650;font-size:14px;line-height:1.2}
.cat .pr{font-size:12px;color:var(--muted)}
.cat.sel{border-color:var(--orange);background:linear-gradient(135deg,rgba(232,131,58,.16),rgba(242,181,68,.16)),var(--card);
  animation:pop .25s}
.cat.sel::after{content:"✓";position:absolute;top:10px;right:12px;width:22px;height:22px;border-radius:50%;
  background:var(--accent);color:#2a1a08;font-weight:900;font-size:13px;display:grid;place-items:center}
.sticky{position:fixed;left:0;right:0;bottom:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));
  background:linear-gradient(0deg,var(--bg) 70%,transparent);z-index:6}
.sticky .inner{max-width:560px;margin:0 auto}
.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:0;border-radius:16px;
  padding:15px 18px;font-size:16px;font-weight:750;cursor:pointer;background:var(--accent);color:#2a1a08;
  box-shadow:0 6px 18px rgba(232,131,58,.35);transition:transform .12s,opacity .2s;text-decoration:none}
.btn:active{transform:scale(.98)}
.btn[disabled]{opacity:.45;box-shadow:none}
.btn.green{background:var(--grad);color:var(--cream);box-shadow:0 6px 18px rgba(31,74,58,.35)}
.btn.ghost{background:transparent;color:var(--text);border:1.5px solid var(--line);box-shadow:none}
.btn.small{padding:10px 14px;font-size:14px;width:auto;border-radius:12px}
.row{display:flex;gap:10px;align-items:center}
.sum{font-size:13px;color:var(--muted);text-align:center;margin-bottom:8px}
.balance{background:var(--grad);color:var(--cream);border-radius:24px;padding:20px;position:relative;overflow:hidden;
  box-shadow:0 10px 30px rgba(31,74,58,.35);margin-bottom:14px}
.balance::before{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;
  background:radial-gradient(circle,rgba(242,181,68,.45),transparent 70%)}
.balance .lbl{opacity:.8;font-size:13px}
.balance .amt{font-size:38px;font-weight:850;letter-spacing:-.5px;margin:2px 0 10px}
.balance .meta{display:flex;gap:8px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;font-size:13px;
  background:rgba(255,244,224,.14);border:1px solid rgba(255,244,224,.2)}
.chip.light{background:var(--card2);border:1px solid var(--line);color:var(--text)}
.status{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;margin-bottom:12px;font-weight:600}
.status.active{background:rgba(46,94,74,.12);color:var(--green2)}
.status.paused{background:rgba(232,131,58,.14);color:#B85A17}
.status.stopped{background:rgba(111,122,112,.14);color:var(--muted)}
html[data-theme=dark] .status.active,@media (prefers-color-scheme:dark){}
.dot{width:10px;height:10px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(0,0,0,.05)}
.kv{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.kv:last-child{border-bottom:0}
.kv .k{color:var(--muted)}
.kv .v{font-weight:650;text-align:right}
.link{color:var(--orange);font-weight:700;text-decoration:none;cursor:pointer;background:none;border:0;font-size:14px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.presets{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
.preset{padding:14px 0;text-align:center;border-radius:14px;border:1.5px solid var(--line);background:var(--card);
  font-weight:750;cursor:pointer}
.preset.sel{border-color:var(--orange);background:linear-gradient(135deg,rgba(232,131,58,.16),rgba(242,181,68,.16))}
.input{width:100%;padding:14px 16px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);
  color:var(--text);font-size:17px;outline:none}
.promo{display:flex;gap:8px}
.promo .input{text-transform:uppercase;font-size:15px}
.test-note{font-size:12px;color:#B85A17;background:rgba(242,181,68,.18);border-radius:12px;padding:8px 12px;margin:10px 0}
.tx{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.tx:last-child{border-bottom:0}
.tx .ic{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--card2);font-size:18px}
.tx .d{flex:1;min-width:0}
.tx .d b{display:block;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tx .d span{font-size:12px;color:var(--muted)}
.tx .a{font-weight:800}
.tx .a.plus{color:var(--green2)}
html[data-theme=dark] .tx .a.plus{color:var(--mustard)}
.tx .a.minus{color:var(--muted)}
.vac{display:block;text-decoration:none}
.vac b{display:block;font-size:15px;margin-bottom:4px}
.vac .sal{font-weight:800;color:var(--orange);margin-bottom:4px}
.vac .co{font-size:13px;color:var(--muted)}
.vac .src{font-size:11px;color:var(--muted);margin-top:8px;display:flex;justify-content:space-between}
.ref-hero{text-align:center;padding:22px 16px;background:var(--grad);color:var(--cream);border-radius:24px;margin-bottom:14px;
  box-shadow:0 10px 30px rgba(31,74,58,.35)}
.ref-hero .big{font-size:44px}
.ref-hero h1{color:var(--cream)}
.ref-hero p{opacity:.85;margin:6px 0 0}
.copybox{display:flex;align-items:center;gap:8px;padding:10px 10px 10px 14px;border-radius:14px;background:var(--card2);
  border:1.5px dashed var(--orange);font-size:13px;word-break:break-all;margin-bottom:10px}
.copybox span{flex:1}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;text-align:center}
.stat b{display:block;font-size:24px}
.stat span{font-size:12px;color:var(--muted)}
.checkout{background:var(--card);border-radius:24px;padding:20px;box-shadow:var(--shadow);border:1px solid var(--line)}
.cardform{display:grid;gap:10px;margin:14px 0}
.cardform .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fakecard{border-radius:18px;padding:18px;color:var(--cream);background:var(--grad);height:150px;display:flex;flex-direction:column;
  justify-content:space-between;box-shadow:0 10px 26px rgba(31,74,58,.35);position:relative;overflow:hidden}
.fakecard::after{content:"";position:absolute;right:-30px;bottom:-50px;width:170px;height:170px;border-radius:50%;
  background:radial-gradient(circle,rgba(232,131,58,.55),transparent 70%)}
.fakecard .num{font-size:19px;letter-spacing:2px;font-weight:700}
.success{text-align:center;padding:30px 10px}
.success .ok{width:84px;height:84px;margin:0 auto 14px;border-radius:50%;background:var(--accent);display:grid;place-items:center;
  font-size:42px;animation:pop .4s;box-shadow:0 10px 26px rgba(232,131,58,.45)}
.tabbar{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:space-around;background:var(--card);
  border-top:1px solid var(--line);padding:8px 6px calc(8px + env(safe-area-inset-bottom));z-index:6;
  box-shadow:0 -6px 20px rgba(31,74,58,.08)}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;text-decoration:none;
  color:var(--muted);padding:4px 0;border-radius:12px;transition:.15s}
.tabbar a i{font-style:normal;font-size:21px;filter:grayscale(.6);transition:.15s}
.tabbar a.on{color:var(--orange);font-weight:700}
.tabbar a.on i{filter:none;transform:translateY(-1px) scale(1.08)}
.toast{position:fixed;left:50%;bottom:96px;transform:translate(-50%,20px);background:#1E2B24;color:var(--cream);padding:11px 16px;
  border-radius:14px;font-size:14px;opacity:0;pointer-events:none;transition:.25s;z-index:20;max-width:90%;text-align:center}
.toast.show{opacity:1;transform:translate(-50%,0)}
.loader{display:flex;gap:6px;justify-content:center;padding:80px 0}
.loader span{width:10px;height:10px;border-radius:50%;background:var(--orange);animation:b 1s infinite}
.loader span:nth-child(2){animation-delay:.15s;background:var(--mustard)}
.loader span:nth-child(3){animation-delay:.3s;background:var(--green2)}
@keyframes b{0%,100%{transform:translateY(0);opacity:.6}50%{transform:translateY(-8px);opacity:1}}
.empty{text-align:center;color:var(--muted);padding:30px 10px}
.empty .e{font-size:40px;margin-bottom:6px}
.err{text-align:center;padding:50px 20px}
.mt{margin-top:12px}
.center{text-align:center}
.muted{color:var(--muted);font-size:13px}

/* Регионы: чипы-переключатели и карточка «Внимание!» */
.rchips{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 16px}
.rchip{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:14px;font-size:15px;font-weight:700;
  border:1.5px solid var(--line);background:var(--card);color:var(--text);cursor:pointer;transition:.18s;font-family:inherit}
.rchip span{font-size:16px}
.rchip.sel{background:var(--grad);color:var(--cream);border-color:transparent;box-shadow:0 6px 16px rgba(31,74,58,.28)}
.rchip:active{transform:scale(.97)}
.notice{line-height:1.45;font-size:14.5px}
.notice .nt{color:var(--orange);font-weight:800;margin-bottom:6px;font-size:16px}
.duo{display:flex;gap:10px}
.duo .btn{flex:1}
.ghead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:20px 0 8px}
.ghead h2{margin:0;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.specs{display:flex;flex-wrap:wrap;gap:8px}
.chip-btn{border:1.5px solid var(--line);background:var(--card);color:var(--text);font:inherit;font-weight:650;font-size:14px;
  padding:8px 12px;border-radius:999px;cursor:pointer;text-align:left}
.chip-btn.sel{border-color:transparent;background:var(--grad);color:var(--cream)}
.chip-btn.locked{opacity:.45;background:transparent}
.chip-btn:active{transform:scale(.98)}
