@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--ink:#202039;--muted:#65677b;--purple:#7356cc;--cream:#faf8f4;--line:#e7e4e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',system-ui,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100vw - 1240px)/2));background:#fff;position:relative;z-index:3;border-bottom:1px solid #f0edf2}.brand{display:flex;gap:12px;align-items:center;font:800 19px/1 'Outfit',sans-serif;letter-spacing:.06em}.brand b{color:#805dd3}.brand small{display:block;font-size:10px;letter-spacing:.4em;margin-top:5px}.brand-mark{display:inline-grid;place-items:center;color:#fff;background:#7959cf;border-radius:13px;width:42px;height:42px;font-size:29px}.site-header nav{display:flex;gap:31px;align-items:center;font-size:14px;font-weight:700}.site-header nav a:hover{color:var(--purple)}.nav-cta{background:#ece6ff;padding:12px 18px;border-radius:99px;color:#5d40a9}.menu-toggle{display:none;background:transparent;border:0;font-size:26px}.hero{background:#17162b;color:#fff;position:relative;overflow:hidden;min-height:650px}.hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 83% 30%,#5c447f 0,transparent 46%),radial-gradient(ellipse at 22% 80%,#253b53 0,transparent 45%)}.hero-inner{position:relative;z-index:1;width:min(1240px,90%);margin:auto;padding:116px 0 96px}.hero-inner>*{max-width:590px}.eyebrow,.kicker{font-size:12px;letter-spacing:.17em;font-weight:800;color:#a68bef}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#7de6bf;margin-right:9px}.hero h1,.section h2{font-family:'Outfit',sans-serif;letter-spacing:-.055em}.hero h1{font-size:clamp(48px,5.3vw,80px);line-height:1.08;margin:27px 0 24px}.hero h1 em,.section h2 em{font-style:normal;color:#bba0ff}.hero p{color:#cbc9dc;font-size:17px;line-height:1.85}.hero-actions{display:flex;gap:13px;margin-top:31px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;border-radius:12px;padding:16px 21px;font-size:14px;font-weight:800;border:1px solid transparent;transition:transform .15s}.btn:hover{transform:translateY(-2px)}.primary{background:#bba0ff;color:#22183b}.secondary{border-color:#666078;color:#fff}.hero-stats{display:flex;gap:24px;margin-top:65px;font-size:12px;color:#bbb9ca}.hero-stats strong{color:#fff}.hero-art{position:absolute;width:340px;right:max(8%,calc((100vw - 1200px)/2));top:85px;transform:rotate(6deg)}.art-frame{padding:14px;background:#fff;border-radius:23px;box-shadow:0 35px 90px #0c0a1b90}.art-frame svg{display:block;width:100%;border-radius:14px}.floating-tag{position:absolute;background:#fff;color:#302843;padding:12px 17px;border-radius:12px;box-shadow:0 15px 35px #0004;font-size:12px;font-weight:800}.tag-one{top:95px;left:-80px;transform:rotate(-6deg)}.tag-two{bottom:45px;right:-50px;transform:rotate(-6deg)}.section{max-width:1240px;margin:auto;padding:100px 5%}.section-head{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:38px}.section h2{font-size:clamp(34px,4vw,54px);line-height:1.12;margin:12px 0}.section h2 em{color:#8763d0}.section-head>p{max-width:355px;color:var(--muted);line-height:1.8}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.collection-card{background:#fff;border:1px solid #ece8ee;border-radius:20px;overflow:hidden}.card-art{height:185px;display:grid;place-items:center;font-size:95px;background:linear-gradient(135deg,#eadcfc,#f9efff)}.nature .card-art{background:linear-gradient(135deg,#d2eddb,#f0f7df)}.tattoo .card-art{background:linear-gradient(135deg,#f5d5de,#faebdc)}.kids .card-art{background:linear-gradient(135deg,#ffe5b9,#f6efb9)}.machines .card-art{background:linear-gradient(135deg,#d3e5f4,#d5dbf4)}.card-copy{padding:26px}.tag{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#8b64cf}.card-copy h3{font:700 23px 'Outfit',sans-serif;margin:12px 0}.card-copy p{font-size:14px;line-height:1.7;color:var(--muted);min-height:72px}.coming{display:block;font-size:12px;color:#7a58c3;font-weight:800;margin-top:20px}.section-note{font-size:12px;color:#868394;margin-top:20px}.demo-section{padding-top:35px}.demo-shell{border-radius:23px;background:#fff;border:1px solid var(--line);overflow:hidden;box-shadow:0 15px 45px #241b3810}.demo-toolbar{display:flex;align-items:center;justify-content:space-between;padding:22px 27px;border-bottom:1px solid var(--line)}.demo-toolbar strong{display:block;font:700 20px 'Outfit',sans-serif}.demo-toolbar small{color:#8b8896}.reset-btn{border:1px solid var(--line);border-radius:9px;padding:10px 14px;background:#fff;color:#4f4660;font-size:13px;font-weight:700}.demo-body{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr)}.demo-canvas{background:#f1eef5;padding:30px;display:grid;place-items:center}.demo-canvas svg{max-width:420px;width:100%;background:#fff;border-radius:12px;box-shadow:0 8px 25px #26213918;touch-action:manipulation}.fill-region{cursor:crosshair;transition:fill .12s}.fill-region:hover{stroke:#7755d5;stroke-width:6}.palette-panel{padding:37px 28px}.palette-panel h3{font:700 24px 'Outfit',sans-serif;margin:0 0 8px}.palette-panel p{font-size:14px;color:var(--muted);line-height:1.7}.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:24px 0}.swatch{width:100%;aspect-ratio:1;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #e6e2e9}.swatch.active{box-shadow:0 0 0 3px #302541}.color-tools{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:23px;font-size:14px;font-weight:700}.color-tools input{width:57px;height:40px;border:0;background:transparent}.full{width:100%;margin-top:24px;border:0}.demo-hint{font-size:12px!important}.steps{text-align:center}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:left;margin-top:40px}.steps-grid>div{background:#fff;padding:30px;border-radius:18px;border:1px solid var(--line)}.step-num{font:800 37px 'Outfit',sans-serif;color:#ad8de8}.steps-grid h3{font:700 21px 'Outfit',sans-serif}.steps-grid p{color:var(--muted);line-height:1.75;font-size:14px}.about{padding-top:30px}.about-panel{display:flex;align-items:center;justify-content:space-between;background:#e9e2f7;border-radius:25px;padding:70px;gap:50px}.about-panel>div:first-child{max-width:690px}.about-panel p{color:#625d74;line-height:1.8}.about-symbol{font-size:170px;color:#a187da}.update-section{padding-top:20px}.update-panel{text-align:center;background:#19172c;color:#fff;border-radius:25px;padding:70px 30px}.update-panel h2{max-width:750px;margin:18px auto}.update-panel p{max-width:600px;margin:0 auto 25px;line-height:1.8;color:#ccc9df}footer{text-align:center;background:#fff;padding:45px 20px;color:#737081;font-size:13px}.footer-brand{display:flex;align-items:center;justify-content:center;gap:10px;color:#28223b}.footer-brand .brand-mark{width:34px;height:34px;font-size:23px}footer small{display:block;margin-top:24px;color:#93909c}@media(max-width:1000px){.hero-art{opacity:.4;right:-70px}.hero-inner{padding:90px 0}.hero-inner>*{max-width:630px}.collection-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.site-header{height:70px;padding:0 5%}.brand{font-size:15px}.brand-mark{width:36px;height:36px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:20px 5%;box-shadow:0 15px 20px #0001;flex-direction:column;align-items:stretch;gap:16px}.site-header nav.open{display:flex}.hero{min-height:0}.hero-inner{padding:76px 0}.hero h1{font-size:49px}.hero p{font-size:15px}.hero-art{display:none}.hero-actions{flex-wrap:wrap}.hero-stats{flex-wrap:wrap;margin-top:43px;gap:13px}.section{padding:70px 5%}.section-head{display:block}.collection-grid,.steps-grid,.demo-body{grid-template-columns:1fr}.card-art{height:145px;font-size:72px}.card-copy p{min-height:0}.demo-canvas{padding:14px}.palette-panel{padding:26px}.about-panel{padding:36px 27px}.about-symbol{display:none}.update-panel{padding:50px 22px}}

