:root{color:var(--ink);background:var(--bg);font-synthesis:none;--buncss-light:initial;--buncss-dark: ;color-scheme:light dark;--ink:#24251f;--muted:#6c6d65;--faint:#929489;--bg:#fff;--surface:#fff;--surface-alt:#fafaf8;--line:#e1e2dc;--field-border:#cfcfc8;--tile:#efefe6;--tile-hover:#c8c9be;--selected:#5a594e;--on-selected:#fff;--on-ink:#fff;--ink-hover:#46473e;--dot-used:#eee;--dot-used-ring:#deded8;--disabled:#999a93;--focus:#4c65ae;--error:#87301b;--error-bg:#fff7f3;--error-border:#deb6a9;--live:#75924d;--shadow:#0002;--shadow-strong:#0003;--backdrop:#24251f66;--yellow:#f9df6d;--green:#a0c35a;--blue:#b0c4ef;--purple:#ba81c5;--on-color:#24251f;font-family:Lato,Arial,sans-serif}@media (prefers-color-scheme:dark){:root{--buncss-light: ;--buncss-dark:initial}:root:not([data-theme=light]){--ink:#ecece5;--muted:#a3a49b;--faint:#7d7e76;--bg:#171815;--surface:#1f201c;--surface-alt:#1c1d19;--line:#2f302b;--field-border:#3d3e38;--tile:#2a2b26;--tile-hover:#4a4b44;--selected:#e4e4dc;--on-selected:#171815;--on-ink:#171815;--ink-hover:#d4d4cc;--dot-used:#2a2b26;--dot-used-ring:#3d3e38;--disabled:#6b6c64;--focus:#8ea3e6;--error:#f0a08a;--error-bg:#2a1b16;--error-border:#5a3428;--live:#9fc26f;--shadow:#0006;--shadow-strong:#0009;--backdrop:#000000a6}}:root[data-theme=dark]{--ink:#ecece5;--muted:#a3a49b;--faint:#7d7e76;--bg:#171815;--surface:#1f201c;--surface-alt:#1c1d19;--line:#2f302b;--field-border:#3d3e38;--tile:#2a2b26;--tile-hover:#4a4b44;--selected:#e4e4dc;--on-selected:#171815;--on-ink:#171815;--ink-hover:#d4d4cc;--dot-used:#2a2b26;--dot-used-ring:#3d3e38;--disabled:#6b6c64;--focus:#8ea3e6;--error:#f0a08a;--error-bg:#2a1b16;--error-border:#5a3428;--live:#9fc26f;--shadow:#0006;--shadow-strong:#0009;--backdrop:#000000a6}:root[data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light}:root[data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit}button,a,summary{outline-offset:2px}:focus-visible{outline:2px solid var(--focus)}input:focus-visible{outline:none}textarea:focus-visible{outline:none}input,textarea{border:1px solid var(--field-border);color:var(--ink);background:var(--surface);border-radius:7px;width:100%;min-width:0;padding:13px 14px}input::placeholder,textarea::placeholder{color:var(--faint);opacity:1}input:focus,textarea:focus{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}textarea{resize:vertical;line-height:1.5}h1,h2,h3,p{margin:0}h1{letter-spacing:-1.7px;overflow-wrap:anywhere;font-size:clamp(32px,4vw,44px);font-weight:800;line-height:1.12}h2{letter-spacing:-.4px;font-size:19px;line-height:1.3}h3{font-size:15px}fieldset{border:0;min-width:0;margin:0;padding:0}.yellow{background-color:var(--yellow)}.green{background-color:var(--green)}.blue{background-color:var(--blue)}.purple{background-color:var(--purple)}.muted{color:var(--muted)}.small{font-size:12px}.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}.skip-link{position:fixed;background:var(--surface);z-index:20;clip-path:inset(100%);padding:12px;top:10px;left:15px}.skip-link:focus{clip-path:none}.site-header{border-bottom:1px solid var(--line)}.header-inner{display:flex;justify-content:space-between;align-items: center;gap:24px;max-width:1192px;margin:auto;padding:23px 32px}.brand{display:flex;text-decoration:none;align-items: center;gap:12px}.brand>span:nth-child(2){letter-spacing:-1.2px;font-size:27px;font-weight:900}.color-mark{display:inline-grid;grid-template-columns:repeat(2,9px);flex:none;gap:3px}.color-mark i{border-radius:2px;width:9px;height:9px}.brand-tag{border-left:1px solid var(--field-border);color:var(--muted);white-space:nowrap;margin-left:5px;padding-left:15px;font-size:12px}nav{display:flex;align-items: center;gap:25px}.theme-toggle{min-width:36px;min-height:36px}.nav-link{display:flex;text-decoration:none;white-space:nowrap;background:0 0;border:0;align-items: center;padding:8px 0;font-size:13px}.nav-link:hover{text-decoration:underline;text-underline-offset:4px}.nav-action{gap:14px;font-weight:700}.page-wide{max-width:1128px;margin:0 auto;padding:0 32px}.page-narrow{max-width:688px;margin:0 auto;padding:0 32px}.page-intro{display:flex;justify-content:space-between;align-items: end;gap:24px;padding:45px 0 35px}.eyebrow{text-transform:uppercase;letter-spacing:1.6px;margin-bottom:13px;font-size:10px;font-weight:700}.lead{color:var(--muted);margin-top:14px;font-size:15px;line-height:1.65}.draft-status{color:var(--muted);display:flex;white-space:nowrap;align-items: center;gap:6px;padding-bottom:4px;font-size:11px}.save-warning{color:var(--error)!important}.builder-grid{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);grid-template-areas:"metadata preview" "groups preview" "publish preview";align-items: start;column-gap:64px}.metadata{grid-area:metadata;display:grid;grid-template-columns:1.3fr 1fr;gap:16px;padding-bottom:30px}.field{display:flex;flex-direction:column;gap:9px}.field label,.published-card label{font-size:12px;font-weight:700}.field input{height:45px;font-size:13px}.groups{grid-area:groups}.section-heading{display:flex;justify-content:space-between;align-items: center;gap:12px}.difficulty-key{display:flex;flex-direction:column;flex-shrink:0;align-items: center;gap:6px}.difficulty-chits{display:flex;gap:4px}.difficulty-chits i{border-radius:2px;width:12px;height:8px}.section-description{color:var(--muted);margin:8px 0 20px;font-size:12px;line-height:1.6}.group-editor{position:relative;color:var(--on-color);border-radius:9px;margin-bottom:13px;padding:14px 16px 11px}.group-editor input,.group-editor textarea{color:#24251f;background:#fff;border-color:#cfcfc8}.group-editor input::placeholder,.group-editor textarea::placeholder{color:#85867d}.group-editor input:focus,.group-editor textarea:focus{border-color:#24251f;box-shadow:inset 0 0 0 1px #24251f}.group-yellow{background:var(--yellow)}.group-green{background:var(--green)}.group-blue{background:var(--blue)}.group-purple{background:var(--purple)}.group-heading{display:flex;justify-content:space-between;align-items: center;min-height:34px;margin-bottom:11px;padding-right:82px}.group-heading h3{display:flex;text-transform:capitalize;align-items: center;gap:7px}.group-move-actions{position:absolute;display:flex;top:2px;right:5px}.group-move-actions .icon-button:hover:not(:disabled){background:0 0}.group-move-actions .icon-button span{transition:transform .12s}.group-move-actions .icon-button:first-child:hover:not(:disabled) span{transform:translateY(-2px)}.group-move-actions .icon-button:last-child:hover:not(:disabled) span{transform:translateY(2px)}.group-move-actions .icon-button:disabled{opacity:.4;background:0 0}.color-dot{display:inline-block;border-radius:50%;flex-shrink:0;width:12px;height:12px}.connection-label{border-color:var(--line);margin-bottom:8px;padding:10px 11px;font-size:13px}.word-input{display:block;min-height:57px;padding:10px 11px;font-size:12px;font-weight:700}.word-input::placeholder{letter-spacing:.7px;font-weight:400}.group-footer{display:flex;color:var(--on-color);justify-content:flex-end;margin-top:8px;font-size:10px}.group-footer>span:last-child{display:flex;align-items: center;gap:3px}.count-complete{color:var(--on-color)}.count-error{color:#87301b}.preview-wrap{grid-area:preview;position:sticky;top:28px}.preview{border:1px solid var(--line);background:var(--surface-alt);border-radius:12px;padding:24px}.badge{display:inline-flex;color:var(--muted);border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:5px;align-items: center;gap:5px;padding:5px 7px;font-size:10px}.live-dot{background:var(--live);border-radius:50%;width:5px;height:5px}.preview-board{margin-top:22px}.board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tile{background:var(--tile);text-align:center;overflow-wrap:normal;user-select:none;border:0;border-radius:6px;min-width:0;height:80px;padding:8px 4px;transition:background-color .12s,transform .12s,box-shadow .12s;font-size:16px;font-weight:750;line-height:1.15}.tile-text{display:block;width:100%}.tile-word{white-space:nowrap}.tile:hover:not(:disabled){box-shadow:inset 0 0 0 2px var(--tile-hover)}.tile.selected{background:var(--selected);color:var(--on-selected)}.tile.swap-selected{box-shadow:inset 0 0 0 3px var(--ink);transform:translateY(-2px)}.tile.empty{color:var(--faint);letter-spacing:.3px;font-size:10px;font-weight:400}.tile.yellow,.tile.green,.tile.blue,.tile.purple{color:var(--on-color)}.tile.yellow{background-color:var(--yellow)}.tile.green{background-color:var(--green)}.tile.blue{background-color:var(--blue)}.tile.purple{background-color:var(--purple)}.tile.dragging{opacity:.2}.preview-board .tile.drag-overlay{display:flex;box-shadow:0 8px 24px var(--shadow-strong);cursor:grabbing;align-items: center;width:100%;height:100%}.preview-board .tile{cursor:grab;height:75px;font-size:12px}.preview-board .tile:active{cursor:grabbing}.preview-board .tile.empty{font-size:10px}.board-options{display:flex;justify-content:space-between;align-items: center;margin-top:15px}.check-label{color:var(--muted);display:flex;cursor:pointer;align-items: center;gap:6px;min-height:36px;font-size:11px}.check-label input{accent-color:var(--ink);width:14px;height:14px;margin:0}.text-button{display:inline-flex;text-decoration:none;background:0 0;border:0;justify-content:center;align-items: center;gap:7px;padding:10px 0;font-size:12px;font-weight:600}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.reorder-hint{display:flex;color:var(--muted);text-align:center;justify-content:center;align-items: center;gap:5px;margin:14px -8px 22px;font-size:10px;line-height:1.5}.reorder-hint svg{flex-shrink:0}.preview-note{border-top:1px solid var(--line);display:flex;align-items: center;gap:20px;padding-top:19px}.word-count{letter-spacing:-1px;font-size:29px;font-weight:700}.word-count span{color:var(--faint);font-size:14px;font-weight:400}.preview-note p{color:var(--muted);font-size:11px;line-height:1.7}.publish-section{grid-area:publish;padding:10px 0 0}.button{border:1px solid var(--ink);display:inline-flex;background:var(--surface);color:var(--ink);text-decoration:none;border-radius:28px;justify-content:center;align-items: center;gap:10px;min-height:44px;padding:12px 23px;font-size:13px;font-weight:600;line-height:1.2}.button:hover:not(:disabled){background:var(--tile)}.button.primary{background:var(--ink);color:var(--on-ink)}.button.primary:hover:not(:disabled){background:var(--ink-hover)}.button:disabled{color:var(--disabled);border-color:var(--field-border);background:var(--surface)}.publish-button{justify-content:space-between;width:100%;padding:16px 22px}.admin-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.admin-row .button{width:100%}.publish-section>p{color:var(--muted);text-align:center;margin-top:12px;font-size:10px;line-height:1.6}.error-box{border:1px solid var(--error-border);background:var(--error-bg);color:var(--error);border-radius:8px;margin-bottom:16px;padding:16px;font-size:13px;line-height:1.6}.error-box ul{margin:8px 0 0;padding-left:18px}.inline-error{color:var(--error);margin:12px 0;font-size:13px}.is-busy{opacity:.7}.site-footer{border-top:1px solid var(--line);display:flex;text-align:center;color:var(--muted);justify-content:center;gap:20px;max-width:1064px;margin:55px auto 0;padding:22px 0 28px;font-size:10px;line-height:1.6}.toast{position:fixed;opacity:0;background:var(--ink);color:var(--on-ink);box-shadow:0 5px 20px var(--shadow);z-index:50;pointer-events:none;text-align:center;border-radius:7px;width:max-content;max-width:calc(100vw - 32px);padding:13px 20px;transition:opacity .3s ease-in-out,transform .3s ease-in-out;font-size:14px;font-weight:600;top:90px;left:50%;transform:translate(-50%,-10px)}.toast.visible{opacity:1;transform:translate(-50%)}.dialog{border:1px solid var(--line);color:var(--ink);box-shadow:0 16px 80px var(--shadow);position:relative;overflow:hidden;border-radius:16px;width:460px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 40px);padding:0}.dialog[open]{display:flex;flex-direction:column}.dialog::backdrop{background:var(--backdrop)}.dialog-inner{overflow-y:auto;padding:36px 30px 30px}.dialog h2{letter-spacing:-.8px;margin-bottom:20px;padding-right:20px;font-size:28px}.dialog p{margin-bottom:18px;font-size:14px;line-height:1.6}.icon-button{display:grid;background:0 0;border:0;border-radius:50%;place-items: center;min-width:44px;min-height:44px}.icon-button:hover{background:var(--tile)}.dialog-close{position:absolute;z-index:1;background:var(--tile);box-shadow:0 0 0 4px var(--surface);top:10px;right:10px}.dialog-close:hover{background:var(--tile-hover)}.help-list{margin:12px 0 22px;padding-left:18px;font-size:14px;line-height:1.6}.help-list li{margin-bottom:10px}.difficulty-scale{display:flex;flex-wrap:wrap;gap:15px;margin:0 0 20px}.difficulty-scale span{display:inline-flex;text-transform:capitalize;align-items: center;gap:5px;font-size:12px}.player,.archive,.queue{padding-top:46px}.unpublished{margin-top:44px}.unpublished h2{margin-bottom:6px}.unpublished .muted{margin-bottom:14px;font-size:13px}.archive-list li{position:relative}.archive-unpublish{position:absolute;color:var(--error);font-size:11px;top:50%;right:44px;transform:translateY(-50%)}@media (hover:hover) and (pointer:fine){.archive-unpublish{opacity:0;pointer-events:none}.archive-list li:hover .archive-unpublish,.archive-list li:focus-within .archive-unpublish{opacity:1;pointer-events:auto}}.queue-list{list-style:none;border-top:1px solid var(--line);margin:0;padding:0}.queue-list li{border-bottom:1px solid var(--line);background:var(--bg)}.queue-item{display:grid;grid-template-columns:auto minmax(0,1fr)auto;text-align:left;align-items: center;gap:14px;padding:14px 4px}.queue-item .archive-meta{display:block}.queue-index{color:var(--muted);min-width:18px;font-size:12px;font-weight:700}.queue-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items: center;gap:6px}.queue-preview{padding:0 4px 14px}.queue-preview summary{cursor:pointer;width:max-content;padding:4px 0;font-size:12px;font-weight:600}.queue-preview-body{display:grid;gap:14px;margin-top:12px}.queue-preview .solved-row{min-height:0;padding:8px 12px;font-size:13px}.queue-preview .tile{cursor:default;display:flex;justify-content:center;align-items: center;height:56px;font-size:11px}.queue-actions .button{min-height:36px;padding:6px 14px;font-size:12px}.archive-list{list-style:none;border-top:1px solid var(--line);margin:0;padding:0}.archive-list li{border-bottom:1px solid var(--line)}.archive-list a{display:grid;grid-template-columns:1fr auto;text-decoration:none;text-align:left;align-items: center;column-gap:12px;padding:16px 4px}.archive-list a:hover .archive-title{text-decoration:underline;text-underline-offset:4px}.archive-list svg{grid-column:2;grid-row:1/span 3}.archive-title,.archive-meta{grid-column:1}.admin-meta{color:var(--focus)}.archive-title{overflow-wrap:anywhere;font-weight:700}.archive-meta{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.progress-mark{display:inline-flex;vertical-align:middle;align-items: center;gap:10px}.progress-mark .mistake-dots{gap:4px}.progress-mark i,.progress-mark .mistake-dots i{width:9px;height:9px}.progress-groups{display:inline-flex;gap:3px}.progress-groups i{display:inline-block;border-radius:2px}.progress-groups .unsolved{background:var(--dot-used);box-shadow:inset 0 0 0 1px var(--dot-used-ring)}.played-mark{display:inline-flex;color:var(--ink);align-items: center;gap:4px;font-weight:600}.played-mark svg{background:var(--green);color:var(--on-color);stroke-width:3;border-radius:50%;width:15px;height:15px;padding:2px}.nav-link[aria-current=page]{text-decoration:underline;text-underline-offset:4px}.puzzle-heading{text-align:center;margin-bottom:30px}.puzzle-heading h1{letter-spacing:-1px;font-size:34px}.puzzle-heading .eyebrow{overflow-wrap:anywhere}.puzzle-byline{display:flex;justify-content:space-between;align-items: center;gap:12px;margin-bottom:13px}.puzzle-byline .eyebrow{text-align:left;min-width:0;margin-bottom:0}.puzzle-byline .text-button{flex-shrink:0;min-height:44px}.puzzle-heading .lead{color:var(--ink);margin-top:22px;font-size:16px}.play-board{display:flex;overflow-anchor:none;flex-direction:column;gap:8px}.play-board .tile.selected{position:relative;z-index:1}.solved-row{color:var(--on-color);display:flex;text-align:center;overflow-wrap:anywhere;border-radius:6px;flex-direction:column;justify-content:center;align-items: center;gap:6px;min-height:80px;padding:12px 16px;font-size:15px;line-height:1.4}.solved-row strong{text-transform:uppercase;font-weight:750}.solved-row small{font-size:10px}.mistakes{display:flex;justify-content:center;align-items: center;gap:15px;margin:28px 0;font-size:14px}.mistake-dots{display:flex;gap:9px}.mistake-dots i{border-radius:50%;width:15px;height:15px;transition:background-color .2s}.mistake-dots .remaining{background:var(--selected)}.mistake-dots .used{background:var(--dot-used);box-shadow:inset 0 0 0 1px var(--dot-used-ring)}.play-controls{display:flex;justify-content:center;gap:9px}.play-controls .button{min-height:48px;padding:12px 24px}.progress-note{text-align:center;color:var(--muted);margin:23px 0 0;font-size:11px}.player-footer{border-top:1px solid var(--line);text-align:center;margin-top:45px;padding-top:26px}.player-footer p{margin:12px 0 2px;font-size:13px}.finished-state{text-align:center}.finished-state h2{font-size:24px}.finished-state p{color:var(--muted);margin:10px 0 22px;font-size:13px;line-height:1.5}.results-title{overflow-wrap:anywhere;font-weight:600}.results-title span{display:block;color:var(--muted);font-size:12px;font-weight:400}.emoji-results{letter-spacing:3px;text-align:center;margin:24px 0;font-size:30px;line-height:1.35}.results-summary{text-align:center;color:var(--muted)}.dialog:has(.emoji-results) .button-row{flex-wrap:wrap}.results-create{display:flex;margin-top:18px}.published{text-align:center;padding-top:60px}.published>.color-mark{grid-template-columns:repeat(2,18px);gap:5px;margin-bottom:25px}.published>.color-mark i{border-radius:4px;width:18px;height:18px}.published-card{text-align:center;border:1px solid var(--line);background:var(--surface-alt);border-radius:12px;margin:30px 0 20px;padding:28px}.published-card h2{overflow-wrap:anywhere;font-size:25px}.published-card p{color:var(--muted);overflow-wrap:anywhere;margin-top:7px;font-size:14px}.published-card label{display:block;text-align:left;margin:25px 0 9px}.published-card .button-row{justify-content:center}.published-card input{font-size:13px}.link-row{display:flex;gap:8px}.link-copy{white-space:nowrap;flex:none;padding:0 18px}.button-row{display:flex;flex-wrap:wrap;align-items: center;gap:12px;margin-top:20px}.centered{justify-content:center}.published>.muted{font-size:12px;line-height:1.6}.loading-state{text-align:center;min-height:55vh;padding-top:80px}.loading-state p{margin:22px 0;line-height:1.6}.loading-inline{text-align:center;color:var(--muted);padding:40px 0;font-size:14px}.loading-inline p{margin-top:14px}@media (min-width:1200px){.preview-board .tile{height:82px}}@media (max-width:1000px){.builder-grid{column-gap:28px}.preview{padding:20px}.brand-tag{display:none}.draft-status{white-space:normal;max-width:145px;line-height:1.6}.site-footer{margin-left:32px;margin-right:32px}}@media (max-width:760px){.header-inner{gap:12px;padding:18px 20px}.brand>span:nth-child(2){font-size:23px}.brand{gap:8px}nav{gap:16px}.nav-link{font-size:12px}.nav-action{gap:5px}.page-wide{max-width:560px;padding:0 20px}.page-intro{display:block;padding:32px 0 26px}.page-intro h1{font-size:36px}.lead{margin-top:10px;font-size:14px}.draft-status{max-width:none;margin-top:18px}.builder-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"metadata" "groups" "preview" "publish"}.metadata{padding-bottom:24px}.field input,.connection-label,.word-input{font-size:16px}.field input{padding:12px 10px}.preview-wrap{position:static;margin-bottom:28px}.preview{padding:18px}.preview-board{margin-top:18px}.preview-board .tile{height:69px;font-size:12px}.preview-note{display:none}.reorder-hint{margin-bottom:0}.board-options{margin-top:9px}.group-editor{padding:15px}.group-footer{font-size:11px}.word-input{min-height:69px}.group-heading h3{font-size:16px}.section-description{font-size:13px}.site-footer{flex-direction:column;align-items: center;gap:6px;margin:38px 20px 0}.player{padding-top:35px}.puzzle-heading h1{font-size:30px}.puzzle-heading .eyebrow{font-size:10px}.page-narrow{padding-left:20px;padding-right:20px}}@media (max-width:420px){.header-inner{flex-wrap:wrap;padding:16px}.brand>span:nth-child(2){font-size:23px}nav{border-top:1px solid var(--line);justify-content:space-between;width:100%;padding-top:9px}.nav-link{min-height:32px}.board,.play-board{gap:6px}.tile{height:74px;font-size:13px}.preview-board .tile{height:64px;font-size:11px}.preview-board .tile.empty{font-size:9px}.metadata{grid-template-columns:minmax(0,1fr);gap:15px}.play-controls{gap:7px}.play-controls .button{padding:12px 16px;font-size:12px}.play-controls .button svg{display:none}.solved-row{min-height:74px;font-size:13px}.dialog-inner{padding:32px 22px 24px}.published-card{padding:20px}.toast{top:125px}.queue-item{grid-template-columns:auto minmax(0,1fr);row-gap:10px}.queue-actions{grid-column:1/-1;justify-content:flex-start}.queue-preview .tile{height:48px;font-size:10px}.queue-preview .solved-row{font-size:12px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.group-move-actions .icon-button:hover span{transform:none!important}}
