@charset "UTF-8";
:root{--paper:#f5f0e5;--white:#fffdf8;--ink:#182f35;--muted:#56615e;--rule:#c9c5b8;--teal:#196257;--copper:#ab462d;--light:#e6eade;--serif:Georgia,'Times New Roman',serif;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:.22em}button,input,textarea{font:inherit}button,a.button{cursor:pointer}button{min-height:44px;border:1px solid var(--rule);border-radius:5px;background:transparent;color:var(--ink);padding:10px 15px;font-weight:650}button:hover{background:#e9e4d9}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--copper);outline-offset:4px}p{line-height:1.6}h1,h2,h3,p{margin-top:0}h2{font:400 2rem/1.12 var(--serif);letter-spacing:-.035em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip-link{position:absolute;top:8px;left:12px;transform:translateY(-150%);z-index:100;background:var(--ink);color:white;padding:12px}.skip-link:focus{transform:none}.masthead{max-width:1320px;margin:auto;padding:25px 40px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);gap:20px}.publication{text-decoration:none;display:grid;gap:6px}.publication strong{font-size:17px;letter-spacing:-.07em;font-weight:900}.publication span{font-size:9px;letter-spacing:.2em}.masthead nav{display:flex;gap:24px;align-items:center;font-size:.8rem}.masthead nav a{min-height:44px;display:flex;align-items:center;text-decoration:none}.masthead button{font-size:.75rem;padding:8px 12px}.wrap{max-width:1160px;padding:0 40px;margin:auto}.intro{display:flex;justify-content:space-between;align-items:end;gap:24px;padding:35px 0 25px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px}.intro h1{font:400 clamp(4rem,8vw,6.4rem)/.92 var(--serif);letter-spacing:-.07em;margin:0}.intro h1 span{font-style:italic}.intro h1 i{color:var(--copper);font-style:normal}.promise{font-size:1rem;margin:0 2px 4px;line-height:1.65;color:var(--muted)}.promise strong{color:var(--ink);font-weight:650}.toolbar{display:flex;justify-content:space-between;align-items:center;border-block:1px solid var(--rule);gap:16px;margin-bottom:28px}.mode-nav{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.toolbar a,.toolbar button{display:inline-flex;align-items:center;min-height:51px;font-size:.8rem;font-weight:700;text-decoration:none;border:0;border-radius:0;padding:8px 0}.toolbar [aria-current=page]{box-shadow:inset 0 -3px var(--ink)}.toolbar button:hover{background:transparent;color:var(--copper)}.toolbar>button{white-space:nowrap}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;align-items:start}.puzzle-card{background:var(--white);border:1px solid var(--rule);border-radius:8px;padding:28px 32px 24px;box-shadow:0 5px 0 #e7e1d4;min-height:470px}.puzzle-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:25px}.edition-label{font-size:.72rem;font-weight:800;letter-spacing:.045em;margin:0}.difficulty{font-size:.7rem;color:var(--teal);border:1px solid #bccdc0;border-radius:24px;padding:5px 9px;text-transform:capitalize}.row-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:24px}.row-nav button{padding:10px 5px;min-height:44px;border-color:var(--rule);font-size:.75rem;color:var(--muted)}.row-nav button[aria-current=step]{background:var(--ink);color:var(--white);border-color:var(--ink)}.row-nav button.solved:not([aria-current]){background:var(--light);border-color:#b8c9b9;color:var(--teal)}.clue-number{font-size:.65rem;letter-spacing:.14em;font-weight:800;color:var(--copper);margin:0 0 9px}.clue{font:400 clamp(1.5rem,3vw,2rem)/1.2 var(--serif);letter-spacing:-.025em;min-height:2.4em;margin:0 0 18px;max-width:24ch}.source-tiles{display:flex;gap:8px;margin-bottom:18px}.tile{width:54px;min-width:44px;height:58px;padding:0;background:#f1ecdf;border:1px solid #c9c1ac;border-bottom:3px solid #b7ac92;border-radius:5px;font:650 1.6rem var(--serif);position:relative;transition:background-color .12s,transform .12s}.tile[aria-pressed=true]{background:var(--ink);color:var(--white);border-color:var(--ink);transform:translateY(-3px)}.tile.kept{background:var(--teal);color:white;border-color:var(--teal)}.tile:disabled{opacity:1}.answer-label{display:block;font-size:.72rem;font-weight:700;margin-bottom:7px;color:var(--muted)}.answer-line{display:flex;gap:10px;align-items:stretch}.answer-line input{min-width:0;width:100%;height:55px;border:1px solid #8d9b93;border-radius:5px;background:white;color:var(--ink);font:650 1.7rem/1 var(--serif);letter-spacing:.3em;padding:9px 14px;text-transform:uppercase}.answer-line input[readonly]{background:var(--light);color:var(--teal);border-color:#b8c9b9}.primary,a.primary{background:var(--ink);color:var(--white);border:1px solid var(--ink)}.primary:hover,a.primary:hover{background:var(--teal);border-color:var(--teal)}.answer-line .primary{padding-inline:22px}.answer-tools{display:flex;justify-content:space-between;gap:8px;margin-top:8px}.answer-tools>div{display:flex;gap:4px}.answer-tools button{font-size:.75rem;border:none;padding:8px 10px;min-height:44px}.feedback{font-size:.85rem;line-height:1.5;margin:10px 0 0;min-height:1.5em}.feedback.error{color:#9e3626}.feedback.success{color:var(--teal)}.hint-note{font-size:.8rem;background:#f5ecd9;border-left:3px solid var(--copper);padding:10px 13px;margin:10px 0 0}.row-followup{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.row-followup p{font-size:.8rem;margin:0}.offcut-card{padding:27px 23px 22px;background:#e7eadd;border:1px solid #cbd1bd;border-radius:6px;position:relative}.offcut-card:before{content:'';height:16px;width:76px;background:#d5d3bf88;position:absolute;top:-9px;left:calc(50% - 38px);transform:rotate(-4deg)}.offcut-card h2{margin-bottom:10px}.aside-copy{font-size:.82rem;color:var(--muted);margin-bottom:22px}.offcut-strip{display:flex;gap:7px;justify-content:space-between}.cut{display:flex;align-items:center;justify-content:center;height:58px;min-width:0;flex:1;position:relative;background:#f5f4e9;border:1px dashed #9ba994;border-radius:3px;font:400 1.8rem var(--serif);color:#727f6b}.cut.earned{background:var(--teal);border:1px solid var(--teal);color:white;box-shadow:0 3px 0 #a5b59c}.cut small{position:absolute;bottom:-18px;left:50%;transform:translateX(-50%);font:500 10px system-ui;color:#526349}.cut-caption{font-size:.75rem;margin:30px 0 0;line-height:1.5}.paper-note{display:flex;align-items:center;gap:15px;margin-top:24px;padding-top:20px;border-top:1px solid #bdc8ae}.paper-note>span{font-size:38px;color:var(--teal);line-height:1}.paper-note p{font:italic 1.03rem/1.45 var(--serif);margin:0}.aside-small{font-size:.71rem;margin:22px 0 0;color:#526349}.under-game{display:flex;justify-content:space-between;align-items:start;gap:15px;margin:17px 0 35px}.under-game p{font-size:.7rem;color:var(--muted);margin:6px 0;max-width:60ch}.under-game button{font-size:.7rem;min-height:44px;border:0;padding:5px 0;white-space:nowrap;text-decoration:underline;text-underline-offset:.2em}.completion{margin-top:28px;border:1px solid #b8c9b9;background:#e7eadd;border-radius:6px;padding:28px 32px}.completion h2{font-size:2.5rem;margin-bottom:10px}.completion .reveal-word{font:400 clamp(3rem,8vw,4.8rem)/1 var(--serif);letter-spacing:.13em;color:var(--teal);margin:10px 0 15px}.completion p{font-size:.9rem;margin-bottom:14px}.completion-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 20px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:44px;border:1px solid var(--rule);border-radius:5px;padding:10px 16px;font-weight:650;font-size:.85rem}.completion .discovery{border-top:1px solid #bdc8ae;padding-top:20px;margin-top:16px;max-width:70ch}.discovery a{font-weight:700}.notice{background:#fbebd3;border-left:3px solid var(--copper);padding:14px 18px;font-size:.85rem;margin:0 0 22px}.about-strip{border-top:1px solid var(--rule);padding:30px 0 34px;display:grid;grid-template-columns:1fr 1.6fr;gap:50px}.about-strip h2{font-size:2rem;line-height:1.15}.about-strip p{font-size:.85rem;color:var(--muted);margin-bottom:12px}.about-strip a{font-size:.8rem;font-weight:700}footer{max-width:1240px;margin:auto;border-top:1px solid var(--rule);padding:24px 40px 35px;display:flex;gap:15px 35px;flex-wrap:wrap;justify-content:space-between;font-size:.72rem}footer p{margin:0}footer>p:last-child{width:100%;max-width:100ch;color:var(--muted);font-size:.68rem}dialog{border:1px solid var(--rule);border-radius:9px;background:var(--white);color:var(--ink);padding:32px;max-width:520px;width:calc(100% - 30px);max-height:85dvh;box-shadow:0 25px 80px #0004}dialog::backdrop{background:#142f3599}dialog p,dialog li{font-size:.9rem;line-height:1.65}dialog li{margin:0 0 10px}dialog ol{padding-left:20px}.dialog-close{position:absolute;top:8px;right:10px;border:0;font-size:22px;width:44px;height:44px}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px}.danger{color:#9e3626;border-color:#b96a58}.practice-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.practice-list a{padding:16px;border:1px solid var(--rule);border-radius:5px;text-decoration:none;font-size:.9rem}.practice-list a span{display:block;font-size:.72rem;color:var(--muted);margin-top:5px}.practice-list a:hover{background:var(--light)}#share-text{width:100%;font-size:.85rem;border:1px solid var(--rule);border-radius:5px;padding:12px;margin-bottom:12px;color:var(--ink);background:var(--paper);resize:vertical}
@media(max-width:850px){.masthead{padding:20px 24px}.wrap{padding:0 24px}.game-layout{grid-template-columns:minmax(0,1fr) 220px;gap:18px}.puzzle-card{padding:24px}.offcut-card{padding:25px 18px}.offcut-strip{gap:5px}.masthead nav{gap:15px}.mode-nav{gap:18px}.intro{padding-top:28px}.promise{font-size:.9rem}.paper-note{gap:10px}.paper-note>span{font-size:30px}}
@media(max-width:650px){.masthead{padding:16px 18px}.publication strong{font-size:15px}.publication span{font-size:8px}.masthead nav>a{display:none}.wrap{padding:0 16px}.intro{display:block;padding:27px 0 21px}.intro h1{font-size:4.8rem}.intro .eyebrow{font-size:9px;margin-bottom:14px}.promise{font-size:.85rem;margin:17px 0 0}.promise br{display:none}.promise strong{margin-left:4px}.toolbar{gap:8px;align-items:stretch;margin-bottom:20px;flex-wrap:wrap}.mode-nav{gap:19px;justify-content:space-between;width:100%}.toolbar a,.toolbar button{font-size:.72rem;min-height:46px}.toolbar>button{min-height:44px;padding-top:0;margin-top:-4px}.game-layout{grid-template-columns:1fr;gap:22px}.puzzle-card{padding:21px 20px;min-height:0}.puzzle-top{margin-bottom:18px}.row-nav{margin-bottom:22px}.clue{font-size:1.7rem;margin-bottom:18px;min-height:2.4em}.source-tiles{gap:8px}.tile{width:50px;height:54px}.answer-line input{font-size:1.6rem;letter-spacing:.27em}.answer-line .primary{padding-inline:16px}.offcut-card{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;padding:20px}.offcut-card .eyebrow{grid-column:1;margin-bottom:7px;font-size:8px}.offcut-card h2{grid-column:1;font-size:1.6rem;margin-bottom:5px}.aside-copy{grid-column:1;font-size:.72rem;margin:0}.offcut-strip{grid-column:2;grid-row:1/4;align-self:center}.cut{height:52px;font-size:1.5rem}.cut-caption{grid-column:1/-1;font-size:.7rem;margin:17px 0 0}.paper-note,.aside-small{display:none}.under-game{margin:15px 0 25px;gap:10px}.under-game p{font-size:.66rem}.under-game button{white-space:normal;min-width:80px;max-width:100px;font-size:.68rem}.completion{padding:23px 20px;margin-top:22px}.completion h2{font-size:2rem}.about-strip{grid-template-columns:1fr;gap:10px;padding:24px 0}.about-strip h2{font-size:1.7rem}.about-strip h2 br{display:initial}.about-strip p{font-size:.8rem}footer{padding:22px 18px;display:block}footer>p{margin-top:12px}dialog{padding:30px 22px}.practice-list{gap:8px}.practice-list a{padding:13px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(forced-colors:active){.tile[aria-pressed=true],.row-nav [aria-current=step],.cut.earned{border:3px solid Highlight}.primary{border:2px solid ButtonText}}

@media(max-width:360px){.source-tiles{gap:6px}.tile{width:44px;min-width:44px}.puzzle-card{padding-inline:18px}.mode-nav{gap:10px}.offcut-card{gap:0 12px;padding:18px}.cut{height:46px}}