/* Coloring Playground v0.2 */
.toolbar-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.toolbar-actions button{white-space:nowrap}.demo-canvas{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:12px;min-width:0}.zoom-toolbar{display:flex;align-items:center;justify-content:center;gap:10px}.zoom-toolbar button{background:white;border:1px solid #d9d3e4;border-radius:9px;padding:7px 14px;font-weight:800;color:#493668}.zoom-toolbar span{min-width:55px;text-align:center;font-size:13px;font-weight:800}.art-viewport{width:100%;max-width:490px;aspect-ratio:420/460;overflow:hidden;background:white;border-radius:12px;touch-action:none;position:relative;margin:0 auto;box-shadow:0 8px 25px #26213918}.art-viewport svg{display:block;width:100%;height:100%;max-width:none;box-shadow:none;border-radius:0;touch-action:none;transform-origin:50% 50%;user-select:none;-webkit-user-select:none}.gesture-hint{text-align:center;font-size:12px;color:#655e78;margin:0;line-height:1.5}.mode-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:15px 0}.mode-switch button{padding:11px 5px;background:#f5f2fa;border:1px solid #ded8e8;border-radius:10px;font-size:12px;font-weight:800;color:#514663}.mode-switch button.selected{background:#7255c4;color:white;border-color:#7255c4}.brush-tools{padding:12px;background:#f8f5fc;border-radius:12px;margin:12px 0}.brush-tools[hidden]{display:none}.brush-tools label{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:700}.brush-tools input[type=range]{width:100%;accent-color:#7959cf;margin:12px 0}.brush-tools .checkbox-row{justify-content:flex-start;align-items:center}.brush-tools .checkbox-row input{accent-color:#7959cf}.brush-tools p{font-size:11px;line-height:1.4;margin:10px 0 0}.fill-region:hover{stroke:inherit;stroke-width:5}@media(max-width:700px){.demo-toolbar{padding:16px;gap:10px;flex-wrap:wrap}.toolbar-actions button{padding:8px}.art-viewport{max-width:420px}.gesture-hint{font-size:11px}}
