/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-content:""}}}@layer theme{:root,:host{--spacing:.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-display:var(--font-display);--font-body:var(--font-body);--font-mono:var(--font-mono);--text-xs:var(--text-xs);--text-sm:var(--text-sm);--text-base:var(--text-base);--text-md:var(--text-md);--text-lg:var(--text-lg);--text-xl:var(--text-xl);--text-display:var(--text-display);--radius-s:var(--radius-s);--radius-m:var(--radius-m);--radius-l:var(--radius-l);--radius-pill:var(--radius-pill);--ease-out:var(--ease-out);--ease-spring:var(--ease-spring)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--font-body,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-\[-4rem\]{top:-4rem}.-left-\[10000px\]{left:-10000px}.left-0{left:0}.left-4{left:calc(var(--spacing) * 4)}.z-10{z-index:10}.-order-1{order:calc(1 * -1)}.col-span-full{grid-column:1/-1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.m-\[3px_3px_3px_4px\]{margin:3px 3px 3px 4px}.-mx-6{margin-inline:calc(var(--spacing) * -6)}.mx-auto{margin-inline:auto}.my-8{margin-block:calc(var(--spacing) * 8)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-12{margin-top:calc(var(--spacing) * 12)}.-mb-6{margin-bottom:calc(var(--spacing) * -6)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.box-border{box-sizing:border-box}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-\[1\.1rem\]{width:1.1rem;height:1.1rem}.h-\[6px\]{height:6px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.min-h-\[1\.5em\]{min-height:1.5em}.min-h-\[3\.25rem\]{min-height:3.25rem}.min-h-dvh{min-height:100dvh}.w-11{width:calc(var(--spacing) * 11)}.w-\[10\%\]{width:10%}.w-\[20\%\]{width:20%}.w-\[30\%\]{width:30%}.w-\[40\%\]{width:40%}.w-\[50\%\]{width:50%}.w-\[60\%\]{width:60%}.w-\[70\%\]{width:70%}.w-\[80\%\]{width:80%}.w-\[90\%\]{width:90%}.w-full{width:100%}.w-px{width:1px}.max-w-\[32rem\]{max-width:32rem}.max-w-\[46ch\]{max-width:46ch}.max-w-measure{max-width:var(--measure)}.max-w-none{max-width:none}.max-w-page{max-width:var(--page)}.min-w-0{min-width:0}.min-w-16{min-width:calc(var(--spacing) * 16)}.min-w-\[34rem\]{min-width:34rem}.min-w-\[44rem\]{min-width:44rem}.flex-1{flex:1}.flex-none{flex:none}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.scroll-mt-6{scroll-margin-top:calc(var(--spacing) * 6)}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[max-content_1fr\]{grid-template-columns:max-content 1fr}.grid-cols-\[repeat\(auto-fill\,minmax\(9rem\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-\[0\.45em\]{gap:.45em}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.\[justify-self\:start\]{justify-self:start}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.rounded-\[3px\]{border-radius:3px}.rounded-\[8px\]{border-radius:8px}.rounded-\[12px\]{border-radius:12px}.rounded-\[999px\]{border-radius:999px}.rounded-m{border-radius:var(--radius-m)}.rounded-b-\[calc\(var\(--radius-m\)_-_2px\)\]{border-bottom-right-radius:calc(var(--radius-m) - 2px);border-bottom-left-radius:calc(var(--radius-m) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\(--game\){border-color:var(--game)}.border-\[\#000\]{border-color:#000}.border-\[\#747775\]{border-color:#747775}.border-ink{border-color:var(--ink)}.border-rule-strong{border-color:var(--rule-strong)}.border-signal{border-color:var(--signal)}.border-t-rule-strong{border-top-color:var(--rule-strong)}.border-b-rule{border-bottom-color:var(--rule)}.border-b-rule-strong{border-bottom-color:var(--rule-strong)}.bg-\(--game\){background-color:var(--game)}.bg-\[\#000\]{background-color:#000}.bg-\[\#fff\]{background-color:#fff}.bg-\[color-mix\(in_srgb\,var\(--game\)_14\%\,var\(--paper-raised\)\)\]{background-color:var(--game)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--game\)_14\%\,var\(--paper-raised\)\)\]{background-color:color-mix(in srgb,var(--game) 14%,var(--paper-raised))}}.bg-\[color-mix\(in_srgb\,var\(--game\)_22\%\,var\(--paper-raised\)\)\]{background-color:var(--game)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--game\)_22\%\,var\(--paper-raised\)\)\]{background-color:color-mix(in srgb,var(--game) 22%,var(--paper-raised))}}.bg-ink{background-color:var(--ink)}.bg-paper{background-color:var(--paper)}.bg-paper-raised{background-color:var(--paper-raised)}.bg-paper-sunk{background-color:var(--paper-sunk)}.bg-rule{background-color:var(--rule)}.bg-ships{background-color:var(--hue-ships)}.bg-signal{background-color:var(--signal)}.fill-\[\#3a54c9\]{fill:#3a54c9}.fill-\[\#221b35\]{fill:#221b35}.fill-\[\#08767e\]{fill:#08767e}.fill-\[\#9131b0\]{fill:#9131b0}.fill-\[\#b9520a\]{fill:#b9520a}.stroke-\[\#221b35\]{stroke:#221b35}.stroke-\[26px\]{stroke-width:26px}.p-0{padding:0}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[0\.75em\]{padding-inline:.75em}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-\[0\.15em\]{padding-block:.15em}.pt-0{padding-top:0}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-\[env\(safe-area-inset-top\,0px\)\]{padding-top:env(safe-area-inset-top,0px)}.pr-\[max\(var\(--space-5\)\,env\(safe-area-inset-right\,0px\)\)\]{padding-right:max(var(--space-5), env(safe-area-inset-right,0px))}.pb-\[calc\(var\(--space-6\)_\+_env\(safe-area-inset-bottom\,0px\)\)\]{padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px))}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-\[max\(var\(--space-5\)\,env\(safe-area-inset-left\,0px\)\)\]{padding-left:max(var(--space-5), env(safe-area-inset-left,0px))}.text-right{text-align:right}.\[font-family\:inherit\]{font-family:inherit}.font-\[ui-rounded\,\'SF_Pro_Rounded\'\,Nunito\,\'Varela_Round\'\,system-ui\,sans-serif\]{font-family:ui-rounded,SF Pro Rounded,Nunito,Varela Round,system-ui,sans-serif}.font-body{font-family:var(--font-body)}.font-display{font-family:var(--font-display)}.\[font-size\:inherit\]{font-size:inherit}.text-\[0\.75rem\]{font-size:.75rem}.text-\[1\.4rem\]{font-size:1.4rem}.text-\[1\.6rem\]{font-size:1.6rem}.text-\[1rem\]{font-size:1rem}.text-\[length\:clamp\(1\.35rem\,1\.05rem_\+_1\.2vw\,1\.75rem\)\]{font-size:clamp(1.35rem,1.05rem + 1.2vw,1.75rem)}.text-\[length\:clamp\(2\.25rem\,1\.7rem_\+_2\.6vw\,3\.5rem\)\]{font-size:clamp(2.25rem,1.7rem + 2.6vw,3.5rem)}.text-display{font-size:var(--text-display)}.text-md{font-size:var(--text-md)}.text-sm{font-size:var(--text-sm)}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-\[1\.6\]{--tw-leading:1.6;line-height:1.6}.leading-none{--tw-leading:1;line-height:1}.\[line-height\:inherit\]{line-height:inherit}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-eyebrow{--tw-tracking:var(--track-eyebrow);letter-spacing:var(--track-eyebrow)}.wrap-anywhere{overflow-wrap:anywhere}.wrap-break-word{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-\[\#1f1f1f\]{color:#1f1f1f}.text-\[\#fff\]{color:#fff}.text-ink{color:var(--ink)}.text-ink-soft{color:var(--ink-soft)}.text-on-signal{color:var(--on-signal)}.text-paper{color:var(--paper)}.text-signal{color:var(--signal)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.\[font-variant-numeric\:tabular-nums\]{font-variant-numeric:tabular-nums}.no-underline{text-decoration-line:none}.accent-signal{accent-color:var(--signal)}.\[box-shadow\:4px_4px_0_var\(--game\)\]{box-shadow:4px 4px 0 var(--game)}.\[box-shadow\:4px_4px_0_var\(--ink\)\]{box-shadow:4px 4px 0 var(--ink)}.\[box-shadow\:inset_-1px_0_0_var\(--rule\)\]{box-shadow:inset -1px 0 0 var(--rule)}.\[box-shadow\:none\]{box-shadow:none}.\[box-shadow\:var\(--offset\)_var\(--offset\)_0_var\(--hue-ships\)\]{box-shadow:var(--offset) var(--offset) 0 var(--hue-ships)}.\[box-shadow\:var\(--offset\)_var\(--offset\)_0_var\(--ink\)\]{box-shadow:var(--offset) var(--offset) 0 var(--ink)}.\[box-shadow\:var\(--offset\)_var\(--offset\)_0_var\(--signal\)\]{box-shadow:var(--offset) var(--offset) 0 var(--signal)}.\[--game\:var\(--hue-trail\)\]{--game:var(--hue-trail)}.\[--game\:var\(--ink-soft\)\]{--game:var(--ink-soft)}.\[--game\:var\(--signal\)\]{--game:var(--signal)}.\[-webkit-text-size-adjust\:100\%\]{-webkit-text-size-adjust:100%}.\[background\:linear-gradient\(to_left\,var\(--paper-raised\)_40\%\,transparent\)_right\/2\.5rem_100\%_no-repeat_local\,radial-gradient\(farthest-side_at_100\%_50\%\,var\(--rule\)\,transparent\)_right\/0\.9rem_100\%_no-repeat_scroll\,var\(--paper-raised\)\]{background:linear-gradient(to left,var(--paper-raised) 40%,transparent) right/2.5rem 100% no-repeat local,radial-gradient(farthest-side at 100% 50%,var(--rule),transparent) right/.9rem 100% no-repeat scroll,var(--paper-raised)}.\[border-top\:0\]{border-top:0}.\[counter-reset\:step\]{counter-reset:step}.\[font\:inherit\]{font:inherit}.\[text-size-adjust\:100\%\]{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}:is(.\*\*\:box-border *){box-sizing:border-box}.selection\:bg-signal ::selection{background-color:var(--signal)}.selection\:bg-signal::selection{background-color:var(--signal)}.selection\:text-on-signal ::selection{color:var(--on-signal)}.selection\:text-on-signal::selection{color:var(--on-signal)}.before\:box-border:before{content:var(--tw-content);box-sizing:border-box}.before\:size-\[0\.55em\]:before{content:var(--tw-content);width:.55em;height:.55em}.before\:rounded-\[50\%\]:before{content:var(--tw-content);border-radius:50%}.before\:bg-\(--game\):before{content:var(--tw-content);background-color:var(--game)}.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}.last\:\[border-bottom\:0\]:last-child{border-bottom:0}.hover\:text-ink:hover{color:var(--ink)}.hover\:text-on-signal:hover{color:var(--on-signal)}.hover\:underline:hover{text-decoration-line:underline}.hover\:underline-offset-\[0\.3em\]:hover{text-underline-offset:.3em}.hover\:\[box-shadow\:2px_2px_0_var\(--ink\)\]:hover{box-shadow:2px 2px 0 var(--ink)}.focus\:top-3:focus{top:calc(var(--spacing) * 3)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:cursor-progress:disabled{cursor:progress}.disabled\:opacity-60:disabled{opacity:.6}.aria-\[current\=page\]\:underline[aria-current=page]{text-decoration-line:underline}.aria-\[current\=page\]\:underline-offset-\[0\.3em\][aria-current=page]{text-underline-offset:.3em}.data-\[game\=bridges\]\:\[--game\:var\(--hue-bridges\)\][data-game=bridges]{--game:var(--hue-bridges)}.data-\[game\=lines\]\:\[--game\:var\(--hue-lines\)\][data-game=lines]{--game:var(--hue-lines)}.data-\[game\=ships\]\:\[--game\:var\(--hue-ships\)\][data-game=ships]{--game:var(--hue-ships)}.data-\[game\=stars\]\:\[--game\:var\(--hue-stars\)\][data-game=stars]{--game:var(--hue-stars)}.data-\[game\=sudoku\]\:\[--game\:var\(--hue-sudoku\)\][data-game=sudoku]{--game:var(--hue-sudoku)}.data-\[game\=trail\]\:\[--game\:var\(--hue-trail\)\][data-game=trail]{--game:var(--hue-trail)}@media (prefers-reduced-motion:no-preference){.motion-safe\:\[transition\:transform_120ms_ease-out\,box-shadow_120ms_ease-out\]{transition:transform .12s ease-out,box-shadow .12s ease-out}.motion-safe\:hover\:\[transform\:translate\(2px\,2px\)\]:hover{transform:translate(2px,2px)}}@media not all and (min-width:34rem){.max-\[34rem\]\:\[grid-template-columns\:1fr\]{grid-template-columns:1fr}.max-\[34rem\]\:gap-1{gap:var(--spacing)}}@media not all and (min-width:30rem){.max-\[30rem\]\:w-full{width:100%}.max-\[30rem\]\:justify-center{justify-content:center}}@media (min-width:40rem){.sm\:\[grid-column\:1\]{grid-column:1}.sm\:\[grid-row\:span_2\]{grid-row:span 2}.sm\:grid-cols-\[1\.35fr_1fr_1fr\]{grid-template-columns:1.35fr 1fr 1fr}.sm\:justify-end{justify-content:flex-end}}@media (min-width:48rem){.md\:grid-cols-\[1\.5fr_1fr_1fr_1fr\]{grid-template-columns:1.5fr 1fr 1fr 1fr}}@media (min-width:64rem){.lg\:grid-cols-\[1\.5fr_repeat\(4\,1fr\)\]{grid-template-columns:1.5fr repeat(4,1fr)}}@media (prefers-color-scheme:dark){.dark\:fill-\[\#4fd6cf\]{fill:#4fd6cf}.dark\:fill-\[\#93a9ff\]{fill:#93a9ff}.dark\:fill-\[\#07050f\]{fill:#07050f}.dark\:fill-\[\#e39cf8\]{fill:#e39cf8}.dark\:fill-\[\#ffae5c\]{fill:#ffae5c}.dark\:stroke-\[\#07050f\]{stroke:#07050f}}@media print{.print\:hidden{display:none}.print\:bg-\[\#fff\]{background-color:#fff}.print\:text-\[\#000\]{color:#000}}.\[\&_\[hidden\]\]\:hidden [hidden]{display:none}.\[\&_a\]\:block a{display:block}.\[\&_a\]\:inline-block a{display:inline-block}.\[\&_a\]\:py-2 a{padding-block:calc(var(--spacing) * 2)}.\[\&_a\]\:py-3 a{padding-block:calc(var(--spacing) * 3)}.\[\&_a\]\:font-semibold a{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_a\]\:wrap-anywhere a{overflow-wrap:anywhere}.\[\&_a\]\:no-underline a{text-decoration-line:none}.\[\&_a\[href\^\=\'mailto\:\'\]\]\:wrap-anywhere a[href^=mailto\:]{overflow-wrap:anywhere}.\[\&_code\]\:bg-transparent code{background-color:#0000}.\[\&_code\]\:p-0 code{padding:0}.\[\&_code\]\:whitespace-pre-wrap code{white-space:pre-wrap}.\[\&_dd\]\:m-0 dd{margin:0}@media not all and (min-width:34rem){.max-\[34rem\]\:\[\&_dd\]\:mb-3 dd{margin-bottom:calc(var(--spacing) * 3)}}.\[\&_dt\]\:font-bold dt{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.\[\&_h2\]\:pt-0 h2{padding-top:0}.\[\&_h2\]\:\[border-top\:0\] h2{border-top:0}.\[\&_h3\]\:mt-6 h3{margin-top:calc(var(--spacing) * 6)}.\[\&_h3\]\:mt-\[0\.2rem\] h3{margin-top:.2rem}.\[\&_h3\]\:mb-2 h3{margin-bottom:calc(var(--spacing) * 2)}.\[\&_iframe\]\:block iframe{display:block}.\[\&_iframe\]\:max-w-full iframe{max-width:100%}.\[\&_iframe\]\:rounded-\[12px\] iframe{border-radius:12px}.\[\&_iframe\]\:border iframe{border-style:var(--tw-border-style);border-width:1px}.\[\&_iframe\]\:border-rule-strong iframe{border-color:var(--rule-strong)}.\[\&_li\]\:relative li{position:relative}.\[\&_li\]\:m-0 li{margin:0}.\[\&_li\]\:grid li{display:grid}.\[\&_li\]\:grid-cols-\[2\.5rem_1fr\] li{grid-template-columns:2.5rem 1fr}.\[\&_li\]\:grid-cols-\[2\.75rem_1fr\] li{grid-template-columns:2.75rem 1fr}.\[\&_li\]\:\[align-items\:start\] li{align-items:start}.\[\&_li\]\:gap-3 li{gap:calc(var(--spacing) * 3)}.\[\&_li\]\:border-b li{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_li\]\:border-b-rule li{border-bottom-color:var(--rule)}.\[\&_li\]\:py-3 li{padding-block:calc(var(--spacing) * 3)}.\[\&_li\]\:py-4 li{padding-block:calc(var(--spacing) * 4)}.\[\&_li\]\:pl-\[2\.1rem\] li{padding-left:2.1rem}.\[\&_li\]\:\[counter-increment\:step\] li{counter-increment:step}.\[\&_li\:\:before\]\:absolute li:before{position:absolute}.\[\&_li\:\:before\]\:top-\[0\.1em\] li:before{top:.1em}.\[\&_li\:\:before\]\:left-0 li:before{left:0}.\[\&_li\:\:before\]\:box-border li:before{box-sizing:border-box}.\[\&_li\:\:before\]\:grid li:before{display:grid}.\[\&_li\:\:before\]\:size-9 li:before{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.\[\&_li\:\:before\]\:size-\[1\.4rem\] li:before{width:1.4rem;height:1.4rem}.\[\&_li\:\:before\]\:place-items-center li:before{place-items:center}.\[\&_li\:\:before\]\:rounded-\[50\%\] li:before{border-radius:50%}.\[\&_li\:\:before\]\:border-2 li:before{border-style:var(--tw-border-style);border-width:2px}.\[\&_li\:\:before\]\:border-ink li:before{border-color:var(--ink)}.\[\&_li\:\:before\]\:bg-\(--game\) li:before{background-color:var(--game)}.\[\&_li\:\:before\]\:font-display li:before{font-family:var(--font-display)}.\[\&_li\:\:before\]\:text-\[0\.8rem\] li:before{font-size:.8rem}.\[\&_li\:\:before\]\:text-\[1\.6rem\] li:before{font-size:1.6rem}.\[\&_li\:\:before\]\:text-\[1\.15rem\] li:before{font-size:1.15rem}.\[\&_li\:\:before\]\:leading-\[1\.2\] li:before{--tw-leading:1.2;line-height:1.2}.\[\&_li\:\:before\]\:leading-none li:before{--tw-leading:1;line-height:1}.\[\&_li\:\:before\]\:font-bold li:before{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.\[\&_li\:\:before\]\:font-extrabold li:before{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.\[\&_li\:\:before\]\:text-paper li:before{color:var(--paper)}.\[\&_li\:\:before\]\:text-signal li:before{color:var(--signal)}.\[\&_li\:\:before\]\:\[box-shadow\:2px_2px_0_var\(--ink\)\] li:before{box-shadow:2px 2px 0 var(--ink)}.\[\&_li\:\:before\]\:content-\[\'✓\'\] li:before{--tw-content:"✓";content:var(--tw-content)}.\[\&_li\:\:before\]\:content-\[\'✕\'\] li:before{--tw-content:"✕";content:var(--tw-content)}.\[\&_li\:\:before\]\:content-\[counter\(step\)\] li:before{--tw-content:counter(step);content:var(--tw-content)}.\[\&_li\:nth-child\(3n\+1\)\]\:\[--game\:var\(--hue-sudoku\)\] li:nth-child(3n+1){--game:var(--hue-sudoku)}.\[\&_li\:nth-child\(3n\+2\)\]\:\[--game\:var\(--hue-bridges\)\] li:nth-child(3n+2){--game:var(--hue-bridges)}.\[\&_li\:nth-child\(3n\+3\)\]\:\[--game\:var\(--hue-ships\)\] li:nth-child(3n+3){--game:var(--hue-ships)}.\[\&_p\]\:m-0 p{margin:0}.\[\&_p\+p\]\:mt-2 p+p{margin-top:calc(var(--spacing) * 2)}.\[\&_ul\]\:list-none ul{list-style-type:none}.\[\&_ul\]\:p-0 ul{padding:0}.\[\&\>\:last-child\]\:mb-0>:last-child{margin-bottom:0}.\[\&\[hidden\]\]\:hidden[hidden]{display:none}:where(.\[\:where\(\&\)_\:is\(h1\,h2\,h3\)\]\:m-0) :is(h1,h2,h3){margin:0}:where(.\[\:where\(\&\)_\:is\(h1\,h2\,h3\)\]\:font-display) :is(h1,h2,h3){font-family:var(--font-display)}:where(.\[\:where\(\&\)_\:is\(h1\,h2\,h3\)\]\:leading-\[1\.1\]) :is(h1,h2,h3){--tw-leading:1.1;line-height:1.1}:where(.\[\:where\(\&\)_\:is\(h1\,h2\,h3\)\]\:font-semibold) :is(h1,h2,h3){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:where(.\[\:where\(\&\)_\:is\(h1\,h2\,h3\)\]\:tracking-\[-0\.01em\]) :is(h1,h2,h3){--tw-tracking:-.01em;letter-spacing:-.01em}:where(.\[\:where\(\&\)_\:is\(img\,svg\)\]\:max-w-full) :is(img,svg){max-width:100%}:where(.\[\:where\(\&\)_\:is\(th\,td\)\]\:border-b) :is(th,td){border-bottom-style:var(--tw-border-style);border-bottom-width:1px}:where(.\[\:where\(\&\)_\:is\(th\,td\)\]\:border-b-rule) :is(th,td){border-bottom-color:var(--rule)}:where(.\[\:where\(\&\)_\:is\(th\,td\)\]\:px-4) :is(th,td){padding-inline:calc(var(--spacing) * 4)}:where(.\[\:where\(\&\)_\:is\(th\,td\)\]\:px-\[0\.6rem\]) :is(th,td){padding-inline:.6rem}:where(.\[\:where\(\&\)_\:is\(th\,td\)\]\:py-3) :is(th,td){padding-block:calc(var(--spacing) * 3)}:where(.\[\:where\(\&\)_\:is\(th\,td\)\]\:text-left) :is(th,td){text-align:left}:where(.\[\:where\(\&\)_\:is\(th\,td\)\]\:align-middle) :is(th,td){vertical-align:middle}:where(.\[\:where\(\&\)_\:is\(th\,td\)\]\:align-top) :is(th,td){vertical-align:top}:where(.\[\:where\(\&\)_\:is\(ul\,ol\)\]\:m-0) :is(ul,ol){margin:0}:where(.\[\:where\(\&\)_\:is\(ul\,ol\)\]\:mb-4) :is(ul,ol){margin-bottom:calc(var(--spacing) * 4)}:where(.\[\:where\(\&\)_\:is\(ul\,ol\)\]\:pl-\[1\.3rem\]) :is(ul,ol){padding-left:1.3rem}:where(.\[\:where\(\&\)_a\]\:text-ink) a{color:var(--ink)}:where(.\[\:where\(\&\)_a\]\:underline) a{text-decoration-line:underline}:where(.\[\:where\(\&\)_a\]\:decoration-signal) a{-webkit-text-decoration-color:var(--signal);-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal)}:where(.\[\:where\(\&\)_a\]\:decoration-2) a{text-decoration-thickness:2px}:where(.\[\:where\(\&\)_a\]\:underline-offset-\[0\.2em\]) a{text-underline-offset:.2em}:where(.\[\:where\(\&\)_a\]\:hover\:text-signal) a:hover{color:var(--signal)}:where(.\[\:where\(\&\)_code\]\:rounded-\[4px\]) code{border-radius:4px}:where(.\[\:where\(\&\)_code\]\:bg-paper-sunk) code{background-color:var(--paper-sunk)}:where(.\[\:where\(\&\)_code\]\:px-\[0\.4em\]) code{padding-inline:.4em}:where(.\[\:where\(\&\)_code\]\:py-\[0\.1em\]) code{padding-block:.1em}:where(.\[\:where\(\&\)_code\]\:font-mono) code{font-family:var(--font-mono)}:where(.\[\:where\(\&\)_code\]\:text-\[0\.92em\]) code{font-size:.92em}:where(.\[\:where\(\&\)_code\]\:wrap-anywhere) code{overflow-wrap:anywhere}:where(.\[\:where\(\&\)_h1\]\:text-display) h1{font-size:var(--text-display)}:where(.\[\:where\(\&\)_h1\]\:text-balance) h1{text-wrap:balance}:where(.\[\:where\(\&\)_h2\]\:mb-4) h2{margin-bottom:calc(var(--spacing) * 4)}:where(.\[\:where\(\&\)_h2\]\:border-t-2) h2{border-top-style:var(--tw-border-style);border-top-width:2px}:where(.\[\:where\(\&\)_h2\]\:border-t-rule-strong) h2{border-top-color:var(--rule-strong)}:where(.\[\:where\(\&\)_h2\]\:pt-4) h2{padding-top:calc(var(--spacing) * 4)}:where(.\[\:where\(\&\)_h2\]\:text-xl) h2{font-size:var(--text-xl)}:where(.\[\:where\(\&\)_h3\]\:text-lg) h3{font-size:var(--text-lg)}:where(.\[\:where\(\&\)_li\]\:mb-2) li{margin-bottom:calc(var(--spacing) * 2)}:where(.\[\:where\(\&\)_li\:\:marker\]\:font-bold) li::marker{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}:where(.\[\:where\(\&\)_li\:\:marker\]\:text-signal) li::marker{color:var(--signal)}:where(.\[\:where\(\&\)_ol\]\:list-decimal) ol{list-style-type:decimal}:where(.\[\:where\(\&\)_p\]\:m-0) p{margin:0}:where(.\[\:where\(\&\)_p\]\:mb-4) p{margin-bottom:calc(var(--spacing) * 4)}:where(.\[\:where\(\&\)_section\]\:mt-8) section{margin-top:calc(var(--spacing) * 8)}:where(.\[\:where\(\&\)_tbody_th\]\:min-w-\[14rem\]) tbody th{min-width:14rem}:where(.\[\:where\(\&\)_tbody_th\]\:font-semibold) tbody th{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}:where(.\[\:where\(\&\)_tbody_tr\:last-child_\:is\(th\,td\)\]\:\[border-bottom\:0\]) tbody tr:last-child :is(th,td){border-bottom:0}:where(.\[\:where\(\&\)_thead_th\]\:border-b-rule-strong) thead th{border-bottom-color:var(--rule-strong)}:where(.\[\:where\(\&\)_thead_th\]\:text-\[0\.75rem\]) thead th{font-size:.75rem}:where(.\[\:where\(\&\)_thead_th\]\:tracking-\[0\.06em\]) thead th{--tw-tracking:.06em;letter-spacing:.06em}:where(.\[\:where\(\&\)_thead_th\]\:tracking-eyebrow) thead th{--tw-tracking:var(--track-eyebrow);letter-spacing:var(--track-eyebrow)}:where(.\[\:where\(\&\)_thead_th\]\:text-ink-soft) thead th{color:var(--ink-soft)}:where(.\[\:where\(\&\)_thead_th\]\:uppercase) thead th{text-transform:uppercase}:where(.\[\:where\(\&\)_ul\]\:list-disc) ul{list-style-type:disc}:where(.\[\:where\(\&\)\>\*\]\:max-w-measure)>*{max-width:var(--measure)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}

@layer theme, base, components, utilities;
@layer components {
/*
 * Puzzle Picnic site pages (privacy, terms, support, ...; the start page is the web app). Direction: PAPER & INK, same token names as the app (src/shell/theme.css).
 * Warm newsprint ground, near-black ink, one signal colour, hairline rules, hard offset shadows.
 * System fonts only; no external requests. Light and dark follow the OS.
 *
 * What is left here is what utilities cannot say: the token sheet and the keyboard focus outline (checkTailwind bans outline
 * utilities, so focus is written once, here). Everything else is Tailwind utilities in the markup: src/render/classes.js.
 */

:root {
  --paper: #f2ecdf;
  --paper-raised: #faf6ec;
  --paper-sunk: #e7dfcd;
  --ink: #1c1a16;
  --ink-soft: #4f493e;
  --rule: rgb(28 26 22 / 0.16);
  --rule-strong: rgb(28 26 22 / 0.88);
  --signal: #c8402a;
  --on-signal: #fffaf0;
  --hue-sudoku: #27427a;
  --hue-bridges: #a8681a;
  --hue-ships: #1d6a72;
  --hue-lines: #9131b0;
  --hue-stars: #b02a5f;
  --hue-trail: #3a7a14;
  --game: var(--ink);
  --card: #1c1a16;
  --on-card: #efe7d6;

  --font-display: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Charter, "Noto Serif", Georgia, serif;
  --font-body: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, "Roboto Mono", monospace;

  --text-sm: 0.875rem;
  --text-md: 1.125rem;
  --text-lg: 1.375rem;
  --text-xl: clamp(1.6rem, 1.3rem + 1.4vw, 2.1rem);
  --text-display: clamp(2.5rem, 1.7rem + 4.2vw, 4.25rem);
  --track-eyebrow: 0.16em;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4.5rem;
  --radius-m: 12px;
  --radius-l: 22px;
  --offset: 6px;
  --measure: 68ch;
  --page: 70rem;

  color-scheme: light dark;
}

@media (prefers-color-scheme: dark) {
  :root {
    --paper: #15130f;
    --paper-raised: #1e1b16;
    --paper-sunk: #0f0d0a;
    --ink: #efe7d6;
    --ink-soft: #c2baa8;
    --rule: rgb(239 231 214 / 0.16);
    --rule-strong: rgb(239 231 214 / 0.85);
    --signal: #ff7f5f;
    --on-signal: #1a0f0a;
    --hue-sudoku: #8fa8e6;
    --hue-bridges: #e0a85a;
    --hue-ships: #6fc4cc;
    --hue-lines: #e39cf8;
    --hue-stars: #ff8fbd;
    --hue-trail: #9bdc6a;
    --card: #efe7d6;
    --on-card: #1c1a16;
  }
}

:focus-visible {
  outline: 3px solid var(--signal);
  outline-offset: 3px;
  border-radius: 3px;
}

.press-shots a:focus-visible img {
  outline: 3px solid var(--ink);
  outline-offset: 3px;
}

}
