:root{color:#f7f7ff;background:#061027;font-family:Inter,system-ui,sans-serif;font-synthesis:none;--display: "Trebuchet MS", "Arial Rounded MT Bold", system-ui, sans-serif;--cyan: #59e8e2;--violet: #a678ff;--gold: #ffd56a}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}button,input{font:inherit}button{color:inherit}body{min-width:320px;min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 15% 20%,rgba(57,89,180,.35),transparent 28rem),radial-gradient(circle at 85% 65%,rgba(112,48,155,.25),transparent 32rem),linear-gradient(145deg,#040b1d,#091a3a 48%,#110b31)}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.65;background-image:radial-gradient(circle,rgba(255,255,255,.9) 0 1px,transparent 1.5px),radial-gradient(circle,rgba(93,232,226,.7) 0 1px,transparent 1.5px);background-position:0 0,37px 54px;background-size:97px 97px,131px 131px}.app-shell{position:relative;min-height:100vh;padding:max(14px,env(safe-area-inset-top)) 22px max(18px,env(safe-area-inset-bottom))}.topbar{max-width:1460px;margin:0 auto 18px;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:11px;font-family:var(--display);letter-spacing:.12em}.brand-mark{width:46px;height:46px;display:grid;place-items:center;border-radius:50% 38% 50% 42%;color:#061027;font-size:27px;font-weight:800;background:linear-gradient(145deg,#dcfff7,var(--cyan) 48%,#6d8dff);box-shadow:0 0 24px #59e8e273;transform:rotate(-8deg)}.brand div{display:grid}.brand b{font-size:clamp(17px,2vw,24px)}.brand small{color:#91a5d2;font-size:8px;letter-spacing:.25em}.resources{display:flex;gap:8px}.resources span{padding:8px 12px;border:1px solid rgba(157,195,255,.2);border-radius:999px;background:#09142fad;backdrop-filter:blur(12px);color:#aebee3}.resources span:first-child{color:#ff8097}.resources span:last-child{color:var(--gold)}.resources b{color:#fff;margin-left:5px}.layout{max-width:1460px;margin:auto;display:grid;grid-template-columns:minmax(220px,290px) minmax(440px,760px) minmax(220px,290px);gap:22px;align-items:center}.glass-panel{border:1px solid rgba(146,180,255,.18);border-radius:24px;padding:22px;background:linear-gradient(145deg,#10234cc7,#09112fb3);box-shadow:0 22px 70px #00000040,inset 0 1px #ffffff0f;backdrop-filter:blur(18px)}.eyebrow{margin:0 0 7px;color:var(--cyan);font:700 11px var(--display);letter-spacing:.16em;text-transform:uppercase}h1,h2{font-family:var(--display);margin:0}h1{font-size:30px;line-height:1.05}h2{font-size:21px}.mission-copy{color:#aebee3;line-height:1.55;font-size:14px}.goal-list{display:grid;gap:10px;margin:22px 0}.goal{position:relative;overflow:hidden;display:flex;align-items:center;gap:11px;padding:10px;border-radius:15px;background:#02091d73}.goal>i{position:absolute;left:0;bottom:0;height:3px;transition:width .25s ease;background:var(--cyan);box-shadow:0 0 9px currentColor}.goal-pyri>i{background:#ff7b66}.goal-nimbo>i{background:#83a4ff}.goal-face{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#ff8a70,#a52f55);box-shadow:inset 0 1px #ffffff59;font-size:20px;font-weight:800}.goal-nimbo .goal-face{background:linear-gradient(145deg,#9bb3ff,#4359ad)}.goal span:nth-child(2){display:grid;gap:3px}.goal small{color:#91a5d2}.score-line{border-top:1px solid rgba(146,180,255,.14);padding-top:15px;display:flex;justify-content:space-between;color:#91a5d2}.score-line b{color:#fff}.motion-setting{display:flex;gap:9px;align-items:center;margin-top:18px;color:#91a5d2;font-size:12px}.play-panel{min-width:0}.board-frame{position:relative;aspect-ratio:1;max-height:min(76vh,760px);margin:auto;border:1px solid rgba(130,199,255,.24);border-radius:34px;overflow:hidden;background:radial-gradient(circle at 50% 47%,#2c4f918a,#040b21e6 72%);box-shadow:0 0 0 5px #304a8921,0 35px 100px #00000070,inset 0 0 55px #59e8e212}.board-frame:before{content:"";position:absolute;inset:22px;border:1px solid rgba(89,232,226,.11);border-radius:25px;pointer-events:none}.board-stars{position:absolute;inset:0;opacity:.35;background-image:radial-gradient(circle,white 0 1px,transparent 1.5px);background-size:51px 43px;animation:starDrift 18s linear infinite}.game-canvas{position:absolute;inset:0}.game-canvas canvas{display:block;max-width:100%}.moves-orb{position:absolute;right:22px;top:18px;width:66px;height:66px;display:grid;place-content:center;text-align:center;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff,#a780ff 20%,#4a257f 58%,#180c38 80%);box-shadow:0 0 26px #a678ffa6,inset 0 0 15px #ffffff59;pointer-events:none}.moves-orb span{font-size:8px;letter-spacing:.12em}.moves-orb b{font:700 27px/1 var(--display)}.status-message{min-height:38px;padding:12px 16px 0;text-align:center;color:#b8c9ec;font-size:13px}.crew-panel{display:grid;gap:11px}.crew-panel h2{margin-bottom:8px}.crew-card{position:relative;overflow:hidden;display:grid;grid-template-columns:48px 1fr auto;grid-template-rows:auto auto;align-items:center;gap:0 10px;width:100%;padding:10px;border:1px solid rgba(148,180,255,.15);border-radius:17px;background:#02091d6b;text-align:left;transition:.2s ease}.crew-card:disabled{opacity:.72;cursor:default}.crew-card.is-ready{cursor:pointer;border-color:#59e8e2b3;box-shadow:0 0 20px #59e8e224}.crew-card.is-ready:hover{transform:translateY(-2px);background:#14405b9e}.crew-avatar{grid-row:span 2;width:48px;height:48px;display:grid;place-items:center;border-radius:50% 45% 48% 42%;background:linear-gradient(145deg,#7ae7f0,#4056bd);font:800 14px var(--display);box-shadow:inset 0 1px #fff6}.crew-card:nth-of-type(3) .crew-avatar{background:linear-gradient(145deg,#ffd469,#dd596f)}.crew-card:nth-of-type(4) .crew-avatar{background:linear-gradient(145deg,#9be173,#3b8190)}.crew-copy{display:grid}.crew-copy strong{font-size:13px}.crew-copy small{color:#91a5d2;font-size:10px;margin-top:2px}.charge{grid-column:2/4;height:4px;margin-top:9px;overflow:hidden;border-radius:10px;background:#172647}.charge i{display:block;height:100%;background:linear-gradient(90deg,#5b83ff,var(--cyan));transition:width .25s ease}.charge-value{font-size:9px;color:var(--cyan);font-weight:800}.crew-tip{padding:10px 4px 0;color:#8295bd;font-size:11px;line-height:1.45}.story-backdrop,.result-banner{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:18px;background:#020614c7;backdrop-filter:blur(12px)}.story-card,.result-banner>div{width:min(480px,100%);padding:30px;border:1px solid rgba(126,231,255,.28);border-radius:28px;background:linear-gradient(145deg,#122a59,#100c32);box-shadow:0 35px 120px #000a,inset 0 1px #ffffff14;text-align:center;animation:panelIn .45s cubic-bezier(.2,.8,.2,1)}.story-kicker{color:var(--cyan);font:700 11px var(--display);letter-spacing:.14em;text-transform:uppercase}.story-card h2,.result-banner h2{margin:8px 0 18px;font-size:30px}.story-card p,.result-banner p{color:#bcccec;line-height:1.58}.portrait{width:88px;height:88px;margin:0 auto 18px;display:grid;place-items:center;border-radius:48% 42% 50% 44%;background:linear-gradient(145deg,#77f0dd,#5151bb 70%);box-shadow:0 0 30px #59e8e24d;transform:rotate(-4deg)}.portrait span{font:800 26px var(--display);transform:rotate(4deg)}.primary-button{min-width:180px;min-height:48px;margin-top:11px;padding:11px 22px;border:0;border-radius:999px;background:linear-gradient(135deg,#67f0df,#6d8dff);color:#071027;font-weight:800;box-shadow:0 10px 30px #59e8e240;cursor:pointer}.primary-button:hover{filter:brightness(1.08);transform:translateY(-1px)}.result-banner{z-index:18}.result-banner>div>span{font-size:54px;color:var(--gold);text-shadow:0 0 30px currentColor}@keyframes starDrift{to{background-position:102px 86px}}@keyframes panelIn{0%{opacity:0;transform:translateY(16px) scale(.96)}}html[data-motion=reduced] *,html[data-motion=reduced] *:before,html[data-motion=reduced] *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}@media(max-width:1040px){.layout{grid-template-columns:220px minmax(440px,1fr)}.crew-panel{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.crew-panel>.eyebrow,.crew-panel>h2,.crew-tip{grid-column:1/-1}}@media(max-width:760px){.app-shell{padding-inline:10px}.topbar{margin-bottom:9px}.resources span{padding:7px 9px}.resources span:nth-child(2){display:none}.layout{display:flex;flex-direction:column;gap:10px}.mission-panel,.crew-panel,.play-panel{width:min(100%,620px)}.mission-panel{padding:13px 15px;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}.mission-panel .eyebrow,.mission-panel h1,.mission-copy{grid-column:1}.mission-panel h1{font-size:23px}.mission-copy,.score-line,.motion-setting{display:none}.goal-list{grid-column:2;grid-row:1/4;margin:0;display:flex}.goal{padding:6px}.goal-face{width:34px;height:34px}.goal span:nth-child(2) b{display:none}.board-frame{width:100%;border-radius:25px}.crew-panel{padding:12px;grid-template-columns:repeat(3,1fr)}.crew-panel>.eyebrow,.crew-panel>h2,.crew-tip{display:none}.crew-card{display:flex;flex-direction:column;text-align:center;gap:5px;padding:8px 5px}.crew-copy small{display:none}.charge{width:80%;margin:0}.status-message{padding-top:5px;min-height:27px}}@media(max-width:430px){.brand small{display:none}.brand-mark{width:38px;height:38px;font-size:22px}.resources span{font-size:12px}.mission-panel{padding:9px 11px}.mission-panel .eyebrow{font-size:9px}.mission-panel h1{font-size:19px}.goal-list{gap:5px}.goal-face{width:29px;height:29px;font-size:16px}.goal small{font-size:10px}.moves-orb{right:12px;top:10px;transform:scale(.82)}.story-card{padding:24px 19px}}
