:root{color-scheme:light;--ink: #242426;--muted: #6f6d76;--line: #d9d6df;--surface: #ffffff;--page: #f7f6f3;--purple: #7253a6;--purple-dark: #55367f;--purple-soft: #eee8f6;--yellow: #f3df58;--green: #3f8f68;--green-soft: #e4f2e9;--red: #c94747;font-family:Arial,Helvetica Neue,sans-serif;font-synthesis:none}html[data-theme=dark]{color-scheme:dark;--ink: #f2eff5;--muted: #b4afbb;--line: #49454f;--surface: #242228;--page: #19181c;--purple: #a989d4;--purple-dark: #c3a7e8;--purple-soft: #3a3046;--yellow: #dfca50;--green: #68b58a;--green-soft: #233d2f;--red: #e36c6c}*{box-sizing:border-box}html{background:var(--page)}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:linear-gradient(90deg,transparent 0 49.8%,rgba(114,83,166,.035) 49.8% 50.2%,transparent 50.2%),var(--page)}button{font:inherit}button:focus-visible{outline:3px solid rgba(114,83,166,.35);outline-offset:3px}.site-header{height:64px;padding:0 24px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:20px;color:inherit;text-decoration:none}.brand-mark{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--purple)}.header-title{font-size:15px;font-weight:700}.header-actions{justify-self:end;display:flex;gap:6px}.catalog-shell{width:min(100% - 32px,900px);margin:0 auto;padding:54px 0 64px}.catalog-heading{margin-bottom:30px}.catalog-heading h1{font-size:clamp(38px,7vw,58px)}.catalog-heading>p:last-child{margin:12px 0 0;color:var(--muted);font-size:17px}.game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.game-card{min-height:168px;display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:18px;padding:22px;border:1px solid var(--line);border-right:5px solid var(--game-accent);border-radius:7px;color:var(--ink);background:var(--surface);text-decoration:none;box-shadow:0 10px 24px #2424260d;transition:transform .18s,border-color .18s,box-shadow .18s}.game-card:hover{transform:translateY(-2px);border-color:var(--game-accent);box-shadow:0 14px 30px #24242617}.game-card-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--game-accent)}.game-card-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.game-card-copy strong{font-size:24px}.game-card-copy>span:last-child{color:var(--muted);line-height:1.45}.game-frequency{color:var(--game-accent);font-size:12px;font-weight:800}.game-card-arrow{color:var(--game-accent)}.icon-btn{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:4px;color:var(--ink);background:transparent;cursor:pointer}.icon-btn:hover{background:var(--purple-soft)}.theme-icon-sun{display:none}html[data-theme=dark] .theme-icon-sun{display:block}html[data-theme=dark] .theme-icon-moon{display:none}.game-shell{width:min(100% - 32px,900px);margin:0 auto;padding:30px 0 48px}.game-heading{text-align:center;margin-bottom:24px}.eyebrow{margin:0 0 7px;color:var(--purple-dark);font-size:13px;font-weight:800}h1{margin:0;font-size:clamp(32px,6vw,50px);line-height:1;letter-spacing:0}.subtitle{margin:10px auto 0;color:var(--muted);font-size:16px}.status-strip{width:min(100%,580px);margin:0 auto 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px;color:var(--muted)}.difficulty{font-weight:700}.mistakes{display:flex;align-items:center;gap:7px}.mistake-dot{width:10px;height:10px;border-radius:50%;background:var(--line);transition:background .2s}.mistake-dot.spent{background:var(--red)}.board{position:relative;width:min(100%,580px);margin:0 auto;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 30px #2424260f}.chain{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:8px}.chain-cell{position:relative;aspect-ratio:1;min-width:0;display:grid;place-items:center;padding:7px;border:2px solid var(--line);border-radius:50%;background:color-mix(in srgb,var(--surface) 92%,var(--purple-soft));color:var(--ink);text-align:center;font-size:clamp(11px,2vw,14px);font-weight:800;overflow-wrap:anywhere;transition:transform .18s,border-color .18s,background .18s}.chain-cell:not(:last-child):after{content:"";position:absolute;right:calc(100% + 2px);width:12px;height:3px;background:var(--line);pointer-events:none}.chain-cell.fixed{color:#fff;border-color:var(--purple);background:var(--purple)}.chain-cell.slot{cursor:pointer}.chain-cell.slot:hover,.chain-cell.slot.drag-over{border-color:var(--purple);background:var(--purple-soft)}.chain-cell.slot.correct{color:#195b3b;border-color:var(--green);background:var(--green-soft);cursor:default}.chain-cell.slot.wrong{animation:shake .36s ease;border-color:var(--red)}.slot-number{color:#a5a2aa;font-weight:600}.connector-copy{margin:16px 0 13px;text-align:center;color:var(--muted);font-size:13px}.bank{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.word-tile{min-height:46px;padding:9px 8px;border:1px solid #c9c4d0;border-radius:5px;color:var(--ink);background:var(--surface);font-weight:700;cursor:grab;transition:transform .15s,border-color .15s,background .15s}.word-tile:hover{border-color:var(--purple);transform:translateY(-1px)}.word-tile.selected{border-color:var(--purple);background:var(--purple-soft);box-shadow:inset 0 0 0 1px var(--purple)}.word-tile.used{visibility:hidden;pointer-events:none}.feedback{min-height:50px;margin:18px 0 2px;text-align:center}.feedback strong{display:block;font-size:17px}.feedback span{display:block;margin-top:4px;color:var(--muted);font-size:13px}.controls{display:grid;grid-template-columns:auto auto 1fr;gap:8px;width:min(100%,580px);margin:14px auto 0}.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 17px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);font-weight:800;cursor:pointer}.btn:hover:not(:disabled){border-color:var(--purple)}.btn.primary{border-color:var(--purple);color:#fff;background:var(--purple)}.btn.primary:hover:not(:disabled){background:var(--purple-dark)}.btn:disabled{opacity:.42;cursor:not-allowed}.explanations{width:min(100%,580px);margin:18px auto 0;padding:16px 0 0;border-top:1px solid var(--line)}.explanations h2{margin:0 0 10px;font-size:15px}.explanations ol{margin:0;padding:0 20px 0 0;color:var(--muted);line-height:1.8;font-size:14px}.dialog{width:min(100% - 28px,480px);padding:0;border:0;border-radius:8px;color:var(--ink);background:var(--surface);box-shadow:0 24px 80px #00000038}.dialog::backdrop{background:#1e1b238a;backdrop-filter:blur(2px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.dialog-header h2{margin:0;font-size:20px}.dialog-body{padding:20px;color:#454249;line-height:1.65}.dialog-body p:first-child{margin-top:0}.dialog-body p:last-child{margin-bottom:0}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding:0 20px 20px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.stat{padding:12px 8px;border:1px solid var(--line);border-radius:5px;text-align:center}.stat strong{display:block;font-size:24px;color:var(--purple-dark)}.stat span{font-size:12px;color:var(--muted)}@keyframes shake{25%{transform:translate(4px)}50%{transform:translate(-4px)}75%{transform:translate(3px)}}@media(max-width:620px){.site-header{padding:0 14px}.header-title{display:none}.game-shell{width:min(100% - 20px,580px);padding-top:22px}.catalog-shell{width:min(100% - 24px,580px);padding-top:34px}.game-grid{grid-template-columns:1fr}.game-card{min-height:150px;grid-template-columns:54px 1fr auto;padding:18px;gap:14px}.game-card-icon{width:54px;height:54px}.board{padding:13px}.chain{grid-template-columns:repeat(3,1fr);row-gap:14px}.chain-cell{width:min(92px,25vw);justify-self:center}.chain-cell:not(:last-child):after{display:none}.bank{grid-template-columns:repeat(2,1fr)}.controls{grid-template-columns:1fr 1fr}.controls .primary{grid-column:1 / -1;grid-row:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
