:root{--bg:#e8d3a6;--ink:#2b2118;--muted:#2b211899;--accent:#c2412d;--accent-ink:#fdf5e3;--btn:#d8bf8a;--btn-ink:#2b2118;--good:#3d7a4a;--bad:#c2412d;--panel:#f3e5c4;--panel-ink:#2b2118;--scrim:#0000008c;--card:#f6e9cb;--card-ink:#2b2118;--sel-bg:#2b21182e;--sel-ink:inherit;--band-ink:#fdf5e3;--c0:#c2412d;--c1:#2f5d8a;--c2:#3d7a4a;--c3:#8a4fa0;--c4:#c98a1b;--c5:#1f7f86;--radius:14px;--display:system-ui, sans-serif;--text:system-ui, sans-serif;--sentence:system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--text);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font-size:16px;line-height:1.35;overflow:hidden}#app{max-width:520px;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);margin:0 auto;position:relative}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.btn{border-radius:var(--radius);background:var(--btn);width:100%;min-height:54px;color:var(--btn-ink);font-family:var(--display);border:0;justify-items:center;gap:2px;padding:10px 18px;font-size:20px;transition:transform 80ms;display:grid}.btn:active{transform:translateY(2px)scale(.99)}.btn--primary{background:var(--accent);color:var(--accent-ink)}.btn--quiet{color:var(--muted);min-height:44px;font-family:var(--text);background:0 0;font-size:16px}.btn:disabled{opacity:.4}.btn__sub{font-family:var(--text);opacity:.75;font-size:13px}.icon-btn{width:44px;height:44px;color:var(--ink);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.bar{grid-template-columns:44px 1fr 44px;align-items:center;min-height:52px;padding:4px 8px 0;display:grid}.bar h2,.bar__title{text-align:center;font-family:var(--display);margin:0;font-size:20px;font-weight:400}.bar__title small{font-family:var(--text);color:var(--muted);font-size:13px}.bar__clock{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.sentence{font-family:var(--sentence);font-size:var(--fs,30px);text-align:center;text-wrap:balance;touch-action:none;cursor:pointer;line-height:1.8}.w{white-space:nowrap}.l,.gap,.p{padding:.04em .03em;transition:color .15s;display:inline-block;position:relative}.l{text-align:center;min-width:.5em}.gap{width:.34em}.gap:after{content:"​"}.sentence,.logo{position:relative}.bands{pointer-events:none;position:absolute;inset:0}.band{background:var(--band);position:absolute}.band.bs{border-top-left-radius:var(--band-round,0);border-bottom-left-radius:var(--band-round,0)}.band.be{border-top-right-radius:var(--band-round,0);border-bottom-right-radius:var(--band-round,0)}.band.inset{transform:scaleY(.58)}.band.sel{background:var(--sel-bg)}.band.pop{animation:.35s ease-out stamp}.f0{--band:var(--c0)}.f1{--band:var(--c1)}.f2{--band:var(--c2)}.f3{--band:var(--c3)}.f4{--band:var(--c4)}.f5{--band:var(--c5)}.l.f{color:var(--band-ink)}.l.anchor{box-shadow:inset 0 -.12em 0 var(--accent)}.l.hinted{animation:1.2s ease-in-out infinite hinted}.sentence.shake{animation:.3s shake}.home{grid-template-rows:auto 1fr auto;place-items:center;height:100%;padding:12px 24px 28px;display:grid}.home__brand{justify-items:center;gap:14px;display:grid}.home__settings{justify-self:end}.logo{font-family:var(--display);text-align:center;margin:0;font-size:52px;font-weight:400;line-height:1.2}.logo .l,.logo .gap{padding-block:.02em}.home__tag{color:var(--muted);text-align:center;margin:0;font-size:17px}.home__menu{gap:12px;width:100%;max-width:340px;display:grid}.play{grid-template-rows:auto auto auto 1fr auto auto;height:100%;padding-bottom:12px;display:grid}.brief{text-align:center;padding:6px 16px 0}.brief__kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;font-size:13px}.brief__count{font-family:var(--display);margin:2px 0 0;font-size:26px;font-weight:400}.slots{flex-wrap:wrap;justify-content:center;gap:8px 12px;padding:12px 16px 4px;display:flex}.slot{gap:2px;display:inline-flex}.slot i{border-bottom:2px solid var(--muted);width:22px;height:26px;font-family:var(--sentence);text-transform:uppercase;place-items:center;font-size:16px;font-style:normal;display:grid}.slot--found i{background:var(--band);color:var(--band-ink);border-color:#0000}.slot.pop{animation:.35s ease-out pop}.stage{align-content:center;min-height:0;padding:12px 18px;display:grid}.note{text-align:center;min-height:1.4em;color:var(--muted);margin:0 16px 6px;font-size:17px}.note.good{color:var(--good)}.note.bad{color:var(--bad)}.actions{justify-items:center;padding:0 24px;display:grid}.actions .btn{max-width:340px}.hint{justify-content:center;align-items:center;gap:6px;display:inline-flex}.play.cleared .sentence{animation:.9s ease-in-out sail}.over{text-align:center;align-content:center;justify-items:center;gap:10px;height:100%;padding:24px;display:grid}.over__title{font-family:var(--display);margin:0;font-size:50px;font-weight:400}.over__kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;font-size:13px}.over__score{color:var(--muted);margin:0;font-size:18px}.over__score b{color:var(--ink);font-family:var(--display);font-size:26px;font-weight:400}.over__grid{letter-spacing:2px;margin:6px 0;font-size:26px;line-height:1.15}.over__sub{color:var(--muted);margin:0 0 6px}.over__menu{gap:10px;width:100%;max-width:340px;margin-top:12px;display:grid}.over__toast{min-height:1.3em;color:var(--muted);margin:0}.sheet{z-index:50;background:var(--scrim);place-items:center;padding:20px;animation:.2s fade;display:grid;position:fixed;inset:0}.sheet__card{background:var(--panel);width:100%;max-width:380px;color:var(--panel-ink);text-align:center;border-radius:20px;justify-items:center;gap:12px;padding:24px 20px 18px;animation:.25s ease-out rise;display:grid}.sheet__card h2{font-family:var(--display);margin:0;font-size:30px;font-weight:400}.sheet__sub{color:var(--muted);margin:0}.howto p{margin:0}.howto__demo{--fs:30px;pointer-events:none}.howto__small{color:var(--muted);margin:4px 0;font-size:14px}.settings{height:100%;padding:0 18px 24px;overflow-y:auto}.settings .bar{padding:8px 0 0}.settings h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:22px 0 10px;font-size:13px}.looks{gap:10px;display:grid}.look{border-radius:var(--radius);background:var(--btn);color:var(--btn-ink);text-align:left;border:2px solid #0000;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:14px;padding:12px 14px;display:grid}.look--on{border-color:var(--accent)}.look__sw{grid-row:span 2;display:flex}.look__sw i{width:18px;height:36px}.look__sw i:first-child{border-radius:6px 0 0 6px}.look__sw i:last-child{border-radius:0 6px 6px 0}.look__name{font-family:var(--display);font-size:19px}.look__blurb{opacity:.7;font-size:13px}.toggle{justify-content:space-between;align-items:center;padding:12px 2px;font-size:17px;display:flex}.toggle input{opacity:0;position:absolute}.toggle i{background:var(--btn);border-radius:15px;width:50px;height:30px;transition:background .2s;position:relative}.toggle i:after{content:"";background:var(--ink);border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle input:checked+i{background:var(--accent)}.toggle input:checked+i:after{transform:translate(20px)}.credits{color:var(--muted);text-align:center;margin-top:24px;font-size:13px}.credits a{color:inherit}.mock-ad{z-index:100;background:#000000d9;place-items:center;display:grid;position:fixed;inset:0}.mock-ad__card{color:#222;text-align:center;background:#fff;border-radius:16px;gap:16px;padding:28px;font:16px system-ui,sans-serif;display:grid}.mock-ad__tag{color:#888;font-size:12px}.mock-ad__body{font-size:28px}.mock-ad__close{color:#fff;background:#222;border:0;border-radius:8px;padding:10px 20px}.mock-ad__close:disabled{opacity:.5}@keyframes pop{40%{transform:scale(1.18)translateY(-3px)}}@keyframes stamp{0%{opacity:.4;transform:scale(1.12)}}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes hinted{50%{box-shadow:inset 0 -.16em 0 var(--accent);color:var(--accent)}}@keyframes sail{30%{transform:rotate(-1.5deg)translateY(-3px)}65%{transform:rotate(1deg)translateY(1px)}}@keyframes rise{0%{opacity:0;transform:translateY(20px)}}@keyframes fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}@font-face{font-family:Special Elite;src:url(/games/stowaway/play/fonts/specialelite-400.woff2)format("woff2");font-display:swap}@font-face{font-family:Fraunces;src:url(/games/stowaway/play/fonts/fraunces-500.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Fraunces;src:url(/games/stowaway/play/fonts/fraunces-800.woff2)format("woff2");font-weight:800;font-display:swap}@font-face{font-family:Rubik;src:url(/games/stowaway/play/fonts/rubik-500.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Rubik;src:url(/games/stowaway/play/fonts/rubik-800.woff2)format("woff2");font-weight:800;font-display:swap}[data-theme=tag]{--bg:#e2c995;--ink:#2b2118;--muted:#2b21189e;--accent:#b8382a;--accent-ink:#fbf1dc;--btn:#d3b67c;--btn-ink:#2b2118;--good:#2f6a3d;--bad:#b8382a;--panel:#f3e5c4;--panel-ink:#2b2118;--card:#f4e6c6;--sel-bg:#2b211829;--band-ink:#fbf1dc;--c0:#b8382a;--c1:#2f5d8a;--c2:#2f6a3d;--c3:#7d4592;--c4:#b97a12;--c5:#1d6f75;--display:"Special Elite", "Courier New", monospace;--sentence:"Special Elite", "Courier New", monospace;--text:system-ui, sans-serif}[data-theme=tag] body{background:repeating-linear-gradient(92deg,#785a280d 0 2px,#0000 2px 7px),radial-gradient(120% 80% at 50% 0,#ead5a6,#d8bb80)}[data-theme=tag] .stage .sentence{background:var(--card);clip-path:polygon(14% 0,86% 0,100% 9%,100% 100%,0 100%,0 9%);border-radius:10px;padding:34px 18px 22px;position:relative;transform:rotate(-.6deg);box-shadow:0 1px #00000014,0 10px 24px -14px #3c280a99}[data-theme=tag] .stage .sentence:before{content:"";background:var(--bg);border-radius:50%;width:14px;height:14px;margin-left:-7px;position:absolute;top:10px;left:50%;box-shadow:0 0 0 3px #c9a96a}[data-theme=tag]{--band-round:2px}[data-theme=tag] .band:not(.sel){transform:rotate(-.6deg);box-shadow:inset 0 0 0 2px #ffffff2e}[data-theme=tag] .band.inset{transform:rotate(-.6deg)scaleY(.58)}[data-theme=tag] .logo{letter-spacing:.02em}[data-theme=tag] .btn--primary{box-shadow:inset 0 0 0 2px #ffffff40}[data-theme=night]{--bg:#0e1a2b;--ink:#f3e6c4;--muted:#f3e6c499;--accent:#ffb547;--accent-ink:#1a1306;--btn:#1b2c44;--btn-ink:#f3e6c4;--good:#8fe0c9;--bad:#ff8a7a;--panel:#14243a;--panel-ink:#f3e6c4;--sel-bg:#ffb54747;--sel-ink:#fff3d6;--band-ink:#0e1a2b;--c0:#ffb547;--c1:#5ad1c5;--c2:#ff8a9a;--c3:#a8b0ff;--c4:#bde065;--c5:#f59b5a;--display:"Fraunces", Georgia, serif;--sentence:"Fraunces", Georgia, serif;--text:system-ui, sans-serif}[data-theme=night] body{background:radial-gradient(60% 35% at 50% 22%,#ffb54721,#0000 70%),repeating-linear-gradient(176deg,#ffffff06 0 2px,#0000 2px 22px),linear-gradient(#0c1626,#12233a 70%,#0b1422)}[data-theme=night] .sentence{font-weight:500}[data-theme=night] .logo,[data-theme=night] .over__title,[data-theme=night] .brief__count{font-weight:800}[data-theme=night]{--band-round:.3em}[data-theme=night] .band:not(.sel){box-shadow:0 0 16px -3px var(--band)}[data-theme=night] .slot i{border-color:#f3e6c459}[data-theme=marker]{--bg:#fbfaf7;--ink:#1b1b1f;--muted:#1b1b1f8c;--accent:#1b1b1f;--accent-ink:#fbfaf7;--btn:#eeece6;--btn-ink:#1b1b1f;--good:#2f7d32;--bad:#d23a52;--panel:#fff;--panel-ink:#1b1b1f;--sel-bg:#1b1b1f1a;--band-ink:#1b1b1f;--c0:#c7f43a;--c1:#ff9ad5;--c2:#6fe3ff;--c3:#ffd84a;--c4:#c3acff;--c5:#ffab73;--display:"Rubik", system-ui, sans-serif;--sentence:"Rubik", system-ui, sans-serif;--text:"Rubik", system-ui, sans-serif}[data-theme=marker] body{background:linear-gradient(90deg, transparent 38px, #d23a5240 38px 40px, transparent 40px), repeating-linear-gradient(transparent 0 31px, #3c78c81f 31px 32px), var(--bg)}[data-theme=marker] .sentence{font-weight:500}[data-theme=marker] .logo,[data-theme=marker] .over__title,[data-theme=marker] .brief__count,[data-theme=marker] .btn{font-weight:800}[data-theme=marker]{--band-round:.25em .45em}[data-theme=marker] .band{transform:scaleY(.8)skew(-8deg)}[data-theme=marker] .band.inset{transform:scaleY(.48)skew(-8deg)}[data-theme=marker] .btn--primary{background:var(--c0);color:var(--ink)}[data-theme=marker] .slot--found i{border-radius:3px}
