body{margin:0;font-family:IBM Plex Mono,monospace;background:#0a0a14;color:#e8f3ff}.grid-field{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.screen-layer{position:relative;z-index:1;min-height:100vh}.page-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;max-width:none;padding:24px}.panel{width:min(420px,100%);padding:28px;border:1px solid rgba(0,240,255,.25);background:#0a0a14d1}.title-wrap{margin-bottom:20px}.tag{color:#00f0ff;letter-spacing:.18em;font-size:12px}.form{display:grid;gap:14px}label{display:grid;gap:6px}input,button,.btn{font:inherit;padding:10px 12px}input{background:#0a0a14;color:#e8f3ff;border:1px solid rgba(232,243,255,.2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer;border:1px solid transparent}.btn svg{flex:0 0 auto}.btn.primary{background:#c300ff;color:#fff}.btn.ghost{background:transparent;color:#e8f3ff;border-color:#00f0ff66}.divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:#8aa0b8}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#e8f3ff29}.oauth-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.switch{margin-top:18px}.error{color:#ff8a8a}a{color:#9ad7ff}.loading-shell,.flourish-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;max-width:none}.loading-content{width:min(420px,90vw);text-align:center}.hexa-button{background:transparent;border:0;color:#00f0ff;cursor:pointer;padding:0}.hex-os-mark{width:72px;height:72px;display:block;margin:0 auto 12px;color:#00f0ff;filter:drop-shadow(0 0 8px rgba(0,240,255,.55));animation:hex-spin 8s linear infinite,hex-pulse 1.8s ease-in-out infinite}.hexa-speak,.loading-text,.loading-percent,.flourish-line{color:#c8d8ea}.loading-bar{height:4px;margin:24px 0;background:#e8f3ff1f;overflow:hidden}.loading-progress{height:100%;background:#c300ff;transition:width .18s linear}.flourish-stage{position:relative;width:280px;height:280px;display:grid;place-items:center}.flourish-mark{position:relative;z-index:2;margin:0}.voxel,.code-fragment{position:absolute;left:50%;top:50%;color:#00f0ff;animation:emanate 1.4s ease-out var(--delay, 0s) forwards}.voxel{background:#00f0ff;box-shadow:0 0 10px #00f0ffb3}.code-fragment{font-size:11px;letter-spacing:.08em;color:#c300ff}.flourish-line{margin-top:8px}.hub-panel{display:grid;gap:8px}.hub-meta{color:#c8d8ea;margin:8px 0 0}.hub-actions{display:grid;gap:10px;margin-top:18px}.model-viewer{width:100%;margin:12px 0;border:1px solid rgba(0,240,255,.2);background:#00000059;overflow:hidden;position:relative}.model-viewer canvas{display:block;width:100%;height:100%}.view-modes{display:flex;gap:6px;margin:8px 0}.mode-btn{font:inherit;font-size:11px;padding:4px 8px;border:1px solid rgba(0,240,255,.3);background:transparent;color:#00f0ff;cursor:pointer}.mode-btn.active{background:#c300ff;color:#000;border-color:#c300ff}.lights-bulb{width:28px;height:28px;background:#0000008c;border:1px solid rgba(0,240,255,.25);color:#00f0ff;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}@keyframes hex-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes hex-pulse{0%,to{opacity:.72;filter:drop-shadow(0 0 6px rgba(0,240,255,.35))}50%{opacity:1;filter:drop-shadow(0 0 16px rgba(0,240,255,.9))}}@keyframes emanate{0%{transform:translate(-50%,-50%) scale(.2);opacity:1}to{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1);opacity:0}}.hub-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 4px}.hub-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:112px;padding:14px 8px;text-decoration:none;text-align:center;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#e8f3ff;background:#060814b8;border:1px solid rgba(0,240,255,.45);box-shadow:inset 0 0 18px #00f0ff14;transition:border-color .14s,box-shadow .14s,color .14s}.hub-choice svg{color:#00f0ff;filter:drop-shadow(0 0 6px rgba(0,240,255,.6))}.hub-choice.play{border-color:#ff4fd899;box-shadow:inset 0 0 18px #ff4fd81f}.hub-choice.play svg{color:#ff4fd8;filter:drop-shadow(0 0 6px rgba(255,79,216,.6))}.hub-choice:hover,.hub-choice:focus-visible{border-color:#ff4fd8;color:#fff;box-shadow:0 0 14px #ff4fd873,inset 0 0 18px #ff4fd826;outline:none}.mock-banner{margin:10px 0;padding:6px 8px;font-size:11px;letter-spacing:.14em;color:#120012;background:repeating-linear-gradient(135deg,#ffd400 0,#ffd400 10px,#ffb000 10px,#ffb000 20px);text-align:center;font-weight:700}.gis-slot{display:flex;justify-content:center;min-height:44px}
