@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/9ffc08a38813e78e-s.0y4xxz2y19qqs.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/44c9372a001b48d5-s.0yczt4r3j28ff.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/61715dc81dd9b4e8-s.p.0ez3bnoxb63ra.woff2)format("woff2");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}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/9ffc08a38813e78e-s.0y4xxz2y19qqs.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/44c9372a001b48d5-s.0yczt4r3j28ff.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/61715dc81dd9b4e8-s.p.0ez3bnoxb63ra.woff2)format("woff2");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}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/9ffc08a38813e78e-s.0y4xxz2y19qqs.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/44c9372a001b48d5-s.0yczt4r3j28ff.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/61715dc81dd9b4e8-s.p.0ez3bnoxb63ra.woff2)format("woff2");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}@font-face{font-family:Fredoka Fallback;src:local(Arial);ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.0%;size-adjust:101.84%}._8GlTpG_className{font-family:Fredoka,Fredoka Fallback;font-style:normal}._8GlTpG_variable{--font-fredoka:"Fredoka", "Fredoka Fallback"}
@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e27b85d01cb4b1af-s.1zkvd_innyig_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/10e5db483fb7b6ef-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/01a1b57b2e0cef27-s.1vcas2uk12q5a.woff2)format("woff2");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;font-style:normal;font-weight:400;font-display:swap;src:url(../media/648e19a466ec92f1-s.2demiz2t05dx4.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(../media/29e2a75af8e45044-s.p.2kjei9psvcorz.woff2)format("woff2");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}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e27b85d01cb4b1af-s.1zkvd_innyig_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/10e5db483fb7b6ef-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/01a1b57b2e0cef27-s.1vcas2uk12q5a.woff2)format("woff2");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;font-style:normal;font-weight:600;font-display:swap;src:url(../media/648e19a466ec92f1-s.2demiz2t05dx4.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(../media/29e2a75af8e45044-s.p.2kjei9psvcorz.woff2)format("woff2");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}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e27b85d01cb4b1af-s.1zkvd_innyig_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/10e5db483fb7b6ef-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/01a1b57b2e0cef27-s.1vcas2uk12q5a.woff2)format("woff2");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;font-style:normal;font-weight:700;font-display:swap;src:url(../media/648e19a466ec92f1-s.2demiz2t05dx4.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/29e2a75af8e45044-s.p.2kjei9psvcorz.woff2)format("woff2");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}@font-face{font-family:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.soiakq_className{font-family:Nunito,Nunito Fallback;font-style:normal}.soiakq_variable{--font-nunito:"Nunito", "Nunito Fallback"}
:root{--bg:#fffaf3;--card:#fff;--text:#2b2b38;--muted:#6b6b7b;--brand:#ff6b6b;--brand2:#4dabf7;--accent:#ffd43b;--line:#f0e6d8;--surface:#fff;--surface2:#faf5ee;--link:#1c7ed6;--nav:#2b2b38;--radius:16px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#17171f;--card:#22222d;--surface:#22222d;--surface2:#2a2a37;--text:#ececf3;--muted:#a3a3b5;--line:#34344a;--link:#74c0fc;--nav:#101016;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#17171f;--card:#22222d;--surface:#22222d;--surface2:#2a2a37;--text:#ececf3;--muted:#a3a3b5;--line:#34344a;--link:#74c0fc;--nav:#101016;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font:17px/1.6 var(--font-nunito), system-ui, -apple-system, sans-serif;margin:0}h1,h2,h3,.logo{font-family:var(--font-fredoka), var(--font-nunito), sans-serif;line-height:1.2}h1{margin:.6em 0 .3em;font-size:clamp(1.7rem,4vw,2.6rem)}h2{margin:1.6em 0 .7em;font-size:1.5rem}a{color:var(--link)}img{max-width:100%;height:auto}.wrap{max-width:1180px;margin:0 auto;padding:0 16px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row.space{justify-content:space-between}.site-header{background:var(--surface);border-bottom:3px solid var(--line);z-index:10;position:sticky;top:0}.header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:10px;padding-bottom:10px;display:flex}.logo{color:var(--text);align-items:center;gap:8px;font-size:1.6rem;font-weight:700;text-decoration:none;display:flex}.search{flex:1;min-width:220px;max-width:460px;display:flex}.search input{border:2px solid var(--line);background:var(--surface);min-width:0;color:var(--text);font:inherit;border-right:0;border-radius:999px 0 0 999px;flex:1;padding:10px 14px}.search button{background:var(--brand);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:0 999px 999px 0;padding:0 18px;font-weight:700}.menu{border-top:1px solid var(--line)}.menu-row{white-space:nowrap;scrollbar-width:none;display:flex;overflow-x:auto}.menu-top{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:4px;padding:10px 14px;font-weight:700;text-decoration:none;display:inline-flex}.menu-top:hover,.menu-top[aria-expanded=true],.menu-top.active{color:var(--brand)}.menu-top[aria-expanded=true] svg{transform:rotate(180deg)}.menu-panel{background:var(--surface);border-bottom:3px solid var(--line);max-height:calc(100vh - 140px);position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 18px 30px #0000001f}.menu-cols{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));gap:12px 28px;padding-top:22px;padding-bottom:26px;display:grid}.menu-cols h2{margin:0 0 10px;font-size:1.1rem}.menu-cols ul{columns:1;margin:0;padding:0;list-style:none}.menu-cols li{padding:3px 0}.menu-cols a{color:var(--link);font-weight:600}.menu-cols a:hover{color:var(--brand)}@media (max-width:820px){.menu-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.menu-cols{grid-template-columns:1fr}}.hero{text-align:center;padding:36px 0 12px}.hero p,.lead{color:var(--muted);max-width:720px;font-size:1.1rem}.hero p{margin:0 auto}.crumbs{color:var(--muted);margin-top:16px;font-size:.9rem}.cats{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px;display:grid}.cat{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);color:var(--text);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:16px;text-decoration:none;transition:transform .15s,border-color .15s;display:flex}.cat:hover,.card:hover{border-color:var(--brand);transform:translateY(-3px)}.cat small{color:var(--muted)}.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px;display:grid}.card{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);color:var(--text);text-decoration:none;transition:transform .15s,border-color .15s;display:block;overflow:hidden}.card img{aspect-ratio:1;object-fit:contain;background:#fff;width:100%;display:block}.card span{border-top:2px solid var(--line);padding:10px 12px;font-weight:700;display:block}.detail,.colorer{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:28px;display:grid}.sheet{border:2px solid var(--line);border-radius:var(--radius);background:#fff;margin:0;padding:12px}.sheet img,.sheet svg{width:100%;height:auto;display:block}.page-content{margin-top:24px}.page-content h2{margin-top:28px}.stage{min-height:300px}.stage [data-fill]{cursor:pointer}.actions{gap:10px;margin-bottom:16px;display:grid}.btn{border:2px solid var(--text);background:var(--surface);color:var(--text);font:inherit;text-align:center;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:var(--accent);color:#2b2b38}.btn:disabled{opacity:.6;cursor:wait}.btn-print{background:var(--brand);border-color:var(--brand);color:#fff}.btn-color{background:var(--brand2);border-color:var(--brand2);color:#fff}.btn-danger{color:#e03131;border-color:#e03131}.btn-sm{border-width:1.5px;border-radius:8px;padding:4px 10px;font-size:.85rem}.tags a{background:var(--surface);border:1px solid var(--line);border-radius:999px;margin:0 6px 6px 0;padding:2px 10px;font-size:.9rem;text-decoration:none;display:inline-block}.palette{grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:12px;display:grid}.swatch{aspect-ratio:1;border:3px solid var(--bg);box-shadow:0 0 0 2px var(--line);cursor:pointer;border-radius:50%;padding:0}.swatch.active{box-shadow:0 0 0 3px var(--text)}.custom{justify-content:space-between;align-items:center;margin-bottom:14px;font-weight:700;display:flex}.custom input{background:0 0;border:0;width:54px;height:36px}.hint{color:var(--muted);font-size:.95rem}.text{max-width:820px}.ad{min-height:100px;margin:20px 0}body:has(.site-main){flex-direction:column;min-height:100vh;display:flex}.site-main{flex:1;width:100%}.site-footer{background:var(--surface);border-top:3px solid var(--line);color:var(--muted);margin-top:60px;padding:36px 0 0;font-size:.95rem}.footer-cols{grid-template-columns:1.4fr repeat(3,1fr);gap:28px;display:grid}.footer-cols h2{color:var(--text);margin:0 0 10px;font-size:1.05rem}.footer-cols nav{align-content:start;gap:6px;display:grid}.footer-cols nav a{color:var(--muted);text-decoration:none}.footer-cols nav a:hover{color:var(--brand)}.footer-about .logo{font-size:1.3rem}.footer-about p{max-width:320px;margin:10px 0 0}.footer-bottom{border-top:1px solid var(--line);margin-top:28px;padding-top:16px;padding-bottom:18px;font-size:.88rem}.footer-bottom p{margin:0}@media (max-width:820px){.footer-cols{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}}.theme-toggle{border:2px solid var(--line);background:var(--surface);width:42px;height:42px;color:var(--text);cursor:pointer;border-radius:50%;flex:none;place-items:center;font-size:1.2rem;display:inline-grid}.theme-toggle:hover{border-color:var(--brand)}.theme-toggle svg{display:block}:is(.theme-toggle,.theme-toggle-row) .sun{display:none}:root[data-theme=dark] :is(.theme-toggle,.theme-toggle-row) .sun{display:block}:root[data-theme=dark] :is(.theme-toggle,.theme-toggle-row) .moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme]) :is(.theme-toggle,.theme-toggle-row) .sun{display:block}:root:not([data-theme]) :is(.theme-toggle,.theme-toggle-row) .moon{display:none}}.header-tools{flex:1;justify-content:flex-end;align-items:center;gap:10px;min-width:220px;display:flex}@media (max-width:820px){.detail,.colorer{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr);gap:12px}.palette{grid-template-columns:repeat(8,1fr)}}@media print{@page{margin:10mm}.no-print,.site-header,.site-footer,.ad{display:none!important}body{color:#000;background:#fff}.wrap{max-width:none;padding:0}.detail,.colorer{display:block}.sheet{border:0;padding:0}.sheet img,.sheet svg{object-fit:contain;width:100%;max-height:260mm}}.subcats{margin-bottom:8px}.page-no{color:var(--muted);font-size:.55em;font-weight:500}.filters{gap:8px;margin:0 0 18px;display:grid}.filters div{flex-wrap:wrap;gap:8px;display:flex}.filters a{border:2px solid var(--line);background:var(--card);color:var(--text);border-radius:999px;padding:5px 14px;font-size:.92rem;font-weight:700;text-decoration:none}.filters a:hover{border-color:var(--brand)}.filters a.on{background:var(--brand);border-color:var(--brand);color:#fff}.pager{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:28px 0 8px;display:flex}.pager a,.pager strong{border:2px solid var(--line);background:var(--card);min-width:42px;color:var(--text);text-align:center;border-radius:12px;padding:8px 12px;font-weight:700;text-decoration:none;display:inline-block}.pager a:hover{border-color:var(--brand)}.pager strong{background:var(--brand);border-color:var(--brand);color:#fff}.pager .gap{color:var(--muted);padding:0 4px}.labels{flex-wrap:wrap;gap:6px;margin:0 0 4px;display:flex}.label{background:var(--surface2);border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:.85rem;font-weight:700}.label.level-easy{color:#2b8a3e;background:#d3f9d8;border-color:#b2f2bb}.label.level-medium{color:#a86b00;background:#fff3bf;border-color:#ffe066}.label.level-hard{color:#c92a2a;background:#ffe3e3;border-color:#ffc9c9}.guides{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.guide{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);color:var(--text);gap:6px;padding:18px;text-decoration:none;display:grid}.guide:hover{border-color:var(--brand)}.guide strong{font-family:var(--font-fredoka), sans-serif;font-size:1.15rem}.guide span{color:var(--muted);font-size:.95rem}.home-hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:32px;padding:36px 0 18px;display:grid}.home-hero h1{margin:.2em 0 .35em;font-size:clamp(2rem,4.6vw,3.1rem)}.eyebrow{background:color-mix(in srgb, var(--brand) 14%, transparent);color:var(--brand);border-radius:999px;align-items:center;gap:6px;margin:0;padding:4px 12px;font-size:.9rem;font-weight:800;display:inline-flex}.hero-text{color:var(--muted);margin:0 0 18px;font-size:1.12rem}.hero-search{max-width:560px;display:flex}.hero-search input{border:2px solid var(--line);background:var(--card);min-width:0;color:var(--text);font:inherit;border-right:0;border-radius:999px 0 0 999px;flex:1;padding:14px 18px;font-size:1.05rem}.hero-search button{background:var(--brand);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:0 999px 999px 0;padding:0 24px;font-weight:800}.hero-tags{color:var(--muted);margin:12px 0 0;font-size:.95rem}.hero-tags a{margin-left:8px;font-weight:700}.hero-stats{color:var(--muted);flex-wrap:wrap;gap:10px 24px;margin-top:20px;display:flex}.hero-stats strong{color:var(--text);font-size:1.15rem}.hero-art{min-height:340px;position:relative}.hero-art img{aspect-ratio:1;object-fit:contain;border:3px solid var(--card);background:#fff;border-radius:22px;width:58%;position:absolute;box-shadow:0 12px 30px #00000024}.hero-art img:first-child{top:6%;left:0;transform:rotate(-6deg)}.hero-art img:nth-child(2){top:0;right:0;transform:rotate(5deg)}.hero-art img:nth-child(3){z-index:1;bottom:0;left:22%;transform:rotate(-1deg)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin:1.6em 0 .7em;display:flex}.section-head h2{margin:0}.section-head p{color:var(--muted);margin:4px 0 0}.section-head>a{font-weight:700}.spotlight{background:color-mix(in srgb, var(--accent) 16%, var(--card));border:2px solid var(--line);border-radius:22px;margin-top:24px;padding:4px 22px 22px}.spotlight .section-head{margin-top:18px}.feature-link{color:var(--text);text-decoration:none;transition:transform .15s,border-color .15s}.feature-link:hover{border-color:var(--brand);transform:translateY(-3px)}.promo{background:color-mix(in srgb, var(--brand2) 14%, var(--card));border:2px solid var(--line);border-radius:22px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:24px;margin:2.2em 0 0;padding:26px;display:grid}.promo h2{align-items:center;gap:10px;margin:0 0 8px;display:flex}.promo p{color:var(--muted);margin:0 0 16px}.promo-art{grid-template-columns:1fr 1fr;gap:12px;display:grid}.promo-art img{aspect-ratio:1;object-fit:contain;border:2px solid var(--line);background:#fff;border-radius:16px;width:100%}.steps{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.steps li{text-align:center;background:var(--card);border:2px solid var(--line);border-radius:var(--radius);justify-items:center;gap:6px;padding:22px 18px;display:grid}.steps p{color:var(--muted);margin:0;font-size:.95rem}.step-icon{background:color-mix(in srgb, var(--brand2) 16%, transparent);width:58px;height:58px;color:var(--brand2);border-radius:50%;place-items:center;display:grid;position:relative}.step-icon b{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.75rem;display:grid;position:absolute;top:-4px;right:-4px}.steps.compact{margin:18px 0}.steps.compact li{text-align:left;justify-items:start;padding:14px 16px}.tag-cloud{flex-wrap:wrap;gap:8px;margin:0;display:flex}.tag-cloud a{border:2px solid var(--line);background:var(--card);color:var(--text);border-radius:999px;padding:6px 14px;font-weight:700;text-decoration:none}.tag-cloud a:hover{border-color:var(--brand);color:var(--brand)}.tag-cloud small{color:var(--muted);font-weight:600}.faq{max-width:860px}.faq details{background:var(--card);border:2px solid var(--line);border-radius:14px;margin-bottom:10px}.faq summary{cursor:pointer;padding:14px 18px;font-weight:800}.faq details[open] summary{border-bottom:1px solid var(--line)}.faq details p{color:var(--muted);margin:0;padding:12px 18px 16px}.facts{border:2px solid var(--line);background:var(--card);border-radius:14px;gap:0;margin:0 0 16px;font-size:.92rem;display:grid;overflow:hidden}.facts div{border-top:1px solid var(--line);grid-template-columns:110px 1fr;gap:10px;padding:7px 12px;display:grid}.facts div:first-child{border-top:0}.facts dt{color:var(--muted);font-weight:700}.facts dd{margin:0}.used-colors{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.used-colors li{background:var(--card);border:2px solid var(--line);border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex}.used-colors li>span:last-child{line-height:1.3;display:grid}.used-colors small{color:var(--muted)}.howto{margin-top:8px}.detail-more{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}.page-search{margin:0 0 22px}@media (max-width:820px){.detail-more{grid-template-columns:1fr}}.howto h2{margin:1.2em 0 .5em;font-size:1.2rem}.howto ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.howto li{align-items:flex-start;gap:10px;display:flex}.howto li svg{color:var(--brand2);flex:none;margin-top:4px}.tips{border-left:4px solid var(--accent);background:var(--card);border-radius:0 14px 14px 0;margin:18px 0 0;padding:14px 18px}.tips h2{margin:0 0 6px;font-size:1.15rem}.tips ul{margin:0;padding-left:20px}.tips li{margin:4px 0}@media (max-width:860px){.home-hero,.promo{grid-template-columns:1fr}.hero-art{grid-template-columns:repeat(3,1fr);gap:10px;min-height:0;display:grid}.hero-art img{width:100%;position:static;transform:none!important}}.text-page h2{margin-top:1.4em}.text-page h3{margin:1.2em 0 .3em;font-size:1.12rem}.text-page li{margin:4px 0}.text-page .lead{max-width:none}.stat-row{grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0;display:grid}.stat-row div{text-align:center;background:var(--card);border:2px solid var(--line);border-radius:var(--radius);padding:16px;display:grid}.stat-row strong{font-family:var(--font-fredoka), sans-serif;color:var(--brand);font-size:2rem;line-height:1.1}.stat-row span{color:var(--muted);font-weight:700}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:14px 0;display:grid}.feature{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);align-content:start;gap:4px;padding:18px;display:grid}.feature svg{color:var(--brand2)}.feature strong{font-size:1.05rem}.feature p{color:var(--muted);margin:0;font-size:.95rem}.process{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:18px 0;padding:0;list-style:none;display:grid}.process li{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);text-align:center;flex-direction:column;gap:10px;padding:14px;display:flex}.process h3{justify-content:center;align-items:center;gap:8px;margin:0;font-size:1.1rem;display:flex}.process h3 span{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.85rem;display:inline-grid}.process img,.process-icon{aspect-ratio:1;object-fit:cover;border-radius:12px;width:100%}.process-icon{background:var(--surface2);color:var(--brand2);place-items:center;display:grid}.process p{color:var(--muted);margin:0;font-size:.92rem}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips .chip{text-decoration:none}.static-side .side-cat{color:var(--text);border-radius:10px;grid-template-columns:56px 1fr;align-items:center;gap:10px;padding:6px;font-weight:700;text-decoration:none;display:grid}.static-side .side-cat:hover{background:var(--surface2)}.static-side .side-cat img{border:1px solid var(--line);background:#fff;border-radius:8px}.static-side .side-cat small{color:var(--muted);font-weight:600;display:block}.side-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.side-grid img{aspect-ratio:1;object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;display:block}.side-cta{border-radius:var(--radius);background:var(--brand2);color:#fff;align-items:center;gap:12px;padding:16px;text-decoration:none;display:flex}.side-cta:hover{filter:brightness(1.06)}.contact-form{gap:14px;max-width:640px;display:grid}.contact-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.contact-form label{gap:6px;font-weight:700;display:grid}.contact-form input,.contact-form select,.contact-form textarea{border:2px solid var(--line);background:var(--card);color:var(--text);font:inherit;border-radius:12px;padding:10px 12px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:3px solid var(--brand2);outline-offset:1px}.contact-form .btn{justify-self:start}.contact-form .hp{width:1px;height:1px;position:absolute;left:-9999px}.form-msg{border-radius:12px;margin:0;padding:12px 14px;font-weight:700}.form-msg.ok{color:#2b8a3e;background:#d3f9d8}.form-msg.error{color:#c92a2a;background:#ffe3e3}@media (max-width:560px){.contact-row,.stat-row{grid-template-columns:1fr}}.swatch-chip{vertical-align:middle;border:1px solid #0000001f;border-radius:8px;place-items:center;min-width:52px;height:30px;padding:0 8px;font-size:.85rem;font-weight:800;display:inline-grid}.swatch-chip.small{min-width:44px;height:24px;font-size:.78rem}.family-nav{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.family-nav a{border:2px solid var(--line);background:var(--card);color:var(--text);border-radius:999px;padding:4px 12px;font-weight:700;text-decoration:none}.family-nav small{color:var(--muted)}.marker-group h2{border-bottom:2px solid var(--line);align-items:baseline;gap:10px;padding-bottom:6px;display:flex}.marker-group h2 small{color:var(--muted);font-size:.8rem;font-weight:600}.marker-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:14px 12px;margin:0;padding:0;list-style:none;display:grid}.marker-grid li{text-align:center;justify-items:center;gap:1px;display:grid}.marker-color{border:1px solid #0000001a;border-radius:12px;width:100%;height:64px;margin-bottom:6px;display:block;box-shadow:0 2px 6px #00000014}.marker-grid strong{font-size:.92rem}.marker-grid span:not(.marker-color){color:var(--muted);font-size:.78rem;line-height:1.25}@media (max-width:560px){.marker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.table-scroll{overflow-x:auto}.chart-table{border-collapse:collapse;background:var(--card);border:2px solid var(--line);border-radius:12px;width:100%}.chart-table th{text-align:left;background:var(--surface2);padding:10px 12px}.chart-table td{border-top:1px solid var(--line);white-space:nowrap;padding:8px 12px}.chart-table td span:not(.swatch-chip){color:var(--muted);margin-left:6px;font-size:.9rem}.match{border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:800;display:inline-block}.match-0{color:#2b8a3e;background:#d3f9d8}.match-1{color:#1971c2;background:#e7f5ff}.match-2{color:#a86b00;background:#fff3bf}.match-3{color:#c92a2a;background:#ffe3e3}.conversion{margin:0;padding:0;list-style:none}.conversion li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr) 56px;align-items:center;gap:10px;padding:10px 4px;display:grid}.conversion .arrow{text-align:center;color:var(--muted);font-size:1.2rem}.marker-cell{align-items:center;gap:12px;min-width:0;display:flex}.marker-cell>span:last-child{min-width:0;line-height:1.25;display:grid}.marker-cell strong{font-size:.95rem}.marker-cell small{color:var(--muted);font-size:.72rem}.marker-cell em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-style:normal;overflow:hidden}.marker-dot{border:1px solid #0000001a;border-radius:12px;flex:none;width:46px;height:46px}.pct{justify-self:end;font-size:.9rem;font-weight:800}.pct-0{color:#2b8a3e}.pct-1{color:#1971c2}.pct-2{color:#c27c00}.pct-3{color:#c92a2a}@media (max-width:560px){.conversion li{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr)}.conversion .pct{grid-column:1/-1;justify-self:start}.marker-dot{width:36px;height:36px}}.palette-full{background:var(--card);border:2px solid var(--line);border-radius:18px;margin:18px 0;padding:18px}.palette-full h3,.palette-full h2{margin:0 0 6px;font-size:1.15rem}.palette-full h3 a{color:var(--text);text-decoration:none}.palette-desc p{color:var(--muted);margin:0 0 12px;font-size:.95rem}.palette-bar.big{border-radius:14px;height:84px}.palette-swatches{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:12px 0;padding:0;list-style:none;display:grid}.palette-swatches li{align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.25;display:flex}.palette-swatches li>span:last-child{display:grid}.palette-swatches small{color:var(--muted);font-size:.72rem}.palette-swatches em{font-style:normal}.marker-dot.small{border-radius:6px;width:22px;height:22px}.tag-pill{background:var(--surface2);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:700}.coming-soon{border:2px dashed var(--brand2);background:color-mix(in srgb, var(--brand2) 8%, var(--card));border-radius:18px;margin:20px 0;padding:22px}.coming-soon strong{font-size:1.15rem}.coming-soon p{color:var(--muted)}.marker-toolbar{flex-wrap:wrap;justify-content:center;gap:8px;margin:16px 0 8px;display:flex}.marker-toolbar select{border:2px solid var(--line);background:var(--card);color:var(--text);font:inherit;border-radius:12px;padding:8px 12px;font-weight:700}.search-field{border:2px solid var(--line);background:var(--card);min-width:240px;color:var(--muted);border-radius:12px;align-items:center;gap:8px;padding:0 12px;display:flex}.search-field input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:8px 0}.search-field:focus-within{border-color:var(--brand2)}.marker-count{text-align:center;margin:18px 0 4px}.marker-count small{color:var(--muted)}.marker-grid button{width:100%;color:inherit;font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;justify-items:center;gap:1px;padding:0;display:grid}.marker-grid button:hover .marker-color,.marker-grid button:focus-visible .marker-color{transform:translateY(-2px);box-shadow:0 6px 14px #00000026}.marker-color{transition:transform .12s,box-shadow .12s}.marker-modal{z-index:50;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.marker-modal-box{background:var(--card);border-radius:20px;width:min(440px,100%);max-height:90vh;padding:20px;position:relative;overflow-y:auto;box-shadow:0 20px 50px #0000004d}.marker-modal-box h2{margin:12px 0 2px}.marker-modal-box h3{margin:16px 0 8px;font-size:1rem}.modal-swatch{border:1px solid #0000001a;border-radius:14px;height:120px}.modal-meta{color:var(--muted);margin:0 0 10px}.modal-matches{gap:8px;margin:0;padding:0;list-style:none;display:grid}.modal-matches li{grid-template-columns:22px 1fr auto;align-items:center;gap:10px;font-size:.9rem;display:grid}.icon-close{color:#222;cursor:pointer;background:#ffffffd9;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:12px;right:12px}.direction{justify-content:center;gap:8px;margin:10px 0;display:flex}.direction>*{border:2px solid var(--line);color:var(--text);background:var(--card);border-radius:999px;padding:7px 16px;font-weight:800;text-decoration:none}.direction .on{background:var(--brand2);border-color:var(--brand2);color:#fff}.conversion-head{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--line);grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr) 56px;gap:10px;padding:8px 4px;font-size:.78rem;font-weight:800;display:grid}.conversion-head span:last-child{text-align:right}@media (max-width:560px){.conversion-head{display:none}.search-field{flex:100%;min-width:0}}.gen{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:22px;display:grid}.gen-controls{background:var(--card);border:2px solid var(--line);border-radius:18px;gap:14px;padding:18px;display:grid}.gen-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gen-row.column{flex-direction:column;align-items:stretch}.gen-row.split{grid-template-columns:auto 1fr;gap:12px;display:grid}.gen-cell{gap:6px;display:grid}.gen-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800;display:block}.seg{flex-wrap:wrap;gap:4px;display:inline-flex}.seg button,.theme-grid button{border:2px solid var(--line);background:var(--bg);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:700}.seg button.on,.theme-grid button.on{background:var(--brand2);border-color:var(--brand2);color:#fff}.theme-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.gen-controls input{border:2px solid var(--line);background:var(--bg);color:var(--text);font:inherit;border-radius:12px;padding:9px 12px}.gen-controls input.invalid{border-color:#e03131}.stepper{border:2px solid var(--line);border-radius:12px;align-items:center;display:inline-flex;overflow:hidden}.stepper button{background:var(--bg);color:var(--text);cursor:pointer;border:0;padding:8px 10px}.stepper b{text-align:center;min-width:34px}.gen-go{width:100%;font-size:1.05rem}.gen-controls .hint{text-align:center;margin:0;font-size:.85rem}.gen-history{justify-content:center;margin:0}kbd{border:1px solid var(--line);background:var(--surface2);border-radius:6px;padding:1px 6px;font-size:.8rem}.gen-result{gap:14px;min-width:0;display:grid}.gen-head{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.gen-options{flex-wrap:wrap;align-items:end;gap:10px 16px;display:flex}.gen-options>span{gap:4px;display:grid}.gen-swatches{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.gen-swatches.vertical{grid-template-columns:1fr}.gen-swatches.vertical .gen-swatch{grid-template-columns:120px 1fr;align-items:center;gap:12px;display:grid}.gen-swatches.vertical .gen-color{height:70px}.gen-swatches.gray .gen-color,.gen-swatches.gray .gen-shades i{filter:grayscale()}.gen-color{border:1px solid #0000001a;border-radius:14px;justify-content:flex-end;gap:4px;height:110px;padding:6px;display:flex;position:relative}.gen-color button{color:#333;cursor:pointer;opacity:.75;background:#ffffffbf;border:0;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.gen-color button:hover,.gen-color button.on{opacity:1}.gen-color button.on{color:#fff;background:#222}.gen-swatch p{gap:1px;margin:6px 0 0;font-size:.85rem;line-height:1.3;display:grid}.gen-swatch small{color:var(--muted);font-weight:600}.gen-shades{gap:8px;font-size:.75rem!important;display:flex!important}.gen-shades span{align-items:center;gap:4px;display:inline-flex}.gen-shades i{border:1px solid #00000026;border-radius:4px;width:14px;height:14px}.gen-toggle{border:2px solid var(--line);background:var(--card);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;display:flex}.gen-toggle span{display:grid}.gen-toggle small{color:var(--muted)}.gen-actions{margin:0}.gen-note{margin:0;font-size:.8rem}@media (max-width:900px){.gen{grid-template-columns:1fr}}.marker-links{background:var(--card);border:2px solid var(--line);border-radius:18px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px 28px;margin-top:40px;padding:22px;display:grid}.marker-links section{align-content:start;gap:5px;display:grid}.marker-links h2{margin:0 0 6px;font-size:1.05rem}.tool{background:var(--card);border:2px solid var(--line);border-radius:18px;gap:16px;padding:20px;display:grid}.tool-inputs{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.tool-inputs label{gap:6px;font-weight:700;display:grid}.tool-inputs input:not([type=color]),.tool-inputs select{border:2px solid var(--line);background:var(--bg);color:var(--text);font:inherit;border-radius:10px;padding:9px 12px}.tool-inputs input[type=color]{border:2px solid var(--line);background:0 0;border-radius:10px;width:52px;height:42px;padding:0}.hex-input{width:110px;font-family:ui-monospace,monospace}.suggestions{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.suggestions button{border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.tool-source{align-items:center;gap:10px;margin:0;display:flex}.big-swatch{border:1px solid #00000026;border-radius:12px;width:44px;height:44px}.match-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.match-grid section{border:1px solid var(--line);border-radius:12px;padding:12px}.match-grid h3{margin:0 0 8px}.match-grid p{align-items:center;gap:8px;margin:6px 0;font-size:.92rem;display:flex}.palette-strip{border:2px solid var(--line);border-radius:18px;min-height:130px;display:flex;overflow:hidden}.palette-strip>div{flex-direction:column;flex:1;justify-content:flex-end;gap:2px;min-width:0;padding:10px;display:flex}.palette-strip strong{font-size:1rem}.palette-strip span{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.strip-name{color:#000000a6;background:#ffffffb3;border-radius:6px;align-self:flex-start;max-width:100%;padding:1px 6px}.codes{font-family:ui-monospace,monospace;font-size:1.05rem}.palette-cards{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.palette-card{background:var(--card);border:2px solid var(--line);color:var(--text);border-radius:16px;gap:6px;padding:12px;text-decoration:none;display:grid}.palette-card:hover{border-color:var(--brand)}.palette-card small{color:var(--muted)}.palette-bar{border-radius:10px;height:54px;display:flex;overflow:hidden}.palette-bar i{flex:1}.chip.on{background:var(--brand)}.swatch-sheet{color:#222;border:2px solid var(--line);background:#fff;border-radius:12px;margin:18px 0;padding:18px}.swatch-sheet h3{margin:12px 0 6px;font-size:1rem}.swatch-cells{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.swatch-cell{text-align:center;break-inside:avoid;justify-items:center;gap:2px;font-size:.75rem;display:grid}.swatch-box{aspect-ratio:1.4;border:1.5px solid #333;border-radius:6px;width:100%}.swatch-cell small{color:#666;line-height:1.1}.write-line{border-bottom:1px solid #999;width:80%;height:14px}.print-only{display:none}@media print{.print-only{margin:0 0 8px;display:block}.swatch-sheet{border:0;margin:0;padding:0}.swatch-cells{grid-template-columns:repeat(8,1fr);gap:6px}}.article-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:36px;display:grid}.article{min-width:0}.article h1{margin-top:.4em}.article>p{font-size:1.05rem}.byline{color:var(--muted);align-items:center;gap:8px;margin:0 0 18px;font-size:.9rem;display:flex}.byline .sep{opacity:.5}.pair{border-radius:var(--radius);border:2px solid var(--line);background:#fff;grid-template-columns:1fr 1fr;gap:0;display:grid;overflow:hidden}.pair img{aspect-ratio:1;object-fit:contain;background:#fff;width:100%;display:block}.pair-single{grid-template-columns:1fr;max-width:50%}.article>.pair{margin-bottom:18px}.related-box{border:2px solid var(--brand2);border-radius:var(--radius);text-align:center;margin:24px 0;padding:16px}.related-box strong{margin-bottom:10px;display:block}.related-box div{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.chip{background:var(--brand2);color:#fff;border-radius:8px;padding:6px 12px;font-size:.9rem;font-weight:700;text-decoration:none}.chip:hover{filter:brightness(1.1)}.print-help{flex-wrap:wrap;align-items:center;gap:6px;font-size:.95rem;display:flex}.items{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.item{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);text-align:center;flex-direction:column;align-items:center;padding:16px;display:flex;box-shadow:0 4px 14px #0000000f}.item img{aspect-ratio:1;object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;display:block}.item h3{margin:14px 0 6px;font-size:1.2rem}.item h3 a{color:var(--text);text-decoration:none}.item p{color:var(--muted);flex:1;margin:0 0 14px;font-size:.92rem}.btn-pdf,.btn-pdf-lg{color:#fff;background:linear-gradient(90deg,#1c7ed6,#22b8cf);border:0;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-pdf:hover{filter:brightness(1.1)}.book-download{text-align:center;margin:16px 0}.btn.btn-pdf-lg{border-radius:12px;padding:12px 16px;font-size:1rem}.btn.btn-pdf-lg:hover{color:#fff;background:linear-gradient(90deg,#1971c2,#1098ad)}.example{background:var(--card);border:2px dashed var(--line);border-radius:var(--radius);margin:18px 0;padding:10px}.example img{border-radius:10px;width:100%;display:block}.example figcaption{color:var(--muted);text-align:center;margin-top:6px;font-size:.9rem}.side{max-height:calc(100vh - 150px);position:sticky;top:130px;overflow-y:auto}.side-section{margin-bottom:22px}.side-section h3{background:var(--brand2);color:#fff;text-align:center;border-radius:8px;margin:0 0 6px;padding:8px 12px;font-size:1rem}.side-item{color:var(--link);border-radius:10px;grid-template-columns:120px 1fr;align-items:center;gap:10px;padding:6px;font-size:.92rem;font-weight:700;text-decoration:none;display:grid}.side-item:hover,.side-item.current{background:var(--surface2)}.side-item .pair{border-width:1px;border-radius:8px}.collections{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.collection{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);color:var(--text);flex-direction:column;gap:6px;padding:12px;text-decoration:none;transition:transform .15s,border-color .15s;display:flex}.collection:hover{border-color:var(--brand);transform:translateY(-3px)}.collection small{color:var(--muted)}@media (max-width:980px){.article-layout{grid-template-columns:1fr}.side{max-height:none;position:static}}@media (max-width:640px){.items{grid-template-columns:1fr}}@media print{.article-layout{display:block}.item{break-inside:avoid;box-shadow:none}}.dash-scope{--bg:#f5f6fa;--line:#e6e8f0;--surface:#fff;--surface2:#f7f8fb;--text:#1f2330;--muted:#6b7080;--primary:#5b5bd6;--primary-soft:#ececfd;--danger:#e03131;background:var(--bg);font-size:15px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .dash-scope{--bg:#111117;--line:#2a2a37;--surface:#1a1a23;--surface2:#21212c;--text:#ececf3;--muted:#9a9aae;--primary:#8b8bf5;--primary-soft:#26264a;--danger:#ff6b6b}}:root[data-theme=dark] .dash-scope{--bg:#111117;--line:#2a2a37;--surface:#1a1a23;--surface2:#21212c;--text:#ececf3;--muted:#9a9aae;--primary:#8b8bf5;--primary-soft:#26264a;--danger:#ff6b6b}.dash-scope h1,.dash-scope h2,.dash-scope h3{font-family:var(--font-nunito), system-ui, sans-serif;letter-spacing:-.01em;font-weight:800}.dash-scope h1{margin:0;font-size:1.65rem}.dash-scope h2{margin:0;font-size:1.02rem}.dash-scope a{color:var(--primary)}.dash-scope svg{flex:none}.dash-scope small{color:var(--muted)}.dash-scope .row{gap:8px}.dash{min-height:100vh;color:var(--text);grid-template-columns:252px minmax(0,1fr);display:grid}.dash-side{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:4px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.dash-brand{font-family:var(--font-fredoka);align-items:center;gap:10px;padding:4px 8px 16px;font-size:1.25rem;font-weight:700;line-height:1.1;text-decoration:none;display:flex;color:var(--text)!important}.dash-brand small{font-family:var(--font-nunito);font-size:.75rem;font-weight:700;display:block}.dash-new{background:var(--primary);box-shadow:0 2px 8px color-mix(in srgb, var(--primary) 35%, transparent);border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-bottom:14px;padding:10px;font-weight:700;text-decoration:none;display:flex;color:#fff!important}.dash-new:hover{filter:brightness(1.08)}.dash-nav{gap:2px;display:grid}.dash-link{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;font-weight:700;text-decoration:none;display:flex;color:var(--muted)!important}.dash-link:hover{background:var(--surface2);color:var(--text)!important}.dash-link.active{background:var(--primary-soft);color:var(--primary)!important}.dash-side-foot{border-top:1px solid var(--line);gap:2px;margin-top:auto;padding-top:12px;display:grid}.dash-main{min-width:0}.dash-content{align-content:start;gap:20px;max-width:1200px;margin:0 auto;padding:30px 32px 64px;display:grid}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.dash-head p{color:var(--muted);margin:4px 0 0}.dash-head-actions{flex-wrap:wrap;gap:8px;display:flex}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0;box-shadow:0 1px 2px #1018280a}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.panel-head p{color:var(--muted);margin:2px 0 0;font-size:.88rem}.panel-body{padding:18px}.panel-body.flush{padding:0}.stack{gap:20px;display:grid}.empty{color:var(--muted);text-align:center;margin:0;padding:24px}.dash-scope .btn{border:1px solid var(--line);background:var(--surface);color:var(--text);white-space:nowrap;border-radius:10px;padding:8px 14px;font-size:.92rem}.dash-scope .btn:hover{background:var(--surface2);color:var(--text)}.dash-scope .btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.dash-scope .btn-primary:hover{background:var(--primary);color:#fff;filter:brightness(1.08)}.dash-scope .btn-danger{color:var(--danger)}.dash-scope .btn-danger:hover{background:color-mix(in srgb, var(--danger) 10%, transparent);color:var(--danger)}.icon-btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:9px;place-items:center;width:34px;height:34px;padding:0;text-decoration:none;display:inline-grid;color:var(--muted)!important}.icon-btn:hover{background:var(--surface2);color:var(--text)!important}.icon-btn.danger:hover{border-color:color-mix(in srgb, var(--danger) 40%, transparent);color:var(--danger)!important}.icon-btn.on{background:#fab00526;border-color:#fab005;color:#e8a000!important}.icon-btn:disabled{opacity:.35;cursor:default}.stats{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:14px;align-items:center;gap:14px;padding:16px 18px;font-size:.9rem;text-decoration:none;transition:border-color .15s,transform .15s;display:flex;color:var(--muted)!important}.stat:hover{border-color:var(--primary);transform:translateY(-2px)}.stat strong{color:var(--text);font-size:1.6rem;line-height:1.15;display:block}.stat-icon{background:color-mix(in srgb, currentColor 13%, transparent);border-radius:12px;place-items:center;width:46px;height:46px;display:grid}.tone-indigo{color:#5b5bd6}.tone-green{color:#2f9e44}.tone-amber{color:#e8890c}.tone-sky{color:#1c7ed6}.tone-pink{color:#d6336c}.dash-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.thumbs{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:14px;display:grid}.thumb{gap:4px;font-size:.85rem;font-weight:700;text-decoration:none;display:grid;color:var(--text)!important}.thumb img{aspect-ratio:1;object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;transition:border-color .15s}.thumb:hover img{border-color:var(--primary)}.thumb span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.thumb small{align-items:center;gap:6px;font-weight:600;display:flex}.dot{background:#40c057;border-radius:50%;width:8px;height:8px;display:inline-block}.dot.off{background:#fab005}.bars{gap:14px;display:grid}.bar-row{gap:6px;font-size:.9rem;text-decoration:none;display:grid;color:var(--text)!important}.bar-row>span:first-child{justify-content:space-between;display:flex}.bar{background:var(--surface2);border-radius:99px;height:8px;display:block;overflow:hidden}.bar i{background:var(--primary);border-radius:99px;min-width:4px;height:100%;display:block}.list{display:grid}.list a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:.92rem;font-weight:700;text-decoration:none;display:flex;color:var(--text)!important}.list a:first-child{padding-top:0}.list a:last-child{border-bottom:0;padding-bottom:0}.list a span small{font-weight:500;display:block}.list a:hover>span{color:var(--primary)}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:10px;padding:14px 18px;display:flex}.input-icon{flex:1;min-width:200px;max-width:380px;position:relative}.input-icon svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.dash-scope .input-icon input:not([type=checkbox]):not([type=file]){width:100%;padding-left:36px}.dash-scope input:not([type=checkbox]):not([type=file]),.dash-scope select,.dash-scope textarea{border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;border-radius:10px;padding:9px 12px}.dash-scope textarea{resize:vertical}.dash-scope input:focus,.dash-scope select:focus,.dash-scope textarea:focus{outline:3px solid var(--primary-soft);border-color:var(--primary)}.dash-scope input[type=file]{border:1px dashed var(--line);background:var(--surface2);color:var(--text);font:inherit;border-radius:10px;padding:12px;font-size:.88rem}.dash-scope input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary)}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th{background:var(--surface2);color:var(--muted);letter-spacing:.05em;text-align:left;text-transform:uppercase;padding:10px 18px;font-size:.72rem;font-weight:800}.table td{border-top:1px solid var(--line);vertical-align:middle;padding:10px 18px;font-size:.93rem}.table tbody tr:hover{background:var(--surface2)}.table a{color:var(--text);text-decoration:none}.table a:hover{color:var(--primary)}.table .cell-thumb{width:52px;padding-right:0}.table img{border:1px solid var(--line);background:#fff;border-radius:8px;display:block}.actions-cell{justify-content:flex-end;gap:6px;display:flex}.badge{font:inherit;white-space:nowrap;cursor:pointer;border:0;border-radius:99px;padding:3px 10px;font-size:.76rem;font-weight:800}.badge-on{color:#2f9e44;background:#40c05729}.badge-off{color:#c27c00;background:#fab0052e}.pagination{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:12px 18px;font-size:.9rem;display:flex}.form{gap:16px;display:grid}.form label{gap:6px;font-size:.88rem;font-weight:700;display:grid}.form label small{font-weight:500}.form .check{align-items:center;gap:8px;font-weight:600;display:flex}.form-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-page{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.form-actions{justify-content:flex-end;gap:10px;display:flex}.form-article{gap:20px;display:grid}.sticky-save{background:linear-gradient(transparent, var(--bg) 35%);padding:14px 0;position:sticky;bottom:0}.previews{grid-template-columns:1fr 1fr;gap:12px;display:grid}.preview{aspect-ratio:1;object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:12px;width:100%}.alert{border-radius:10px;align-items:center;gap:10px;margin:0;padding:11px 14px;font-size:.93rem;font-weight:700;display:flex}.alert-ok{color:#2f9e44;background:#40c05724}.alert-error{background:color-mix(in srgb, var(--danger) 13%, transparent);color:var(--danger)}.picked{gap:8px;display:grid}.pick{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;grid-template-columns:52px minmax(0,1fr) repeat(4,34px);align-items:center;gap:8px;padding:6px 8px 6px 6px;font-weight:700;display:grid}.pick.hero{border-color:#fab005;box-shadow:inset 3px 0 #fab005}.pick img,.avail img{background:#fff;border-radius:8px}.pick em{color:var(--muted);font-weight:500}.picker{border-top:1px solid var(--line);gap:12px;margin-top:18px;padding-top:18px;display:grid}.available{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:10px;max-height:440px;display:grid;overflow-y:auto}.avail{border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:3px;padding:8px;font-size:.84rem;font-weight:700;display:flex}.avail:hover{border-color:var(--primary)}.avail small{font-size:.74rem;font-weight:500}.avail i{color:var(--primary);align-items:center;gap:4px;margin-top:4px;font-size:.78rem;font-style:normal;display:inline-flex}.related-pick{gap:10px;display:grid}.related-pick .check{align-items:center;gap:8px;font-weight:600;display:flex}.login-wrap{min-height:100vh;color:var(--text);place-items:center;padding:16px;display:grid}.login-card{text-align:center;width:100%;max-width:380px;padding:30px}.login-card h1{margin:10px 0 2px}.login-card>p{color:var(--muted);margin:0 0 20px}.login-card .form{text-align:left}.login-card .btn{width:100%}@media (max-width:960px){.dash{grid-template-columns:1fr}.dash-side{border-right:0;border-bottom:1px solid var(--line);flex-flow:wrap;align-items:center;gap:8px;height:auto;padding:12px 16px;position:static}.dash-brand{margin-right:auto;padding:0}.dash-new{order:2;margin:0;padding:8px 12px}.dash-nav{order:3;width:100%;display:flex;overflow-x:auto}.dash-link{white-space:nowrap;width:auto}.dash-side-foot{order:4;width:100%;margin:0;padding-top:6px;display:flex;overflow-x:auto}.dash-content{padding:20px 16px 48px}.dash-grid,.form-page{grid-template-columns:1fr}}@media (max-width:560px){.form-2,.previews{grid-template-columns:1fr}.dash-head-actions{width:100%}}.badge-live{color:#2f9e44;background:#40c05729}.badge-scheduled{color:#1c7ed6;background:#4dabf72e}.badge-draft{color:#c27c00;background:#fab0052e}.dot.dot-scheduled{background:#4dabf7}.dot.dot-draft{background:#fab005}.bulk-list{gap:6px;max-height:560px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.bulk-list li{border:1px solid var(--line);border-radius:10px;grid-template-columns:44px minmax(0,1fr) 34px;align-items:center;gap:10px;padding:6px 8px;display:grid}.bulk-list img{object-fit:contain;background:#fff;border-radius:6px;width:44px;height:44px}.bulk-list span{gap:2px;min-width:0;display:grid}.bulk-list small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dash-scope .bulk-list input{padding:5px 8px}.bulk-done{border-color:#40c05773!important}.bulk-done svg{color:#2f9e44}.bulk-error{border-color:color-mix(in srgb, var(--danger) 45%, transparent)!important}.bulk-error small,.bulk-error>svg{color:var(--danger)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin{animation:none}}.dash-scope textarea.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem;line-height:1.55}.help code{background:var(--surface2);border-radius:6px;padding:1px 6px;font-size:.86rem}.help ul{margin:6px 0 0;padding-left:18px}.help li{margin:4px 0}.messages{display:grid}.message{border-top:1px solid var(--line);gap:8px;padding:16px 18px;display:grid}.message:first-child{border-top:0}.message.unread{box-shadow:inset 3px 0 0 var(--primary);background:color-mix(in srgb, var(--primary) 5%, transparent)}.message header{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.message p{white-space:pre-wrap;margin:0}.message .actions-cell{justify-content:flex-start}.form-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.rules{border:1px dashed var(--line);border-radius:12px;gap:12px;margin:0;padding:14px 16px;display:grid}.rules legend{padding:0 6px;font-size:.88rem;font-weight:700}.rules legend small{font-weight:500}@media (max-width:560px){.form-3{grid-template-columns:1fr}}
