:root{--bg:#1e3325;--paper:#243d2c;--card:#2b4a35;--bd:#8b6a3a;--tx:#f0ecd8;--dim:#c4c0a8;--hd:#ffffff;--ac:#f8e17b;--ac2:#ef6b83;--ac3:#7ec8e3;--mw:1100px}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:"Kalam","Caveat","Comic Neue","PingFang SC","Noto Sans SC",cursive,sans-serif;background:var(--bg);color:var(--tx);line-height:1.85;font-size:16.5px;
background-image:radial-gradient(circle at 20% 30%,#ffffff08 0 1px,transparent 2px),radial-gradient(circle at 70% 60%,#ffffff08 0 1px,transparent 2px);background-size:80px 80px,60px 60px}
a{color:var(--ac);text-decoration:underline wavy var(--ac);text-underline-offset:4px}a:hover{color:var(--ac3)}
h1,h2,h3,h4{color:var(--hd);line-height:1.24;font-weight:700;font-family:"Kalam","Caveat","PingFang SC",cursive,sans-serif;text-shadow:1px 1px 0 #00000040}
.wrap{max-width:var(--mw);margin:0 auto;padding:0 24px}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;background:var(--ac);color:#000;padding:8px 14px}
.disclaimer-bar{background:#00000040;color:var(--ac);font-size:13px;text-align:center;padding:8px 12px;letter-spacing:1.5px;border-bottom:6px solid var(--bd)}
.site-header{background:var(--paper);border-bottom:8px solid var(--bd);position:relative;box-shadow:inset 0 -14px 0 #00000030}
.nav{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;max-width:var(--mw);margin:0 auto;padding:18px 24px}
.brand{display:inline-flex;align-items:center;gap:12px;font-weight:700;font-size:26px;color:var(--hd);font-family:"Kalam",cursive}
.brand .dot{width:44px;height:44px;background:transparent;border:3px dashed var(--ac);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--ac);font-family:"Kalam",cursive;font-weight:700;transform:rotate(-8deg)}
.brand .dot::before{content:"G"}
.nav-links{display:flex;gap:6px;flex-wrap:wrap}
.nav-links a{color:var(--tx);font-size:15px;padding:6px 14px;border:0;text-decoration:none;font-family:"Kalam",cursive;font-weight:700}
.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--ac);text-decoration:underline wavy var(--ac);text-underline-offset:4px}
.hero{padding:60px 0 34px;border-bottom:3px dashed #ffffff30;position:relative}
.hero::after{content:"Today's Topic ↓";position:absolute;top:30px;right:36px;color:var(--ac2);font-family:"Caveat",cursive;font-size:22px;transform:rotate(-6deg)}
.badge{display:inline-block;color:var(--bg);background:var(--ac);padding:5px 20px;font-size:14px;letter-spacing:2px;margin-bottom:22px;font-family:"Kalam",cursive;font-weight:700;transform:rotate(-2deg);border:2px solid #00000040}
.hero h1{font-size:clamp(32px,6vw,58px);margin-bottom:20px;max-width:22ch;font-weight:700}
.hero h1 em{font-style:normal;color:var(--ac);text-decoration:underline wavy var(--ac2);text-underline-offset:8px;text-decoration-thickness:3px}
.lead{color:var(--dim);max-width:680px;margin-bottom:26px;font-size:1.1rem;font-family:"Caveat",cursive;font-size:1.34rem;line-height:1.6}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-block;padding:12px 28px;background:var(--ac);color:var(--bg);font-weight:700;font-size:15px;letter-spacing:1.5px;font-family:"Kalam",cursive;border:0;text-decoration:none;border-radius:24px;box-shadow:0 4px 0 #b19230,inset 0 -3px 0 #00000018}
.btn:hover{transform:translateY(2px);box-shadow:0 2px 0 #b19230;color:var(--bg);text-decoration:none}
.btn-ghost{background:transparent;color:var(--ac);border:3px dashed var(--ac);box-shadow:none;border-radius:24px;padding:9px 25px}.btn-ghost:hover{background:var(--ac);color:var(--bg)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px}
.stats div{background:transparent;border:2.5px dashed var(--ac3);padding:20px 14px;text-align:center;border-radius:14px;position:relative}
.stats div:nth-child(2){border-color:var(--ac);border-style:dotted}
.stats div:nth-child(3){border-color:var(--ac2)}
.stats div:nth-child(4){border-color:#a3e635;border-style:dotted}
.stats h3{font-size:2rem;color:var(--hd);font-family:"Kalam",cursive;font-weight:700}.stats p{color:var(--dim);font-size:.95rem;font-family:"Caveat",cursive;font-size:1.1rem}
.section{padding:56px 0;border-bottom:3px dashed #ffffff20}
.section h2{font-size:clamp(26px,4.4vw,42px);margin-bottom:14px;color:var(--hd)}
.section h2::before{content:"✎ ";color:var(--ac);font-family:"Caveat",cursive}
.section-sub{color:var(--dim);margin-bottom:28px;max-width:700px;font-family:"Caveat",cursive;font-size:1.2rem}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(258px,1fr))}
.card{background:var(--card);padding:24px 26px;position:relative;border-radius:12px;border:2px solid transparent;background-clip:padding-box}
.card::before{content:attr(data-plate);position:absolute;top:-14px;left:20px;background:var(--paper);color:var(--ac);padding:2px 14px;font-family:"Caveat",cursive;font-size:16px;letter-spacing:1.5px;border:2px dashed var(--ac);border-radius:16px}
.card:nth-child(even)::before{color:var(--ac2);border-color:var(--ac2)}
.card:nth-child(3n)::before{color:var(--ac3);border-color:var(--ac3)}
.card h3{font-size:1.14rem;margin-bottom:10px;color:var(--ac)}
.card:nth-child(even) h3{color:var(--ac2)}
.card:nth-child(3n) h3{color:var(--ac3)}
.card p{color:var(--tx);font-size:.98rem}
.prose{background:var(--card);padding:30px 32px;position:relative;border-radius:12px;border:3px dashed var(--bd)}
.prose::before{content:"Chalk Notes";position:absolute;top:-16px;left:26px;background:var(--bg);color:var(--ac);padding:2px 14px;font-family:"Caveat",cursive;font-size:18px;letter-spacing:1.5px}
.prose h2{font-size:1.5rem}.prose h2::before{content:""}
.prose p{margin-bottom:14px}
.faq details{background:transparent;border:2px dashed var(--ac3);margin-bottom:12px;padding:2px 20px;border-radius:12px}
.faq details:nth-of-type(even){border-color:var(--ac);border-style:dotted}
.faq details:nth-of-type(3n){border-color:var(--ac2)}
.faq summary{cursor:pointer;padding:14px 0;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px;font-family:"Kalam",cursive;font-size:1.1rem;color:var(--hd)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"Q · ";color:var(--ac2);font-family:"Caveat",cursive}
.faq summary::after{content:"▽";color:var(--ac)}
.faq details[open] summary::after{content:"△"}
.faq p{padding:0 0 16px;color:var(--dim);font-family:"Caveat",cursive;font-size:1.1rem}
.topic-links{display:flex;gap:12px;flex-wrap:wrap}
.topic-links a{background:transparent;border:3px dashed var(--ac);padding:9px 20px;font-size:15px;color:var(--ac);font-family:"Kalam",cursive;font-weight:700;text-decoration:none;border-radius:22px}
.topic-links a:nth-child(even){border-color:var(--ac3);color:var(--ac3);border-style:dotted}
.topic-links a:hover{background:var(--ac);color:var(--bg);border-style:solid}
.breadcrumb{font-size:14px;color:var(--dim);padding:20px 0 0;font-family:"Caveat",cursive;font-size:1.05rem}
.site-footer{background:var(--paper);border-top:8px solid var(--bd);margin-top:0;padding:44px 0 22px;box-shadow:inset 0 14px 0 #00000030}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:26px;margin-bottom:22px}
.footer-grid h4{color:var(--ac);font-family:"Kalam",cursive;font-size:16px;margin-bottom:10px}
.footer-grid a{display:block;color:var(--dim);font-size:14px;margin-bottom:6px;text-decoration:none;font-family:"Caveat",cursive;font-size:1.05rem}
.footer-bottom{border-top:2px dashed #ffffff20;padding-top:16px;text-align:center;color:var(--dim);font-size:13px;font-family:"Caveat",cursive}
@media(max-width:820px){.stats{grid-template-columns:1fr 1fr}}
