/* ===== v3 BIO-ARK theme additions ===== */
:root{--acc:#38c172}
.brand b{color:#7fe3a0}
#nav button.on{background:#38c172;border-color:#38c172;color:#06200f}
.btn.primary{background:#38c172;border-color:#38c172;color:#06200f}.btn.sel{background:#38c172;color:#06200f}
/* buttons */
.gb.council b{color:#7fe3a0}.gb.council:not(:disabled) .ic{animation:pulseS 1.2s infinite}
.rbox.green{background:linear-gradient(#5ec98a,#2a8a57)}.rbox.green .holdbtn{background:radial-gradient(circle at 35% 30%,#a7f5c4,#2fb067)}
.game.pollen::after{content:"";position:absolute;inset:0;z-index:7;pointer-events:none;background:radial-gradient(circle at 30% 40%,rgba(255,240,160,.5),transparent 40%),radial-gradient(circle at 70% 60%,rgba(200,255,200,.5),transparent 45%),rgba(240,255,220,.35);animation:pulse 1s infinite}
.custom .cbox.wide{grid-template-columns:1fr;max-width:640px}
.srow{display:grid;grid-template-columns:1fr 34px 54px 34px;gap:6px;align-items:center;margin:4px 0}.srow b{text-align:center;font-size:18px}
.sgrid{grid-column:1/-1}
.brief{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.brief div{background:rgba(0,0,0,.2);border-radius:12px;padding:10px;font-size:13px}.brief p{margin:6px 0 0}
.tele{display:grid;grid-template-columns:170px 1fr;gap:14px;align-items:center}.tele svg{width:100%;border-radius:12px;border:3px solid #1a2420}.tele ul{padding-left:18px;margin:6px 0}
@media(max-width:700px){.brief,.tele{grid-template-columns:1fr}}
/* task UIs */
.phscale{position:relative;height:30px;margin:8px 0 12px}.phbar{position:absolute;inset:6px 0;border-radius:9px;background:linear-gradient(90deg,#e5383b,#f78a2a,#f7c534,#9be15d,#2fbf5a,#2ec9c3,#3b82f0,#6a4cd6,#8b2fc9);border:3px solid #1a2420}
.phok{position:absolute;top:0;bottom:0;border:3px dashed #fff;border-radius:6px}.phm{position:absolute;top:-4px;width:6px;height:38px;margin-left:-3px;background:#fff;border:2px solid #1a2420;border-radius:3px;transition:left .3s}
.chart{width:100%;background:#f3faf6;border-radius:10px;border:3px solid #1a2420;margin-bottom:8px}
.btn.led{border-width:3px}
.tt{margin:6px 0;color:var(--txt)}.tt td,.tt th{padding:5px 8px}.tt input{width:18px;height:18px;accent-color:#38c172}
.circ{width:100%;max-width:360px;display:block;margin:0 auto 8px;background:#f3faf6;border-radius:12px;border:3px solid #1a2420}
.vec{background:#f3faf6;border-radius:12px;border:3px solid #1a2420}
.packets{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pkt{display:flex;gap:4px;align-items:center;background:#0a1a14;border:2px solid var(--line);border-radius:10px;padding:6px 8px;cursor:pointer;font:700 14px monospace;color:#8fe0ad}
.pkt span{color:var(--mut);margin-right:6px;font-size:11px}.pkt i{font-style:normal;width:18px;text-align:center;border-radius:4px;background:#132a20}.pkt i.one{background:#2a5a3f;color:#d8ffe9}.pkt.flag{border-color:#ff5d6e;background:#2a0f14}
.meters{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.meters div{background:#0a1a14;border:2px solid var(--line);border-radius:10px;padding:8px;text-align:center}.meters span{display:block;font-size:11px;color:var(--mut)}.meters b{font-size:15px}
select.sel{background:#0e1730;color:#fff;border:1px solid var(--line);border-radius:8px;padding:6px}
/* council splash */
.councilfx{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;text-align:center;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#1f7a4a,#082418 70%)}
.councilfx .in{position:relative;z-index:2}
.councilfx h1{font:900 clamp(26px,5.5vw,64px)/1.1 system-ui;color:#fff;letter-spacing:.04em;margin:8px 0;-webkit-text-stroke:6px #1a2420;paint-order:stroke fill;animation:rin .9s .4s both}
.councilfx p{color:#d8ffe9;font-weight:600}.councilfx .dot{display:inline-block;width:12px;height:12px;border-radius:50%;border:2px solid #1a2420;margin-right:6px;vertical-align:-1px}
.councilfx .tree{width:min(260px,36vw);margin:auto;transform-origin:50% 90%;animation:grow 1.1s cubic-bezier(.2,1.4,.4,1) both}
.councilfx .tree svg{width:100%;display:block;filter:drop-shadow(0 0 30px rgba(255,245,154,.55))}
@keyframes grow{from{transform:scale(.1);opacity:0}}
.councilfx .rays{position:absolute;inset:-40%;background:conic-gradient(from 0deg,rgba(255,245,154,.18),transparent 10%,rgba(255,245,154,.18) 20%,transparent 30%,rgba(255,245,154,.18) 40%,transparent 50%,rgba(255,245,154,.18) 60%,transparent 70%,rgba(255,245,154,.18) 80%,transparent 90%);animation:spin 14s linear infinite}
.councilfx .lf{position:absolute;top:-20px;width:14px;height:8px;border-radius:50%;z-index:1;animation:fall linear infinite}
@keyframes fall{to{transform:translate(60px,700px) rotate(720deg)}}
.crewring{display:flex;justify-content:center;gap:2%;margin-top:-26px}.crewring .cw{width:clamp(34px,6vw,64px);animation:pop-c .6s both}
.councilfx.idle .in svg{filter:drop-shadow(0 0 20px rgba(127,227,160,.6))}.councilfx.idle h1{animation:none}
/* seed-pod ejection */
.eject2{position:absolute;inset:0;overflow:hidden;background:linear-gradient(#031024,#0d3550 60%,#1c6b6a)}
.eject2 .s{position:absolute;width:2px;height:2px;background:#fff;border-radius:50%}
.eject2 .planet{position:absolute;left:-30%;right:-30%;top:62%;height:160%;border-radius:50%;background:radial-gradient(ellipse at 50% 0%,#9ff0c8,#2fb38a 30%,#1a6b6a 60%);border:5px solid #1a2420}
.eject2 .atmo{position:absolute;inset:-26px;border-radius:50%;box-shadow:0 -10px 40px 16px rgba(160,255,210,.35)}
.eject2 .land{position:absolute;left:50%;top:-2px;width:140px;height:40px;margin-left:-20px;background:radial-gradient(ellipse,#5fd38d,transparent 70%)}
.eject2 .ark{position:absolute;left:0;right:0;top:0;height:16%;z-index:3}.eject2 .ark svg{width:100%;height:100%;display:block}
.eject2 .podg{position:absolute;left:50%;top:4%;width:clamp(100px,14vw,170px);height:clamp(150px,22vw,240px);margin-left:calc(clamp(100px,14vw,170px)/-2);z-index:4;will-change:transform,opacity;animation:podfall 4.5s cubic-bezier(.22,.72,.2,1) .2s both}
.eject2 .podg .parachute{position:absolute;top:0;left:0;width:100%;height:72%;object-fit:contain;image-rendering:pixelated;transform-origin:50% 0;animation:chuteOpen .65s .5s cubic-bezier(.2,1.35,.4,1) both}.eject2 .podg .capsule{position:absolute;bottom:0;left:25%;width:50%;height:44%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 6px 4px rgba(0,0,0,.35))}
@keyframes chuteOpen{from{opacity:0;transform:scale(.16,.08)}to{opacity:1;transform:scale(1)}}
@keyframes podfall{0%{opacity:0;transform:translate3d(0,-12vh,0) scale(.5)}12%{opacity:1}30%{transform:translate3d(-12px,10vh,0) scale(.74) rotate(-4deg)}58%{transform:translate3d(15px,26vh,0) scale(.9) rotate(3deg)}82%{transform:translate3d(-5px,36vh,0) scale(1) rotate(-1deg)}100%{opacity:1;transform:translate3d(8px,43vh,0) scale(1) rotate(0)}}
.eject2 .trail{position:absolute;left:50%;top:-60%;width:10px;height:80%;margin-left:-5px;border-radius:5px;background:linear-gradient(transparent,rgba(255,200,120,.9));will-change:opacity,transform;animation:trail 2s .25s both}
@keyframes trail{0%{opacity:1}100%{opacity:0}}
.eject2 .puff{position:absolute;left:calc(50% + 20px);top:61%;width:160px;height:50px;margin-left:-80px;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.85),transparent 70%);z-index:5;opacity:0;animation:puff 1.15s 4.5s both}
@keyframes puff{0%{opacity:0;transform:scale(.3)}40%{opacity:1}100%{opacity:0;transform:scale(1.6)}}
.eject2 .sprout{position:absolute;left:calc(50% + 70px);top:53%;width:66px;z-index:4;transform-origin:50% 100%;animation:grow .8s 4.75s cubic-bezier(.2,1.35,.4,1) both}.eject2 .sprout img{width:100%;display:block;image-rendering:pixelated}
.eject2.alien .sprout{filter:hue-rotate(200deg) saturate(1.5)}
.eject2 .txt{position:absolute;left:0;right:0;top:24%;z-index:6;text-align:center;padding:0 16px}
.eject2 .txt h2{color:#fff;font:900 clamp(16px,2.6vw,30px)/1.3 system-ui;-webkit-text-stroke:5px #1a2420;paint-order:stroke fill;margin:0 auto;max-width:900px}
.eject2 .sub{font-weight:800;font-size:16px}.eject2 .res-ok{color:#9dffc2}.eject2 .res-bad{color:#ffb0b8}
.eject2.tie .txt{top:40%}
/* vote restyle — council look */
.vote{background:linear-gradient(#123d2b,#0a2419)}
.vc{background:#f6faf8;color:#1a2420;border-color:#1a2420;border-width:3px}.vc small{color:#4b6358}.vc:hover:not(.dead){border-color:#38c172}.vc.sel{border-color:#f7c534;box-shadow:0 0 0 3px #f7c534}
.vhead h3{color:#fff;-webkit-text-stroke:4px #1a2420;paint-order:stroke fill}
.chat{background:#0c2a1f;border-color:#1f5a40}.msg{background:#16402f}.msg.me{background:#2a7a50}
.choices.row{flex-direction:row;flex-wrap:wrap;justify-content:center}
