:root{--bg:#f8f9fb;--surface:#ffffff;--fg:#23263b;--muted:#5f6478;--accent:#4f46e5;--accent-dark:#4338ca;--accent-soft:#eef0ff;--sun:#ffb703;--sun-soft:#fff3d6;--mint:#2ec4b6;--mint-soft:#e0f7f5;--rose:#ff6b9d;--rose-soft:#ffe3ee;--border:#e7e9f0;--shadow-sm:0 1px 3px rgba(35,38,59,0.08);--shadow-md:0 8px 24px rgba(35,38,59,0.12);--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:var(--fg);background:var(--bg);min-height:100vh;display:flex;flex-direction:column;line-height:1.6}main{flex:1 1;max-width:1080px;margin:0 auto;padding:2.5rem 1.25rem;width:100%}h1{font-size:2rem;line-height:1.25;margin:0 0 1rem}h2{font-size:1.35rem;line-height:1.3}a{color:var(--accent)}.site-header{justify-content:space-between;gap:1rem;padding:.9rem 2rem;background:var(--surface);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:50}.logo,.site-header{display:flex;align-items:center}.logo{font-weight:600;font-size:1.15rem;text-decoration:none;color:var(--fg);gap:.6rem;letter-spacing:-.02em}.logo .logo-img{width:36px;height:28px;object-fit:contain;border-radius:5px}.logo .logo-text{font-weight:500}.logo .logo-accent{color:#fd9a05;font-weight:700}.site-header nav{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.site-header nav a{text-decoration:none;color:var(--muted);font-weight:600;font-size:.95rem;padding:.35rem .2rem;border-bottom:2px solid transparent}.site-header nav a:hover{color:var(--accent)}.btn-logout{background:none;border:1.5px solid var(--border);color:var(--muted);padding:.4rem .9rem;border-radius:999px;font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit}.btn-logout:hover{border-color:var(--accent);color:var(--accent)}.btn{display:inline-block;background:var(--accent);color:#fff;padding:.7rem 1.6rem;border-radius:999px;border:none;font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;text-decoration:none;box-shadow:0 4px 14px rgba(108,92,231,.35);transition:transform .12s,box-shadow .12s,background .12s}.btn:hover{background:var(--accent-dark);transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:wait;transform:none}.btn-secondary{background:var(--surface);color:var(--accent);border:2px solid var(--accent);box-shadow:none}.btn-secondary:hover{background:var(--accent-soft)}.hero{background:linear-gradient(135deg,var(--accent-soft) 0,#f6f7fd 60%,#fdfdff 100%);border:1px solid var(--border);border-radius:24px;padding:3rem 2.5rem;margin-bottom:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.hero h1{font-size:2.3rem;margin:0 0 .75rem}.hero p{font-size:1.1rem;color:var(--muted);max-width:52ch;margin:0 0 1.5rem}.hero-emoji{font-size:5rem;line-height:1;opacity:.9}.kids-section{background:linear-gradient(135deg,var(--sun-soft) 0,var(--rose-soft) 55%,var(--mint-soft) 100%);border-radius:24px;padding:2rem 2rem 2.25rem;margin-top:3rem}.kids-section .section-title{font-size:1.5rem;margin-bottom:.25rem}.kids-section .section-sub{margin-bottom:1.25rem}.kids-section .product-card{border:none}.section-title{display:flex;align-items:baseline;gap:.75rem;margin:0 0 .25rem}.section-sub{color:var(--muted);margin:0 0 1.5rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1.5rem;gap:1.5rem}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:inherit;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.product-cover{height:150px;display:grid;place-items:center;font-size:4rem}.cover-online{background:linear-gradient(135deg,var(--accent-soft),#dfe3fb)}.cover-download{background:linear-gradient(135deg,#eaf3f2,#d8ebe8)}.cover-app{background:linear-gradient(135deg,#eef1f6,#dfe4ee)}.cover-kids-online{background:linear-gradient(135deg,#e5defc,#d3c8fa)}.cover-kids-download{background:linear-gradient(135deg,var(--mint-soft),#bdeee7)}.cover-kids-app{background:linear-gradient(135deg,var(--sun-soft),#ffe09e)}.product-body{padding:1.1rem 1.25rem 1.35rem;display:flex;flex-direction:column;gap:.5rem;flex:1 1}.product-body h2{margin:0;font-size:1.15rem}.product-body p{margin:0;color:var(--muted);font-size:.92rem;flex:1 1}.badge{align-self:flex-start;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.2rem .65rem;border-radius:999px}.badge-online{background:var(--accent-soft);color:var(--accent-dark)}.badge-download{background:var(--mint-soft);color:#1a8d81}.badge-app{background:var(--sun-soft);color:#b07400}.product-cta{color:var(--accent);font-weight:700;font-size:.92rem}.product-detail{display:grid;grid-template-columns:1fr 1.4fr;grid-gap:2.5rem;gap:2.5rem;align-items:start}@media (max-width:760px){.product-detail{grid-template-columns:1fr}}.product-detail-cover{border-radius:24px;min-height:280px;display:grid;place-items:center;font-size:7rem;box-shadow:var(--shadow-sm)}.product-detail h1{margin:.25rem 0 .75rem}.product-detail .description{color:var(--muted);font-size:1.05rem;margin-bottom:1.75rem}.perks{list-style:none;padding:0;margin:1.75rem 0 0;display:grid;grid-gap:.6rem;gap:.6rem}.perks li{display:flex;gap:.6rem;align-items:flex-start;color:var(--muted);font-size:.95rem}.perks li:before{content:"✓";color:var(--mint);font-weight:800}.auth-card{max-width:420px;margin:1rem auto;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:2rem 2rem 2.25rem;box-shadow:var(--shadow-sm)}.auth-card h1{font-size:1.6rem}.auth-card h2{font-size:1.05rem;color:var(--muted);font-weight:600}form.auth-form{display:flex;flex-direction:column;gap:.8rem}form.auth-form input{padding:.7rem .95rem;border:1.5px solid var(--border);border-radius:12px;font-size:1rem;font-family:inherit;background:var(--bg)}form.auth-form input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.form-error{color:#d6336c;margin:0;font-size:.9rem}.divider{display:flex;align-items:center;gap:.8rem;color:var(--muted);font-size:.85rem;margin:1.5rem 0}.divider:after,.divider:before{content:"";flex:1 1;border-top:1px solid var(--border)}.purchase-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm)}.purchase-card h2{margin:0 0 .5rem}.purchase-card ul{padding-left:1.2rem}.license-key{word-break:break-all;display:block;padding:.75rem 1rem;background:var(--accent-soft);border-radius:10px;font-size:.82rem;font-family:ui-monospace,Consolas,monospace}.empty-state{text-align:center;padding:3rem 1rem;color:var(--muted);background:var(--surface);border:2px dashed var(--border);border-radius:20px}.empty-state .empty-emoji{font-size:3rem;display:block;margin-bottom:.75rem}.locked{text-align:center;max-width:480px;margin:2rem auto;background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:3rem 2rem;box-shadow:var(--shadow-sm)}.locked .locked-emoji{font-size:3.5rem;display:block;margin-bottom:.75rem}.locked p{color:var(--muted)}.admin-layout{display:grid;grid-template-columns:200px 1fr;grid-gap:2rem;gap:2rem;max-width:1200px;margin:0 auto;padding:2rem 1.25rem;width:100%}.admin-nav{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);height:-moz-fit-content;height:fit-content;position:-webkit-sticky;position:sticky;top:5rem}.admin-nav a{padding:.6rem .9rem;border-radius:8px;text-decoration:none;color:var(--fg);font-weight:500;font-size:.95rem}.admin-nav a:hover{background:var(--accent-soft);color:var(--accent)}.admin-nav .admin-back{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border);color:var(--muted)}.admin-content h1{margin-top:0}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:2rem}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;text-align:center}.stat-value{display:block;font-size:2rem;font-weight:700;color:var(--accent)}.stat-label{color:var(--muted);font-size:.9rem}.admin-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.admin-table td,.admin-table th{padding:.9rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.admin-table th{background:var(--bg);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover{background:var(--bg)}.status{display:inline-block;padding:.25rem .65rem;border-radius:999px;font-size:.8rem;font-weight:600}.status-active,.status-paid{background:var(--mint-soft);color:#1a8d81}.status-inactive,.status-pending{background:var(--sun-soft);color:#b07400}.status-failed,.status-refunded{background:var(--rose-soft);color:#c2255c}.btn-small{display:inline-block;padding:.35rem .8rem;font-size:.85rem;background:var(--accent-soft);color:var(--accent);border-radius:6px;text-decoration:none;font-weight:600}.btn-small:hover{background:var(--accent);color:#fff}.admin-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;max-width:640px}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;margin-bottom:.4rem;font-size:.95rem}.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{width:100%;padding:.65rem .9rem;border:1.5px solid var(--border);border-radius:10px;font-size:1rem;font-family:inherit;background:var(--bg)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.form-group small{display:block;margin-top:.3rem;color:var(--muted);font-size:.85rem}.form-group.checkbox label{display:flex;align-items:center;gap:.5rem;font-weight:500;cursor:pointer}.form-group.checkbox input{width:1.1rem;height:1.1rem;accent-color:var(--accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.form-actions{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}@media (max-width:768px){.admin-layout{grid-template-columns:1fr}.admin-nav{flex-direction:row;flex-wrap:wrap;position:static}.form-row{grid-template-columns:1fr}}.legal-page{max-width:720px;margin:0 auto}.legal-page h1{font-size:1.8rem;margin-bottom:.5rem}.legal-updated{color:var(--muted);font-size:.9rem}.legal-page section,.legal-updated{margin-bottom:2rem}.legal-page h2{font-size:1.2rem;margin:1.5rem 0 .75rem;color:var(--fg)}.legal-page ol,.legal-page ul{padding-left:1.5rem;margin:.5rem 0}.legal-page li{margin-bottom:.4rem}.legal-page li ul{margin-top:.4rem}.legal-table{width:100%;border-collapse:collapse;font-size:.9rem;margin:1rem 0}.legal-table td,.legal-table th{padding:.6rem .8rem;text-align:left;border:1px solid var(--border)}.legal-table th{background:var(--bg);font-weight:600}.site-footer{margin-top:3rem;padding:2rem;border-top:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:.875rem;text-align:center}.site-footer nav{display:flex;gap:1.5rem;justify-content:center;margin-bottom:.75rem;flex-wrap:wrap}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--accent)}