@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-cyrillic-ext-wght-normal.10yjhutwdm9hx.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-cyrillic-wght-normal.3iik4h93_86zh.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-vietnamese-wght-normal.43reimf7x86lj.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-latin-ext-wght-normal.19c5fcu0u1_l8.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-latin-wght-normal.43ritpld78jne.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--canvas:#f8edf1;--app-surface:#f7f5ef;--paper:#fffefd;--ink:#684d56;--ink-strong:#402f35;--muted:#715e65;--line:#eadde1;--accent:#a64b6c;--accent-strong:#98455f;--accent-soft:#f4dbe4;--focus:#6f55aa;--shadow:0 22px 60px #68485321;--soft-shadow:0 8px 24px #6848531a;--region-a:#efc344;--region-b:#aa8ad9;--region-c:#dda0ba;--region-d:#96c9b3;--region-e:#efad83;--region-f:#8ebbd5}:root[data-theme=dark]{--canvas:#241d24;--app-surface:#2d272c;--paper:#373036;--ink:#e7d9df;--ink-strong:#fff6f9;--muted:#c1adb5;--line:#50434a;--accent:#e592ae;--accent-strong:#f1a5bd;--accent-soft:#553441;--focus:#c3acef;--shadow:0 24px 70px #0000005c;--soft-shadow:0 10px 28px #0000003d;--region-a:#8d712c;--region-b:#6f5a9b;--region-c:#89596e;--region-d:#547967;--region-e:#916249;--region-f:#4e748a}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{background:var(--canvas);min-height:100dvh;color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:Nunito Variable,Nunito,ui-rounded,system-ui,sans-serif;font-size:16px;line-height:1.6;overflow-x:clip}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}img,svg{max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink-strong);letter-spacing:-.032em;text-wrap:balance;line-height:1.08}h1{margin-bottom:1.35rem;font-size:clamp(2.8rem,6.2vw,5.2rem);font-weight:900}h2{margin-bottom:1.15rem;font-size:clamp(2rem,4vw,3.35rem);font-weight:850}h3{margin-bottom:.5rem;font-size:1.28rem;font-weight:850}.min-width-zero,.hero>*,.header-inner>*,.footer-grid>*,.game-heading-row>*{min-width:0}.section-wrap{width:min(1180px,100% - 40px);margin-inline:auto}.section-wrap.compact{width:min(1040px,100% - 40px)}.section-wrap.text-width,.text-width{width:min(760px,100% - 40px)}.section-label,.eyebrow,.game-kicker{width:fit-content;color:var(--accent);letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:.45rem;margin-bottom:.9rem;font-size:.8rem;font-weight:900;display:flex}.site-header{z-index:30;background:color-mix(in srgb, var(--canvas) 88%, transparent);border-bottom:1px solid color-mix(in srgb, var(--line) 72%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0}.header-inner{align-items:center;gap:1rem;width:min(1180px,100% - 28px);min-height:72px;margin-inline:auto;display:flex}.brand{color:var(--ink-strong);letter-spacing:-.03em;white-space:nowrap;align-items:center;gap:.7rem;font-weight:900;text-decoration:none;display:inline-flex}.brand-mark{border:3px solid var(--paper);background:var(--paper);width:42px;height:42px;box-shadow:var(--soft-shadow);border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden}.brand-mark img{object-fit:cover;width:100%;height:100%}.header-inner nav{background:color-mix(in srgb, var(--paper) 82%, transparent);border-radius:999px;align-items:center;gap:.35rem;margin-left:auto;padding:.32rem;display:flex;box-shadow:inset 0 1px #ffffffb3}.header-inner nav a{color:var(--muted);border-radius:999px;padding:.45rem .75rem;font-size:.9rem;font-weight:800;text-decoration:none}.header-inner nav a:hover{background:var(--paper);color:var(--ink-strong)}.header-actions{align-items:center;gap:.5rem;display:flex}.icon-button{background:var(--paper);width:42px;height:42px;color:var(--accent);cursor:pointer;box-shadow:var(--soft-shadow);border:0;border-radius:50%;flex:none;place-items:center;text-decoration:none;transition:transform .18s,color .18s;display:grid}.icon-button:hover{color:var(--accent-strong);transform:translateY(-2px)}.hero{grid-template-columns:minmax(430px,.92fr) minmax(0,.82fr);align-items:center;gap:clamp(2.5rem,7vw,7rem);min-height:calc(100dvh - 72px);padding-block:44px 74px;display:grid}.hero>.game-shell{grid-area:1/1}.hero-copy{grid-area:1/2;max-width:620px}.hero-copy h1{max-width:700px}.hero-lede{max-width:590px;color:var(--muted);font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.6}.trust-row{flex-wrap:wrap;gap:.55rem;margin-top:1.35rem;display:flex}.trust-row span{background:var(--paper);color:var(--ink);border-radius:999px;padding:.45rem .75rem;font-size:.82rem;font-weight:850;box-shadow:inset 0 1px #ffffffbf}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.7rem;display:flex}.text-link{color:var(--accent-strong);text-underline-offset:5px;font-weight:900}.primary-button{background:var(--accent);color:#fff;min-height:54px;box-shadow:0 7px 0 var(--accent-strong);border:0;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.75rem 1.25rem;font-weight:900;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex}.primary-button:hover{box-shadow:0 4px 0 var(--accent-strong);transform:translateY(2px)}.game-shell{border:1px solid color-mix(in srgb, var(--paper) 78%, var(--line));background:var(--app-surface);width:min(100%,530px);box-shadow:var(--shadow);border-radius:34px;justify-self:center;padding:18px;scroll-margin-top:86px}.game-heading-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:.7rem;min-height:56px;display:grid}.cat-progress{background:var(--paper);box-shadow:var(--soft-shadow);font-variant-numeric:tabular-nums;border-radius:999px;justify-self:start;align-items:center;gap:.55rem;padding:.35rem .65rem .35rem .35rem;display:flex}.cat-progress img{object-fit:cover;border-radius:50%;flex:none;width:38px;height:38px}.cat-progress span{color:var(--muted);white-space:nowrap;font-size:.9rem;font-weight:850;line-height:1.05;display:block}.cat-progress strong{color:var(--accent);font-size:1.2rem}.cat-progress small{letter-spacing:.03em;text-transform:uppercase;margin-top:.22rem;font-size:.59rem;font-weight:800;display:block}.puzzle-title{text-align:center}.puzzle-title>span{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:900}.puzzle-title h2{white-space:nowrap;margin:.15rem 0 0;font-size:clamp(1.2rem,4vw,1.55rem)}.timer{background:var(--paper);color:var(--muted);font-variant-numeric:tabular-nums;box-shadow:var(--soft-shadow);border-radius:999px;justify-self:end;align-items:center;gap:.35rem;padding:.55rem .65rem;font-size:.8rem;font-weight:850;display:inline-flex}.difficulty-tabs{background:color-mix(in srgb, var(--accent-soft) 46%, var(--paper));border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin:.75rem 0;padding:.28rem;display:grid}.difficulty-tabs button{min-width:0;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.5rem .35rem;font-size:.78rem;font-weight:850}.difficulty-tabs button.active{background:var(--paper);color:var(--accent-strong);box-shadow:var(--soft-shadow)}.rule-reminder{background:var(--paper);box-shadow:var(--soft-shadow);border-radius:22px;grid-template-columns:1.05fr 1fr .8fr;gap:.4rem;margin:.75rem 0;padding:.55rem;display:grid}.rule-reminder span{background:color-mix(in srgb, var(--accent-soft) 42%, var(--app-surface));min-height:46px;color:var(--ink);text-align:center;border-radius:16px;place-items:center;padding:.35rem .45rem;font-size:.72rem;font-weight:850;line-height:1.22;display:grid}.board-card{background:var(--paper);box-shadow:var(--soft-shadow);border-radius:28px;padding:12px}.board{aspect-ratio:1;background:color-mix(in srgb, var(--ink) 16%, transparent);border-radius:20px;gap:4px;width:100%;padding:3px;display:grid}.cell{border-style:solid;border-color:color-mix(in srgb, var(--ink-strong) 70%, transparent);cursor:pointer;border-radius:11px;place-items:center;min-width:0;min-height:0;padding:0;transition:filter .15s,transform .1s,box-shadow .16s;display:grid;overflow:hidden}.cell:hover{filter:brightness(1.05);box-shadow:0 3px 8px #452c3429}.cell:active{transform:scale(.92)}.cell svg{width:clamp(16px,4.8vw,26px);height:auto}.cat-token{object-fit:cover;border:3px solid #ffffffd9;border-radius:50%;width:86%;height:86%;animation:.24s cubic-bezier(.2,.9,.3,1.35) cat-pop;box-shadow:0 3px 8px #412b3433}.region-a{background:var(--region-a)}.region-b{background:var(--region-b)}.region-c{background:var(--region-c)}.region-d{background:var(--region-d)}.region-e{background:var(--region-e)}.region-f{background:var(--region-f)}.cell.conflict{color:#fff;background:#c64861;animation:.2s linear 2 nudge}.game-message{background:color-mix(in srgb, var(--paper) 75%, transparent);min-width:0;min-height:44px;color:var(--muted);border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem;margin-top:.65rem;padding:.55rem .7rem;font-size:.75rem;font-weight:750;display:grid}.game-message span{overflow-wrap:anywhere}.game-message>img{object-fit:cover;border-radius:50%;width:25px;height:25px}.game-message>svg{color:#39a86c}.game-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:.7rem;display:grid}.game-actions button{background:var(--paper);width:68px;min-width:0;height:68px;color:var(--accent-strong);cursor:pointer;box-shadow:var(--soft-shadow);border:0;border-radius:50%;flex-direction:column;justify-content:center;justify-self:center;align-items:center;gap:.15rem;padding:.35rem;font-size:.7rem;font-weight:900;transition:transform .16s,box-shadow .16s;display:inline-flex}.game-actions button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 26px #68485326}.game-actions button:disabled{opacity:.42;cursor:not-allowed}.game-shell.is-solved{box-shadow:0 24px 70px #54b77d33}@keyframes nudge{50%{transform:translate(2px)}}@keyframes cat-pop{0%{opacity:.35;transform:scale(.62)rotate(-6deg)}to{opacity:1;transform:scale(1)rotate(0)}}.rule-strip{padding-block:92px}.rule-strip .section-wrap{background:var(--app-surface);box-shadow:var(--soft-shadow);border-radius:36px;padding:clamp(1.5rem,5vw,4.5rem)}.rule-strip h2{max-width:800px}.rule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;margin-top:2.3rem;display:grid}.rule-grid article{border-top:1px solid var(--line);min-width:0;padding:1.5rem 0 1.5rem 3.2rem;position:relative}.rule-grid span{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-strong);border-radius:50%;place-items:center;font-size:.72rem;font-weight:900;display:grid;position:absolute;top:1.45rem;left:0}.rule-grid h3{margin-bottom:.35rem}.rule-grid p{color:var(--muted);margin-bottom:0}.editorial,.guide-cards,.faq{padding-block:100px}.editorial-intro{max-width:760px}.prose-columns{color:var(--muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem;margin-top:1.8rem;font-size:1.06rem;display:grid}.guide-cards{border-top:1px solid var(--line)}.guide-cards>h2{max-width:780px}.card-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1.2fr .8fr;gap:.9rem;margin-top:2.5rem;display:grid}.card-grid a{border:1px solid color-mix(in srgb, var(--line) 65%, transparent);background:var(--paper);min-width:0;box-shadow:var(--soft-shadow);border-radius:26px;padding:1.8rem;text-decoration:none;transition:transform .18s,background .18s}.card-grid a:first-child{background:var(--accent-soft);flex-direction:column;grid-row:1/3;justify-content:flex-end;min-height:340px;display:flex}.card-grid a:hover{background:color-mix(in srgb, var(--accent-soft) 50%, var(--paper));transform:translateY(-4px)}.card-grid span{color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;font-size:.76rem;font-weight:900}.card-grid h3{margin-top:1.2rem;font-size:1.55rem}.card-grid p{color:var(--muted);margin-bottom:0}.faq-list{border-top:1px solid var(--line);margin-top:2rem}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;color:var(--ink-strong);padding:1.2rem 2.3rem 1.2rem 0;font-weight:900}.faq-list p{max-width:760px;color:var(--muted);padding-bottom:.5rem}.closing-cta{background:var(--accent-soft);text-align:center;padding-block:90px}.closing-cta .section-label{color:var(--accent-strong);margin-inline:auto}.closing-cta h2{max-width:700px;margin-inline:auto}.closing-cta .primary-button{margin-top:1rem}.inner-main{min-height:70dvh}.inner-hero{text-align:center;padding-top:clamp(64px,10vw,120px);padding-bottom:42px}.inner-hero .eyebrow{margin-inline:auto}.inner-hero h1{overflow-wrap:anywhere;font-size:clamp(2.6rem,7vw,4.8rem)}.inner-hero>p:last-child{color:var(--muted);font-size:1.15rem}.narrow-game{padding-bottom:70px}.narrow-game .game-shell{margin-inline:auto}.article-body{background:var(--app-surface);color:var(--muted);box-shadow:var(--soft-shadow);border-radius:32px;margin-bottom:90px;padding:clamp(1.2rem,5vw,3.2rem);font-size:1.04rem}.article-body h2,.article-body h3{color:var(--ink-strong)}.article-body h2{margin-top:3.2rem;font-size:clamp(1.75rem,4vw,2.45rem)}.article-body h2:first-child{margin-top:0}.article-body h3{letter-spacing:-.02em;font-size:1.2rem}.article-body li{margin-bottom:.65rem}.inline-links{flex-wrap:wrap;gap:.7rem;margin-top:1.5rem;display:flex}.inline-links a{background:var(--paper);color:var(--accent-strong);text-underline-offset:4px;border-radius:999px;padding:.62rem .9rem;font-weight:900}.numbered-rules section{border-bottom:1px solid var(--line);grid-template-columns:50px minmax(0,1fr);gap:1rem;padding:1.4rem 0;display:grid}.numbered-rules b{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.control-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.control-grid>div{background:var(--paper);min-width:0;box-shadow:var(--soft-shadow);border-radius:22px;padding:1.3rem}.control-grid svg{color:var(--accent)}.article-cta{background:var(--accent-soft);border-radius:24px;margin-top:3.5rem;padding:1.7rem}.article-cta h2{margin-top:0}.site-footer{border-top:1px solid var(--line);background:var(--app-surface);padding-block:58px}.footer-grid{grid-template-columns:minmax(0,1fr) auto;gap:3rem;width:min(1040px,100% - 40px);margin-inline:auto;display:grid}.footer-brand{color:var(--ink-strong);align-items:center;gap:.6rem;font-weight:900;display:flex}.footer-brand img{object-fit:cover;border-radius:50%;width:32px;height:32px}.footer-grid p{max-width:620px;color:var(--muted);margin:.75rem 0 0;font-size:.9rem}.footer-links{grid-template-columns:repeat(2,auto);align-content:start;gap:.6rem 1.5rem;display:grid}.footer-links a{color:var(--muted);font-size:.9rem;font-weight:800}@media (max-width:920px){.hero{grid-template-columns:minmax(0,1fr);min-height:auto;padding-top:22px}.hero-copy,.hero>.game-shell{grid-area:auto}.hero-copy{max-width:760px}.game-shell{width:min(100%,560px)}}@media (max-width:700px){.section-wrap,.section-wrap.compact,.section-wrap.text-width,.text-width{width:min(100% - 24px,760px)}.header-inner{gap:.6rem;width:calc(100% - 20px);min-height:64px}.header-inner nav{display:none}.header-actions{margin-left:auto}.icon-button{width:40px;height:40px}.hero{gap:2.4rem;padding-block:12px 58px}.hero-copy{padding:1rem .2rem 0}.hero h1{overflow-wrap:anywhere;font-size:clamp(2.35rem,11vw,3.45rem)}.hero-actions .text-link{width:100%}.game-shell{border-radius:26px;justify-self:stretch;width:100%;padding:12px}.game-heading-row{gap:.35rem;min-height:50px}.cat-progress{padding:.25rem .48rem .25rem .25rem}.cat-progress img{width:34px;height:34px}.cat-progress small{display:none}.timer{padding:.45rem .5rem;font-size:.72rem}.puzzle-title>span{font-size:.58rem}.puzzle-title h2{font-size:1.08rem}.difficulty-tabs{margin-block:.55rem}.rule-reminder{border-radius:18px;margin-block:.55rem;padding:.42rem}.rule-reminder span{border-radius:13px;min-height:42px;padding:.25rem;font-size:.62rem}.board-card{border-radius:23px;padding:9px}.board{border-radius:16px;gap:3px}.cell{border-radius:8px}.cat-token{border-width:2px}.game-message{margin-top:.5rem;font-size:.69rem}.game-actions{margin-top:.55rem}.game-actions button{width:61px;height:61px;font-size:.62rem}.rule-strip,.editorial,.guide-cards,.faq,.closing-cta{padding-block:68px}.rule-strip .section-wrap{border-radius:28px;padding:1.25rem}.rule-grid{grid-template-columns:1fr;gap:0}.prose-columns{grid-template-columns:1fr;gap:.8rem}.card-grid{grid-template-rows:auto;grid-template-columns:1fr}.card-grid a:first-child{grid-row:auto;min-height:250px}.control-grid{grid-template-columns:1fr}.article-body{border-radius:26px;margin-bottom:60px}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-links{grid-template-columns:1fr 1fr}}@media (max-width:380px){.brand{gap:.45rem;font-size:.92rem}.brand-mark{width:36px;height:36px}.header-actions{gap:.35rem}.icon-button{width:36px;height:36px}.game-shell{padding:9px}.cat-progress span{font-size:.78rem}.cat-progress strong{font-size:1rem}.timer svg{display:none}.rule-reminder span{font-size:.57rem}.game-actions button{width:57px;height:57px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
