@font-face{font-family:Fraunces;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/fraunces-latin-var.woff2)format("woff2")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin-var.woff2)format("woff2")}:root{--ink:#0f3f44;--muted:#2f5c60;--line:#3aa49c;--paper:#fff;--ground:#a8e0da;--sheet:#d9f0ec;--rule:#8fd3cb;--glass-rgb:234 246 244;--found:#45b0a8;--found-ink:#06312e;--picking:#f9d9b8;--revealed:#d6dcdd;--revealed-ink:#2b3a3c;--accent:#09605d;--warm:#b8480d;--raven:#16383d;--raven-sheen:#2f9d95;--raven-beak:#0b2427;--raven-eye:#eaf7f4;--tile:#f0621f;--button:#0d3a40;--button-ink:#dcf1ee;--button-line:#4a919a;--button-primary:#09605d;--button-primary-ink:#fff;--button-focus:#5fe3dc;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--scrim:#a8e0da38}*{box-sizing:border-box}body{background:var(--sheet);color:var(--ink);margin:0;padding:16px;font:17px/1.5 Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,sans-serif}.logo-name,.card-word,h1,h2{letter-spacing:-.01em;font-family:Fraunces,Georgia,serif;font-weight:600}body:before{content:"";z-index:-1;background:linear-gradient(to bottom, transparent 46%, var(--sheet)), var(--ground) url(/sea-900.jpg) center 38% / cover no-repeat;height:300px;position:absolute;inset:0 0 auto}body:not([data-route=hunt]){padding-top:190px}body[data-route=hunt]:before{background:linear-gradient(var(--scrim), var(--scrim)), var(--ground) url(/sea-900.jpg) center / cover no-repeat;height:auto;position:fixed;inset:0}#app{background:rgb(var(--glass-rgb) / .88);-webkit-backdrop-filter:blur(18px)saturate(1.1);backdrop-filter:blur(18px)saturate(1.1);border:1px solid #ffffff8c;border-radius:20px;gap:20px;max-width:560px;margin:0 auto;padding:24px 22px;display:grid}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){#app{background:rgb(var(--glass-rgb) / .97)}}body:not([data-route=hunt]) #app>.status:empty{min-height:0}.play{gap:20px;display:grid}@media (width>=760px){body[data-route=hunt] #app,body[data-route=bank] #app{max-width:940px}body:before{background-image:linear-gradient(to bottom, transparent 46%, var(--sheet)), url(/sea-1600.jpg);height:460px}body:not([data-route=hunt]){padding-top:290px}body[data-route=hunt]:before{background-image:linear-gradient(var(--scrim), var(--scrim)), url(/sea-1600.jpg);height:auto}.play{grid-template-columns:minmax(0,420px) minmax(260px,1fr);align-items:start}.play .clues{position:sticky;top:16px}}body[data-route=hunt]{height:100dvh;padding:8px;overflow:hidden}body[data-route=hunt] #app{border-radius:16px;grid-template-rows:auto minmax(0,1fr);gap:4px;height:100%;padding:8px 10px}body[data-route=hunt] #app>section{grid-template-rows:auto auto minmax(0,1fr);gap:2px;min-height:0;display:grid}body[data-route=hunt] #app>section>section{grid-template-rows:auto minmax(0,1fr);gap:6px;min-height:0;display:grid}body[data-route=hunt] .play{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1.35fr) minmax(124px,1fr);gap:8px;min-height:0}body[data-route=hunt] .clues{overscroll-behavior:contain;gap:6px;min-height:5.5rem;overflow-y:auto}body[data-route=hunt] #app>section>h1{margin:0;font-size:17px}body[data-route=hunt] header p{margin:0;font-size:12px}body[data-route=hunt] .grid-box{align-self:stretch;height:100%;min-height:0}body[data-route=hunt] .grid{min-height:0}body[data-route=hunt] .status{min-height:0;font-size:13px}body[data-route=hunt] .grid{container-type:inline-size}body[data-route=hunt] .cell{font-size:clamp(12px, calc(100cqi / var(--cols,11) * .58), 26px);background:#fff9;border-color:#0000;border-radius:4px}body[data-route=hunt] .marks path{stroke:none}body[data-route=hunt] .clue{padding:6px 8px;font-size:14px}body[data-route=hunt] .clue:not([data-found]):not([data-revealed]){background:#fff9;border-color:#ffffff8c}body[data-route=hunt] .clue button{color:var(--accent);background:#ffffffd1;border-color:#09605d66;font-weight:600}body[data-route=hunt] .clue button:hover{border-color:var(--accent);background:#fff}body[data-route=hunt] .clue button:focus-visible{outline-color:var(--accent)}body[data-route=hunt] .back{margin:0;font-size:14px}@media (width<=560px){body[data-route=hunt] .play{grid-template-columns:minmax(0,2.1fr) minmax(100px,1fr);gap:6px}body[data-route=hunt] .clues{gap:4px}body[data-route=hunt] .clue{border-radius:6px;gap:4px;padding:4px 6px;font-size:12px}body[data-route=hunt] .clue .hint,body[data-route=hunt] .clue .reveal,body[data-route=hunt] .clue button{min-height:28px;padding:2px 6px;font-size:12px}body[data-route=hunt] .hint-text,body[data-route=hunt] .clue-note{font-size:11px}}@media (width>=760px){body[data-route=hunt] .play{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(260px,340px)}body[data-route=hunt] .clues{min-height:0;max-height:100%}}.logo{align-items:center;gap:10px;display:inline-flex}.logo-name{letter-spacing:-.01em;color:var(--ink);font-size:26px;font-weight:700}.logo-accent{color:var(--accent)}.tagline{color:var(--muted);margin:2px 0 0;font-size:15px}.brand{gap:4px;margin-bottom:4px;display:grid}.today-heading{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--rule);margin:0;padding-bottom:10px;font-family:inherit;font-size:15px;font-weight:600}.summary{color:var(--muted);margin:0 0 4px}.play-cta{border:1px solid var(--button-line);background:var(--button-primary);color:var(--button-primary-ink);text-align:center;border-radius:12px;padding:20px;font-size:22px;font-weight:700;text-decoration:none;display:block}.play-cta:hover{filter:brightness(1.08)}.play-cta:focus-visible{outline:3px solid var(--button-focus);outline-offset:-4px}.today-note{color:var(--muted);text-align:center;margin:10px 0 0}.plus-line{color:var(--muted);text-align:center;margin:20px 0 0;font-size:14px}.back{color:var(--accent);margin-bottom:8px;display:inline-block}.puzzle-nav{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.puzzle-nav .back{margin-bottom:8px}.finish{position:relative}.finish h2{margin:0 0 12px;padding-right:44px}.finish .close{width:44px;color:var(--muted);background:0 0;border-color:#0000;padding:0;font-size:22px;line-height:1;position:absolute;top:6px;right:6px}.finish .close:hover{color:var(--ink)}.finish .facts{margin-bottom:16px}.clue-pick[aria-current=true]{color:var(--accent);font-weight:700}header h1{margin:0;font-size:20px}header p{color:var(--muted);margin:2px 0 0;font-size:14px}.grid{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;aspect-ratio:1;gap:2px;max-width:100%;margin-inline:auto;display:grid;position:relative}.grid-row{grid-column:1/-1;grid-template-columns:subgrid;min-height:0;display:grid}.marks{z-index:0;pointer-events:none;position:absolute;inset:0}.letter{z-index:1;position:relative}.cell:focus-visible{z-index:2;position:relative}.marks path{stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke}.marks .found{fill:var(--found)}.marks .picking{fill:var(--picking)}.grid-box{justify-content:center;min-height:0;display:flex;container-type:size}.grid-box .grid{align-self:flex-start;width:min(100cqi,100cqb);max-width:100%;height:auto}.cell{touch-action:none;border:1px solid var(--line);background:var(--paper);min-width:0;min-height:0;color:var(--ink);font:inherit;text-transform:uppercase;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;font-weight:600;display:flex}.cell:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.cell[data-picking=true],.cell[data-found=true]{background:0 0;border-color:#0000}.cell[data-found=true]{color:var(--found-ink);font-weight:700}.clues{gap:10px;margin:0;padding:0;list-style:none;display:grid}.clue{border:1px solid var(--line);background:var(--paper);border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:8px;padding:8px 10px;display:flex}.clue .clue-text{flex:12rem}.clue .hint,.clue .reveal{min-height:36px;padding:4px 10px;font-size:14px}.clue .reveal[data-armed=true]{border-color:var(--warm);color:var(--warm);font-weight:600}.hint-text{color:var(--warm);white-space:pre-line;flex:1 0 100%;margin:0;font-weight:600}.clue[data-found=true]{border-color:var(--found-ink)}.clue[data-revealed=true]{border-style:dashed;border-color:var(--revealed-ink);background:var(--revealed);color:var(--revealed-ink)}.clue-note{color:var(--muted);margin:2px 0 6px;font-size:13px}.card-note{color:var(--muted);margin:12px 0 0;font-style:italic}.clue-text{margin:0}.clue-answer{text-transform:uppercase;letter-spacing:.04em;font-weight:700}button{font:inherit;border:1px solid var(--button-line);background:var(--button);min-height:44px;color:var(--button-ink);cursor:pointer;border-radius:8px;padding:8px 12px}button:focus-visible{outline:3px solid var(--button-focus);outline-offset:-4px}.primary{background:var(--button-primary);border-color:var(--button-line);color:var(--button-primary-ink)}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:12px;width:calc(100% - 32px);max-width:24rem;padding:20px}dialog::backdrop{background:#00000073}.card-word{margin:0;font-size:24px;font-weight:700}.card-say{color:var(--muted);margin:4px 0 0}.card-pos{color:var(--muted);font-style:italic}.card-example{border-left:3px solid var(--line);color:var(--muted);margin:12px 0 0;padding-left:10px}.card-buttons{gap:8px;margin-top:16px;display:flex}.status{min-height:1.5em;color:var(--muted)}section h2{margin:0 0 4px;font-size:18px}section>p{color:var(--muted);margin:0 0 12px}.actions{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.results{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:20px}.results h2{margin-top:0}.facts{gap:6px;margin:0 0 16px;padding:0;list-style:none;display:grid}.facts li{color:var(--muted)}.clue-pick{text-align:left;background:0 0;border:none;width:100%;min-height:0;padding:0}.clue-pick:hover{color:var(--accent)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}body[data-look=print] .grid{background:var(--paper);box-shadow:0 0 0 clamp(3px, 2cqi, 7px) var(--paper)}body[data-look=print] .cell{background:0 0;border:0;border-radius:50%}body[data-look=print] .cell:focus-visible{outline:max(2px, .14em) solid var(--accent);outline-offset:-1px}body[data-look=print] .cell[data-picking=true]{text-underline-offset:.14em;font-weight:800;text-decoration:underline;text-decoration-thickness:max(1px,.07em)}body[data-look=print] .cell[data-found=true]{font-weight:800}.bank-link{border-top:1px solid var(--rule);color:var(--accent);text-align:center;margin-top:10px;padding:13px 12px;font-weight:600;text-decoration:none;display:block}.bank-link:hover{text-decoration:underline}.bank-link:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}.bank-count{color:var(--muted)}.book{background:var(--paper);border:1px solid var(--line);box-shadow:4px 4px 0 -1px var(--paper), 4px 4px 0 0 var(--line), 8px 8px 0 -2px var(--paper), 8px 8px 0 -1px var(--line);border-radius:10px;margin-right:6px;padding:20px;position:relative}.leaf{gap:24px;margin:0;padding:0;list-style:none;display:grid}.bank-card{min-width:0}.bank-card .card-word{margin-bottom:0}.bank-card .hear{min-height:32px;margin-top:8px;padding:2px 10px;font-size:14px}.kept-mark{vertical-align:middle;background:var(--found);color:var(--found-ink);border-radius:999px;padding:1px 8px;font-size:13px;font-weight:600}@media (width>=760px){.leaf{grid-template-columns:1fr 1fr;column-gap:48px}.book:before{content:"";border-left:1px solid var(--line);position:absolute;top:20px;bottom:20px;left:50%}}.leaf-nav{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.leaf-where{color:var(--muted);margin:0}.leaf-nav button:disabled{opacity:.45;cursor:default}.site-foot{border-top:1px solid var(--rule);color:var(--muted);text-align:center;margin-top:4px;padding-top:12px;font-size:14px}.site-foot a{color:var(--accent)}.stats-toggle{cursor:pointer;align-items:center;gap:10px;min-height:44px;margin:4px 0 8px;font-weight:600;display:flex}.stats-toggle input{width:22px;height:22px;accent-color:var(--accent);margin:0}.privacy h2{margin-top:12px}.recall{border:1px solid var(--line);background:var(--paper);border-radius:12px;gap:8px;margin:4px 0 16px;padding:16px;display:grid}.recall h2{margin:0;font-size:18px}.recall-count{color:var(--muted);margin:0;font-size:13px}.recall-meaning{margin:0;font-size:18px}.recall label{font-size:15px;font-weight:600}.recall input{font:inherit;border:1px solid var(--button-line);background:var(--paper);min-height:44px;color:var(--ink);border-radius:8px;padding:8px 12px;font-size:18px}.recall input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.recall .hint-text{margin:0}.recall .actions{margin:4px 0 0}.recall-reveal{margin:0;padding:0;list-style:none}.recall .later{color:var(--accent);background:0 0;border-color:#0000;text-decoration:underline}.recall-said{color:var(--accent);margin:0;font-weight:700}.recall-end{background:var(--paper);border-radius:12px;margin:4px 0 16px;padding:12px 16px;font-weight:600}
