/* добавки v4: coins, desk-демо, features, compare, пасхалки */
.reel .slot{width:100%;max-width:420px}
.coins{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:10px 0 0}
.coin{background:var(--card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:22px;padding:18px 20px;text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.coin b{display:block;font:800 40px Consolas,monospace;color:var(--ac);text-shadow:0 0 18px var(--glow)}
.coin span{display:block;color:var(--ac2);font-weight:600;margin-bottom:6px}.coin p{margin:0;color:var(--mute);font-size:14px}

/* interactive desk */
.desk{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;max-width:880px;margin:0 auto;padding:16px;border:1px solid var(--line);border-radius:26px;background:var(--card);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 0 50px var(--glow)}
@media(max-width:700px){.desk{grid-template-columns:minmax(0,1fr)}}
.win{border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.45);overflow:hidden;min-height:190px;display:flex;flex-direction:column}
.wt{display:flex;gap:6px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);font-size:12px;color:var(--mute)}
.wt i{width:9px;height:9px;border-radius:50%;background:var(--line)}.wt em{margin-left:8px;font-style:normal;font-family:Consolas,monospace}
#code{margin:0;padding:14px;font:13px/1.6 Consolas,monospace;color:var(--ac2);white-space:pre-wrap;flex:1}
#code .k{color:var(--ac)}#code .f{color:#ffd978}#code .c{color:#ff7a7a}
#msgs{flex:1;padding:10px 12px;display:flex;flex-direction:column;gap:6px;font-size:13px;overflow:hidden;min-height:90px}
.bub{align-self:flex-end;background:linear-gradient(160deg,var(--ac2),var(--ac));color:#031008;padding:6px 12px;border-radius:14px 14px 4px 14px;max-width:90%;word-break:break-word;animation:pop .3s}
.bub.bot{align-self:flex-start;background:var(--card);color:var(--ac2);border:1px solid var(--line);border-radius:14px 14px 14px 4px}
@keyframes pop{from{transform:scale(.8);opacity:0}}
.inp{border-top:1px solid var(--line);padding:9px 12px;font-size:13px;min-height:42px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.inp .cursor{height:14px;width:7px}
.chip2{background:var(--card);border:1px solid var(--ac);border-radius:8px;padding:1px 8px;font-size:12px;color:var(--ac2)}
#flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;border-radius:26px;z-index:5}
#flash.go{animation:fl2 .35s}@keyframes fl2{0%{opacity:.85}100%{opacity:0}}
.thumb{position:absolute;width:70px;height:46px;border-radius:8px;border:2px solid var(--ac);background:linear-gradient(135deg,#123,#041);box-shadow:0 0 20px var(--glow);z-index:6;transition:all .55s cubic-bezier(.5,0,.2,1)}
.tray{grid-column:1/-1;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding-top:4px}
.peb{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:0;color:var(--ac2);cursor:pointer;font:600 12px "Segoe UI",sans-serif;padding:0;-webkit-tap-highlight-color:transparent}
.peb .pi{width:56px;height:56px;border-radius:19px;display:grid;place-items:center;background:var(--card);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:0 10px 24px rgba(0,0,0,.5),0 0 16px var(--glow),inset 0 1px 0 rgba(255,255,255,.2);transition:.2s}
.peb svg{width:26px;height:26px;stroke:var(--ac2);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.peb:hover .pi{transform:translateY(-4px) scale(1.08);box-shadow:0 14px 30px rgba(0,0,0,.6),0 0 30px var(--glow)}
.peb:active .pi{transform:scale(.9)}
.peb.on .pi{background:linear-gradient(160deg,var(--ac2),var(--ac));animation:pulse 1.6s infinite}.peb.on svg{stroke:#031008}
.peb.rec.on .pi{background:linear-gradient(160deg,#ff9a9a,#ff3b3b);box-shadow:0 0 24px rgba(255,60,60,.7)}
#libov{position:absolute;left:16px;right:16px;bottom:96px;z-index:7;background:rgba(0,0,0,.82);backdrop-filter:blur(10px);border:1px solid var(--ac);border-radius:18px;padding:12px;box-shadow:0 0 36px var(--glow)}
#libov[hidden]{display:none}
.lg{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.lc{height:50px;border-radius:10px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.02));cursor:pointer;color:var(--ac2);font-size:12px;display:grid;place-items:center;transition:.2s}
.lc:hover{border-color:var(--ac);transform:scale(1.05);box-shadow:0 0 16px var(--glow)}
.stat{grid-column:1/-1;display:flex;justify-content:space-between;font:12px Consolas,monospace;color:var(--mute)}
.stat b{color:var(--ac)}

/* goals */
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:820px;margin:0 auto}
.chip{padding:10px 18px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--ac2);text-decoration:none;font-size:15px;transition:.2s;backdrop-filter:blur(8px)}
.chip:hover{border-color:var(--ac);box-shadow:0 0 22px var(--glow);transform:translateY(-2px)}

/* features */
.feat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:center;padding:30px 0;border-top:1px solid var(--line)}
.feat.rev .slot{order:-1}
@media(max-width:760px){.feat{grid-template-columns:minmax(0,1fr)}.feat.rev .slot{order:0}}
.ft .ic{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;margin-bottom:10px;background:linear-gradient(160deg,var(--ac2),var(--ac));box-shadow:0 6px 18px var(--glow),inset 0 2px 0 rgba(255,255,255,.5)}
.ft .ic svg{width:24px;height:24px;stroke:#031008;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ft h3{margin:0 0 6px;font-size:24px;color:var(--ac2);line-height:1.2}
.fhook{margin:0 0 8px;color:var(--ac);font-weight:600}.ftx{margin:0 0 12px;color:var(--mute)}
.how{list-style:none;margin:0;padding:0;display:grid;gap:6px}.how li{display:flex;gap:10px;align-items:baseline;font-size:14px;color:var(--text)}
.hw{font:700 11px Consolas,monospace;text-transform:uppercase;padding:2px 8px;border-radius:6px;border:1px solid var(--line);color:var(--ac);flex:none}
.hw-say{color:#ffd978;border-color:rgba(255,217,120,.4)}.hw-tip{color:var(--mute)}
.slot{position:relative;aspect-ratio:16/10;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:linear-gradient(160deg,rgba(15,35,28,.55),rgba(3,10,8,.8));box-shadow:0 0 36px var(--glow);display:grid;place-items:center}
.slot video,.slot img{width:100%;height:100%;object-fit:cover;display:block}
.slot .ph{width:84px;height:84px;border-radius:28px;display:grid;place-items:center;background:var(--card);border:1px solid var(--line);box-shadow:0 0 30px var(--glow);animation:fl 5s ease-in-out infinite}
.slot .ph svg{width:40px;height:40px;stroke:var(--ac2);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.slots .slot:after{content:attr(data-slot);position:absolute;left:8px;top:8px;background:#000;color:#ff0;font:12px Consolas,monospace;padding:2px 8px;border-radius:6px}

/* compare */
.cmp{max-width:860px;margin:0 auto;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--card);backdrop-filter:blur(12px)}
.ch,.cr{display:grid;grid-template-columns:1fr 1fr}
.ch span{padding:12px 18px;font-weight:700;color:var(--ac);border-bottom:1px solid var(--line);font-family:Consolas,monospace;font-size:14px}
.ch span:first-child{color:var(--mute)}
.cr>div{padding:12px 18px;font-size:14px;border-bottom:1px solid var(--line)}.cr:last-child>div{border-bottom:0}
.cr .old{color:var(--mute);text-decoration:line-through;text-decoration-color:rgba(255,100,100,.5)}
.cr .new{color:var(--ac2)}
@media(max-width:600px){.ch,.cr{grid-template-columns:1fr}.cr .old{border-bottom:0;padding-bottom:0}}

/* secrets */
.sec{margin-top:10px;font:12px Consolas,monospace;color:var(--ac)}.sec[hidden],#term[hidden],#game[hidden],#toast[hidden]{display:none}
#toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:50;background:var(--card);border:1px solid var(--ac);color:var(--ac2);padding:10px 20px;border-radius:14px;backdrop-filter:blur(12px);box-shadow:0 0 30px var(--glow);max-width:90vw;animation:pop .3s}
#term{position:fixed;left:50%;top:12vh;transform:translateX(-50%);width:min(560px,92vw);z-index:60;background:rgba(0,0,0,.88);border:1px solid var(--ac);border-radius:14px;font:14px Consolas,monospace;color:var(--ac2);box-shadow:0 0 50px var(--glow)}
#term .tb{display:flex;justify-content:space-between;padding:8px 14px;border-bottom:1px solid var(--line);color:var(--ac)}
#term button,#game button{background:none;border:0;color:var(--ac);font-size:20px;cursor:pointer}
#to{padding:12px 14px;max-height:40vh;overflow:auto;white-space:pre-wrap}
.ti{display:flex;gap:8px;padding:8px 14px;border-top:1px solid var(--line)}.ti input{flex:1;background:none;border:0;outline:0;color:var(--text);font:inherit}
#game{position:fixed;inset:0;z-index:70;background:rgba(2,6,5,.94)}
.gh{display:flex;gap:18px;align-items:center;justify-content:center;padding:14px;color:var(--ac);font-size:18px}
#gb{position:absolute;inset:60px 0 0 0}
.gi{position:absolute;width:56px;height:56px;border-radius:18px;background:var(--card);border:1px solid var(--ac);display:grid;place-items:center;cursor:pointer;box-shadow:0 0 18px var(--glow);transition:transform .15s,opacity .15s}
.gi svg{width:26px;height:26px;stroke:var(--ac2);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gi.x{transform:scale(0);opacity:0}
