@import url('https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;700&family=Gaegu:wght@400;700&family=Nunito:wght@400;700;800&display=swap');
:root{--cream:#fff6ea;--plum:#6b4c93;--terracotta:#d96c4a;--sage:#5e9475;--butter:#f7d27a;--ink:#2b2438;--paper:#fffdf9;--shadow:0 14px 30px #2b24381c;--radius:24px;font-family:Nunito,Arial,sans-serif;color:var(--ink);background:var(--cream)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;line-height:1.5;background:var(--cream)}body.big-text{font-size:112%}body.dyslexia{font-family:'Atkinson Hyperlegible',Arial,sans-serif}body.calm *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:var(--ink);color:white;padding:10px;z-index:10}a{color:inherit;text-decoration:none}button,.button,input,select,textarea{font:inherit}button,.button{min-height:48px;border:0;border-radius:999px;padding:12px 18px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button{background:var(--plum);color:white}.button.alt{background:var(--terracotta)}.button.ghost{background:transparent;color:var(--plum);border:2px solid var(--plum)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:4px solid var(--butter);outline-offset:3px}.shell{max-width:1160px;margin:auto;padding:0 20px}.top{background:var(--ink);color:#fff;padding:8px 20px;text-align:center;font-size:.9rem}.top strong{color:var(--butter)}header{border-bottom:2px solid #2b243812;position:sticky;top:0;background:#fff6eaf2;backdrop-filter:blur(10px);z-index:5}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-weight:800;color:var(--plum);font-size:1.3rem}.brand span{font-family:Gaegu,cursive;color:var(--terracotta);font-size:1.6rem}.navlinks{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-weight:800;font-size:.9rem}.navlinks a{padding:10px;border-radius:12px}.navlinks a:hover{background:var(--butter)}.settings{display:flex;gap:6px;flex-wrap:wrap}.settings button{min-height:40px;padding:7px 10px;background:var(--paper);color:var(--ink);font-size:.78rem;border:1px solid #2b243820}.hero{padding:76px 0 52px;display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}.eyebrow{font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--sage);font-size:.82rem}.hero h1{font-size:clamp(2.7rem,7vw,5.7rem);line-height:.98;margin:14px 0 20px;letter-spacing:-.04em}.hero h1 em{font-family:Gaegu,cursive;color:var(--terracotta);font-style:normal;font-size:1.2em}.lede{font-size:1.2rem;max-width:590px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.hero-art{min-height:390px;position:relative;background:var(--sage);border-radius:40px 40px 90px 40px;box-shadow:var(--shadow);overflow:hidden;padding:26px;transform:rotate(1deg)}.hero-art:before{content:'';position:absolute;width:220px;height:220px;border-radius:50%;background:var(--butter);right:-50px;top:-50px}.meeting{position:relative;margin:80px auto 0;max-width:320px;background:var(--paper);border-radius:28px;padding:22px;box-shadow:var(--shadow);transform:rotate(-4deg)}.meeting h3{margin:0}.dot{display:inline-block;width:15px;height:15px;border-radius:50%;background:var(--terracotta);margin-right:5px}.section{padding:58px 0}.section h2{font-size:clamp(2rem,5vw,3.5rem);line-height:1;margin:0 0 16px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--paper);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);border:1px solid #2b24380e}.card h3{margin-top:0}.tilt:hover{transform:rotate(-1deg) translateY(-4px);transition:transform .2s}.note{background:var(--butter);transform:rotate(-2deg);box-shadow:var(--shadow);padding:22px;border-radius:4px 16px 10px 16px}.tape{position:relative}.tape:before{content:'';position:absolute;top:-10px;left:35%;width:75px;height:23px;background:#fff8;transform:rotate(3deg)}.tool-icon{font-size:2rem}.progress{height:12px;background:#2b24381a;border-radius:99px;overflow:hidden}.progress span{display:block;height:100%;background:var(--terracotta);width:42%}.pagehead{padding:52px 0 30px;max-width:760px}.pagehead h1{font-size:clamp(2.4rem,6vw,4.8rem);line-height:1;margin:12px 0}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}input,select,textarea{width:100%;border:2px solid #2b243825;border-radius:14px;background:#fff;padding:12px;color:var(--ink);min-height:48px}textarea{min-height:110px}.stack{display:grid;gap:14px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tool-shell{max-width:800px}.result{background:#f7d27a55;border-radius:18px;padding:18px;margin-top:18px}.muted{opacity:.72}.tag{display:inline-block;background:#5e947522;color:var(--sage);padding:4px 9px;border-radius:99px;font-weight:800;font-size:.82rem;margin:3px}.product-art{height:180px;border-radius:18px;background:var(--sage);display:grid;place-items:center;color:white;font-weight:800;font-size:1.35rem;text-align:center;padding:20px}.product-art.terracotta{background:var(--terracotta)}.product-art.plum{background:var(--plum)}.product-art.butter{background:var(--butter);color:var(--ink)}footer{margin-top:60px;background:var(--ink);color:#fff;padding:30px 0;font-size:.9rem}.footergrid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footergrid a{color:var(--butter)}.print-only{display:none}.confetti{position:fixed;inset:0;pointer-events:none;z-index:20}.month-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.month{padding:18px;background:var(--paper);border-radius:16px;min-height:130px}.timer{font-size:4rem;font-weight:800;text-align:center;color:var(--plum)}@media(max-width:800px){.hero{grid-template-columns:1fr;padding-top:44px}.grid{grid-template-columns:1fr 1fr}.nav{align-items:flex-start;padding:14px 0;flex-wrap:wrap}.navlinks{order:3;width:100%;overflow:auto;flex-wrap:nowrap}.formgrid{grid-template-columns:1fr}.month-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.grid{grid-template-columns:1fr}.hero-art{min-height:300px}.section{padding:40px 0}.shell{padding:0 16px}.settings{width:100%}.settings button{flex:1}.month-grid{grid-template-columns:1fr 1fr}}
@media print{header,.top,.actions,footer,.no-print{display:none!important}.print-only{display:block}body{background:#fff}.card,.note{box-shadow:none;border:1px solid #999}}
.product-art img{width:100%;height:150px;object-fit:contain;border-radius:14px}.daily-paper{background:var(--paper);max-width:620px;min-height:360px;padding:42px 32px;transform:rotate(-1deg);box-shadow:10px 12px 0 #2b24381a;position:relative}.daily-paper:after{content:'';position:absolute;right:18px;bottom:12px;width:80px;height:24px;background:#fff8;transform:rotate(-8deg)}.daily-gag{font-size:clamp(2rem,6vw,4rem);font-weight:800;line-height:1.02;max-width:520px}.daily-paper.ripped{animation:rip .5s ease}.wall{min-height:500px;background:#b77d4b33;border:12px solid #a56f42;border-radius:14px;padding:28px;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;box-shadow:inset 0 0 0 5px #7d522f33}.wall-note{min-height:150px;padding:20px;background:var(--butter);box-shadow:var(--shadow);transform:rotate(var(--tilt));position:relative;color:var(--ink)}.wall-note.sage{background:#b9d9c4}.wall-note.terracotta{background:#f1ae91}.wall-note.plum{background:#d8c8ee}.wall-note.paper{background:var(--paper)}.wall-note.blue{background:#bcd9ee}.wall-note p{font-family:Gaegu,cursive;font-size:1.55rem;line-height:1.05;margin:8px 0 18px}.wall-note .report{position:absolute;right:6px;top:4px;background:transparent;min-height:32px;padding:3px 8px;color:var(--ink)}.gallery-grid{columns:3 250px;column-gap:18px}.gallery-card{break-inside:avoid;margin:0 0 18px;padding:12px}.art-button{border:0;background:transparent;text-align:left;padding:0;cursor:pointer;width:100%}.art-button img{width:100%;display:block;border-radius:16px}.art-button figcaption{padding:12px 2px}.gallery-card:hover{transform:rotate(-1deg) translateY(-4px);transition:transform .2s}dialog{border:0;border-radius:20px;padding:16px;background:var(--paper);max-width:min(90vw,800px);box-shadow:0 20px 70px #0008}dialog::backdrop{background:#2b243899}dialog img{display:block;width:100%;max-height:80vh;object-fit:contain;margin-top:12px}@keyframes rip{50%{transform:rotate(3deg) translateY(16px);opacity:.35}}@media(max-width:800px){.wall{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.wall{grid-template-columns:1fr;padding:18px}.wall-note{min-height:125px}}
