*,:before,:after{box-sizing:border-box}html{background:#000;width:100%}body{background:#000;width:100%;min-height:100svh;margin:0;font-family:system-ui,sans-serif}#root{background:#000;width:100%;min-width:0;min-height:100svh}.slime-page{width:100%;min-width:0;min-height:100svh;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);--chrome-bg:#0000006b;--chrome-bg-active:#0000009e;--chrome-text:#ffffffeb;--mode-bg:#ffffffe6;--mode-text:#0f172a;--mode-active-bg:#111827;--mode-active-text:#fff;--footer-text:#ffffffe0;background:#000;flex-direction:column;display:flex}.slime-page[data-ui-theme=night]{--chrome-bg:#0f172ab8;--chrome-bg-active:#1e293be0;--chrome-text:#e2e8f0;--mode-bg:#1e293bf2;--mode-text:#f1f5f9;--mode-active-bg:#0ea5e9;--mode-active-text:#020617;--footer-text:#e2e8f0e6;background:#020617}.slime-page[data-ui-theme=inverted]{--chrome-bg:#ffffffbf;--chrome-bg-active:#e2e8f0f2;--chrome-text:#0f172a;--mode-bg:#0f172a14;--mode-text:#0f172a;--mode-active-bg:#1e293b;--mode-active-text:#f8fafc;--footer-text:#0f172ae0;background:#f8fafc}.slime-page[data-ui-theme=gold]{--chrome-bg:#3c3020bf;--chrome-bg-active:#5a4a30e6;--chrome-text:#fffbeb;--mode-bg:#fef3c71f;--mode-text:#fffbeb;--mode-active-bg:#d97706;--mode-active-text:#1c1410;--footer-text:#fffbebe0;background:#1c1410}.slime-column{flex-direction:column;flex-shrink:0;width:100%;min-width:0;max-width:none;display:flex}.slime-viewport{flex-direction:column;flex-shrink:0;width:100%;min-width:0;display:flex}.slime-canvas-wrap{background:#000;flex-shrink:0;justify-content:center;align-items:center;width:100%;max-width:100%;min-height:min(88dvh,max(14rem,55vw));display:flex;position:relative}.slime-canvas-overlays{pointer-events:none;justify-content:center;align-items:flex-start;padding:.35rem .4rem 0;display:flex;position:absolute;inset:0}.slime-canvas-overlays--hidden{display:none}.slime-overlay-stack{pointer-events:auto;flex-direction:column;align-items:center;gap:.2rem;max-width:100%;display:flex}.slime-topbar,.slime-gameplay-bar,.slime-theme-bar{z-index:2;flex-wrap:wrap;justify-content:center;gap:.25rem;padding:0 .35rem;display:flex;position:static}.slime-topbar button,.slime-gameplay-bar button,.slime-theme-bar button{background:var(--chrome-bg);color:var(--chrome-text);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:none}.slime-topbar button{min-width:min(140px,28vw);padding:.55rem .65rem;font-size:clamp(.78rem,2.8vw,1rem)}.slime-gameplay-bar button{min-width:min(118px,30vw);padding:.45rem .5rem;font-size:clamp(.72rem,2.6vw,.88rem)}.slime-theme-bar button{min-width:min(100px,24vw);padding:.4rem .45rem;font-size:clamp(.7rem,2.5vw,.82rem)}.slime-topbar button.active,.slime-gameplay-bar button.active,.slime-theme-bar button.active{background:var(--chrome-bg-active);box-shadow:0 0 0 3px #ffeb3b}.slime-page[data-ui-theme=inverted] .slime-topbar button.active,.slime-page[data-ui-theme=inverted] .slime-gameplay-bar button.active,.slime-page[data-ui-theme=inverted] .slime-theme-bar button.active{box-shadow:0 0 0 3px #0ea5e9}.slime-topbar button:disabled,.slime-gameplay-bar button:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.9);box-shadow:none}.slime-canvas{cursor:pointer;vertical-align:top;touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-shrink:0;width:auto;height:auto;display:block}.slime-canvas:focus{outline-offset:2px;outline:2px solid #ffeb3b}.slime-mode-dpad{flex-direction:row;align-items:center;gap:.3rem;margin-right:.15rem;display:flex}.slime-dpad-btn{background:var(--chrome-bg-active);min-width:2.6rem;min-height:2.5rem;color:var(--chrome-text);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:2px solid #ffffff47;border-radius:8px;padding:.35rem .45rem;font-size:1rem;font-weight:700;line-height:1}.slime-dpad-btn:active{transform:scale(.96)}.slime-page[data-ui-theme=inverted] .slime-dpad-btn{border-color:#0f172a33}.slime-input-mode-hint{white-space:nowrap;letter-spacing:.04em;text-transform:uppercase;color:var(--footer-text);opacity:.9;flex:none;margin-left:.35rem;font-size:clamp(.72rem,2.4vw,.82rem);font-weight:700}.slime-mode{flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:0 .5rem;display:flex}.slime-mode>button{background:var(--mode-bg);color:var(--mode-text);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:1px solid #00000026;border-radius:6px;padding:.4rem .65rem;font-weight:700}.slime-mode>button:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.35);box-shadow:none}.slime-mode>button.active{background:var(--mode-active-bg);border-color:var(--mode-active-bg);color:var(--mode-active-text);box-shadow:0 0 0 3px #ffeb3b}.slime-page[data-ui-theme=inverted] .slime-mode>button.active{box-shadow:0 0 0 3px #0ea5e9}@media (hover:hover) and (pointer:fine){.slime-mode>button:hover:not(:disabled),.slime-restart:hover:not(:disabled){color:#0a0a0a;background:#3b82f6;border-color:#2563eb}}.slime-restart{color:#0a0a0a;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#2563eb;border:2px solid #1d4ed8;border-radius:6px;padding:.4rem .85rem;font-size:clamp(.85rem,2.5vw,.95rem);font-weight:700}.slime-restart:disabled{cursor:not-allowed;color:#e2e8f0;background:#475569;border-color:#64748b}.slime-footer{width:100%;max-width:none;color:var(--footer-text);flex-shrink:0;margin:.75rem 0 0;padding:0 clamp(.75rem,3vw,2rem) 1.25rem;font-size:clamp(.82rem,2.2vw,.9rem)}.slime-footer p{margin:0}.slime-footer .slime-credits-line{text-align:left}.slime-footer .slime-history-heading{text-align:left;margin-top:1.15rem}.slime-history-heading+.slime-history{margin-top:.35rem}.slime-history{text-align:justify;-webkit-hyphens:auto;hyphens:auto;line-height:1.45}.slime-history+.slime-history{margin-top:.45rem}.slime-footer .slime-instructions-heading{text-align:left;margin-top:1.15rem}.slime-instructions-heading+.slime-instructions{margin-top:.35rem}.slime-instructions{text-align:justify;-webkit-hyphens:auto;hyphens:auto;line-height:1.45}.slime-instructions+.slime-instructions{margin-top:.45rem}@media (width>=769px) and (pointer:fine){.slime-column{max-width:100%}}
