:root{--bg:#fff8ec;--ink:#2b2350;--muted:#6b6489;--pri:#6c4cf0;--pink:#ff5d8f;--yel:#ffc93c;--grn:#22b07d;--blue:#2fa7ff;--org:#ff8a3d;--card:#fff;--ok:#16a34a;--bad:#e11d48;--fs:1}
*{box-sizing:border-box}
html{font-size:calc(17px * var(--fs))}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Varela Round',Arial,sans-serif;line-height:1.55;overflow-x:hidden}
h1,h2,h3,.brand,.big,.tile b,.score b{font-family:'Secular One','Varela Round',Arial,sans-serif;font-weight:400}
a{color:var(--pri)}
button{font:inherit;cursor:pointer}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .8rem;background:#fff;box-shadow:0 2px 0 #f0e6d6}
.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--ink);font-size:1.1rem}
.logo{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border-radius:.7rem;background:var(--pink);color:#fff;font-size:1.05rem;transform:rotate(-6deg)}
.logo b{color:var(--yel)}
.tools{display:flex;gap:.4rem}
.tool{display:inline-flex;align-items:center;justify-content:center;min-width:2.6rem;height:2.6rem;border-radius:.8rem;border:2px solid #e8dcc8;background:#fff;color:var(--ink);text-decoration:none;font-weight:700}
.tracks{display:flex;gap:.4rem;justify-content:center;padding:.6rem .5rem;flex-wrap:wrap}
.tracks button{border:2px solid #e3d6c0;background:#fff;border-radius:999px;padding:.45rem 1rem;color:var(--ink)}
.tracks button.on{background:var(--grn);border-color:var(--grn);color:#fff}
main{max-width:980px;margin:0 auto;padding:0 .8rem 2rem}
.hero{position:relative;overflow:hidden;border-radius:1.4rem;padding:1.6rem 1.1rem 1.3rem;background:linear-gradient(135deg,#6c4cf0,#ff5d8f);color:#fff;text-align:center;margin-top:.3rem}
.hero h1{margin:.2rem 0 .3rem;font-size:1.75rem;line-height:1.25;position:relative}
.hero p{margin:.3rem auto;max-width:36rem;position:relative}
.fl{position:absolute;font-family:'Secular One',serif;opacity:.22;color:#fff;pointer-events:none;animation:bob 6s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-10px) rotate(8deg)}}
.note{background:#fff3c4;border-radius:1rem;padding:.7rem .9rem;margin:1rem 0;font-size:.95rem;border-inline-start:6px solid var(--yel)}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.8rem;margin-top:1rem}
.tile{display:block;text-decoration:none;color:var(--ink);background:var(--card);border-radius:1.2rem;padding:1rem;border:3px solid transparent;box-shadow:0 4px 0 #eadfcd;transition:transform .15s}
.tile:active{transform:scale(.98)}
.tile .em{font-size:2rem}
.tile b{display:block;font-size:1.2rem;margin:.2rem 0}
.tile small{color:var(--muted)}
.c1{border-color:#ffd1df}.c2{border-color:#cdeeff}.c3{border-color:#d8f5e6}.c4{border-color:#ffe1c7}.c5{border-color:#e4dcff}.c6{border-color:#fff0b3}.c7{border-color:#eee}
.sec-h{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;margin:.6rem 0}
.sec-h h2{margin:0;font-size:1.45rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:3rem;padding:.6rem 1.1rem;border-radius:1rem;border:0;background:var(--pri);color:#fff;font-size:1rem;text-decoration:none;box-shadow:0 4px 0 #4a2fc0}
.btn:active{transform:translateY(2px);box-shadow:0 2px 0 #4a2fc0}
.btn.alt{background:#fff;color:var(--ink);border:2px solid #e3d6c0;box-shadow:0 3px 0 #e3d6c0}
.btn.yel{background:var(--yel);color:var(--ink);box-shadow:0 4px 0 #d9a514}
.btn.grn{background:var(--grn);box-shadow:0 4px 0 #148a5f}
.row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.card{background:var(--card);border-radius:1.2rem;padding:1rem;box-shadow:0 4px 0 #eadfcd;margin:.8rem 0}
.prog{display:flex;justify-content:space-between;gap:.5rem;color:var(--muted);font-size:.95rem;margin-bottom:.4rem}
.bar{height:.55rem;background:#f1e7d6;border-radius:9px;overflow:hidden;margin-bottom:.7rem}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--yel),var(--pink));width:0}
.pic{margin:0 auto;text-align:center}
.pic{--mh:58vh}
.frame{position:relative;display:block;margin:0 auto;line-height:0;border-radius:.9rem;overflow:hidden;background:#f3ecdf}
.frame img{display:block;width:100%;height:auto}
.cov{position:absolute;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#6c4cf0,#6c4cf0 10px,#7d60f5 10px,#7d60f5 20px);color:#fff;font-family:'Secular One',serif;font-size:1.3rem;line-height:1;border-radius:.4rem;box-shadow:0 0 0 2px #fff inset;transition:opacity .4s}
.revealed .cov{opacity:0;pointer-events:none}
.credit{font-size:.82rem;color:var(--muted);margin-top:.3rem;line-height:1.3}
.q{font-size:1.2rem;margin:.6rem 0;text-align:center}
.choices{display:grid;grid-template-columns:1fr;gap:.55rem}
@media(min-width:700px){.choices{grid-template-columns:1fr 1fr}}
.ch{min-height:3.3rem;padding:.6rem .9rem;border-radius:1rem;border:3px solid #e6dac6;background:#fff;color:var(--ink);font-size:1.02rem;text-align:right;line-height:1.35}
.ch.ok{border-color:var(--ok);background:#dcfce7}
.ch.bad{border-color:var(--bad);background:#ffe4e6}
.ch:disabled{cursor:default}
.fb{margin-top:.8rem;border-radius:1rem;padding:.8rem .9rem;background:#f6f1ff}
.fb.ok{background:#e9fbef}.fb.bad{background:#fff0f2}
.fb .t{font-family:'Secular One',serif;font-size:1.15rem}
.mean{display:grid;gap:.35rem;margin-top:.4rem}
.mean div{background:#fff;border-radius:.7rem;padding:.45rem .6rem}
.tag{display:inline-block;font-size:.75rem;background:#efe9ff;color:var(--pri);border-radius:999px;padding:.05rem .55rem;margin-inline-start:.3rem;vertical-align:middle}
.ours{display:inline-block;font-size:.72rem;color:#8a6d00;background:#fff4c2;border-radius:999px;padding:.05rem .5rem;vertical-align:middle}
.end{text-align:center}
.end .big{font-size:2.6rem;margin:.3rem 0}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.7rem}
@media(min-width:900px){.gal{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}}
.gi{background:#fff;border-radius:1rem;padding:.5rem;box-shadow:0 3px 0 #eadfcd;text-align:center}
.gi .frame{width:100%!important}
.gi .ans{display:none;text-align:right;font-size:.9rem;margin-top:.4rem}
.gi.revealed .ans{display:block}
.gi button{width:100%;margin-top:.4rem}
.chips{display:flex;gap:.4rem;flex-wrap:wrap;margin:.4rem 0}
.chip{border:2px solid #e3d6c0;background:#fff;border-radius:999px;padding:.35rem .85rem;color:var(--ink)}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.duo{display:grid;gap:.6rem}
textarea,input[type=text]{width:100%;font:inherit;border:2px solid #e3d6c0;border-radius:.9rem;padding:.6rem .7rem;background:#fff;color:var(--ink)}
textarea{min-height:5rem}
label{display:block;margin:.6rem 0 .25rem;font-weight:700}
.teams{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.5rem;margin:.5rem 0}
.team{border-radius:1rem;padding:.55rem .7rem;color:#fff;text-align:center;border:4px solid transparent}
.team.cur{border-color:var(--ink);transform:scale(1.04)}
.team b{display:block;font-size:1.6rem;line-height:1.1}
.t0{background:#ff5d8f}.t1{background:#2fa7ff}.t2{background:#22b07d}.t3{background:#ff8a3d}
.timer{font-family:'Secular One',serif;font-size:2.2rem;text-align:center;line-height:1}
.timer.low{color:var(--bad)}
.turn{text-align:center;font-size:1.15rem;margin:.3rem 0}
.pcard{border:3px dashed var(--pink);border-radius:1.2rem;padding:1rem;background:#fff;text-align:center}
.pcard h3{font-size:1.6rem;margin:.2rem 0}
.pcard .sub{color:var(--muted)}
.pcard .box{background:#fff8ec;border-radius:.8rem;padding:.5rem .7rem;margin:.5rem 0;text-align:right}
.list{columns:2;column-gap:1rem;padding-inline-start:1.2rem}
@media(max-width:500px){.list{columns:1}}
.foot{text-align:center;color:var(--muted);padding:1.2rem .5rem 2rem;font-size:.95rem}
.hide{display:none!important}
.proj .pic{--mh:50vh}

.c8{border-color:#c9f0ea}
.tchips{gap:.45rem}
a.chip{text-decoration:none;display:inline-flex;align-items:center;gap:.25rem;min-height:44px;font-size:1rem}
.chip{min-height:44px}
.chip small{color:inherit;opacity:.7}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.8rem}
.tcard{display:block;text-decoration:none;color:var(--ink);background:var(--card);border-radius:1.2rem;padding:1rem;border:3px solid transparent;box-shadow:0 4px 0 #eadfcd}
.tcard .em{font-size:2.2rem;display:block}
.tcard b{display:block;font-size:1.25rem;margin:.2rem 0;font-family:'Secular One','Varela Round',Arial,sans-serif;font-weight:400}
.tcard small{color:var(--muted);display:block}
.tcard .cnt{display:inline-block;margin-top:.4rem;background:#fff7e6;border-radius:999px;padding:.15rem .7rem;font-size:.9rem}
.gh{margin:1.2rem 0 .5rem;font-size:1.25rem;font-family:'Secular One','Varela Round',Arial,sans-serif;font-weight:400;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.gh small{color:var(--muted)}
.gh .mini{font-size:.95rem;font-family:inherit;margin-inline-start:auto}
.tag.nw{background:#fff3c4}
.tscroll{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.3rem;scrollbar-width:thin}
.tscroll .chip{flex:0 0 auto;white-space:nowrap}

.clue{margin:.3rem 0 0;font-size:.95rem;color:var(--muted);text-align:center;line-height:1.4}
.tag.chl{background:#ffe1d6;color:#b3361b;border-color:#f5b39f}

.c9{border-color:#ffb86b;position:relative}
.tile .nbadge{position:absolute;top:.6rem;left:.6rem;background:var(--pink);color:#fff;border-radius:999px;padding:.15rem .6rem;font-size:.85rem;font-weight:700;transform:rotate(-6deg)}
.rb-filt .chip{cursor:pointer;font:inherit}
.rb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.9rem;margin-top:.6rem}
.rb{display:flex;flex-direction:column;gap:.45rem}
.rb.big{max-width:760px;margin:.6rem auto}
.rb-h{display:flex;gap:.35rem;flex-wrap:wrap;align-items:center}
.rb-l.l0{background:#dcfce7}.rb-l.l1{background:#fef3c7}.rb-l.l2{background:#ffe4e6}
.rb-img img{display:block;width:100%;height:auto;border-radius:1rem;background:#f3ead8}
.rb-q{margin:0;color:var(--muted);font-size:.95rem}
.rb-try{display:flex;gap:.4rem}
.rb-in{flex:1 1 auto;min-width:0;font:inherit;font-size:1.1rem;padding:.55rem .8rem;border-radius:.9rem;border:2px solid #e3d6c0;background:#fff;min-height:48px}
.rb-res .good{color:var(--ok);font-weight:700}.rb-res .nope{color:var(--muted)}
.rb-hbox{background:#fff8d6;border-radius:.9rem;padding:.6rem .8rem}
.rb-sbox{background:#eafbf1;border-radius:.9rem;padding:.6rem .8rem}
.rb-ans{font-family:'Secular One','Varela Round',Arial,sans-serif;font-size:1.6rem;color:var(--pri)}
.rb.solved{box-shadow:0 0 0 3px #22b07d inset}
.rb-nav{justify-content:center;align-items:center}
.hide{display:none!important}
.rb.big .rb-img img{max-height:70vh;width:auto;max-width:100%;margin:0 auto}
.rb-cta{display:flex;align-items:center;gap:.7rem;background:linear-gradient(135deg,#ff8a3d,#ff5d8f);color:#fff!important;text-decoration:none!important;border-radius:1.1rem;padding:.8rem 1rem;margin:.8rem 0;box-shadow:0 4px 0 #c43d66;min-height:56px}
.rb-cta .e{font-size:2rem}.rb-cta b{display:block;font-size:1.15rem}.rb-cta small{display:block;opacity:.95}
.jk img{display:block;width:100%;height:auto;border-radius:1rem}.jk{display:flex;flex-direction:column;gap:.45rem}.jk-cr{margin:0;font-size:.9rem;color:var(--muted)}

.mt-cover{display:block;margin:.4rem 0 .6rem}.mt-cover img{display:block;width:100%;height:auto;border-radius:1.4rem;box-shadow:0 4px 16px rgba(60,40,140,.18)}
