:root{
  --bg:#0a0d16;--panel:#111827;--panel2:#1c2438;--panel3:#242f45;
  --border:rgba(255,255,255,.07);--border2:rgba(255,255,255,.13);
  --accent:#6366f1;--accent2:#f59e0b;--accent3:#10b981;--accent4:#ef4444;
  --text:#e8edf8;--muted:#8b93a0;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html{scroll-behavior:smooth;}
body{min-height:100%;background:var(--bg);color:var(--text);font-family:'Inter',sans-serif;line-height:1.6;}

.hero{padding:40px 16px 28px;text-align:center;background:linear-gradient(180deg,rgba(99,102,241,.08) 0%,transparent 100%);}
.hero-badge{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid rgba(99,102,241,.3);border-radius:999px;padding:4px 12px;margin-bottom:12px;}
.hero h1{font-family:'Fredoka',cursive;font-size:clamp(1.6rem,5vw,2.4rem);font-weight:700;color:white;margin-bottom:8px;}
.hero p{font-size:.88rem;color:var(--muted);max-width:560px;margin:0 auto;line-height:1.7;}

.main{max-width:780px;margin:0 auto;padding:0 16px 80px;width:100%;}

/* TABLE OF CONTENTS */
.toc{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:20px;margin-bottom:32px;}
.toc-title{font-family:'Fredoka',cursive;font-size:1rem;font-weight:600;color:var(--accent);margin-bottom:12px;}
.toc-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px;}
.toc-list a{font-size:.78rem;color:var(--muted);text-decoration:none;padding:4px 8px;border-radius:6px;transition:all .12s;display:block;}
.toc-list a:hover{color:var(--text);background:var(--panel2);}

/* SECTIONS */
.guide-section{margin-bottom:36px;}
.section-heading{font-family:'Fredoka',cursive;font-size:1.2rem;font-weight:700;color:var(--accent);margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px;}
.section-heading .emoji{font-size:1.4rem;}
.guide-section p{font-size:.88rem;color:var(--text);margin-bottom:12px;line-height:1.7;}
.guide-section ul,.guide-section ol{margin:10px 0 14px 20px;}
.guide-section li{font-size:.85rem;color:var(--text);margin-bottom:6px;line-height:1.6;}
.guide-section li strong{color:var(--accent2);}

.info-box{background:rgba(99,102,241,.06);border:1px solid rgba(99,102,241,.15);border-radius:12px;padding:16px;margin:14px 0;}
.info-box h4,.info-box h3{font-family:'Fredoka',cursive;font-size:.9rem;color:var(--accent);margin-bottom:6px;}
.info-box p,.info-box li{font-size:.82rem;color:var(--muted);}

.warn-box{background:rgba(245,158,11,.06);border:1px solid rgba(245,158,11,.15);border-radius:12px;padding:16px;margin:14px 0;}
.warn-box h4{font-family:'Fredoka',cursive;font-size:.9rem;color:var(--accent2);margin-bottom:6px;}
.warn-box p{font-size:.82rem;color:var(--muted);}

.success-box{background:rgba(16,185,129,.06);border:1px solid rgba(16,185,129,.15);border-radius:12px;padding:16px;margin:14px 0;}
.success-box h4,.success-box h3{font-family:'Fredoka',cursive;font-size:.9rem;color:var(--accent3);margin-bottom:6px;}
.success-box p{font-size:.82rem;color:var(--muted);}

/* AGE TABLE */
.age-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:.82rem;}
.age-table th{font-family:'Fredoka',cursive;font-weight:600;color:var(--accent);text-align:left;padding:10px 12px;border-bottom:2px solid var(--border2);background:var(--panel2);}
.age-table td{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--text);}
.age-table tr:hover td{background:var(--panel2);}
.age-tag{display:inline-block;font-size:.55rem;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em;}
.age-tag.easy{background:rgba(16,185,129,.15);color:var(--accent3);}
.age-tag.medium{background:rgba(245,158,11,.15);color:var(--accent2);}
.age-tag.advanced{background:rgba(99,102,241,.15);color:var(--accent);}

/* FAQ */
.faq-item{background:var(--panel);border:1px solid var(--border);border-radius:12px;margin-bottom:10px;overflow:hidden;}
.faq-q{padding:14px 16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .12s;}
.faq-q:hover{background:var(--panel2);}
.faq-q h4,.faq-q h3{font-family:'Fredoka',cursive;font-size:.88rem;font-weight:600;color:var(--text);flex:1;}
.faq-q .arrow{font-size:.7rem;color:var(--muted);transition:transform .2s;}
.faq-item.open .arrow{transform:rotate(180deg);}
.faq-a{padding:0 16px 14px;font-size:.82rem;color:var(--muted);line-height:1.7;display:none;}
.faq-item.open .faq-a{display:block;}

/* CHECKLIST */
.checklist-section{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:24px;margin:32px 0;}
.checklist-title{font-family:'Fredoka',cursive;font-size:1.1rem;font-weight:600;color:var(--accent2);margin-bottom:14px;}
.checklist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;}
.check-item{display:flex;align-items:flex-start;gap:8px;font-size:.82rem;color:var(--text);padding:6px 0;}
.check-box{width:18px;height:18px;border:2px solid var(--border2);border-radius:4px;flex-shrink:0;margin-top:2px;cursor:pointer;transition:all .12s;display:flex;align-items:center;justify-content:center;}
.check-box.checked{background:var(--accent3);border-color:var(--accent3);}
.check-box.checked::after{content:'âœ“';color:#fff;font-size:.7rem;font-weight:700;}

.print-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:10px;border:1px solid var(--border2);background:var(--panel2);color:var(--text);font-family:'Fredoka',cursive;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .12s;margin-top:16px;}
.print-btn:hover{background:var(--panel3);border-color:var(--accent);}

@media print{
  body{background:#fff;color:#000;}
  .hero,.toc,.faq-item .faq-a{display:block !important;}
  .faq-a{display:block !important;}
  .nav,.footer,.print-btn{display:none !important;}
  .guide-section{break-inside:avoid;}
}