:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}#root{min-height:100vh}.explore-root{--bg-deep:#1b0f2e;--bg-deep-2:#100821;--accent-orange:#ff7a1a;--accent-teal:#2de0c2;--accent-pink:#ff3d81;--accent-yellow:#ffd23f;--ink:#f3ecff;--muted:#a68fc9;--panel:#241536;--panel-line:#3d2459}.explore-root[data-theme=light]{--bg-deep:#eee6ff;--bg-deep-2:#fff;--ink:#241536;--muted:#6b5590;--panel:#fff;--panel-line:#d8c8f5}@media (prefers-color-scheme:light){.explore-root:not([data-theme=dark]){--bg-deep:#eee6ff;--bg-deep-2:#fff;--ink:#241536;--muted:#6b5590;--panel:#fff;--panel-line:#d8c8f5}}.explore-root *{box-sizing:border-box}.explore-root{background:radial-gradient(ellipse 120% 80% at 50% -10%, color-mix(in srgb, var(--accent-orange) 22%, transparent), transparent 60%), radial-gradient(ellipse 100% 70% at 90% 110%, color-mix(in srgb, var(--accent-teal) 18%, transparent), transparent 60%), var(--bg-deep);min-height:100vh;color:var(--ink);margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow-x:hidden}.explore-root .stage{flex-direction:column;align-items:center;gap:14px;min-height:100vh;padding:22px 14px 34px;display:flex}.explore-root .titlecard{text-align:center;margin-top:4px}.explore-root .titlecard h1{letter-spacing:.5px;background:linear-gradient(90deg, var(--accent-orange), var(--accent-yellow) 40%, var(--accent-teal) 75%, var(--accent-pink));color:#0000;text-shadow:0 6px 24px color-mix(in srgb, var(--accent-orange) 25%, transparent);text-wrap:balance;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2.1rem,6vw,3.4rem);font-weight:900;line-height:1;transform:skew(-4deg)}.explore-root .titlecard .sub{letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin:6px 0 0;font-size:.8rem;font-weight:600}.explore-root .cabinet{background:linear-gradient(160deg, var(--panel), var(--bg-deep-2));border:1px solid var(--panel-line);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent-teal) 15%, transparent) inset, 0 24px 60px -20px #0000008c;border-radius:22px;padding:10px;position:relative}.explore-root #gameCanvas{aspect-ratio:960/600;touch-action:none;cursor:crosshair;background:#0b3d55;border-radius:14px;width:min(94vw,960px,140.8vh);height:auto;display:block}.explore-root #rotateHint{color:#fff;letter-spacing:.3px;z-index:50;pointer-events:none;white-space:nowrap;background:#0009;border-radius:999px;padding:7px 16px;font-size:.72rem;display:none;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}@media (orientation:portrait) and (width<=700px){.explore-root #rotateHint{display:block}}@media (height<=520px){.explore-root .titlecard,.explore-root .hint{display:none}.explore-root .stage{gap:4px;padding:6px}.explore-root .cabinet{padding:6px}}.explore-root .overlay{background:linear-gradient(160deg, color-mix(in srgb, var(--bg-deep-2) 92%, transparent), color-mix(in srgb, var(--bg-deep) 92%, transparent));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:14px;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:10px}.explore-root .overlay.hidden{display:none}.explore-root .panelbox{text-align:center;width:100%;max-width:480px}.explore-root .panelbox h2{letter-spacing:.5px;background:linear-gradient(90deg, var(--accent-yellow), var(--accent-pink));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 6px;font-size:clamp(1.4rem,4vw,2rem);font-weight:900}.explore-root .panelbox p{color:var(--muted);font-size:.92rem;line-height:1.5}.explore-root .charrow{flex-wrap:wrap;justify-content:center;gap:14px;margin:16px 0;display:flex}.explore-root .charcard{border:2px solid var(--panel-line);background:color-mix(in srgb, var(--panel) 80%, transparent);cursor:pointer;width:150px;color:var(--ink);border-radius:16px;padding:14px 18px;transition:transform .15s,border-color .15s}.explore-root .charcard:hover{transform:translateY(-3px)}.explore-root .charcard.selected{border-color:var(--accent-yellow);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-yellow) 40%, transparent)}.explore-root .charcard .avatar{font-size:2.6rem;line-height:1}.explore-root .charcard .name{margin-top:6px;font-weight:800}.explore-root .charcard .tag{color:var(--muted);font-size:.72rem}.explore-root .charcard.orange .avatar{filter:drop-shadow(0 0 10px color-mix(in srgb, var(--accent-orange) 60%, transparent))}.explore-root .charcard.teal .avatar{filter:drop-shadow(0 0 10px color-mix(in srgb, var(--accent-teal) 60%, transparent))}.explore-root .bigbtn{cursor:pointer;background:linear-gradient(90deg, var(--accent-orange), var(--accent-pink));color:#1b0f2e;letter-spacing:.5px;box-shadow:0 10px 24px -8px color-mix(in srgb, var(--accent-pink) 60%, transparent);border:none;border-radius:999px;padding:12px 30px;font-family:inherit;font-size:1.05rem;font-weight:800;transition:transform .12s}.explore-root .bigbtn:hover{transform:translateY(-2px)scale(1.02)}.explore-root .bigbtn:active{transform:translateY(0)scale(.98)}.explore-root .controls{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:18px;margin-top:14px;font-size:.76rem;display:flex}.explore-root .controls b{color:var(--ink)}.explore-root .statrow{font-variant-numeric:tabular-nums;justify-content:center;gap:22px;margin:14px 0;display:flex}.explore-root .statrow div{text-align:center}.explore-root .statrow .num{color:var(--accent-yellow);font-size:1.6rem;font-weight:900}.explore-root .statrow .lbl{text-transform:uppercase;letter-spacing:2px;color:var(--muted);font-size:.68rem}.explore-root .hint{color:var(--muted);margin-top:18px;font-size:.72rem}.explore-root .linkbtn{color:var(--muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;margin:14px auto 0;font-family:inherit;font-size:.78rem;text-decoration:underline;display:block}.explore-root .linkbtn:hover{color:var(--ink)}.explore-root .settingrow{text-align:left;margin:18px 0}.explore-root .settinglabel{text-transform:uppercase;letter-spacing:2px;color:var(--muted);margin-bottom:8px;font-size:.7rem}.explore-root .togglegroup{gap:8px;display:flex}.explore-root .togglegroup button{border:2px solid var(--panel-line);background:color-mix(in srgb, var(--panel) 80%, transparent);color:var(--ink);cursor:pointer;border-radius:10px;flex:1;padding:9px 4px;font-family:inherit;font-size:.85rem;font-weight:700;transition:transform .12s,border-color .12s}.explore-root .togglegroup button:hover{transform:translateY(-1px)}.explore-root .togglegroup button.active{border-color:var(--accent-yellow);background:color-mix(in srgb, var(--accent-yellow) 18%, transparent);color:var(--accent-yellow)}.explore-root #touchLayer{pointer-events:none;position:absolute;inset:0}.explore-root #joyBase{background:color-mix(in srgb, var(--ink) 10%, transparent);border:2px solid color-mix(in srgb, var(--ink) 30%, transparent);pointer-events:auto;touch-action:none;border-radius:50%;width:96px;height:96px;position:absolute;bottom:26px;left:26px}.explore-root #joyKnob{background:color-mix(in srgb, var(--accent-yellow) 85%, transparent);border-radius:50%;width:44px;height:44px;margin:-22px 0 0 -22px;position:absolute;top:50%;left:50%;box-shadow:0 4px 10px #0000004d}.explore-root #throwBtn{background:color-mix(in srgb, var(--accent-pink) 75%, transparent);border:2px solid color-mix(in srgb, var(--ink) 30%, transparent);color:#1b0f2e;pointer-events:auto;touch-action:none;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:78px;height:78px;font-size:1.7rem;display:flex;position:absolute;bottom:26px;right:26px}@media (prefers-reduced-motion:reduce){.explore-root *{transition:none!important}}.build-root{color:#f3ecff;background:#1b0f2e;flex-direction:column;align-items:center;gap:20px;min-height:100vh;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex}.build-hud{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.build-hud-stat{background:#241536cc;border:2px solid #3d2459;border-radius:10px;flex-direction:column;align-items:center;min-width:72px;padding:8px 14px;font-size:.95rem;font-weight:700;display:flex}.build-hud-label{letter-spacing:1.5px;text-transform:uppercase;color:#a68fc9;margin-bottom:2px;font-size:.65rem;font-weight:600}.build-endturn-btn{color:#1b0f2e;cursor:pointer;background:#ffd23f;border:2px solid #ffd23f;border-radius:999px;padding:12px 22px;font-family:inherit;font-size:.85rem;font-weight:800}.build-endturn-btn:hover{background:#ffe27a}.build-grid{grid-template-columns:repeat(var(--grid-size), minmax(56px, 84px));gap:6px;display:grid}.build-plot{aspect-ratio:1;cursor:pointer;color:#f3ecff;text-align:center;border:2px solid #3d2459;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px;font-family:inherit;transition:transform .1s,border-color .1s;display:flex}.build-plot:hover{transform:translateY(-2px)}.build-plot-selected{border-width:3px;border-color:#ffd23f}.build-plot-active{box-shadow:inset 0 0 0 2px #2de0c288}.build-plot-state{text-transform:uppercase;letter-spacing:.5px;font-size:.6rem;font-weight:700}.build-plot-producer{color:#1b0f2eaa;font-size:.55rem;font-weight:600}.build-plot-barren{background:#5c4b37}.build-plot-cleared{background:#8a7452}.build-plot-degraded{background:#7a2e2e}.build-plot-tf-irrigated{background:#2e6f8e}.build-plot-tf-enriched{background:#3c7a4e}.build-plot-tf-channeled{background:#2aa0a0}.build-lower{flex-wrap:wrap;justify-content:center;gap:16px;width:100%;max-width:900px;display:flex}.build-panel{background:#241536cc;border:2px solid #3d2459;border-radius:14px;flex-direction:column;gap:10px;width:min(420px,100%);padding:18px;display:flex}.build-trader h3{margin:0;font-size:1rem}.build-trader-status{color:#a68fc9;margin:0;font-size:.8rem}.build-trader-docked{color:#2de0c2;font-weight:700}.build-trader-goods{flex-direction:column;gap:8px;display:flex}.build-trader-row{grid-template-columns:1fr auto auto auto;align-items:center;gap:10px;font-size:.8rem;display:grid}.build-trader-commodity{text-transform:capitalize;font-weight:700}.build-trader-stock,.build-trader-price{color:#a68fc9;white-space:nowrap}.build-panel-hint{color:#a68fc9;margin:0;font-size:.85rem}.build-actions h3{margin:0 0 10px;font-size:1rem}.build-action-btn{color:#f3ecff;cursor:pointer;background:#1b0f2e;border:2px solid #3d2459;border-radius:8px;margin:0 6px 6px 0;padding:8px 14px;font-family:inherit;font-size:.78rem;font-weight:700}.build-action-btn:hover:not(:disabled){border-color:#ffd23f}.build-action-btn:disabled{opacity:.4;cursor:not-allowed}.build-action-btn-sanctuary{border-color:#ff3d81}.build-action-group-label{text-transform:uppercase;letter-spacing:1px;color:#a68fc9;margin-bottom:6px;font-size:.7rem}.build-action-group{margin-bottom:10px}.build-plot-output{color:#2de0c2;margin:6px 0 0;font-size:.8rem}.build-log{color:#a68fc9;border-top:1px solid #3d2459;margin:6px 0 0;padding-top:10px;font-size:.78rem}.menu-screen{color:#f3ecff;background:radial-gradient(120% 80% at 50% -10%,#ff7a1a33,#0000 60%),radial-gradient(100% 70% at 90% 110%,#2de0c230,#0000 60%),#1b0f2e;flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:100vh;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex}.menu-titlecard{text-align:center}.menu-titlecard h1{letter-spacing:.5px;background:linear-gradient(90deg,#ff7a1a,#ffd23f 40%,#2de0c2 75%,#ff3d81);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2.2rem,6vw,3.6rem);font-weight:900}.menu-sub{letter-spacing:3px;text-transform:uppercase;color:#a68fc9;margin:6px 0 0;font-size:.8rem;font-weight:600}.menu-cards{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.menu-card{text-align:left;cursor:pointer;color:#f3ecff;background:#241536cc;border:2px solid #3d2459;border-radius:16px;width:260px;padding:20px;font-family:inherit;transition:transform .15s,border-color .15s}.menu-card:hover:not(:disabled){border-color:#ffd23f;transform:translateY(-3px)}.menu-card-disabled{opacity:.5;cursor:not-allowed}.menu-card-title{margin-bottom:6px;font-size:1.1rem;font-weight:800}.menu-card-desc{color:#a68fc9;font-size:.8rem}.menu-footer{letter-spacing:2px;text-transform:uppercase;color:#a68fc9;font-size:.75rem}.mode-shell{min-height:100vh;position:relative}.mode-back-btn{z-index:100;color:#f3ecff;cursor:pointer;background:#241536cc;border:2px solid #3d2459;border-radius:999px;padding:8px 16px;font-family:inherit;font-size:.78rem;font-weight:700;position:fixed;top:14px;left:14px}.mode-back-btn:hover{border-color:#ffd23f}
