:root{--ink:#191822;--purple:#6847dc;--purple-2:#8b72ee;--paper:#f7f0de;--paper-2:#fffaf0;--blue:#23a9e8;--red:#d45767;--green:#4b9b5d;--line:rgba(40,31,66,.35);--shadow:0 10px 35px rgba(60,39,104,.13);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#f4ecd9;font-family:"Comic Sans MS","Comic Neue","Bradley Hand","Segoe Print",cursive;overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.26;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E")}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.site-header{height:76px;width:min(1220px,calc(100% - 32px));margin:auto;display:flex;align-items:center;gap:24px;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:7px;text-decoration:none;color:var(--ink);white-space:nowrap}.brand img{width:42px;height:42px;object-fit:contain}.brand span{font-size:20px;font-weight:700}.brand b{color:var(--purple);font-size:16px}.nav{margin-left:auto;display:flex;gap:22px;align-items:center}.nav a{color:inherit;text-decoration:none;font-size:13px;font-weight:700;position:relative}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--purple);transition:.2s}.nav a:hover:after{right:0}.tiny-pill{border:1.5px solid var(--ink);border-radius:12px;padding:8px 13px;color:inherit;text-decoration:none;font-size:12px;box-shadow:2px 2px 0 var(--purple-2);transform:rotate(-1deg)}.menu-toggle{display:none;margin-left:auto;background:none;border:0;font-size:24px}.hero{min-height:590px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;border-radius:30px;overflow:hidden;position:relative;background:linear-gradient(90deg,rgba(250,244,229,.96) 5%,rgba(250,244,229,.72) 42%,rgba(250,244,229,.08)),url(assets/meme-bg-city.webp) center/cover;box-shadow:var(--shadow);border:1px solid rgba(83,64,109,.22)}.hero-copy{padding:60px 10px 60px 60px;position:relative;z-index:2}.eyebrow,.kicker{font:700 11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--purple)}.hero h1{font-size:clamp(64px,8.2vw,116px);line-height:.82;margin:10px 0 28px;letter-spacing:-.08em;font-weight:500}.hero h1 span{color:var(--purple)}.hero h1 i{font-size:35px;color:var(--purple);font-style:normal;position:absolute;transform:translate(3px,-12px) rotate(10deg)}.hero-kicker{font-size:28px;color:var(--purple);margin:0 0 10px}.hero-body{font-size:16px;line-height:1.7}.hero-actions{display:flex;gap:12px;margin:24px 0 18px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 23px;border-radius:16px;border:1.5px solid var(--purple);font:700 14px inherit;text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px) rotate(-1deg)}.button.primary{background:linear-gradient(135deg,var(--purple),#8b63f0);color:#fff;box-shadow:0 7px 0 #3f279d}.button.ghost{background:rgba(255,250,240,.78);color:var(--purple);box-shadow:2px 3px 0 rgba(104,71,220,.22)}.contract{display:flex;align-items:center;gap:8px;border:1px dashed var(--line);background:rgba(255,250,240,.7);border-radius:10px;padding:8px 10px;cursor:pointer}.contract small{font:700 9px ui-monospace,monospace;text-transform:uppercase}.contract code{font-size:11px}.hero-art{height:100%;position:relative;display:flex;align-items:flex-end;justify-content:center}.hero-art img{width:min(560px,105%);filter:drop-shadow(0 22px 18px rgba(45,29,81,.2));animation:float 5s ease-in-out infinite;position:relative;z-index:2}.scribble{position:absolute;background:#f2e6c7;border:1px solid var(--ink);padding:13px 18px;box-shadow:4px 4px 0 rgba(104,71,220,.25);z-index:3;font-weight:700}.scribble:before{content:"";position:absolute;width:60%;height:12px;background:#c7a67a;top:-8px;left:20%;opacity:.78;transform:rotate(3deg)}.s1{top:55px;right:30px;transform:rotate(4deg)}.s2{left:15px;top:170px;transform:rotate(-5deg)}@keyframes float{50%{transform:translateY(-9px) rotate(1deg)}}.ticker{width:min(1120px,calc(100% - 58px));margin:14px auto 34px;border:1.5px solid var(--line);border-radius:15px;background:rgba(255,250,240,.6);display:flex;justify-content:space-around;padding:11px;gap:12px;flex-wrap:wrap;font-size:13px}.ticker b{color:var(--purple)}.paper-card{background:rgba(255,250,240,.74);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.section-heading{display:flex;align-items:end;justify-content:space-between;padding:30px 34px 18px}.section-heading.compact{padding:0 4px 14px}.section-heading h2,.market h2,.community h2{font-size:32px;margin:5px 0 2px;letter-spacing:-.04em}.section-heading p{margin:0;color:#5d5864;font-size:14px}.doodle-arrow{font-size:42px;color:var(--purple);transform:rotate(-18deg)}.mood-check{margin-bottom:46px}.mood-layout{display:grid;grid-template-columns:1.35fr .54fr .9fr;gap:22px;padding:4px 28px 28px;align-items:end}.pain-options{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.pain-card{min-height:145px;background:#f5efdf;border:1.5px solid var(--line);border-radius:16px;padding:13px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:inherit;cursor:pointer;transition:.2s}.pain-card:hover{transform:translateY(-3px)}.pain-card.active{border:2.5px solid var(--purple);box-shadow:4px 5px 0 rgba(104,71,220,.2);transform:rotate(-1deg);background:#fff8e8}.pain-card small{text-transform:uppercase;font-size:9px}.pain-card b{font-size:22px}.pain-card span{font-size:35px;margin:3px}.pain-card em{font-size:11px;font-style:normal}.mood-mascot{width:100%;max-height:250px;object-fit:contain;filter:drop-shadow(0 10px 8px rgba(48,36,72,.15));transition:.2s}.report{background:#f5ead2;border:1px solid var(--ink);padding:28px 24px 18px;border-radius:7px;position:relative;transform:rotate(1deg);box-shadow:5px 6px 0 rgba(104,71,220,.15)}.tape{position:absolute;top:-17px;left:20%;background:#e8c98c;padding:7px 18px;font:700 11px/1.2 ui-monospace,monospace;text-align:center;transform:rotate(-2deg)}.report>p:first-of-type{font-size:18px;margin:17px 0 4px}.report strong{font-size:40px;color:var(--red)}.report small{font:700 9px ui-monospace,monospace;text-transform:uppercase}.report h3{color:var(--purple);font-size:18px;margin:2px 0 12px}.coping-meter{height:25px;border:2px solid var(--ink);border-radius:99px;padding:3px;position:relative;margin:3px 0 12px;background:#fff}.coping-meter i{display:block;width:58%;height:100%;border-radius:99px;background:repeating-linear-gradient(110deg,var(--purple),var(--purple) 8px,#967cf2 9px,#967cf2 15px);transition:width .3s}.coping-meter span{position:absolute;right:4px;top:0px;font-size:17px}.recommendation{font-size:12px;line-height:1.45}.report-actions{display:flex;gap:6px}.report-actions button{border:1px solid var(--purple);background:var(--purple);color:white;border-radius:10px;padding:7px 9px;font:700 10px inherit;cursor:pointer}.report-actions button+button{background:transparent;color:var(--purple)}.reactions{margin-bottom:45px}.slider-buttons button{width:38px;height:38px;border:1px solid var(--ink);border-radius:50%;background:#fff8eb;font-size:18px;cursor:pointer}.reaction-track{display:flex;gap:13px;overflow:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding:0 4px 12px}.reaction-track::-webkit-scrollbar{display:none}.reaction-track article{min-width:183px;height:242px;scroll-snap-align:start;border:1px solid var(--line);border-radius:17px;background:rgba(255,250,240,.65);padding:12px;text-align:center;position:relative;overflow:hidden;transition:.2s}.reaction-track article:hover{transform:rotate(-1deg) translateY(-3px);box-shadow:var(--shadow)}.reaction-track img{width:138px;height:138px;object-fit:contain}.reaction-track h3{font-size:13px;margin:0 0 8px}.reaction-track button{border:0;background:none;color:var(--purple);font:700 10px inherit;cursor:pointer}.sticker{position:absolute;left:10px;top:10px;background:#e5d8ff;border-radius:50%;padding:6px;font-size:10px;z-index:2;transform:rotate(-8deg)}.meme-lab{margin-bottom:48px}.lab-grid{padding:22px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);gap:24px}.meme-stage{background:#1c1730;border-radius:18px;position:relative;overflow:hidden;aspect-ratio:1/1;box-shadow:inset 0 0 0 2px rgba(255,255,255,.15)}#memeCanvas{width:100%;height:100%;display:block}.canvas-note{position:absolute;right:10px;bottom:9px;background:#fff4d9;color:#222;padding:4px 8px;font-size:9px;border-radius:6px;transform:rotate(-3deg)}.meme-controls{display:flex;flex-direction:column;gap:15px}.meme-controls>label,.control-row label{font-size:12px;font-weight:700}.meme-controls input[type=text],.meme-controls input:not([type]){display:block;width:100%;margin-top:5px;border:1.5px solid var(--line);border-radius:12px;padding:12px;background:#fffaf0;font:700 15px inherit;outline:none}.meme-controls input:focus{border-color:var(--purple)}fieldset{border:0;padding:0;margin:0}legend{font-size:12px;font-weight:700;margin-bottom:7px}.template-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.template{border:1px solid var(--line);border-radius:12px;background:#eee6d7;padding:5px;cursor:pointer;font-family:inherit}.template.active{border:2px solid var(--purple);background:#e9dfff}.template img{width:100%;aspect-ratio:1;object-fit:contain;background:#d9c9ee;border-radius:8px}.template span{font-size:10px}.control-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.control-row input{display:block;width:100%;height:36px;border:0;background:none}.range-label{display:grid;grid-template-columns:1fr auto;gap:5px}.range-label input{grid-column:1/-1;width:100%;accent-color:var(--purple)}.check{display:flex;align-items:center;gap:8px}.check input{accent-color:var(--purple)}.meme-actions{display:flex;gap:9px;margin-top:auto}.meme-actions .button{flex:1}.market{display:grid;grid-template-columns:1.25fr .75fr;gap:20px;margin-bottom:48px}.chart-card,.tokenomics{padding:27px}.chart-head{display:flex;justify-content:space-between}.chart-head h2{margin:4px 0}.price{margin:5px 0 12px}.price strong{font:800 25px ui-monospace,monospace}.price span{color:var(--red);font:700 12px ui-monospace,monospace}.range-pills{display:flex;gap:4px;align-items:start}.range-pills button{border:1px solid var(--line);border-radius:8px;background:transparent;padding:6px 8px;font-size:10px;cursor:pointer}.range-pills button.active{background:var(--purple);color:#fff}.chart-wrap{height:250px;position:relative}.chart-wrap canvas{width:100%;height:100%}.chart-tooltip{position:absolute;background:#201936;color:white;font:10px ui-monospace,monospace;padding:6px;border-radius:6px;pointer-events:none}.chart-legend{display:flex;justify-content:space-between;font-size:10px;color:#655f6c}.chart-legend i{display:inline-block;width:18px;height:3px;background:var(--purple);vertical-align:middle}.tokenomics{position:relative;overflow:hidden}.token-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;position:relative;z-index:2}.token-grid article{min-height:104px;background:rgba(255,250,240,.75);border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center;display:flex;flex-direction:column}.token-grid span{font-size:9px;color:var(--purple)}.token-grid b{font-size:17px;margin:auto 0 2px}.token-grid em{font-size:9px;font-style:normal}.tokenomics>img{position:absolute;bottom:-60px;right:-65px;width:210px;opacity:.13}.how-to{padding:26px;margin-bottom:40px}.steps{display:grid;grid-template-columns:repeat(4,1fr)}.steps article{padding:15px 20px;min-height:210px;border-right:1px dashed var(--line);position:relative;text-align:center}.steps article:last-child{border:0}.steps article>b{position:absolute;left:8px;top:4px;width:25px;height:25px;border-radius:50%;background:#dfd0f5}.steps article>span{display:block;font-size:45px;height:70px}.steps article>img{height:76px;width:100%;object-fit:contain}.steps h3{color:var(--purple);font-size:16px}.steps p{font-size:11px;line-height:1.5}.disclaimer{text-align:center;font-size:10px;color:#6b6571;border-top:1px dashed var(--line);padding-top:14px}.community{min-height:300px;margin-bottom:30px;border-radius:28px;overflow:hidden;padding:38px;display:grid;grid-template-columns:1fr .7fr .7fr;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(38,23,75,.9),rgba(104,71,220,.55)),url(assets/meme-bg-city.webp) center/cover;box-shadow:var(--shadow)}.kicker.light{color:#f1df91}.community p{font-size:13px;line-height:1.7;max-width:430px}.community>img{width:100%;max-height:260px;object-fit:contain;filter:drop-shadow(0 12px 15px rgba(0,0,0,.25))}.community aside{background:#f3e3b9;color:var(--ink);padding:25px;display:flex;flex-direction:column;gap:8px;transform:rotate(-2deg);box-shadow:7px 8px 0 rgba(22,17,39,.25)}.community aside b{margin-bottom:6px}.community aside label{font-size:12px}.community-actions{display:flex;gap:8px}.community-actions a{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#fff;color:var(--purple);text-decoration:none;font-weight:800}.footer{display:flex;align-items:center;gap:25px;justify-content:space-between;padding:18px 0 30px;font-size:11px}.footer .brand{margin-right:auto}.toast{position:fixed;left:50%;bottom:25px;z-index:100;transform:translate(-50%,20px);opacity:0;background:#201936;color:white;border-radius:10px;padding:10px 16px;font:700 12px ui-monospace,monospace;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.nav{display:none;position:absolute;top:66px;left:0;right:0;background:#fff8ea;border:1px solid var(--line);border-radius:14px;padding:18px;flex-direction:column}.nav.open{display:flex}.menu-toggle{display:block}.tiny-pill{display:none}.hero{grid-template-columns:1fr;min-height:780px;background:linear-gradient(rgba(250,244,229,.94),rgba(250,244,229,.2)),url(assets/meme-bg-city.webp) center/cover}.hero-copy{padding:45px 35px 0}.hero-art{height:390px}.hero-art img{height:420px;width:auto;max-width:100%}.mood-layout{grid-template-columns:1fr 1fr}.report{grid-column:1/-1}.mood-mascot{max-height:300px}.market{grid-template-columns:1fr}.lab-grid{grid-template-columns:1fr}.meme-stage{max-width:620px;margin:auto;width:100%}.community{grid-template-columns:1fr 1fr}.community aside{grid-column:1/-1}.steps{grid-template-columns:1fr 1fr}.steps article:nth-child(2){border-right:0}}
@media(max-width:600px){.shell{width:min(100% - 20px,1180px)}.site-header{height:64px}.brand span{font-size:17px}.brand img{width:35px;height:35px}.hero{min-height:690px}.hero-copy{padding:35px 22px 0}.hero h1{font-size:64px}.hero-kicker{font-size:22px}.hero-body{font-size:13px}.hero-art{height:320px}.hero-art img{height:330px}.scribble{font-size:10px}.s1{top:20px;right:12px}.s2{top:75px}.ticker{width:calc(100% - 24px);font-size:10px}.section-heading{padding:24px 18px 14px;align-items:start}.section-heading h2,.market h2,.community h2{font-size:25px}.doodle-arrow{display:none}.mood-layout{display:flex;flex-direction:column;padding:0 14px 18px}.pain-options{width:100%;grid-template-columns:repeat(4,1fr);gap:5px}.pain-card{min-height:122px;padding:6px 3px}.pain-card b{font-size:16px}.pain-card span{font-size:27px}.pain-card em{font-size:8px}.mood-mascot{height:190px}.report{width:100%}.reaction-track article{min-width:158px}.lab-grid,.chart-card,.tokenomics{padding:15px}.meme-actions{flex-direction:column}.market{gap:10px}.steps{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:1px dashed var(--line)}.community{grid-template-columns:1fr;padding:28px 22px;text-align:center}.community p{margin-inline:auto}.community-actions{justify-content:center}.community>img{max-height:220px}.footer{flex-wrap:wrap;justify-content:center;text-align:center}.footer .brand{margin:0;width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.hero-art img{animation:none}}

/* v2: compact hand-drawn composition matching the supplied reference */
.meme-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.meme-gallery article{background:#fffaf0;border:1.5px solid var(--line);border-radius:13px;padding:7px;box-shadow:2px 3px 0 rgba(104,71,220,.12);overflow:hidden}.meme-gallery article>div{height:190px;border-radius:9px;background:linear-gradient(180deg,#f2e6d6,#dcd3f0);position:relative;overflow:hidden}.meme-gallery article.night>div{background:linear-gradient(180deg,#393175,#8c79bd)}.meme-gallery article.warm>div{background:linear-gradient(180deg,#e7bda8,#f1dbc5)}.meme-gallery article span{position:absolute;z-index:2;top:10px;left:8px;right:8px;text-align:center;font-size:13px;line-height:1.25}.meme-gallery article>div img{position:absolute;width:82%;height:78%;object-fit:contain;left:9%;bottom:-8px}.meme-gallery footer{display:flex;justify-content:space-between;align-items:center;padding:7px 3px 1px}.meme-gallery footer button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:5px 9px;font:700 9px inherit;cursor:pointer}.meme-gallery footer span{position:static;font-size:9px;color:var(--purple)}.lab-grid{display:none}.lab-grid.open{display:grid}.template-picks{grid-template-columns:repeat(4,1fr)}
@media(min-width:901px){.shell{width:min(980px,calc(100% - 36px))}.site-header{height:58px;width:min(980px,calc(100% - 36px));gap:18px}.brand img{width:34px;height:34px}.brand span{font-size:18px}.nav{gap:18px}.nav a{font-size:11px}.tiny-pill{padding:6px 11px}.hero{min-height:360px;border-radius:0;box-shadow:none;border:0;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(250,244,229,.98) 5%,rgba(250,244,229,.86) 40%,rgba(250,244,229,.06)),url(assets/meme-bg-city.webp) center/cover}.hero-copy{padding:35px 5px 30px 24px}.hero h1{font-size:78px;margin:6px 0 18px}.hero-kicker{font-size:23px}.hero-body{font-size:13px;line-height:1.5}.hero-actions{margin:16px 0 12px}.button{min-height:37px;padding:0 18px;font-size:12px;border-radius:12px}.button.primary{box-shadow:0 4px 0 #3f279d}.hero-art img{width:405px;max-height:355px;object-fit:contain}.s1{top:35px;right:8px}.s2{left:auto;right:4px;top:auto;bottom:22px}.scribble{font-size:10px;padding:10px 12px}.ticker{width:min(900px,calc(100% - 70px));margin:7px auto 16px;padding:8px;font-size:11px}.section-heading{padding:18px 24px 12px}.section-heading h2,.market h2,.community h2{font-size:25px}.mood-check{margin-bottom:20px}.mood-layout{grid-template-columns:1.62fr .52fr 1fr;gap:11px;padding:0 20px 20px}.pain-options{grid-template-columns:repeat(4,1fr);gap:7px}.pain-card{min-height:130px;padding:8px 4px}.pain-card b{font-size:18px}.pain-card span{font-size:28px}.pain-card em{font-size:8px}.mood-mascot{max-height:205px}.report{padding:20px 16px 12px}.report strong{font-size:30px}.report h3{font-size:15px}.recommendation{font-size:10px}.reactions{margin-bottom:18px}.reaction-track{gap:7px}.reaction-track article{min-width:133px;height:180px;padding:6px;border-radius:12px}.reaction-track img{width:103px;height:103px}.reaction-track h3{font-size:10px;margin:0 0 3px}.sticker{top:5px;left:5px;padding:4px}.meme-lab{margin-bottom:20px}.meme-gallery article>div{height:170px}.market{gap:10px;margin-bottom:18px}.chart-card,.tokenomics{padding:18px}.chart-wrap{height:185px}.token-grid article{min-height:82px;padding:9px}.how-to{padding:18px;margin-bottom:18px}.steps article{min-height:165px;padding:10px 13px}.steps article>span{font-size:35px;height:50px}.steps article>img{height:55px}.steps h3{font-size:13px;margin:6px}.steps p{font-size:9px}.community{min-height:220px;margin-bottom:12px;padding:24px}.community>img{max-height:205px}.community aside{padding:18px}.footer{padding:10px 0 20px}}
@media(max-width:700px){.meme-gallery{grid-template-columns:1fr 1fr}.meme-gallery article>div{height:175px}.template-picks{grid-template-columns:1fr 1fr}}

/* v3: illustrated mascot + richer, realistic crypto environments */
.hero{background:linear-gradient(90deg,rgba(250,244,229,.98) 4%,rgba(250,244,229,.86) 43%,rgba(250,244,229,.08)),url(assets/meme-bg-city.webp) center/cover}
.community{background:linear-gradient(90deg,rgba(38,23,75,.92),rgba(104,71,220,.48)),url(assets/meme-bg-city.webp) center/cover}
.meme-gallery article:nth-child(1)>div{background:linear-gradient(rgba(12,10,16,.08),rgba(35,12,20,.22)),url(assets/meme-bg-red-storm.webp) center/cover}
.meme-gallery article:nth-child(2)>div{background:linear-gradient(rgba(244,235,214,.12),rgba(72,49,132,.2)),url(assets/meme-bg-room.webp) center/cover}
.meme-gallery article:nth-child(3)>div{background:linear-gradient(rgba(15,50,31,.08),rgba(9,23,17,.3)),url(assets/meme-bg-forest.webp) center/cover}
.meme-gallery article:nth-child(4)>div{background:linear-gradient(rgba(31,19,58,.06),rgba(15,8,28,.25)),url(assets/meme-bg-vault.webp) center/cover}
.meme-gallery article span{color:#fff;text-shadow:0 2px 1px #171222,0 0 7px rgba(23,18,34,.9)}

.background-picks{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.background-pick{border:1px solid var(--line);border-radius:12px;background:#eee6d7;padding:5px;cursor:pointer;font-family:inherit;color:var(--ink);transition:transform .18s,border-color .18s,box-shadow .18s}
.background-pick:hover{transform:translateY(-2px)}
.background-pick.active{border:2px solid var(--purple);background:#e9dfff;box-shadow:2px 3px 0 rgba(104,71,220,.18)}
.background-pick img{display:block;width:100%;aspect-ratio:1.45/1;object-fit:cover;border-radius:7px;filter:saturate(.9) contrast(.96)}
.background-pick span{display:block;font-size:9px;margin-top:4px}

.coping-toolkit{padding-bottom:24px;margin-bottom:20px;overflow:hidden}
.toolkit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:0 20px 18px}
.toolkit-grid article{min-height:172px;border:1px dashed var(--line);border-radius:15px;padding:14px;background:rgba(247,240,222,.76);display:flex;flex-direction:column;position:relative}
.toolkit-grid article>span{position:absolute;right:10px;top:8px;font:800 22px ui-monospace,monospace;color:rgba(104,71,220,.22)}
.toolkit-grid b{font-size:14px;color:var(--purple);padding-right:28px}
.toolkit-grid p{font-size:10px;line-height:1.55;margin:9px 0 13px}
.toolkit-grid button,.affirmation-machine button{margin-top:auto;border:1px solid var(--purple);background:#fffaf0;color:var(--purple);border-radius:9px;padding:7px 8px;font:700 9px inherit;cursor:pointer}
.toolkit-grid button:hover,.affirmation-machine button:hover{background:var(--purple);color:#fff}
.affirmation-machine{margin:0 20px;min-height:155px;border-radius:18px;background:linear-gradient(112deg,rgba(32,24,66,.9),rgba(104,71,220,.64)),url(assets/meme-bg-room.webp) center/cover;color:#fff;display:grid;grid-template-columns:150px 1fr;align-items:center;padding:10px 28px;overflow:hidden}
.affirmation-machine img{width:145px;height:145px;object-fit:contain;filter:drop-shadow(0 7px 9px rgba(0,0,0,.24))}
.affirmation-machine .kicker{color:#e9dcff}
.affirmation-machine blockquote{font-size:19px;line-height:1.3;margin:8px 0 12px}
.affirmation-machine button{margin:0;background:rgba(255,250,240,.9)}

.lore{display:grid;grid-template-columns:1.25fr .75fr;gap:12px;margin-bottom:20px}
.lore-copy,.roadmap{padding:25px}
.lore h2{font-size:27px;margin:6px 0 12px}
.lore p{font-size:11px;line-height:1.65}
.lore-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:18px}
.lore-stats span{border:1px dashed var(--line);border-radius:10px;padding:9px;text-align:center;font-size:9px}
.lore-stats b{display:block;font-size:20px;color:var(--purple)}
.roadmap ol{list-style:none;padding:0;margin:13px 0 0}
.roadmap li{display:grid;grid-template-columns:75px 1fr;gap:9px;padding:11px 0;border-bottom:1px dashed var(--line)}
.roadmap li:last-child{border:0}
.roadmap li b{font:800 9px ui-monospace,monospace;color:var(--purple);text-transform:uppercase}
.roadmap li span{font-size:10px}

.faq{margin-bottom:20px;padding-bottom:20px}
.faq-list{padding:0 22px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.faq details{border:1px solid var(--line);border-radius:12px;background:rgba(247,240,222,.65);padding:10px 13px}
.faq summary{font-size:11px;font-weight:700;cursor:pointer;color:var(--purple)}
.faq p{font-size:10px;line-height:1.55;margin:8px 0 2px}

@media(max-width:900px){.hero{background:linear-gradient(rgba(250,244,229,.94),rgba(250,244,229,.18)),url(assets/meme-bg-city.webp) center/cover}.toolkit-grid{grid-template-columns:1fr 1fr}.lore{grid-template-columns:1fr}}
@media(max-width:600px){.background-picks{grid-template-columns:1fr 1fr}.toolkit-grid{grid-template-columns:1fr;padding-inline:12px}.toolkit-grid article{min-height:145px}.affirmation-machine{margin-inline:12px;grid-template-columns:90px 1fr;padding:10px 14px}.affirmation-machine img{width:90px;height:100px}.affirmation-machine blockquote{font-size:14px}.faq-list{grid-template-columns:1fr;padding-inline:12px}.lore-copy,.roadmap{padding:20px}.lore-stats{grid-template-columns:1fr 1fr 1fr}}

/* v4: a larger desktop canvas and more substantial navigation */
@media(min-width:901px){
  .shell{width:min(1180px,calc(100% - 44px))}
  .site-header{height:82px;width:min(1220px,calc(100% - 44px));gap:26px}
  .site-header .brand img{width:48px;height:48px}
  .site-header .brand span{font-size:24px}
  .site-header .brand b{font-size:19px}
  .nav{gap:25px}
  .nav a{font-size:14px}
  .tiny-pill{padding:9px 16px;font-size:14px;border-radius:14px}
  .hero{min-height:475px}
  .hero-copy{padding:48px 8px 42px 38px}
  .hero h1{font-size:98px;margin:10px 0 24px}
  .hero-kicker{font-size:29px}
  .hero-body{font-size:16px;line-height:1.65}
  .hero-actions{margin:22px 0 17px}
  .button{min-height:45px;padding-inline:23px;font-size:14px}
  .hero-art img{width:510px;max-height:465px}
  .scribble{font-size:12px;padding:13px 16px}
  .ticker{width:min(1080px,calc(100% - 76px));margin:10px auto 24px;padding:11px;font-size:13px}
  .section-heading{padding:25px 30px 17px}
  .section-heading h2,.market h2,.community h2{font-size:31px}
  .mood-check,.meme-lab{margin-bottom:32px}
  .reaction-track article{min-width:157px;height:212px;padding:9px}
  .reaction-track img{width:124px;height:124px}
  .reaction-track h3{font-size:12px}
  .meme-gallery article>div{height:215px}
  .lab-grid{padding:27px;gap:30px}
  .chart-wrap{height:230px}
  .how-to{padding:25px;margin-bottom:26px}
  .steps article{min-height:195px;padding:14px 18px}
  .steps article>img{height:68px}
  .steps h3{font-size:15px}
  .steps p{font-size:11px}
  .community{min-height:275px;padding:34px}
  .mood-mascot.flat{width:145%;max-width:none;margin-left:-23%}
}

/* v5: footer link + touch-friendly reaction buttons */
.footer a{color:var(--purple);font-weight:700;text-decoration:none}.footer a:hover{text-decoration:underline}

/* v6: meme lab share/copy button, randomize demoted to a text link */
.meme-random{display:block;margin:2px auto 0;background:none;border:0;color:var(--purple);font:700 12px inherit;cursor:pointer;padding:6px 10px;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.meme-random:hover{text-decoration-style:solid}
.share-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:10px;font-size:11px;font-weight:700}.share-row[hidden]{display:none}.share-row a{border:1.5px solid var(--purple);border-radius:9px;padding:6px 11px;color:var(--purple);text-decoration:none;background:#fffaf0;box-shadow:2px 2px 0 rgba(104,71,220,.18)}.share-row a:hover{background:var(--purple);color:#fff}

/* v7: X is the only social; make it prominent */
.community-actions a.x-follow{width:auto;height:auto;display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:14px;background:#fff;color:var(--purple);font:700 15px inherit;text-decoration:none;box-shadow:3px 4px 0 rgba(0,0,0,.28);transition:transform .2s}.community-actions a.x-follow:hover{transform:translateY(-2px) rotate(-1deg)}.community-actions a.x-follow span{font-size:18px}
.nav a.nav-x{color:var(--purple);border:1.5px solid var(--purple);border-radius:10px;padding:5px 10px}.nav a.nav-x:after{display:none}.nav a.nav-x:hover{background:var(--purple);color:#fff}

/* v8: X link visible in the header on phones, where the menu is collapsed */
.header-x{display:none}
@media(max-width:900px){.header-x{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;width:38px;height:38px;border:1.5px solid var(--purple);border-radius:11px;color:var(--purple);font-weight:800;font-size:17px;text-decoration:none;background:rgba(255,250,240,.8);box-shadow:2px 2px 0 rgba(104,71,220,.2)}.menu-toggle{margin-left:10px}}

/* v9: launch links */
.live-links{margin:10px 0 0;font-size:11px;font-weight:700;color:#5d5864}.live-links[hidden]{display:none}.live-links a{color:var(--purple);text-decoration:underline dotted;text-underline-offset:3px}.steps p a{color:var(--purple);font-weight:700}

/* v10: launch */
.contract-line{text-align:center;font-size:11px;margin:16px 0 0;color:#5d5864}.contract-line code{display:inline-block;font:700 11px ui-monospace,monospace;background:rgba(255,250,240,.9);border:1px dashed var(--line);border-radius:8px;padding:5px 8px;word-break:break-all;color:var(--ink);user-select:all}

/* v11: share row shows the meme itself */
.share-row img{width:52px;height:52px;border-radius:9px;border:1.5px solid var(--purple);object-fit:cover;background:#1c1730}.share-row span{max-width:260px;line-height:1.35}

/* v12: caption ideas picker */
.meme-controls select{display:block;width:100%;margin-top:5px;border:1.5px solid var(--line);border-radius:12px;padding:11px 12px;background:#fffaf0;font:700 13px inherit;color:var(--ink);cursor:pointer}.meme-controls select:focus{outline:none;border-color:var(--purple)}

/* v13: meme mode — motion, particles, easter eggs */
.hero{position:relative}.hero-rain{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.hero-copy,.hero-art{position:relative;z-index:2}
.hero h1 i{animation:beat 1.6s ease-in-out infinite}@keyframes beat{50%{transform:translate(3px,-12px) rotate(10deg) scale(1.28)}}
.hero-art img{cursor:pointer}
.ticker.marquee{display:flex;overflow:hidden;gap:0;padding:11px 0;justify-content:flex-start;flex-wrap:nowrap;white-space:nowrap;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.marquee-track{display:flex;gap:46px;padding-right:46px;flex-shrink:0;animation:marquee 30s linear infinite}
.ticker.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-100%)}}
.reveal{opacity:0;transform:translateY(22px)}.reveal.in{opacity:1;transform:none;transition:opacity .6s ease,transform .7s cubic-bezier(.2,.9,.3,1.25)}
.section-heading h2:hover,.hero h1:hover,.lore h2:hover,.market h2:hover,.community h2:hover{animation:wiggle .6s ease-in-out}@keyframes wiggle{25%{transform:rotate(-1.6deg)}75%{transform:rotate(1.6deg)}}
.doodle-arrow{animation:bob 2.4s ease-in-out infinite}@keyframes bob{50%{transform:rotate(-18deg) translateY(-7px)}}
.button.primary{animation:glow 3.2s ease-in-out infinite}@keyframes glow{50%{filter:brightness(1.12) saturate(1.15)}}
.button:active,.report-actions button:active,.toolkit-grid button:active,.meme-gallery footer button:active{transform:scale(.94)!important}
.coping-meter i{animation:stripes 1.1s linear infinite}@keyframes stripes{to{background-position:34px 0}}
.report.shake{animation:shake .55s}@keyframes shake{10%,90%{transform:rotate(1deg) translateX(-2px)}20%,80%{transform:rotate(1deg) translateX(4px)}30%,50%,70%{transform:rotate(1deg) translateX(-7px)}40%,60%{transform:rotate(1deg) translateX(7px)}}
.reaction-track img{transition:transform .28s cubic-bezier(.3,1.6,.5,1)}.reaction-track article:hover img{transform:rotate(-8deg) scale(1.1)}
.meme-gallery article{transition:transform .25s}.meme-gallery article:hover{transform:rotate(-1.4deg) translateY(-4px)}
.pain-card:hover span{display:inline-block;animation:wiggle .5s}
.trail{position:fixed;z-index:98;pointer-events:none;font-size:14px;transform:translate(-50%,-50%);animation:trail .9s ease-out forwards;color:var(--purple)}@keyframes trail{to{transform:translate(-50%,-170%) rotate(25deg);opacity:0}}
.burst{position:fixed;z-index:99;pointer-events:none;font-size:22px;transform:translate(-50%,-50%);animation:burst 1s cubic-bezier(.2,.7,.3,1) forwards}@keyframes burst{to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--rot));opacity:0}}
.close-chart{border:1px solid var(--line);border-radius:8px;background:transparent;padding:6px 8px;font-size:10px;cursor:pointer;font-family:inherit;color:var(--ink)}.close-chart:hover{background:var(--red);color:#fff;border-color:var(--red)}
.chart-closed{position:absolute;inset:0;display:grid;place-items:center;text-align:center;background:rgba(247,240,222,.95);border-radius:12px;font-weight:700;font-size:17px;line-height:1.35;z-index:3}.chart-closed[hidden]{display:none}.chart-closed p{margin:0 0 10px}
.chart-closed button{border:1px solid var(--purple);background:#fffaf0;color:var(--purple);border-radius:9px;padding:7px 12px;font:700 11px inherit;cursor:pointer}.chart-closed button:hover{background:var(--purple);color:#fff}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.marquee-track,.hero h1 i,.doodle-arrow,.button.primary,.coping-meter i{animation:none!important}.hero-rain{display:none}}

/* v14: unmistakable buy button */
.button.cta{position:relative;overflow:hidden;gap:0;animation:glow 3.2s ease-in-out infinite,ctaWiggle 4.5s ease-in-out infinite}
.button.cta::after{content:"";position:absolute;top:-40%;left:-70%;width:38%;height:180%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.6),transparent);transform:skewX(-20deg);animation:shine 2.8s ease-in-out infinite;pointer-events:none}
@keyframes shine{0%,55%{left:-70%}100%{left:140%}}
@keyframes ctaWiggle{0%,84%,100%{transform:rotate(0) scale(1)}87%{transform:rotate(-2.5deg) scale(1.04)}91%{transform:rotate(2.5deg) scale(1.04)}95%{transform:rotate(-1deg) scale(1.01)}}
.button.cta:hover{animation:none;transform:translateY(-3px) rotate(-1deg);filter:brightness(1.1)}
.live-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#7cfc9a;margin-right:10px;box-shadow:0 0 0 0 rgba(124,252,154,.8);animation:livePulse 1.6s ease-out infinite}
@keyframes livePulse{70%{box-shadow:0 0 0 9px rgba(124,252,154,0)}100%{box-shadow:0 0 0 0 rgba(124,252,154,0)}}
.cta-hint{font-size:11px;color:#5d5864;margin:8px 0 0;line-height:1.4}.cta-hint b{color:var(--purple)}
.cta-wide{display:flex;margin:14px auto 0;width:min(100%,380px);min-height:52px;font-size:15px}
.hero-actions{flex-wrap:wrap}
@media(max-width:600px){.hero-actions .button.cta{flex:1 1 100%}.hero-actions .button.ghost{flex:1 1 auto}}
@media(prefers-reduced-motion:reduce){.button.cta,.button.cta::after,.live-dot{animation:none!important}}
