:root{color:#e5e7eb;background:#0f172a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{border:0}input,select{width:100%;border:1px solid #334155;border-radius:.8rem;padding:.75rem .9rem;color:#e5e7eb;background:#111827}label{display:grid;gap:.4rem;color:#cbd5e1;font-size:.9rem;font-weight:700}h1,h2,h3,p{margin-top:0}h1{max-width:880px;margin-bottom:1.5rem;font-size:clamp(2.4rem,7vw,5rem);line-height:.96}h2{margin-bottom:.75rem;font-size:clamp(2rem,4vw,3.5rem);line-height:1}.hero-copy,.workspace-copy p,.status-line{color:#cbd5e1;font-size:1.05rem}.status{width:max-content;border-radius:999px;padding:.2rem .55rem;color:#0f172a;background:#cbd5e1;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.status.playable{background:#a7f3d0}.status.prototype{background:#fde68a}.status.planned{background:#c4b5fd}.tag-row,.puzzle-meta{display:flex;flex-wrap:wrap;gap:.6rem}.tag-row span,.puzzle-meta span{border-radius:999px;padding:.35rem .7rem;color:#cbd5e1;background:#1e293b}:root{scroll-behavior:smooth}.app-header{display:grid;width:min(100%,42rem);grid-template-columns:auto minmax(14rem,1fr) auto;gap:.7rem;align-items:center;margin:0 auto .7rem;border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}.app-brand,.app-nav a{display:inline-flex;align-items:center;text-decoration:none}.app-brand{gap:.45rem;min-width:max-content;border:0;padding:0;color:#f8fafc;background:transparent;cursor:pointer;font:inherit;font-weight:900;letter-spacing:.01em}.app-brand-mark{display:inline-grid;width:1.45rem;height:1.45rem;place-items:center;border:1px solid rgba(167,243,208,.6);border-radius:.45rem;color:#a7f3d0;background:#0f172ae0;font-size:.85rem;line-height:1}.app-header-controls,.app-header .catalog-panel{min-width:0;width:100%}.app-header .catalog-mobile-nav select{min-height:2.55rem}.app-nav{display:flex;gap:.65rem;justify-content:flex-end;white-space:nowrap}.app-nav a{border:0;border-radius:0;padding:0;color:#94a3b8;background:transparent;font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.app-nav a[aria-current=page]{color:#a7f3d0;background:transparent}.app-brand:hover,.app-brand:focus-visible,.app-nav a:hover,.app-nav a:focus-visible{color:#a7f3d0;box-shadow:none;outline:none}.app-nav a:hover,.app-nav a:focus-visible{color:#a7f3d0}@media(max-width:700px){.app-header{width:calc(100% - 1.3rem);grid-template-columns:1fr;gap:0}.app-brand,.app-nav{display:none}}.site-view{display:grid;width:min(1240px,calc(100vw - 2rem));margin:1rem auto;gap:1rem;border:1px solid rgba(148,163,184,.22);border-radius:1.5rem;padding:clamp(1.25rem,3vw,2rem);background:#0f172ac7;box-shadow:0 24px 80px #02061747}.site-kicker{margin:0;color:#a7f3d0;font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.site-view h2,.site-view h3,.site-view p{margin:0}.site-view h2{color:#f8fafc;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1}.site-view h3{color:#f8fafc;font-size:1.05rem}.site-view p{color:#cbd5e1}.view-copy{max-width:720px}.site-changelog article,.about-view article{display:grid;gap:.4rem;border-top:1px solid #1e293b;padding-top:1rem}.site-changelog time{color:#94a3b8;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}html{min-height:100%}body{min-height:100dvh;display:grid;grid-template-rows:minmax(0,1fr) auto}#app{min-width:0}.site-footer{display:grid;width:min(100%,42rem);grid-template-columns:minmax(0,1fr) auto;gap:.75rem 1rem;align-items:center;margin:auto auto 1rem;border:0;border-radius:0;padding:.4rem 0;background:transparent}.site-footer div,.site-footer nav{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.site-footer p{margin:0;color:#cbd5e1;font-size:.9rem}.site-footer nav{justify-content:flex-end}.site-footer a{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:999px;padding:.25rem .35rem;color:#94a3b8;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.site-footer a:hover,.site-footer a:focus-visible{border-color:#a7f3d047;color:#a7f3d0;box-shadow:0 0 0 3px #a7f3d029;outline:none}@media(max-width:720px){.site-footer{grid-template-columns:1fr}.site-footer nav{justify-content:flex-start}}.app-shell{width:min(1240px,calc(100vw - 2rem));margin:0 auto;padding:.75rem 0 1rem}.catalog-layout,.catalog-layout.catalog-collapsed{display:grid;width:min(100%,58rem);grid-template-columns:minmax(0,1fr)!important;gap:.75rem;margin:0 auto}.catalog-panel,.workspace-panel,.puzzle-start-panel{grid-column:1 / -1;width:100%}.catalog-panel{align-self:start;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.catalog-mobile-nav{display:grid;width:100%;margin:0 auto}.catalog-mobile-nav select{width:100%;min-height:3rem;border-color:#94a3b84d;border-radius:.95rem;padding-right:3rem;color:#f8fafc;background-color:#111827;background-image:linear-gradient(45deg,transparent 50%,#f8fafc 50%),linear-gradient(135deg,#f8fafc 50%,transparent 50%);background-position:calc(100% - 1.28rem) 50%,calc(100% - 1rem) 50%;background-repeat:no-repeat;background-size:.35rem .35rem;font-size:clamp(1rem,2.5vw,1.2rem);font-weight:900;appearance:none}.catalog-mobile-nav select:focus-visible{border-color:#a7f3d0;box-shadow:0 0 0 3px #a7f3d033;outline:none}.puzzle-start-panel{border:1px solid rgba(148,163,184,.22);border-radius:1.5rem;background:#0f172ac7;box-shadow:0 24px 80px #0206175c}.panel-heading,.catalog-mini-list,.catalog-sections{display:none}.catalog-grid,.catalog-section{display:grid}.catalog-grid{gap:.55rem}.catalog-section{gap:.8rem}.catalog-section+.catalog-section{border-top:1px solid rgba(30,41,59,.86);padding-top:.8rem}.catalog-card{position:relative;display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.1rem .65rem;align-items:center;width:100%;min-height:4.35rem;border:1px solid #334155;border-radius:1rem;padding:.75rem;color:#cbd5e1;background:#111827;cursor:pointer;text-align:left}.catalog-card:hover,.catalog-card:focus-visible,.catalog-card.selected{border-color:#a7f3d0;outline:none}.catalog-card .status{position:absolute;top:.65rem;right:.65rem}.catalog-card-icon{display:inline-grid;grid-row:span 2;width:2.2rem;height:2.2rem;place-items:center;border:1px solid rgba(167,243,208,.22);border-radius:.75rem;color:#a7f3d0;background:#a7f3d012;font-size:1.05rem;font-weight:900;line-height:1}.catalog-card strong{min-width:0;color:#f8fafc;font-size:1.1rem}.catalog-card>span:not(.status):not(.catalog-card-icon){min-width:0;overflow:hidden;color:#94a3b8;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.catalog-section-label,.start-section-label{margin:0;color:#94a3b8;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.start-layout{display:grid;min-height:auto;padding-block:clamp(1rem,3vw,2rem);place-items:center}.puzzle-start-panel{width:min(100%,58rem);padding:clamp(1.25rem,4vw,2.65rem)}.puzzle-start-panel .site-kicker{display:none}.puzzle-start-panel h1{max-width:none;margin-bottom:.85rem}.start-section{display:grid;gap:.75rem;margin-top:1.25rem}.start-section+.start-section{border-top:1px solid #1e293b;padding-top:1rem}.start-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.8rem}.start-card-grid.compact{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}.start-puzzle-card{position:relative;display:grid;gap:.45rem;min-height:7.25rem;border:1px solid #334155;border-radius:1.05rem;padding:.9rem;color:#cbd5e1;background:#111827;cursor:pointer;text-align:left}.start-puzzle-card-icon{display:inline-grid;width:2.4rem;height:2.4rem;place-items:center;border:1px solid rgba(167,243,208,.24);border-radius:.85rem;color:#a7f3d0;background:#a7f3d014;font-size:1.15rem;font-weight:900;line-height:1}.start-puzzle-card strong{color:#f8fafc;font-size:1.18rem}.start-puzzle-card .status{position:absolute;top:.9rem;right:.9rem}.start-puzzle-card:hover,.start-puzzle-card:focus-visible{border-color:#a7f3d0;box-shadow:0 0 0 3px #a7f3d038;outline:none;transform:translateY(-1px)}.coming-soon-list{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:1rem;color:#94a3b8;font-size:.78rem;font-weight:800}.coming-soon-list>span{letter-spacing:.08em;text-transform:uppercase}.coming-soon-list button{border:1px solid #334155;border-radius:999px;padding:.35rem .65rem;color:#94a3b8;background:#111827b8;font-size:.78rem;font-weight:800}.coming-soon-list button:disabled,.catalog-card:disabled{cursor:not-allowed;opacity:.62}@media(max-width:640px){.start-layout{place-items:stretch}.catalog-card>span:not(.status):not(.catalog-card-icon){white-space:normal}}.workspace-panel,.puzzle-workspace-layout,.workspace-layout-status,.workspace-layout-board,.workspace-layout-gameplay,.workspace-layout-generation,.puzzle-panel,.control-panel,.puzzle-settings-panel{min-width:0}.workspace-panel,.puzzle-workspace-layout,.workspace-layout-status,.workspace-layout-board,.workspace-layout-gameplay,.workspace-layout-generation{display:grid;gap:.75rem}.workspace-layout-gameplay,.workspace-layout-generation{justify-items:center}.gameplay-control-stack{display:grid;width:min(100%,42rem);gap:.65rem;justify-items:center}.workspace-copy{display:grid;gap:.65rem;margin-bottom:0;border:1px solid rgba(148,163,184,.18);border-radius:1.1rem;padding:clamp(.9rem,2vw,1.2rem);background:#1118278a}.workspace-copy>.status.playable{display:none}.workspace-copy h2,.workspace-copy p{margin-bottom:0}.workspace-copy p{max-width:58rem}.sudoku-workspace .workspace-copy,.nonogram-workspace .workspace-copy{min-height:auto}.control-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));gap:.7rem;align-items:end;border:1px solid rgba(148,163,184,.18);border-radius:.95rem;padding:.75rem;background:#11182766}.control-panel>label,.control-actions,.solitaire-settings,.solitaire-settings>label,.solitaire-proof-state,.solitaire-settings-actions,.solitaire-solvability-note{min-width:0}.control-panel>label,.puzzle-settings-panel>label{gap:.32rem;font-size:.84rem}.control-actions,.puzzle-actions,.puzzle-settings-actions,.solitaire-settings-actions,.tile-puzzle-tools,.word-guess-actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.seed-actions{margin-top:.45rem}.puzzle-actions{width:100%;justify-content:center}.puzzle-actions button,.tile-puzzle-tools button:first-child,.word-guess-actions button:first-child{min-height:2.55rem;min-width:7rem;border:1px solid rgba(125,211,252,.55);border-radius:999px;padding:.66rem .95rem;color:#082f49;background:linear-gradient(180deg,#bae6fd,#7dd3fc);box-shadow:inset 0 1px #ffffff61,0 10px 24px #02061733;cursor:pointer;font-weight:900}.control-panel button,.puzzle-settings-actions button,.solitaire-settings-actions button,.tile-puzzle-tools button:nth-child(n+2),.word-guess-actions button:nth-child(n+2),.seed-control button{min-height:2.55rem;min-width:7rem;border:1px solid rgba(96,165,250,.38);border-radius:999px;padding:.66rem .95rem;color:#dbeafe;background:linear-gradient(180deg,#365f8c,#254569);box-shadow:inset 0 1px #ffffff29,0 10px 24px #02061738;cursor:pointer;font-weight:900}.seed-control{display:grid;grid-template-columns:minmax(0,1fr) 2.85rem;gap:.45rem;align-items:stretch}.seed-control button{display:inline-grid;width:2.85rem;min-width:2.85rem;min-height:2.85rem;place-items:center;border-radius:.8rem;padding:0}.control-panel button:hover:not(:disabled),.puzzle-actions button:hover:not(:disabled),.puzzle-settings-actions button:hover:not(:disabled),.solitaire-settings-actions button:hover:not(:disabled),.tile-puzzle-tools button:hover:not(:disabled),.word-guess-actions button:hover:not(:disabled),.seed-control button:hover:not(:disabled),.control-panel button:focus-visible,.puzzle-actions button:focus-visible,.puzzle-settings-actions button:focus-visible,.solitaire-settings-actions button:focus-visible,.tile-puzzle-tools button:focus-visible,.word-guess-actions button:focus-visible,.seed-control button:focus-visible{box-shadow:inset 0 1px #ffffff47,0 0 0 3px #7dd3fc38,0 12px 28px #02061747;outline:none}.control-panel button:disabled,.puzzle-actions button:disabled,.puzzle-settings-actions button:disabled,.solitaire-settings-actions button:disabled,.tile-puzzle-tools button:disabled,.word-guess-actions button:disabled,.seed-control button:disabled{cursor:not-allowed;opacity:.62}.solitaire-control-panel{width:min(100%,42rem);justify-self:center;grid-template-columns:1fr;align-items:stretch}.solitaire-control-panel>label{order:2}.solitaire-settings{order:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;align-items:end}.solitaire-proof-state{display:grid;min-height:3.05rem;align-content:center;gap:.12rem;border:1px solid rgba(148,163,184,.18);border-radius:.9rem;padding:.55rem .7rem;background:#11182775}.solitaire-proof-state span{color:#cbd5e1;font-size:.78rem;font-weight:800}.solitaire-proof-state strong{color:#f8fafc}.solitaire-settings-actions{grid-column:1 / span 2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.solitaire-settings-actions button{width:100%;min-width:0}.solitaire-solvability-note{grid-column:3 / -1;margin:0;align-self:center;color:#cbd5e1;line-height:1.45}.puzzle-panel{display:grid;gap:.75rem;margin-top:0}.puzzle-meta{display:none}.puzzle-meta span,.tag-row span{min-height:1.85rem;display:inline-flex;align-items:center;line-height:1.1}.status-line{margin:0;border:1px solid rgba(148,163,184,.18);border-radius:1rem;padding:.75rem .9rem;background:#11182775}.puzzle-loading-panel{min-height:clamp(16rem,42vw,26rem);align-content:center;justify-items:center;gap:1.25rem}.puzzle-loading-copy{display:grid;gap:.25rem;text-align:center}.puzzle-loading-copy strong{color:#f8fafc;font-size:clamp(1.1rem,3vw,1.5rem)}.puzzle-loading-copy span{color:#cbd5e1}.puzzle-loading-grid{display:grid;width:min(100%,18rem);grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.puzzle-loading-grid span{min-height:3.8rem;border:1px solid rgba(148,163,184,.18);border-radius:.75rem;background:linear-gradient(90deg,#1e293b80,#47556994,#1e293b80);background-size:240% 100%}@media(max-width:700px){.app-shell{width:min(100vw - .75rem,1240px);padding:.75rem 0 1.4rem}.app-header{position:sticky;top:.5rem;z-index:12;display:grid;width:calc(100% - 1.3rem);grid-template-columns:1fr;gap:0;margin:0 auto .5rem;border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}.app-brand,.app-nav{display:none}.catalog-panel{border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}.catalog-mobile-nav{border:0;border-radius:0;padding:0;background:transparent}.catalog-mobile-nav select{min-height:3.05rem;border-color:#94a3b861;border-radius:.95rem;background-color:#111827;box-shadow:0 12px 28px #0206176b;font-size:clamp(1.05rem,5vw,1.28rem)}.site-footer{position:static;width:100%;grid-template-columns:1fr;margin:.55rem 0 0;border:0;border-radius:0;padding:0;background:transparent}.site-footer p{display:none}.site-footer nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;justify-content:stretch}.site-footer a{justify-content:center;min-height:2.75rem;border-color:#94a3b83d;padding:.5rem .45rem;font-size:.72rem}.catalog-layout,.catalog-layout.catalog-collapsed{grid-template-columns:minmax(0,1fr);gap:.5rem;margin-top:0}.workspace-copy{display:none}.workspace-panel{border:0;border-radius:0;padding:.2rem 0 0;background:transparent;box-shadow:none}.puzzle-workspace-layout,.workspace-layout-board,.workspace-layout-gameplay,.workspace-layout-generation{gap:.65rem}.puzzle-panel{border-radius:1.15rem;margin-top:.25rem;padding:.65rem;overflow:hidden}.puzzle-panel>.board-viewport,.puzzle-panel>.grid,.puzzle-panel>.nonogram-board,.puzzle-panel>.word-guess-game,.puzzle-panel>.cards-layout,.puzzle-panel>.tile-puzzle-preview,.puzzle-panel>.peg-solitaire-board{order:1}.puzzle-meta{display:none}.puzzle-actions,.notes-list{order:3}.puzzle-actions{box-sizing:border-box;width:100%;padding-inline:.65rem}.gameplay-control-stack{width:100%;gap:.5rem}.hero-panel{padding:1.25rem}.control-panel,.puzzle-settings-panel{border-radius:.95rem;padding:.65rem}.control-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.control-panel>label:first-child,.control-panel>.control-actions,.control-panel>.generation-actions{grid-column:1 / -1}.control-panel input,.puzzle-settings-panel input,.puzzle-settings-panel select{min-height:2.85rem;padding:.58rem .7rem;border-radius:.72rem}.control-actions,.generation-actions,.seed-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.seed-actions{grid-template-columns:1fr}.control-panel button,.puzzle-actions button,.puzzle-settings-actions button{width:100%;min-height:2.55rem;padding:.68rem .55rem;font-size:.9rem}.seed-control{grid-template-columns:minmax(0,1fr) 2.85rem}.status-line{margin:.65rem 0 0;font-size:.92rem}}@media(max-width:430px){.control-actions,.generation-actions,.seed-actions,.control-panel{grid-template-columns:1fr}}.board-viewport{display:grid;justify-items:center;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-color:#a7f3d0 #334155}.board-viewport::-webkit-scrollbar{height:.7rem}.board-viewport::-webkit-scrollbar-track{border-radius:999px;background:#334155}.board-viewport::-webkit-scrollbar-thumb{border:2px solid #334155;border-radius:999px;background:#a7f3d0}.board-viewport-inner{display:grid;justify-items:center;gap:.55rem;min-width:min-content}.grid{display:grid;gap:.35rem}.cell{display:grid;min-height:3rem;place-items:center;border:1px solid #334155;border-radius:.75rem;color:#cbd5e1;background:#111827;font-weight:800}input.cell-input{min-height:3rem;padding:0;text-align:center;text-transform:uppercase}.cell.interactive-cell{cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.cell.interactive-cell:hover,.cell.interactive-cell:focus-visible,.cell-input.interactive-cell:focus{border-color:#a7f3d0;box-shadow:0 0 0 3px #a7f3d047;outline:none;transform:translateY(-1px)}.cell:disabled,.cell-input:disabled{cursor:default;opacity:1}.cell.selected-grid-cell{border-color:#facc15;box-shadow:0 0 0 3px #facc1552;transform:translateY(-2px)}.cell.given{color:#0f172a;background:#a7f3d0}.cell.accent{color:#f8fafc;background:#7c3aed}.cell.answer{color:#0f172a;background:#facc15}.cell.hint{color:#0f172a;background:#93c5fd}.cell.disabled{border-color:transparent;color:transparent;background:transparent;box-shadow:none}.grid.word-guess .cell{min-height:4rem;font-size:1.3rem;text-transform:uppercase}.grid.peg-solitaire .cell{border-radius:999px}select{width:100%;border:1px solid #334155;border-radius:.8rem;padding:.75rem .9rem;color:#e5e7eb;background:#111827}.sudoku-workspace .workspace-copy,.nonogram-workspace .workspace-copy{grid-template-columns:auto 1fr;align-items:center}.sudoku-workspace .workspace-copy h2,.nonogram-workspace .workspace-copy h2{margin-bottom:0}.sudoku-validation-message{box-sizing:border-box;width:min(100%,42rem);border:1px solid #334155;border-radius:.9rem;margin:0;padding:.75rem .9rem;color:#dbeafe;background:#172554;font-weight:800}.sudoku-validation-message.success{border-color:#86efac;color:#052e16;background:linear-gradient(135deg,#bbf7d0,#dcfce7);box-shadow:0 12px 30px #22c55e29}.sudoku-validation-message.error{border-color:#fca5a5;color:#450a0a;background:#fecaca}.sudoku-validation-message.progress{border-color:#93c5fd;color:#172554;background:#bfdbfe}.sudoku-board-viewport .board-viewport-inner{width:var(--board-width);max-width:100%}.sudoku-variant-rule{width:var(--board-width);max-width:100%;box-sizing:border-box;border:1px solid rgba(148,163,184,.28);border-radius:.85rem;margin:.65rem 0 0;padding:.68rem .78rem;color:#cbd5e1;background:#0f172ac7;font-size:.86rem;font-weight:700;line-height:1.4}.grid.sudoku,.sudoku-board-viewport .grid.logic-grid{gap:0;width:var(--board-width);max-width:100%;overflow:hidden;border:2px solid #e5e7eb;border-radius:1rem;background:#475569;box-shadow:0 24px 80px #02061761}.grid.sudoku .cell,.sudoku-board-viewport .grid.logic-grid .cell{position:relative;display:grid;place-items:center;width:var(--board-cell-size);aspect-ratio:1;min-height:0;border:1px solid rgba(148,163,184,.42);border-radius:0;color:#dbeafe;background:#0f172a;font-size:clamp(1.05rem,5.25vw,2rem);font-weight:800}.grid.sudoku .sudoku-cell-value{line-height:1}.grid.sudoku.zero-killer-sudoku .cell.killer-cage-cell:before{content:"";position:absolute;inset:3px;z-index:0;border:1px dashed transparent;pointer-events:none}.grid.sudoku.zero-killer-sudoku .cell.killer-cage-top:before{border-top-color:#a7f3d0db}.grid.sudoku.zero-killer-sudoku .cell.killer-cage-right:before{border-right-color:#a7f3d0db}.grid.sudoku.zero-killer-sudoku .cell.killer-cage-bottom:before{border-bottom-color:#a7f3d0db}.grid.sudoku.zero-killer-sudoku .cell.killer-cage-left:before{border-left-color:#a7f3d0db}.grid.sudoku.zero-killer-sudoku .cell>*{position:relative;z-index:1}.grid.sudoku.zero-killer-sudoku .killer-cage-sum{position:absolute;top:.4rem;left:.4rem;min-width:1.25em;box-sizing:border-box;border-radius:.26rem;padding:.08em .22em .1em;color:#b9d8cf;background:#0f172acc;box-shadow:0 0 0 1px #a7f3d033;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:clamp(.58rem,1.85vw,.82rem);font-variant-numeric:tabular-nums;font-weight:900;letter-spacing:-.035em;line-height:1;text-align:center;pointer-events:none}.grid.sudoku .cell.interactive-cell,.sudoku-board-viewport .grid.logic-grid .cell.interactive-cell{transition:none}.grid.sudoku .cell.interactive-cell:hover,.grid.sudoku .cell.interactive-cell:focus-visible,.grid.sudoku .cell-input.interactive-cell:hover,.grid.sudoku .cell-input.interactive-cell:focus-visible,.sudoku-board-viewport .grid.logic-grid .cell.interactive-cell:hover,.sudoku-board-viewport .grid.logic-grid .cell.interactive-cell:focus-visible{transform:none}.grid.sudoku .cell.box-left{border-left-width:3px;border-left-color:#e5e7eb}.grid.sudoku .cell.box-top{border-top-width:3px;border-top-color:#e5e7eb}.grid.sudoku.diagonal-sudoku .cell.diagonal-cell{background:#14213d;box-shadow:inset 0 0 0 2px #93c5fd3d}.grid.sudoku.diagonal-sudoku .cell.diagonal-cell.given{background:#23314f}.grid.sudoku .cell.given,.sudoku-board-viewport .grid.logic-grid .cell.given{color:#f8fafc;background:#1e293b}.grid.sudoku .cell.answer,.grid.sudoku .cell.hint,.grid.sudoku .cell.conflict-cell,.grid.sudoku .cell.mistake-cell,.sudoku-board-viewport .grid.logic-grid .cell.answer,.sudoku-board-viewport .grid.logic-grid .cell.hint{color:#dbeafe;background:#0f172a}.grid.sudoku.diagonal-sudoku .cell.diagonal-cell.answer,.grid.sudoku.diagonal-sudoku .cell.diagonal-cell.hint,.grid.sudoku.diagonal-sudoku .cell.diagonal-cell.conflict-cell,.grid.sudoku.diagonal-sudoku .cell.diagonal-cell.mistake-cell{background:#14213d}.grid.sudoku .cell.peer-cell{background:#172554}.grid.sudoku.diagonal-sudoku .cell.diagonal-cell.peer-cell{background:#1e3a5f}.grid.sudoku .cell.same-value-cell,.sudoku-board-viewport .grid.logic-grid .cell.same-value-cell{color:#f8fafc;background:#31527a;box-shadow:inset 0 0 0 2px #93c5fd80}.grid.sudoku.zero-killer-sudoku .cell.same-value-cell .killer-cage-sum,.grid.sudoku.zero-killer-sudoku .cell.selected-grid-cell .killer-cage-sum{color:#b9d8cf;background:#0f172acc;box-shadow:0 0 0 1px #a7f3d033}.grid.sudoku .cell.correct-cell{color:#052e16;background:#bbf7d0}.grid.sudoku .cell.incorrect-cell{color:#450a0a;background:#fecaca;box-shadow:inset 0 0 0 3px #ef444461}.grid.sudoku .cell.selected-grid-cell,.grid.sudoku .cell-input.interactive-cell:focus,.sudoku-board-viewport .grid.logic-grid .cell.selected-grid-cell{z-index:1;border-color:#facc15;box-shadow:inset 0 0 0 3px #facc15,0 0 0 3px #facc154d;outline:none;transform:none}.grid.sudoku .cell.incorrect-cell.selected-grid-cell,.grid.sudoku .cell-input.incorrect-cell:focus{box-shadow:inset 0 0 0 3px #ef4444,0 0 0 3px #ef44444d}.sudoku-digit-pad{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.38rem;width:var(--board-width);max-width:100%;margin:0 0 .8rem}.sudoku-digit-pad button{min-width:0;border:1px solid #334155;border-radius:.7rem;padding:.72rem .2rem;color:#0f172a;background:#e5e7eb;cursor:pointer;font-weight:900}.sudoku-digit-pad .sudoku-erase-button{border-color:#475569;color:#cbd5e1;background:#111827;font-size:.76rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.sudoku-digit-pad button:hover:not(:disabled),.sudoku-digit-pad button:focus-visible,.sudoku-digit-pad button.selected-sudoku-digit{border-color:#a7f3d0;box-shadow:0 0 0 3px #a7f3d038;outline:none}.sudoku-digit-pad .sudoku-erase-button:hover:not(:disabled),.sudoku-digit-pad .sudoku-erase-button:focus-visible{color:#f8fafc;background:#1e293b}.sudoku-digit-pad button.selected-sudoku-digit{color:#052e16;background:#a7f3d0}.sudoku-digit-pad button:disabled{cursor:not-allowed;opacity:.38}.sudoku-settings-panel{display:grid;width:min(100%,42rem);grid-template-columns:1fr;gap:.75rem;align-items:stretch}.sudoku-settings-panel .generation-actions,.sudoku-settings-panel .seed-actions,.sudoku-settings-panel .check-actions{display:grid;grid-template-columns:1fr}.sudoku-settings-panel button{width:100%}.futoshiki-workspace .workspace-copy{grid-template-columns:auto 1fr;align-items:center}.futoshiki-workspace .workspace-copy h2{margin-bottom:0}.futoshiki-workspace .puzzle-settings-panel{display:grid;width:min(100%,42rem);grid-template-columns:1fr;gap:.75rem;align-items:stretch}.futoshiki-workspace .puzzle-settings-panel .generation-actions,.futoshiki-workspace .puzzle-settings-panel .seed-actions{display:grid;grid-template-columns:1fr}.futoshiki-workspace .puzzle-settings-panel button{width:100%}.futoshiki-board{display:grid;grid-template-columns:repeat(var(--board-column-gap-count),minmax(0,1fr) minmax(1rem,.36fr)) minmax(0,1fr);grid-template-rows:repeat(var(--board-row-gap-count),minmax(0,1fr) minmax(1rem,.36fr)) minmax(0,1fr);width:var(--board-width);max-width:100%;aspect-ratio:1;overflow:hidden;border:2px solid #e5e7eb;border-radius:.65rem;background:#0b1220;box-shadow:0 24px 80px #02061761}.futoshiki-board .cell{position:relative;width:100%;height:100%;min-width:0;min-height:0;border:1px solid rgba(148,163,184,.58);border-radius:.22rem;color:#dbeafe;background:#0f172a;font-size:clamp(1.05rem,5.25vw,2rem);font-weight:800;transition:none}.futoshiki-board .cell.given{color:#f8fafc;background:#1e293b}.futoshiki-board .cell.answer,.futoshiki-board .cell.hint{color:#dbeafe;background:#0f172a}.futoshiki-board .cell.interactive-cell:hover,.futoshiki-board .cell.interactive-cell:focus-visible{transform:none}.futoshiki-board .cell.peer-cell{background:#172554}.futoshiki-board .cell.same-value-cell{color:#0f172a;background:#bfdbfe;box-shadow:inset 0 0 0 2px #bfdbfeb8}.futoshiki-board .cell.correct-cell{color:#052e16;background:#bbf7d0}.futoshiki-board .cell.incorrect-cell{color:#450a0a;background:#fecaca;box-shadow:inset 0 0 0 3px #ef444461}.futoshiki-board .cell.selected-grid-cell{z-index:1;border-color:#facc15;box-shadow:inset 0 0 0 3px #facc15,0 0 0 3px #facc154d;outline:none;transform:none}.futoshiki-board .cell.incorrect-cell.selected-grid-cell{box-shadow:inset 0 0 0 3px #ef4444,0 0 0 3px #ef44444d}.futoshiki-inequality,.futoshiki-spacer{display:grid;width:100%;height:100%;place-items:center;pointer-events:none}.futoshiki-inequality svg{width:min(68%,1.35rem);height:min(68%,1.35rem);overflow:visible;fill:none;stroke:#cbd5e1;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.futoshiki-inequality.down svg{transform:rotate(90deg)}.futoshiki-inequality.left svg{transform:rotate(180deg)}.futoshiki-inequality.up svg{transform:rotate(270deg)}@media(max-width:540px){.futoshiki-board{grid-template-columns:repeat(var(--board-column-gap-count),minmax(0,1fr) minmax(.72rem,.3fr)) minmax(0,1fr);grid-template-rows:repeat(var(--board-row-gap-count),minmax(0,1fr) minmax(.72rem,.3fr)) minmax(0,1fr);border-radius:.45rem}.futoshiki-board .cell{border-radius:.14rem}}.nonogram-board{display:grid;grid-template-areas:"corner columns" "rows puzzle";grid-template-columns:var(--nonogram-row-clue-width) var(--board-grid-width);grid-template-rows:var(--nonogram-column-clue-height) var(--board-grid-height);gap:0;align-items:stretch;width:var(--board-width);max-width:none;min-height:var(--board-height);border:2px solid #e5e7eb;border-radius:1rem;padding:8px;background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 24px 80px #02061752}.nonogram-corner{display:grid;min-width:0;place-items:end center;grid-area:corner;border:1px solid #94a3b8;border-right-width:2px;border-bottom-width:2px;border-radius:0;padding:.45rem;color:#1e293b;background:#e2e8f0;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.58rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.nonogram-column-clues{display:grid;grid-area:columns;gap:0;align-items:stretch;width:var(--board-grid-width);background:#94a3b8}.nonogram-row-clues{display:grid;grid-area:rows;gap:0;width:var(--nonogram-row-clue-width);height:var(--board-grid-height);background:#94a3b8}.nonogram-clue{display:flex;align-items:center;justify-content:center;gap:.16rem;min-width:0;min-height:var(--board-cell-size);border:1px solid #94a3b8;border-radius:0;color:#0f172a;background:#f8fafc;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(.62rem,calc(var(--board-cell-size) * .32),.84rem);font-weight:800;line-height:1}.nonogram-clue span{display:inline-grid;min-width:1em;place-items:center}.nonogram-column-clue{flex-direction:column;justify-content:flex-end;width:var(--board-cell-size);min-height:var(--nonogram-column-clue-height);border-bottom-width:2px;padding:.4rem .18rem}.nonogram-row-clue{justify-content:flex-end;width:var(--nonogram-row-clue-width);min-height:var(--board-cell-size);border-right-width:2px;padding:.3rem .45rem}.nonogram-board .grid.nonogram{grid-area:puzzle;gap:0;width:var(--board-grid-width);min-width:0;overflow:hidden;border:1px solid #94a3b8;border-radius:0;background:#94a3b8}.nonogram-board .grid.nonogram .cell{width:var(--board-cell-size);min-width:var(--board-cell-size);min-height:var(--board-cell-size);border:1px solid #94a3b8;border-radius:0;color:#0f172a;background:#f8fafc;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(.85rem,calc(var(--board-cell-size) * .42),1.2rem);font-weight:900}.nonogram-board .grid.nonogram .cell.interactive-cell:hover,.nonogram-board .grid.nonogram .cell.interactive-cell:focus-visible{border-color:#0f172a;box-shadow:inset 0 0 0 2px #0f172a;outline:none;transform:none}.nonogram-board .grid.nonogram .cell.accent{color:#f8fafc;background:#0f172a;box-shadow:inset 0 0 0 1px #f8fafc1f}.nonogram-board .grid.nonogram .cell.hint{color:#450a0a;background:#fecaca}.nonogram-workspace .puzzle-panel{align-items:center}.nonogram-settings-panel{width:min(100%,42rem);grid-template-columns:1fr;gap:.75rem;justify-self:center}.nonogram-settings-panel .check-actions,.nonogram-settings-panel .generation-actions,.nonogram-settings-panel .seed-actions{display:grid;grid-template-columns:1fr}.nonogram-settings-panel .check-actions button,.nonogram-settings-panel .generation-actions button,.nonogram-settings-panel .seed-actions button{width:100%;min-width:0}.nonogram-settings-panel>label,.nonogram-settings-panel .puzzle-size-control,.nonogram-settings-panel .puzzle-generation-options,.nonogram-settings-panel .puzzle-settings-actions{min-width:0}.puzzle-size-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .55rem;align-items:end}.puzzle-size-control .control-label{grid-column:1 / -1;color:#cbd5e1;font-size:.9rem;font-weight:700}.compact-number-control{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.35rem;align-items:center}.compact-number-control span,.size-separator{color:#94a3b8;font-size:.8rem;font-weight:900}.compact-number-control input{min-width:0}.size-separator{align-self:center;padding-bottom:.8rem}.puzzle-checkbox-control{display:flex;gap:.45rem;align-items:center;min-width:max-content;padding-bottom:0}.puzzle-checkbox-control input{width:1rem;height:1rem}.word-guess-game{display:grid;gap:.9rem}.word-guess-status{display:grid;gap:.2rem;justify-items:center;color:#cbd5e1;text-align:center}.word-guess-status strong{color:#f8fafc}.word-guess-status span{max-width:34rem;color:#94a3b8;font-size:.85rem}.word-guess-board-shell{position:relative;width:fit-content;max-width:100%;margin:0 auto}.word-guess-board{display:grid;gap:.45rem;justify-items:center}.word-guess-row{display:grid;grid-auto-flow:column;gap:.35rem}.word-guess-row.active .word-guess-tile.pending{border-color:#a7f3d0}.word-guess-tile{display:grid;width:clamp(2rem,7vw,3.5rem);min-height:clamp(2.25rem,8vw,3.75rem);place-items:center;border:1px solid #334155;border-radius:.7rem;color:#f8fafc;background:#111827;font-size:clamp(1rem,3vw,1.45rem);font-weight:900;text-transform:uppercase}.word-guess-tile.correct{color:#0f172a;background:#a7f3d0}.word-guess-tile.present{color:#0f172a;background:#facc15}.word-guess-tile.absent{color:#e5e7eb;background:#334155}.word-guess-keyboard{box-sizing:border-box;display:grid;gap:.45rem;justify-items:center;width:min(100%,42rem);margin:.15rem auto 0;padding:0 .2rem}.word-guess-keyboard-row{display:flex;width:100%;gap:clamp(.18rem,1.1vw,.35rem);justify-content:center}.word-guess-key{flex:1 1 0;min-width:0;max-width:2.75rem;min-height:2.8rem;border:1px solid #334155;border-radius:.65rem;padding:.45rem .2rem;color:#e5e7eb;background:#1e293b;cursor:pointer;font-size:.9rem;font-weight:900}.word-guess-key.wide{flex-grow:1.55;max-width:5.5rem;font-size:.78rem;text-transform:uppercase}.word-guess-key.correct{border-color:#a7f3d0;color:#0f172a;background:#a7f3d0}.word-guess-key.present{border-color:#facc15;color:#0f172a;background:#facc15}.word-guess-key.absent{border-color:#334155;color:#e5e7eb;background:#334155}.word-guess-key:hover:not(:disabled),.word-guess-key:focus-visible{border-color:#a7f3d0;box-shadow:0 0 0 3px #a7f3d047;outline:none}.word-guess-key:disabled{cursor:not-allowed;opacity:.68}.word-guess-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.word-guess-actions button{border-radius:.65rem;padding:.65rem .85rem;color:#e5e7eb;background:#334155;cursor:pointer;font-weight:900}.word-guess-actions button:first-child{color:#0f172a;background:#a7f3d0}.word-guess-actions button:disabled{cursor:not-allowed;opacity:.65}.word-guess-actions button:hover:not(:disabled),.word-guess-actions button:focus-visible,.word-guess-solver-details summary:hover,.word-guess-solver-details summary:focus-visible{box-shadow:0 0 0 3px #a7f3d047;outline:none}.word-guess-solver-details{display:grid;gap:.75rem;max-width:46rem;margin:0 auto;padding:.75rem .9rem;border:1px solid #1e293b;border-radius:1rem;color:#cbd5e1;background:#0f172a6b}.word-guess-solver-details summary{width:fit-content;border-radius:999px;padding:.35rem .65rem;color:#bfdbfe;cursor:pointer;font-size:.85rem;font-weight:800}.word-guess-solver-details[open] summary{margin-bottom:.75rem}.word-guess-analysis-header{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.word-guess-analysis-header div{display:grid;gap:.1rem;padding:.7rem;border-radius:.8rem;background:#111827}.word-guess-analysis-header strong{color:#f8fafc;font-size:1.05rem}.word-guess-analysis-header span,.word-guess-analysis-note,.word-guess-hard-mode span,.word-guess-candidate-steps span{color:#94a3b8;font-size:.85rem}.word-guess-hard-mode{display:flex;gap:.55rem;align-items:center;margin-top:.75rem}.word-guess-hard-mode input{width:1rem;height:1rem}.word-guess-candidate-steps{display:grid;gap:.35rem;margin:.75rem 0 0;padding:0;list-style:none}.word-guess-candidate-steps li{display:grid;grid-template-columns:1fr auto auto;gap:.7rem;align-items:center;padding:.55rem .65rem;border-radius:.75rem;background:#111827}.word-guess-candidate-steps strong{color:#f8fafc;letter-spacing:.08em}.word-guess-analysis-note{margin:.75rem 0 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:701px){.word-guess-keyboard{display:none}}@media(max-width:620px){.word-guess-analysis-header,.word-guess-candidate-steps li{grid-template-columns:1fr}}.tile-puzzle-preview{display:grid;gap:1rem;justify-items:center}.tile-puzzle-summary,.tile-puzzle-tools{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.tile-puzzle-summary span{border:1px solid rgba(167,243,208,.22);border-radius:999px;padding:.35rem .65rem;color:#d1fae5;background:#064e3b47;font-size:.78rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.tile-puzzle-tools button{border-radius:999px;padding:.6rem 1rem;color:#0f172a;background:#a7f3d0;cursor:pointer;font-weight:800}.tile-puzzle-tools button:nth-child(2){color:#e5e7eb;background:#334155}.tile-puzzle-tools button[aria-pressed=true]{color:#172554;background:#bfdbfe}.tile-puzzle-art-preview{width:min(100%,24rem);aspect-ratio:1;border:1px solid rgba(248,250,252,.28);border-radius:1rem;background-position:center;background-repeat:no-repeat;background-size:cover;box-shadow:0 18px 50px #02061752}.jigsaw-puzzle-panel{overflow:visible}.jigsaw-image-library{display:grid;width:min(100%,62rem);gap:.65rem;justify-self:center}.jigsaw-image-library-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;color:#e2e8f0}.jigsaw-image-library-heading strong{font-size:.9rem}.jigsaw-image-library-heading span{color:#94a3b8;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.jigsaw-image-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,11rem));justify-content:center;gap:.7rem}.jigsaw-image-option{display:grid;gap:.4rem;margin:0;padding:.4rem;border:1px solid rgba(148,163,184,.28);border-radius:.75rem;color:#cbd5e1;background:#0f172ab8;cursor:pointer;text-align:left}.jigsaw-image-option:hover,.jigsaw-image-option:focus-visible{border-color:#7dd3fcb8}.jigsaw-image-option[aria-pressed=true]{border-color:#a7f3d0b8;box-shadow:inset 0 0 0 1px #a7f3d033;color:#d1fae5}.jigsaw-image-option:disabled{cursor:wait;opacity:.7}.jigsaw-image-option img{display:block;width:100%;aspect-ratio:4 / 3;border-radius:.5rem;object-fit:cover}.jigsaw-image-option span{padding:0 .15rem .1rem;font-size:.8rem;font-weight:800;line-height:1.25}.jigsaw-image-credit{margin:0;color:#94a3b8;font-size:.72rem;text-align:center}.jigsaw-image-credit a{color:#bae6fd}.jigsaw-freeform-stage{position:relative;isolation:isolate;width:min(100%,62rem);min-height:32rem;border:1px solid rgba(148,163,184,.2);border-radius:1.15rem;background:radial-gradient(circle at 50% 42%,rgba(30,64,175,.12),transparent 44%),linear-gradient(180deg,#0f172ab8,#080f1ed1);box-shadow:inset 0 1px #ffffff06,0 18px 42px #02061733;overflow:visible;transition:height .18s ease}.jigsaw-freeform-stage.tray{background:linear-gradient(180deg,rgba(30,64,175,.08),transparent 48%),linear-gradient(180deg,#0f172abd,#080f1edb)}.jigsaw-assembly-board{position:absolute;z-index:2;display:grid;place-items:center;border:1px solid rgba(148,163,184,.42);border-radius:.8rem;background:linear-gradient(135deg,#1e293b7a,#0f172ab8);box-shadow:inset 0 0 0 1px #ffffff06,inset 0 18px 38px #02061747,0 14px 34px #02061738;pointer-events:none}.jigsaw-assembly-board:after{content:"";position:absolute;inset:.55rem;border:1px dashed rgba(148,163,184,.16);border-radius:.5rem}.jigsaw-assembly-board span{color:#cbd5e16b;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.jigsaw-freeform-stage.solved .jigsaw-assembly-board span{opacity:0}.jigsaw-freeform-stage.solved .jigsaw-assembly-board{border-color:#a7f3d08c;box-shadow:inset 0 0 0 1px #a7f3d014,0 14px 34px #02061738}.tile-puzzle-piece{position:absolute;left:0;top:0;display:block;margin:0;padding:0;border:0;border-radius:0;appearance:none;background:transparent;color:#f8fafc;cursor:grab;overflow:visible;pointer-events:none;touch-action:none;user-select:none;-webkit-user-select:none;will-change:transform}.tile-puzzle-piece.loose:hover,.tile-puzzle-piece.loose:focus-visible{filter:brightness(1.05)}.tile-puzzle-piece:focus-visible{outline:3px solid rgba(125,211,252,.72);outline-offset:4px}.tile-puzzle-piece.dragging{cursor:grabbing;filter:brightness(1.08)}.tile-puzzle-piece.placed,.tile-puzzle-piece:disabled{cursor:default;opacity:1}.tile-puzzle-piece-visual{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;overflow:visible;pointer-events:none;filter:drop-shadow(0 8px 10px rgba(2,6,23,.38));transition:filter .12s ease}.tile-puzzle-piece.dragging .tile-puzzle-piece-visual{filter:drop-shadow(0 14px 16px rgba(2,6,23,.52))}.tile-puzzle-piece.placed .tile-puzzle-piece-visual{filter:drop-shadow(0 3px 4px rgba(2,6,23,.28))}.tile-puzzle-piece-image{pointer-events:none}.tile-puzzle-piece-hit-target{stroke:none;pointer-events:fill;cursor:grab}.tile-puzzle-piece.dragging .tile-puzzle-piece-hit-target{cursor:grabbing}.tile-puzzle-piece.placed .tile-puzzle-piece-hit-target{pointer-events:none;cursor:default}.tile-puzzle-piece-outline{fill:none;stroke:#f8fafc80;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:stroke .14s ease,stroke-width .14s ease}.tile-puzzle-piece.loose:hover .tile-puzzle-piece-outline,.tile-puzzle-piece.loose:focus-visible .tile-puzzle-piece-outline,.tile-puzzle-piece.dragging .tile-puzzle-piece-outline{stroke:#7dd3fcf5;stroke-width:1.75}.tile-puzzle-piece.placed .tile-puzzle-piece-outline{stroke:#a7f3d0b8;stroke-width:1.1}.tile-puzzle-edge-seam{fill:none;stroke:#f8fafcb8;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 1px rgba(2,6,23,.9))}.tile-puzzle-edge-seam.boundary{stroke:#f8fafc5c}.tile-puzzle-piece.placed .tile-puzzle-edge-seam.interior{stroke:#a7f3d0d1}@media(max-width:700px){.jigsaw-workspace .puzzle-panel,.jigsaw-puzzle-panel{overflow:visible}.jigsaw-freeform-stage{width:100%;min-height:0;border-radius:.95rem}.jigsaw-image-library-grid{display:flex;justify-content:flex-start;overflow-x:auto;padding-bottom:.25rem;scroll-snap-type:x proximity}.jigsaw-image-option{flex:0 0 9rem;scroll-snap-align:start}.jigsaw-assembly-board{border-radius:.65rem}.jigsaw-assembly-board span{font-size:.68rem}.tile-puzzle-tools{width:100%}.tile-puzzle-tools button{flex:1 1 8rem}}@media(prefers-reduced-motion:reduce){.jigsaw-freeform-stage,.tile-puzzle-piece-visual,.tile-puzzle-piece-outline{transition:none}}.cards-layout{display:grid;gap:.65rem}.card-row{display:grid;gap:.6rem}.stock-row{grid-template-columns:repeat(2,minmax(6rem,1fr));max-width:15rem}.foundation-row{grid-template-columns:repeat(4,minmax(4.4rem,1fr))}.tableau-row{grid-template-columns:repeat(7,minmax(4.1rem,1fr));align-items:start}.card-stack{display:grid;min-width:0}.card-stack-heading{display:none}.playing-card-list{display:grid;gap:.28rem}.playing-card{position:relative;display:grid;aspect-ratio:.72;min-height:4.75rem;place-items:center;overflow:hidden;border:1px solid #cbd5e1;border-radius:.55rem;color:#0f172a;background:#f8fafc;cursor:pointer;font-size:clamp(.85rem,1.6vw,1.12rem);font-weight:900;box-shadow:0 10px 24px #02061747;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.playing-card:hover:not(:disabled),.playing-card:focus-visible{border-color:#a7f3d0;box-shadow:0 0 0 3px #a7f3d04d,0 10px 24px #02061747;outline:none;transform:translateY(-2px)}.playing-card:disabled{cursor:default;opacity:1}.playing-card.red{color:#b91c1c}.playing-card.black{color:#111827}.playing-card.back{border-color:#60a5fa;background:linear-gradient(135deg,#60a5fae0,#3b82f6a8),repeating-linear-gradient(45deg,rgba(15,23,42,.2) 0 4px,transparent 4px 8px)}.playing-card.placeholder{border-style:dashed;color:#64748b;background:#0f172a94;box-shadow:none}.playing-card.drop-target,.valid-target-card{border-color:#a7f3d0;color:#a7f3d0;cursor:pointer;box-shadow:inset 0 0 0 2px #a7f3d047,0 0 0 2px #a7f3d029}.invalid-target-card{border-color:#f87171b8;box-shadow:inset 0 0 0 2px #f871712e}.valid-target .playing-card-list{filter:drop-shadow(0 0 .35rem rgba(167,243,208,.22))}.invalid-target .playing-card-list{filter:drop-shadow(0 0 .28rem rgba(248,113,113,.16))}.selected-card{border-color:#facc15;box-shadow:0 0 0 3px #facc1559,0 10px 24px #02061747;transform:translateY(-4px)}.solitaire-action-row{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-start;margin:0}.solitaire-action-row button{min-width:2.45rem;min-height:2.05rem;border-radius:999px;padding:.35rem .62rem;color:#0f172a;background:#a7f3d0;cursor:pointer;font-size:.92rem;font-weight:900}.solitaire-action-row button:nth-child(2){color:#e5e7eb;background:#334155}.solitaire-action-row button:nth-child(3){color:#f8fafc;background:#0f766e}.solitaire-action-row button:disabled{cursor:not-allowed;opacity:.48}.solitaire-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.solitaire-toolbar,.solitaire-summary-metrics{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.solitaire-summary span{border:1px solid rgba(167,243,208,.22);border-radius:999px;padding:.28rem .52rem;color:#d1fae5;background:#064e3b47;font-size:.72rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.card-board-top-row{display:grid;grid-template-columns:minmax(10rem,.55fr) minmax(16rem,1fr);gap:.75rem;align-items:start}.card-board-top-row .stock-row{max-width:none}.tableau-row{overflow-x:auto;padding:.15rem .15rem 4.35rem;scrollbar-color:#475569 transparent}.tableau-row .card-stack{min-width:4.7rem}.stock .playing-card-list,.waste .playing-card-list,.foundation .playing-card-list{min-height:4.75rem}.waste .playing-card-list{display:flex;align-items:stretch;justify-content:flex-start;min-width:6.65rem;padding-right:1.2rem}.waste .playing-card{position:relative;flex:0 0 clamp(3rem,6vw,3.85rem);min-width:0;box-shadow:0 .55rem 1.2rem #0f172a33;transition:transform .16s ease,opacity .16s ease,box-shadow .16s ease}.waste .playing-card+.playing-card{margin-left:-1.3rem}.waste .playing-card:nth-child(1){z-index:1}.waste .playing-card:nth-child(2){z-index:2;transform:translateY(.1rem)}.waste .playing-card:nth-child(3){z-index:3;transform:translateY(.2rem)}.waste .playing-card.playable-card{opacity:1}.waste .playing-card.playable-card:hover,.waste .playing-card.playable-card:focus-visible{z-index:5;transform:translateY(-.16rem);box-shadow:0 .7rem 1.35rem #0f172a47,0 0 0 2px #a7f3d038}.waste .playing-card.locked-card{opacity:.68}.tableau .playing-card-list{display:grid;grid-auto-rows:clamp(.95rem,2.35vw,1.42rem);padding-bottom:clamp(4.75rem,12vw,6.5rem)}.tableau .playing-card{width:100%}.playing-card.face-down+.playing-card.face-up{margin-top:.15rem}.playing-card.face-up{isolation:isolate}.card-corner{position:absolute;display:grid;gap:.02rem;justify-items:center;line-height:.86}.card-corner-top{top:.3rem;left:.3rem}.card-corner-bottom{right:.3rem;bottom:.3rem;transform:rotate(180deg)}.card-center-suit{font-size:clamp(1.28rem,3vw,2.15rem);line-height:1;opacity:.92}.card-back-mark{display:grid;width:2.4rem;height:2.4rem;place-items:center;border:2px solid rgba(248,250,252,.5);border-radius:999px;color:#eff6ff;font-size:.72rem;letter-spacing:.12em}.playing-card.placeholder span{font-size:clamp(1rem,2.5vw,1.55rem);opacity:.8}@media(max-width:940px){.cards-layout{overflow-x:auto;padding-bottom:.3rem;scrollbar-color:#475569 transparent}.card-board-top-row{min-width:31rem;grid-template-columns:minmax(10rem,.55fr) minmax(20rem,1fr)}.foundation-row{display:grid;grid-template-columns:repeat(4,minmax(4.6rem,1fr))}.tableau-row{min-width:39rem;grid-template-columns:repeat(7,minmax(4.5rem,1fr))}}@media(max-width:700px){.solitaire-summary{align-items:stretch}.solitaire-action-row,.solitaire-summary-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.solitaire-action-row button,.solitaire-summary-metrics span{min-width:0}.card-board-top-row{min-width:29rem;gap:.65rem}.tableau-row{min-width:37rem}.playing-card{min-height:4.65rem}}
