@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap";
:root{--sage:#ecfff6;--paper:#fffae9;--white:#fff;--ink:#1d1d1f;--ink-2:#2c2c2f;--ink-3:#3a3a3e;--coral:#ff6447;--violet:#6f66f4;--sun:#ffc94a;--mint:#a8e4ec;--leaf:#9fb4a1;--radius-xl:36px;--radius-lg:26px;--radius-md:18px;--font-heading:"Barlow Condensed", "Arial Narrow", sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"Space Mono", ui-monospace, monospace;--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}::selection{background:var(--sun);color:var(--ink)}*{box-sizing:border-box;margin:0;padding:0}@media (hover:hover) and (pointer:fine){*{cursor:none!important}}html{scroll-behavior:smooth;overflow-x:hidden}body{background-color:var(--sage);color:var(--ink);font-family:var(--font-body);background-image:radial-gradient(#1d1d1f12 1px,#0000 1px);background-size:22px 22px;line-height:1.6;overflow-x:hidden}a{color:inherit}.tone-coral,.tone-violet,.tone-sun,.tone-mint,.tone-ink,.tone-paper{background:var(--card-bg);color:var(--card-fg)}.tone-coral{--card-bg:var(--coral);--card-fg:var(--ink);--pill-bg:var(--ink);--pill-fg:var(--white);--tag-bg:#ffffff73}.tone-violet{--card-bg:var(--violet);--card-fg:var(--white);--pill-bg:var(--white);--pill-fg:var(--ink);--tag-bg:#ffffff29}.tone-sun{--card-bg:var(--sun);--card-fg:var(--ink);--pill-bg:var(--ink);--pill-fg:var(--white);--tag-bg:#ffffff80}.tone-mint{--card-bg:var(--mint);--card-fg:var(--ink);--pill-bg:var(--ink);--pill-fg:var(--white);--tag-bg:#ffffff8c}.tone-ink{--card-bg:var(--ink);--card-fg:var(--white);--pill-bg:var(--mint);--pill-fg:var(--ink);--tag-bg:var(--ink-3)}.tone-paper{--card-bg:var(--paper);--card-fg:var(--ink);--pill-bg:var(--ink);--pill-fg:var(--white);--tag-bg:var(--white)}h1,h2,h3,.huge-title,.logo{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:-.01em;font-weight:800;line-height:.92}.huge-title{margin:1.4rem 0 1.6rem;font-size:clamp(3.4rem,9vw,8.6rem)}.section-title{font-size:clamp(2.8rem,7.5vw,6.4rem)}.section-subtitle{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;opacity:.65;margin-top:.9rem;font-size:.75rem;font-weight:700}.section-head{margin-bottom:2.6rem}.section-head-small{margin-top:5rem}.ink-coral,.ink-violet{border-radius:.14em;padding:.02em .14em 0;display:inline-block;transform:rotate(-1.5deg)}.ink-coral{background:var(--coral);color:var(--ink)}.ink-violet{background:var(--violet);color:var(--white);transform:rotate(1.2deg)}.section-padding{padding:6rem 5%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.mono-pill{font-family:var(--font-mono);letter-spacing:1px;background:var(--pill-bg,var(--ink));color:var(--pill-fg,var(--white));white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:.68rem;font-weight:700;line-height:1.2;display:inline-flex}.round-arrow{background:var(--pill-bg,var(--white));width:46px;height:46px;color:var(--pill-fg,var(--ink));transition:transform .3s var(--ease-spring);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}a.round-arrow:hover{transform:rotate(45deg)scale(1.08)}.btn{font-family:var(--font-heading);letter-spacing:.04em;border:2.5px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:.8rem;padding:.85rem 1.6rem;font-size:1.25rem;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.btn:hover{box-shadow:6px 6px 0 var(--ink);transform:translate(-2px,-2px)}.btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}.btn-ink{background:var(--ink);color:var(--white)}.btn-paper{background:var(--white);color:var(--ink)}.btn-big{overflow-wrap:anywhere;font-size:clamp(1.1rem,2.4vw,1.7rem)}.sticker{z-index:3;font-family:var(--font-mono);letter-spacing:.5px;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);color:var(--ink);transform:rotate(var(--r,0deg));pointer-events:none;border-radius:14px;padding:.6rem .9rem;font-size:.72rem;font-weight:700;line-height:1.35;animation:6s ease-in-out infinite wobble;position:absolute}.sticker-sun{background:var(--sun);--r:-4deg}.sticker-violet{background:var(--violet);color:var(--white);--r:6deg}.sticker-mint{background:var(--mint);--r:-3deg;animation-delay:-2s}.sticker-inline{font-family:var(--font-mono);border:2px solid var(--ink);background:var(--white);border-radius:10px;padding:.35rem .7rem;font-size:.68rem;font-weight:700;transform:rotate(3deg)}@keyframes wobble{0%,to{transform:rotate(var(--r,0deg)) translateY(0)}50%{transform:rotate(calc(var(--r,0deg) * -.5)) translateY(-6px)}}.scramble{white-space:nowrap;padding-right:.6em;display:inline-block;position:relative}.scramble-sizer{visibility:hidden}.scramble-live{align-items:center;display:inline-flex;position:absolute;top:0;left:0}.scramble-caret{background:currentColor;width:.4em;height:.72em;margin-left:.12em;animation:1s step-end infinite caret-blink;display:inline-block}@keyframes caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}.cursor-crosshair{border:2.5px solid var(--ink);pointer-events:none;z-index:9999;width:22px;height:22px;transition:transform .25s var(--ease-spring), background-color .2s ease, border-color .2s ease;border-radius:50%;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-crosshair:after{content:"";background:var(--ink);border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cursor-crosshair.hover{border-color:var(--coral);background-color:#ff644759;transform:translate(-50%,-50%)scale(1.9)}@media (hover:none),(pointer:coarse){.cursor-crosshair{display:none}}.nav-bar{z-index:100;justify-content:space-between;align-items:center;width:100%;padding:1.4rem 5%;transition:opacity .3s,transform .3s;display:flex;position:fixed;top:0}.nav-bar.hidden{opacity:0;pointer-events:none;transform:translateY(-20px)}.logo{background:var(--ink);width:54px;height:54px;color:var(--sun);transition:transform .3s var(--ease-spring);border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;text-decoration:none;display:inline-flex}.logo:hover{transform:rotate(-12deg)scale(1.06)}.nav-right{background:var(--white);border-radius:999px;align-items:center;gap:1rem;padding:.4rem .4rem .4rem 1.4rem;display:flex;box-shadow:0 6px 24px #1d1d1f14}.nav-links{gap:1.6rem;display:flex}.nav-links a{font-family:var(--font-heading);letter-spacing:1px;font-size:1.05rem;font-weight:700;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--coral)}.nav-socials{align-items:center;gap:.35rem;display:flex}.nav-social{background:var(--ink);width:40px;height:40px;color:var(--white);transition:transform .3s var(--ease-spring), background-color .2s ease;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.nav-social svg{width:16px;height:16px;display:block}.nav-social:hover{background:var(--coral);transform:translateY(-3px)rotate(-8deg)}.bottom-nav-pill{background:var(--ink);color:var(--white);z-index:100;opacity:0;pointer-events:none;border-radius:999px;align-items:center;gap:1.8rem;padding:.5rem 1.6rem .5rem .5rem;transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:1.6rem;left:50%;transform:translate(-50%)translateY(50px);box-shadow:0 14px 34px #1d1d1f59}.bottom-nav-pill.visible{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.bottom-nav-pill .logo{background:var(--mint);width:46px;height:46px;color:var(--ink);border-radius:16px;font-size:1.25rem}.bottom-nav-pill .nav-links a{color:var(--white);font-size:.95rem}.bottom-nav-pill .nav-links a:hover{color:var(--sun)}.hero{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);align-items:center;gap:3rem;min-height:100vh;padding-top:8rem;display:grid}.hero-compact{grid-template-columns:minmax(0,1fr);min-height:62vh}.hero-copy{position:relative}.status-pill{font-family:var(--font-mono);letter-spacing:1px;background:var(--white);border-radius:999px;align-items:center;gap:.6rem;padding:.55rem 1rem;font-size:.75rem;font-weight:700;display:inline-flex}.status-pill .dot{background:#22c55e;border-radius:50%;width:10px;height:10px;animation:1.8s ease-out infinite pulse;box-shadow:0 0 #22c55e99}@keyframes pulse{to{box-shadow:0 0 0 10px #22c55e00}}.hero-swap{background:var(--sun);border-radius:.14em;padding:.02em 0 0 .14em;display:inline-block;transform:rotate(1.5deg)}.hero-sub{max-width:34rem;font-size:1.15rem;font-weight:500;line-height:1.55}.hero-ctas{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.hero-copy .sticker-sun{bottom:-3.5rem;right:4%}.hero-art{justify-content:center;display:flex;position:relative}.hero-art .sticker-violet{top:-1rem;left:4%}.hero-art .sticker-mint{bottom:-1.6rem;right:2%}.phone{width:min(370px,100%);transition:transform .5s var(--ease-spring);background:#111113;border:3px solid #4a4a4f;border-radius:54px;padding:12px;position:relative;transform:rotate(2deg);box-shadow:0 30px 60px #1d1d1f47}.phone:hover{transform:rotate(0)translateY(-6px)}.phone-island{z-index:2;background:#000;border-radius:999px;width:96px;height:28px;position:absolute;top:26px;left:50%;transform:translate(-50%)}.phone-screen{background:var(--ink-2);color:var(--white);border-radius:42px;flex-direction:column;gap:1.1rem;padding:4rem 1.1rem 1rem;display:flex}.chat-head{background:var(--ink);border-radius:26px;justify-content:space-between;align-items:flex-start;padding:1rem 1rem 1rem 1.2rem;display:flex}.chat-head h2{font-size:2rem}.chat-head .round-arrow{background:var(--white);width:40px;height:40px;color:var(--ink)}.chat-row{align-items:flex-start;gap:.6rem;display:flex}.chat-avatar{background:var(--sun);border-radius:50%;flex:none;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.1rem;display:inline-flex}.chat-bubble{background:var(--ink-3);font-family:var(--font-mono);color:#e9e9ec;border-radius:22px;padding:.9rem 1rem;font-size:.74rem;line-height:1.7}.chat-bubble mark{color:var(--sun);background:#24241c;border-radius:6px;padding:.08rem .4rem}.chat-replies{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.chat-reply{font-family:var(--font-mono);color:var(--ink);transition:transform .25s var(--ease-spring);border-radius:999px;padding:.5rem .9rem;font-size:.74rem;font-weight:700;text-decoration:none}.chat-reply:hover{transform:translate(-4px)scale(1.04)}.reply-mint{background:var(--mint)}.reply-sage{background:var(--leaf)}.chat-input{background:var(--ink-3);border-radius:999px;align-items:center;gap:.7rem;padding:.35rem .9rem .35rem .35rem;display:flex}.chat-plus{background:var(--coral);border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.4rem;line-height:1;display:inline-flex}.chat-placeholder{font-family:var(--font-mono);color:#a1a1a8;flex:1;font-size:.72rem}.chat-input svg{fill:#d4d4d8;width:20px;height:20px}.tabbar{justify-content:space-around;align-items:center;padding-top:.4rem;display:flex}.tab{border-radius:16px;justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}.tab.is-active{background:var(--mint)}.tab svg{fill:none;stroke:#d4d4d8;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.tab.is-active svg{stroke:var(--ink)}.marquee-wrapper{background:var(--coral);color:var(--ink);white-space:nowrap;border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);z-index:10;width:106vw;margin:2rem 0 2rem -3vw;padding:1.1rem 0;position:relative;overflow:hidden;transform:rotate(-2deg)}.marquee-violet{background:var(--violet);color:var(--white);transform:rotate(2deg)}.marquee-content{font-family:var(--font-heading);letter-spacing:.02em;font-size:2rem;font-weight:800;animation:60s linear infinite marquee;display:inline-flex}.marquee-content span{padding-right:1.4rem}.marquee-content i{color:var(--sun);padding-left:1.4rem;font-style:normal}.marquee-wrapper:not(.marquee-violet) .marquee-content i{color:var(--white)}.reverse .marquee-content{animation-direction:reverse}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.tech-tags{flex-wrap:wrap;gap:.45rem;display:flex}.tech-tags span{font-family:var(--font-mono);letter-spacing:.3px;background:var(--tag-bg,var(--white));white-space:nowrap;border-radius:999px;padding:.32rem .75rem;font-size:.7rem;font-weight:700}.pill-stats{flex-wrap:wrap;gap:.6rem;display:flex}.pill-stat{background:var(--pill-bg);color:var(--pill-fg);border-radius:999px;align-items:center;gap:.55rem;padding:.3rem .85rem .3rem .3rem;display:inline-flex}.pill-stat dt{font-family:var(--font-heading);background:var(--card-bg);color:var(--card-fg);white-space:nowrap;border-radius:999px;padding:.35rem .65rem;font-size:1.05rem;font-weight:800;line-height:1}.pill-stat dd{font-family:var(--font-mono);letter-spacing:.5px;font-size:.64rem;font-weight:700}.stat-band{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:1rem;margin-bottom:3.5rem;display:grid}.stat-tile{border-radius:var(--radius-lg);transition:transform .35s var(--ease-spring);flex-direction:column;align-items:flex-start;gap:.4rem;padding:1.2rem 1.3rem 1.4rem;display:flex}.stat-tile:hover{transform:rotate(-2deg)scale(1.03)}.stat-tile b{font-family:var(--font-heading);white-space:nowrap;margin-top:.8rem;font-size:clamp(2.1rem,4vw,3.4rem);font-weight:800;line-height:1}.stat-meme{font-family:var(--font-mono);background:var(--pill-bg);color:var(--pill-fg);border-radius:999px;padding:.3rem .65rem;font-size:.62rem;font-weight:700}.stat-label{font-family:var(--font-mono);letter-spacing:.5px;opacity:.85;font-size:.7rem;font-weight:700}.xp-filter{flex-wrap:wrap;gap:.6rem;margin-bottom:1.6rem;display:flex}.xp-chip{font-family:var(--font-heading);letter-spacing:.04em;background:var(--white);color:var(--ink);transition:background-color .2s ease, color .2s ease, transform .25s var(--ease-spring);border:none;border-radius:999px;align-items:center;gap:.6rem;padding:.55rem .6rem .55rem 1.2rem;font-size:1.1rem;font-weight:700;display:inline-flex}.xp-chip:hover{transform:translateY(-2px)}.xp-chip.is-active{background:var(--ink);color:var(--white)}.xp-chip-count{min-width:28px;height:28px;font-family:var(--font-mono);background:var(--sage);color:var(--ink);border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;display:inline-flex}.xp-chip.is-active .xp-chip-count{background:var(--sun)}.xp-list{grid-template-columns:repeat(6,minmax(0,1fr));gap:1.2rem;display:grid}.xp-card{border-radius:var(--radius-xl);transition:transform .4s var(--ease-spring);grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:1.4rem 3rem;padding:1.8rem 2rem 2.1rem;display:grid}.xp-card:hover{transform:translateY(-4px)rotate(-.4deg)}.xp-hidden{display:none}.xp-top{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.6rem;display:flex}.xp-index{background:var(--pill-bg);width:42px;height:42px;color:var(--pill-fg);font-family:var(--font-heading);border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;font-weight:800;display:inline-flex}.xp-quest,.xp-period{font-family:var(--font-mono);letter-spacing:1px;border-radius:999px;padding:.4rem .8rem;font-size:.68rem;font-weight:700}.xp-quest{border:2px solid}.xp-period{background:var(--pill-bg);color:var(--pill-fg);margin-left:auto}.xp-main{flex-direction:column;gap:1.1rem;display:flex}.xp-head h3{font-size:clamp(2.1rem,4vw,3.3rem)}.xp-org{margin-top:.5rem;font-size:1rem;font-weight:700}.xp-org a{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.xp-place{font-family:var(--font-mono);opacity:.75;font-size:.72rem;font-weight:700}.xp-summary{font-size:1.02rem;font-weight:500}.xp-points{flex-direction:column;align-self:center;gap:.75rem;list-style:none;display:flex}.xp-points li{padding-left:1.6rem;font-size:.97rem;line-height:1.55;position:relative}.xp-points li:before{content:"";background:var(--pill-bg);border-radius:50%;width:.65rem;height:.65rem;position:absolute;top:.5em;left:0}.xp-points-toggle{color:inherit;font-family:var(--font-mono);letter-spacing:1px;cursor:pointer;background:0 0;border:2px solid;border-radius:999px;justify-self:start;align-items:center;gap:.5rem;padding:.55rem 1rem;font-size:.72rem;font-weight:700;display:none}.xp-points-toggle span{font-size:1rem;line-height:1}.xp-card.xp-compact{grid-column:span 3;grid-template-columns:minmax(0,1fr);align-content:start;gap:1.6rem;padding:2.4rem 2rem 2.8rem}.xp-compact .xp-main{gap:1.5rem}.xp-compact .xp-head h3{line-height:1.02}.xp-compact .xp-org{margin-top:.9rem;line-height:1.7}.xp-compact .xp-summary{line-height:1.75}.xp-card.xp-design{grid-column:span 2;grid-template-columns:minmax(0,1fr);align-content:start;gap:1.5rem;padding:2.2rem 1.8rem 2.6rem}.xp-design .xp-main{gap:1.4rem}.xp-design .xp-head h3{font-size:clamp(1.6rem,2.4vw,2.1rem);line-height:1.05}.xp-design .xp-org{margin-top:.8rem;line-height:1.7}.xp-design .xp-summary{line-height:1.7}.xp-design .xp-points{align-self:start;gap:.9rem}.xp-design .xp-points li{font-size:.88rem;line-height:1.7}.xp-design .xp-period{margin-left:0}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));gap:1.2rem;display:grid}.pj-card{border-radius:var(--radius-xl);transition:transform .4s var(--ease-spring);flex-direction:column;gap:1rem;padding:1.6rem 1.7rem 1.9rem;display:flex}.pj-card:hover{transform:translateY(-6px)rotate(-.8deg)}.pj-top{align-items:center;gap:.6rem;display:flex}.pj-top .round-arrow{margin-left:auto}.pj-index{font-family:var(--font-heading);font-size:1.1rem;font-weight:800}.pj-kind{font-family:var(--font-mono);letter-spacing:1px;border:2px solid;border-radius:999px;padding:.35rem .75rem;font-size:.66rem;font-weight:700}.pj-title{margin-top:.6rem;font-size:clamp(2.4rem,4vw,3.4rem)}.pj-tagline{margin-top:-.4rem;font-weight:700}.pj-badge{font-family:var(--font-mono);letter-spacing:1px;background:var(--pill-bg);color:var(--pill-fg);border-radius:8px;align-self:flex-start;padding:.35rem .75rem;font-size:.66rem;font-weight:700;transform:rotate(-2deg)}.pj-desc{flex:1;font-size:.95rem}.projects-cta{justify-content:center;margin-top:3rem;display:flex}.bento{grid-template-columns:repeat(12,minmax(0,1fr));gap:1.2rem;display:grid}.bento-card{border-radius:var(--radius-xl);flex-direction:column;grid-column:span 5;gap:1rem;padding:1.6rem 1.8rem 1.9rem;display:flex}.bento-skills,.bento-card.tone-mint{grid-column:span 7}.bento-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.bento-title{font-size:clamp(1.9rem,3.4vw,2.8rem)}.bento-sub{font-family:var(--font-mono);letter-spacing:1px;opacity:.8;font-size:.7rem;font-weight:700}.skill-row{border-top:1px dashed #fff3;grid-template-columns:9rem minmax(0,1fr);align-items:start;gap:1rem;padding-top:1rem;display:grid}.skill-label{font-family:var(--font-heading);color:var(--sun);font-size:1.3rem;font-weight:800}.bento-clock{align-items:stretch}.clock{flex-direction:column;align-items:center;gap:.9rem;display:flex}.clock-face{width:min(240px,100%);height:auto}.clock-dial{fill:var(--white)}.clock-tick{stroke:#1d1d1f4d;stroke-width:1.5px}.clock-tick.major{stroke:var(--ink);stroke-width:2.5px}.clock-ring{fill:none;stroke:#e2e7e1;stroke-width:14px}.clock-arc{fill:none;stroke:var(--coral);stroke-width:14px}.clock-hand{stroke-linecap:round}.clock-hand.hour{stroke:var(--ink);stroke-width:6px}.clock-hand.minute{stroke:var(--ink);stroke-width:4px}.clock-hand.second{stroke:var(--coral);stroke-width:2px}.clock-pin{fill:var(--ink)}.clock-meta{justify-content:space-between;width:100%;display:flex}.clock-meta .mono-pill{background:var(--sage);color:var(--ink);font-size:.8rem}.clock-status{font-family:var(--font-mono);font-size:.72rem;font-weight:700}.site-footer{padding-bottom:7rem}.footer-card{border-radius:44px;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:end;gap:2.5rem;padding:2.6rem;display:grid}.footer-main{flex-direction:column;align-items:flex-start;gap:1.2rem;display:flex}.footer-main h2{font-size:clamp(3.2rem,9vw,8rem)}.footer-main p{max-width:30rem;font-size:1.05rem;font-weight:500}.footer-links{flex-direction:column;gap:.8rem;display:flex}.footer-links .btn{justify-content:space-between}.footer-bottom{font-family:var(--font-mono);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.6rem;font-size:.72rem;font-weight:700;display:flex}.reveal-up{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.reveal-up.active{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.15s}.stat-tile.reveal-up.active,.xp-card.reveal-up.active,.pj-card.reveal-up.active{transition:opacity .8s ease, transform .4s var(--ease-spring);transition-delay:0s}.stat-tile.reveal-up.active:hover{transform:rotate(-2deg)scale(1.03)}.xp-card.reveal-up.active:hover{transform:translateY(-4px)rotate(-.4deg)}.pj-card.reveal-up.active:hover{transform:translateY(-6px)rotate(-.8deg)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation:none!important}.reveal-up{transform:none}}@media (max-width:1024px){.xp-card{grid-template-columns:minmax(0,1fr)}.xp-points{align-self:start}.xp-card.xp-design,.xp-card.xp-compact{grid-column:1/-1}.bento-card,.bento-skills,.bento-card.tone-mint{grid-column:span 12}}@media (max-width:900px){.hero{grid-template-columns:minmax(0,1fr);gap:5rem;padding-top:7rem}.hero-copy .sticker-sun{margin-top:2rem;display:inline-block;position:relative;bottom:auto;right:auto}.footer-card{grid-template-columns:minmax(0,1fr)}}@media (max-width:768px){.section-padding{padding:4rem 16px}.nav-bar{padding:1rem 16px}.nav-right{padding:.35rem}.nav-bar .nav-links{display:none}.bottom-nav-pill{gap:1rem;padding-right:1.1rem;bottom:1rem}.bottom-nav-pill .nav-links{gap:1rem}.bottom-nav-pill .nav-links a{font-size:.85rem}.xp-card,.pj-card,.bento-card{border-radius:var(--radius-lg);padding:1.4rem 1.2rem 1.6rem}.xp-period{margin-left:0}.xp-points-toggle{display:inline-flex}.xp-collapsible:not(.is-open) .xp-points,.xp-folded{display:none}.xp-design-toggle{border-radius:var(--radius-lg);border-style:dashed;grid-column:1/-1;justify-content:center;padding:.9rem 1rem}.skill-row{grid-template-columns:minmax(0,1fr);gap:.5rem}.footer-card{border-radius:var(--radius-lg);padding:1.6rem 1.2rem}.marquee-content{font-size:1.5rem}.hero{padding-top:6.5rem}.hero-art .sticker-mint{bottom:-2rem;right:0}}@media (max-width:420px){.bottom-nav-pill .logo{display:none}.bottom-nav-pill{padding:.9rem 1.2rem}.phone-screen{padding:3.6rem .8rem .8rem}}.ctx-menu{z-index:9000;background:var(--white);width:240px;color:var(--ink);border:2.5px solid var(--ink);border-radius:var(--radius-md);box-shadow:5px 5px 0 var(--ink);animation:ctx-pop .18s var(--ease-spring);transform-origin:0 0;padding:.6rem;position:fixed}@keyframes ctx-pop{0%{opacity:0;transform:scale(.9)rotate(-2deg)}to{opacity:1;transform:none}}.ctx-head{font-family:var(--font-heading);letter-spacing:.03em;border-bottom:1.5px dashed #1d1d1f33;flex-direction:column;gap:.2rem;margin-bottom:.4rem;padding:.4rem .6rem .7rem;font-size:1.15rem;font-weight:800;display:flex}.ctx-hint{font-family:var(--font-mono);letter-spacing:.5px;opacity:.55;font-size:.55rem;font-weight:700}.ctx-menu ul{list-style:none}.ctx-item{transition:background-color .15s ease, transform .2s var(--ease-spring);border-radius:12px;outline:none;align-items:center;gap:.75rem;padding:.5rem .6rem;font-size:.95rem;font-weight:700;text-decoration:none;display:flex}.ctx-item:hover,.ctx-item:focus-visible{background:var(--sage);transform:translate(3px)}.ctx-icon{border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.95rem;display:inline-flex}.ctx-arrow{opacity:.4;margin-left:auto}.ink-sun{background:var(--sun);color:var(--ink);border-radius:.14em;padding:.02em .14em 0;display:inline-block;transform:rotate(-1deg)}.tool-hero{min-height:0;padding-bottom:2rem}.tool-title{font-size:clamp(3rem,8vw,7.4rem)}.tool-section{padding-top:0}.tool-card{border:2.5px solid var(--ink);border-radius:var(--radius-xl);max-width:980px;box-shadow:8px 8px 0 var(--ink);flex-direction:column;gap:1.4rem;padding:1.8rem;display:flex}.dropzone{text-align:center;background:var(--white);border:3px dashed var(--ink);border-radius:var(--radius-lg);min-height:220px;transition:background-color .2s ease, transform .3s var(--ease-spring);flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:2rem 1.2rem;display:flex}.dropzone:hover,.dropzone:focus-within,.dropzone.is-over{background:var(--mint)}.dropzone:focus-within{outline:3px solid var(--violet);outline-offset:3px}.dropzone.is-over{transform:scale(1.01)rotate(-.4deg)}.dropzone.is-disabled{opacity:.55;pointer-events:none}.dropzone-icon{background:var(--sun);border:2.5px solid var(--ink);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.6rem;font-weight:700;display:inline-flex}.dropzone-title{font-family:var(--font-heading);overflow-wrap:anywhere;margin-top:.4rem;font-size:clamp(1.6rem,3.4vw,2.4rem);font-weight:800;line-height:1}.dropzone-hint{font-family:var(--font-mono);letter-spacing:.5px;opacity:.7;font-size:.72rem;font-weight:700}.tool-controls{flex-wrap:wrap;align-items:flex-end;gap:1rem 1.4rem;display:flex}.tool-controls>.btn{margin-left:auto}.tool-field{flex-direction:column;gap:.45rem;display:flex}.tool-label{font-family:var(--font-mono);letter-spacing:1px;font-size:.68rem;font-weight:700}.tool-input-wrap{background:var(--white);border:2.5px solid var(--ink);border-radius:999px;align-items:center;padding-right:1rem;display:inline-flex}.tool-input{width:7.5rem;font-family:var(--font-heading);color:var(--ink);background:0 0;border:none;outline:none;padding:.35rem .4rem .35rem 1rem;font-size:1.6rem;font-weight:800}.tool-input-wrap:focus-within{outline:3px solid var(--violet);outline-offset:2px}.tool-unit{font-family:var(--font-mono);font-size:.8rem;font-weight:700}.tool-chips{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.xp-chip.tool-tab{border:2.5px solid var(--ink);padding:.6rem 1.3rem;font-size:1.25rem}.tool-card .xp-chip{border:2px solid var(--ink);padding:.4rem .95rem;font-size:1rem}.tool-range input{width:200px;accent-color:var(--violet)}.tool-card button:disabled,.tool-card input:disabled{opacity:.5;pointer-events:none}.tool-progress{background:var(--white);border:2.5px solid var(--ink);border-radius:999px;height:44px;position:relative;overflow:hidden}.tool-progress-bar{background:repeating-linear-gradient(-45deg, var(--coral) 0 14px, var(--sun) 14px 28px);background-size:40px 40px;height:100%;transition:width .3s;animation:1s linear infinite tool-stripes}@keyframes tool-stripes{to{background-position:40px 0}}.tool-progress-label{font-family:var(--font-mono);letter-spacing:1px;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex;position:absolute;inset:0}.tool-note{font-weight:600}.tool-note.is-error,.tool-list-status.is-error{color:#c2321b}.tool-result{background:var(--white);border-radius:var(--radius-lg);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:1.4rem;padding:1rem;display:grid}.tool-preview{object-fit:contain;border-radius:var(--radius-md);background:var(--ink);width:100%;max-height:420px;display:block}.tool-preview.is-checker{background:repeating-conic-gradient(#e4e4e4 0 25%, var(--white) 0 50%) 0 0 / 24px 24px}.tool-color-chip{align-items:center;gap:.5rem;display:inline-flex}.tool-color-chip input{cursor:pointer;background:0 0;border:0;width:1.4rem;height:1.4rem;padding:0}.tool-result-meta{flex-direction:column;align-items:flex-start;gap:1.2rem;display:flex}.tool-list{flex-direction:column;gap:.5rem;list-style:none;display:flex}.tool-list-item{background:var(--white);border-radius:999px;align-items:center;gap:.8rem;padding:.6rem .6rem .6rem 1.1rem;display:flex}.tool-list-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.tool-list-size,.tool-list-status{font-family:var(--font-mono);white-space:nowrap;font-size:.72rem;font-weight:700}.tool-list-index{font-family:var(--font-heading);font-size:1.05rem;font-weight:800}.tool-list-actions{gap:.3rem;display:flex}.tool-input-wide{width:14rem;font-size:1.3rem}.tool-result-row{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.tool-list-item .mono-pill{border:none}.tool-list-remove{background:var(--sage);width:32px;height:32px;color:var(--ink);border:none;border-radius:50%;flex:none;font-weight:700}.tool-fineprint{font-family:var(--font-mono);opacity:.7;font-size:.72rem}.tool-faq{flex-direction:column;gap:.8rem;max-width:980px;display:flex}.tool-faq-item{border-radius:var(--radius-lg);padding:1.1rem 1.5rem}.tool-faq-item summary{font-family:var(--font-heading);text-transform:uppercase;font-size:1.5rem;font-weight:700;list-style:none}.tool-faq-item summary::-webkit-details-marker{display:none}.tool-faq-item summary:after{content:"+";float:right;transition:transform .25s var(--ease-spring);margin-left:1rem}.tool-faq-item[open] summary:after{transform:rotate(45deg)}.tool-faq-item p{max-width:46rem;margin-top:.6rem}.prompter{background:var(--ink);height:440px;color:var(--white);border-radius:var(--radius-lg);outline:none;position:relative;overflow:hidden}.prompter:focus-visible{outline:3px solid var(--violet);outline-offset:3px}.prompter:fullscreen,.prompter:fullscreen *,.prompter.is-full,.prompter.is-full *{cursor:auto!important}.prompter:fullscreen,.prompter.is-full{border-radius:0;height:100dvh}.prompter.is-full{z-index:1000;position:fixed;inset:0}.tool-card:has(.prompter.is-full){transform:none!important}.prompter-scroll{scrollbar-width:none;height:100%;overflow-y:auto}.prompter-scroll::-webkit-scrollbar{display:none}.prompter-pad-top{height:30%}.prompter-pad-bottom{height:70%}.prompter-text{max-width:1100px;font-family:var(--font-body);white-space:pre-wrap;overflow-wrap:anywhere;margin:0 auto;padding:0 6%;font-weight:600;line-height:1.4}.prompter-text.is-mirrored{transform:scaleX(-1)}.prompter-line{pointer-events:none;position:absolute;top:30%;left:0;right:0}.prompter-line:before,.prompter-line:after{content:"";border:12px solid #0000;position:absolute;top:-12px}.prompter-line:before{border-left:18px solid var(--coral);left:0}.prompter-line:after{border-right:18px solid var(--coral);right:0}.prompter-count{font-family:var(--font-heading);color:var(--sun);pointer-events:none;background:#1d1d1fb3;justify-content:center;align-items:center;font-size:9rem;font-weight:800;display:flex;position:absolute;inset:0}.prompter-bar{background:linear-gradient(transparent, var(--ink) 40%);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;padding:.9rem;display:flex;position:absolute;bottom:0;left:0;right:0}.prompter-speed{text-align:center;min-width:3.5rem;font-family:var(--font-mono);font-weight:700}.tool-archive{margin-top:3rem}.tool-archive summary{font-family:var(--font-heading);opacity:.7;font-size:1.5rem;font-weight:700;list-style:none;display:inline-block}.tool-archive summary::-webkit-details-marker{display:none}.tool-archive summary:after{content:"+";transition:transform .25s var(--ease-spring);margin-left:.6rem;display:inline-block}.tool-archive[open] summary:after{transform:rotate(45deg)}.tool-archive .projects-grid{margin-top:1.2rem}.tool-others{flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:2.6rem;display:flex}.tool-link{text-decoration:none}.tool-textarea{width:100%;font-family:var(--font-mono);color:var(--ink);background:var(--white);border:2.5px solid var(--ink);border-radius:var(--radius-md);resize:vertical;outline:none;padding:.75rem 1rem;font-size:.9rem}.tool-textarea:focus{outline:3px solid var(--violet);outline-offset:2px}.qr-layout{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:2rem;display:grid}.qr-controls{flex-direction:column;gap:1.2rem;display:flex}.qr-colors{flex-wrap:wrap;align-items:flex-end;gap:1rem 1.4rem;display:flex}.qr-swatch{border:2.5px solid var(--ink);background:var(--white);border-radius:12px;width:64px;height:44px;padding:0}.qr-swatch::-webkit-color-swatch-wrapper{padding:4px}.qr-swatch::-webkit-color-swatch{border:none;border-radius:7px}.qr-check{font-family:var(--font-mono);letter-spacing:1px;align-items:center;gap:.5rem;min-height:44px;font-size:.72rem;font-weight:700;display:inline-flex}.qr-check input{width:18px;height:18px;accent-color:var(--violet)}.qr-preview{flex-direction:column;align-items:center;gap:.9rem;width:340px;display:flex}.qr-canvas-wrap{background:var(--white);border:2.5px solid var(--ink);border-radius:var(--radius-lg);width:340px;height:340px;box-shadow:5px 5px 0 var(--ink);justify-content:center;align-items:center;display:flex;overflow:hidden}.qr-canvas-wrap.is-transparent{background:repeating-conic-gradient(#e6e6e6 0 25%, var(--white) 0 50%) 0 0 / 20px 20px}.qr-canvas{width:300px;height:300px;display:block}.qr-empty{text-align:center;font-family:var(--font-heading);text-transform:uppercase;opacity:.6;padding:1.5rem;font-size:1.6rem;font-weight:700}@media (max-width:900px){.qr-layout{grid-template-columns:minmax(0,1fr)}.qr-preview{width:100%}}@media (max-width:420px){.qr-canvas-wrap{aspect-ratio:1;width:100%;height:auto}.qr-canvas{width:86%;height:auto}}@media (max-width:768px){.tool-card{border-radius:var(--radius-lg);box-shadow:5px 5px 0 var(--ink);padding:1.1rem}.dropzone{min-height:170px}.tool-controls>.btn{width:100%;margin-left:0}.tool-result{grid-template-columns:minmax(0,1fr)}.tool-range input{width:100%}.tool-list-item{border-radius:var(--radius-md);flex-wrap:wrap}.tool-list-name{flex-basis:100%}}.error-screen{flex-direction:column;justify-content:center;align-items:flex-start;gap:1.2rem;min-height:100vh;display:flex}.error-code{color:var(--white);-webkit-text-stroke:3px var(--ink);text-shadow:8px 8px 0 var(--ink);font-size:clamp(7rem,26vw,18rem);line-height:.8}.status-pill .dot-err{background:var(--coral);box-shadow:none;animation:none}.error-screen button.btn{font-family:var(--font-heading)}.tool-big{font-family:var(--font-heading);overflow-wrap:anywhere;font-size:clamp(3rem,8vw,5.2rem);font-weight:800;line-height:1}.tool-big small{font-size:.4em}.tool-select{font-family:var(--font-heading);color:var(--ink);background:var(--white);border:2.5px solid var(--ink);border-radius:999px;outline:none;padding:.45rem 1rem;font-size:1.3rem;font-weight:700}.tool-select:focus{outline:3px solid var(--violet);outline-offset:2px}.tool-table-wrap{margin-top:.8rem;overflow-x:auto}.tool-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);text-align:right;font-size:.8rem}.tool-table th,.tool-table td{border-bottom:1.5px solid var(--ink);white-space:nowrap;padding:.45rem .6rem}.tool-table th:first-child,.tool-table td:first-child{text-align:left}.tool-password{min-width:0;font-family:var(--font-mono);overflow-wrap:anywhere;flex:1;font-size:clamp(1.1rem,3vw,1.6rem);font-weight:700}.tool-swatch{font-family:var(--font-heading);font-size:6rem;font-weight:800}
