@font-face{font-family:"Corporation Games";src:url('corporation_games-webfont.woff2') format('woff2');font-style:italic;font-display:swap}@font-face{font-family:"Perfectly Together";src:url('perfectly_together-webfont.woff2') format('woff2');font-style:italic;font-display:swap}
:root{color-scheme:dark;--bg:#07111f;--panel:rgba(8,20,35,.88);--line:rgba(157,201,255,.18);--ink:#edf6ff;--muted:#b4bdc7;--accent:#7df9c1;--sa-grad-red:linear-gradient(to bottom,#ff0004 0%,#c00000 99%);--sa-grad-blue:linear-gradient(to bottom,#58b8dd 0%,#275dd0 100%)}*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:radial-gradient(circle at top,rgba(72,125,199,.22),transparent 34%),linear-gradient(160deg,#02060d 0%,#07111f 48%,#0b2037 100%);color:var(--ink);font:15px Arial,sans-serif}button,input{font:inherit}button,a,label.upload{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}header,footer{max-width:1260px;margin:auto;padding:22px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}header{border-bottom:1px solid var(--line)}.logo,.sa-brand{font-family:'Corporation Games',Arial,sans-serif;font-style:italic;font-weight:400;letter-spacing:.2px}.logo{font-size:42px}.sa-word{color:transparent;background-clip:text;-webkit-background-clip:text;-webkit-text-stroke:.5px rgba(0,0,0,.75)}.sa-some{background-image:var(--sa-grad-red)}.sa-awesome{background-image:var(--sa-grad-blue)}.sa-games{background-image:linear-gradient(180deg,#fff,#e4edf8)}.tag,.eyebrow,.step,.board-top,.stats span,.how>div>span,footer>span:last-child{font-size:11px;font-weight:bold;letter-spacing:1.5px}header>a:last-child{padding:9px 15px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:13px}.tag{color:var(--muted)}.intro{text-align:center;padding:26px 20px 24px}.eyebrow{color:var(--accent)}h1{font-family:'Corporation Games',Arial,sans-serif;font-style:italic;font-size:54px;font-weight:400;margin:13px 0}h1 em{color:transparent;background:var(--sa-grad-blue);background-clip:text;-webkit-background-clip:text;font-style:inherit}.intro p{color:var(--muted);margin-bottom:0;line-height:1.6}.workspace{max-width:1140px;margin:0 auto 38px;display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;padding:0 24px}.setup,.play-area{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 18px 40px #0003}.step{color:var(--accent);margin-top:22px}.step span{color:var(--muted);margin-left:10px}h2{font-size:24px;font-weight:600;line-height:1.2;margin:15px 0 20px}.upload{border:1px dashed #9dc9ff5c;border-radius:16px;display:flex;flex-direction:column;align-items:center;padding:18px 10px;gap:8px;background:#ffffff06;cursor:pointer;position:relative}.upload:hover,.upload.dragging{background:#7df9c114;border-color:var(--accent)}.upload-icon{font-size:24px;color:var(--accent)}.upload>span:not(.upload-icon),.upload small{font-size:12px;color:var(--muted)}.upload small{font-size:10px;margin-top:6px}.upload input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.text-button{border:0;background:none;padding:12px 0;font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}fieldset{border:0;display:flex;padding:0;gap:8px;margin:16px 0}fieldset label{flex:1}fieldset input{position:absolute;opacity:0}fieldset span{display:block;text-align:center;border:1px solid var(--line);border-radius:12px;padding:12px 4px;font-size:13px;background:#ffffff06}fieldset small{display:block;color:var(--muted);font-size:11px;margin-top:6px}fieldset input:checked+span{border-color:var(--accent);background:#7df9c114}.primary{background:linear-gradient(135deg,var(--accent),#b6ffd1);color:#042315;border:0;border-radius:999px;padding:15px 20px;width:100%;text-align:left;font-weight:bold}.primary span{float:right}.primary:hover{filter:brightness(1.08)}.privacy{font-size:10px;color:var(--muted);text-align:center;margin:15px 0 0}.board-top{display:flex;justify-content:space-between;margin:0 0 16px;color:var(--muted);font-size:10px;gap:12px}.board-wrap{position:relative;padding:8px;border-radius:15px;background:#9dc9ff26;box-shadow:0 12px 30px #0003}#board{position:relative;aspect-ratio:1;background:#07111f;border-radius:8px;overflow:hidden;outline:none}.tile{position:absolute;border:2px solid #07111f;border-radius:6px;transition:top .15s ease,left .15s ease;cursor:pointer;padding:0;background-repeat:no-repeat}.tile:focus-visible{outline:3px solid var(--accent);outline-offset:-5px;z-index:2}.tile span{display:none;background:#07111fd9;color:var(--accent);border:1px solid var(--line);border-radius:4px;padding:3px 6px;position:absolute;top:5px;left:5px;font-size:12px}.numbered .tile span{display:block}.tile:disabled{cursor:default;opacity:1}#reference{position:absolute;inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);border-radius:8px;object-fit:cover}.stats{display:flex;border-bottom:1px solid var(--line);padding:19px 4px 16px;gap:30px;align-items:center}.stats span{display:block;color:var(--muted);font-size:10px}.stats strong{font-size:25px;display:block;margin-top:6px;font-weight:normal;font-variant-numeric:tabular-nums}.stats .primary-stat{order:-1}.stats .primary-stat strong{font-size:36px;color:var(--accent)}.stats .status{margin-left:auto;text-align:right}.status strong{color:var(--accent)}.toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:14px;font-size:11px}.toolbar button{border:1px solid var(--line);border-radius:999px;background:#ffffff06;color:var(--ink);padding:8px 10px;font-size:11px}.toolbar input{accent-color:var(--accent);vertical-align:middle}button:disabled{opacity:.45;cursor:default}#message{font-size:12px;color:var(--muted);text-align:center;min-height:30px;line-height:1.6;margin-bottom:0}.how{max-width:1092px;margin:auto;border-top:1px solid var(--line);padding:28px 0;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:25px}.how>div>span{color:var(--accent)}.how h2{font-size:24px;margin-bottom:0}.how p{font-size:12px;line-height:1.8;color:var(--muted);padding-top:6px}.how b{display:block;color:var(--ink);margin-bottom:8px}footer{border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.sa-brand{font-size:25px}#cropControls{margin-top:10px}#cropControls label{font-size:11px;color:var(--muted)}#cropControls input{width:100%;accent-color:var(--accent)}.mode-tabs{display:flex;gap:8px}.mode-tabs button{flex:1;border:1px solid var(--line);border-radius:999px;background:#ffffff06;color:var(--ink);padding:12px 8px;font-size:13px;font-weight:bold}.mode-tabs button[aria-pressed=true]{background:linear-gradient(135deg,var(--accent),#b6ffd1);color:#042315;border-color:transparent}.mode-tabs button:disabled{opacity:.65}.mode-note{color:var(--muted);font-size:12px;line-height:1.6;min-height:39px;margin:12px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}@media(max-width:800px){header,footer{padding:18px}.tag{display:none}.intro{padding:24px 15px}h1{font-size:40px}.eyebrow{font-size:9px}.workspace{grid-template-columns:1fr;gap:18px;max-width:570px;padding:0 14px}.setup,.play-area{padding:20px}.step{margin-top:18px}.how{grid-template-columns:1fr;gap:10px;margin:0 24px}.how p{padding:0;margin:0}.how h2{margin-bottom:10px}footer{flex-wrap:wrap;justify-content:center}footer>span:last-child{display:none}.stats{gap:22px}.toolbar{flex-wrap:wrap}.board-top{font-size:9px}.sa-brand{font-size:23px}}@media(prefers-reduced-motion:reduce){.tile{transition:none}}
select,#photoName,#shareUrl{width:100%;padding:12px;background:#07111f;border:1px solid var(--line);border-radius:10px;color:var(--ink);font:inherit}#cropControls select{margin:8px 0 12px}.camera-button{display:none}.mobile-dock{display:none}#sharing{margin-top:16px;font-size:12px}#sharing label{display:block;color:var(--accent);margin-bottom:8px}.share-row{display:flex;gap:8px}#shareUrl{min-width:0;font-size:12px}.share-row button,.dialog-actions>button:not(.primary){border:1px solid var(--line);border-radius:999px;background:#ffffff0a;color:var(--ink);padding:10px 16px;white-space:nowrap}#target{color:var(--accent);line-height:1.5}dialog{width:min(440px,calc(100vw - 32px));background:#081423;color:var(--ink);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 20px 90px #0009}dialog::backdrop{background:#02060dcc}dialog p{color:var(--muted);font-size:13px;line-height:1.6}dialog label{display:block;margin-bottom:8px}#nameError{color:#ffc857;min-height:20px}#slugPreview{overflow-wrap:anywhere}.dialog-actions{display:flex;gap:12px;margin-top:20px}.dialog-actions .primary{width:auto;flex:1;text-align:center}#reference{object-fit:fill}
@media(max-width:800px){.camera-button{display:block;position:relative;border:1px solid var(--line);border-radius:999px;text-align:center;padding:13px;margin-top:12px;color:var(--accent);overflow:hidden}.camera-button input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}body.playing{overflow:hidden}body.playing header,body.playing .intro,body.playing .how,body.playing footer{display:none}body.playing .workspace{display:block;padding:0;margin:0;max-width:none}body.playing .play-area{position:fixed;inset:0;border:0;padding:0;border-radius:0;background:#02060d}body.playing .board-wrap{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(100vw,calc(100dvh * var(--ratio,1)));padding:0;border:0;border-radius:0}body.playing #board{border-radius:0}body.playing #reference{inset:0;width:100%;height:100%;border-radius:0}body.playing .tile{border-width:1px;border-radius:3px}body.playing .board-top,body.playing .toolbar{display:none}body.playing .stats{position:absolute;left:10px;right:10px;top:calc(6px + env(safe-area-inset-top));padding:8px 14px;border:1px solid var(--line);border-radius:16px;background:#07111fd9;backdrop-filter:blur(10px);gap:20px;pointer-events:none}body.playing .stats strong,body.playing .stats .primary-stat strong{font-size:22px;margin-top:3px}body.playing .stats span{font-size:9px}body.playing .stats .status{max-width:130px}body.playing .stats .status strong{display:none}body.playing .mobile-dock{display:flex;position:fixed;bottom:calc(10px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:15;gap:10px;padding:6px;border:1px solid var(--line);border-radius:999px;background:#02060df0}body.playing .mobile-dock button{border:1px solid var(--line);background:#ffffff0a;color:var(--ink);border-radius:999px;padding:12px 18px}body.playing #mobileInfo{font-family:'Corporation Games',Arial,sans-serif;font-style:italic;color:#58b8dd;font-size:18px}body.playing .setup{display:none}body.playing.info-open .setup{display:block;position:fixed;z-index:10;left:10px;right:10px;bottom:85px;max-height:calc(100dvh - 170px);overflow:auto;background:#081423f5;backdrop-filter:blur(15px)}body.playing #message{position:fixed;bottom:80px;left:12px;right:12px;background:#07111fe6;border-radius:12px;padding:9px;pointer-events:none}body.playing #sharing{position:fixed;left:14px;right:14px;bottom:155px;z-index:16;background:#081423f5;padding:14px;border:1px solid var(--line);border-radius:16px}body.playing #sharing:not([hidden])~#message{bottom:85px}body.playing.info-open #sharing{bottom:85px}body.playing:not(.info-open) #sharing{display:none}body.playing.info-open #message{z-index:16;bottom:auto;top:75px}}

@media(max-width:800px){body.playing.info-open #sharing{position:static;margin-top:18px;padding:12px;z-index:auto}body.playing .setup{padding-bottom:24px}body.playing.info-open #message{font-size:11px;max-height:55px;overflow:auto}}

.mobile-options{display:none}@media(max-width:800px){.mobile-options{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;margin-top:16px}.mobile-options input{accent-color:var(--accent)}.mobile-options button{border:1px solid var(--line);border-radius:999px;padding:10px;color:var(--ink);background:#ffffff08}}

.sa-transition{background-image:linear-gradient(to right,#ff0004 0%,#58b8dd 100%)}fieldset{flex-wrap:wrap}fieldset label{min-width:28%}#upgradeSummary{color:var(--accent)}#completedChallenge{margin-top:20px}#upgradeDialog .dialog-actions{flex-wrap:wrap}#upgradeDialog{max-height:calc(100dvh - 40px);overflow:auto}#retryCompleted{border:1px solid var(--line);border-radius:999px;background:#ffffff0a;color:var(--ink);padding:10px 16px}

/* Display only the score for the selected game mode, including the mobile HUD. */
.stats[data-mode="slides"] #timeStat,.stats[data-mode="time"] #slidesStat{display:none}

header .tag{font-size:22px;letter-spacing:1.5px;text-align:center}.version-picker{margin-top:18px}.version-picker>label{font-size:12px;color:var(--muted)}.version-picker select{margin-top:8px}#layoutLabel{font-size:12px;color:var(--accent);line-height:1.5;margin-bottom:0}@media(max-width:800px){header{flex-wrap:wrap}header .tag{display:block;order:3;width:100%;font-size:22px;line-height:1.3}.board-top{flex-wrap:wrap}}

.version-label{font-size:12px;color:var(--muted)}#cropDialog{max-height:calc(100dvh - 32px);overflow:auto}#cropDialog label{font-size:12px;color:var(--muted);margin:12px 0 6px}#cropDialog input[type=range]{width:100%;accent-color:var(--accent)}#cropPreview{display:block;max-height:36dvh;max-width:100%;width:auto;margin:18px auto;background:#02060d;border:1px solid var(--line);border-radius:10px}#cancelCrop{white-space:normal}
