*{box-sizing:border-box}body{margin:0}#root{min-height:100vh}button,input{font:inherit}:root{--bg:#fdf8ee;--bg2:#fffdf6;--ink:#676058;--ink2:#6b5735;--accent:#fed74b;--coral:#ef6f53;--teal:#43a7a8;--shadow:0 3px 0 #676058;--radius:16px;font-family:Fredoka,Segoe UI,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;color:var(--ink);background:radial-gradient(at 0 0,#fed74b33 0%,#0000 50%),radial-gradient(at 100% 100%,#43a7a822 0%,#0000 50%),#fdf8ee}.app{flex-direction:column;min-height:100vh;display:flex}.header{background:var(--bg2);border-bottom:2px solid var(--ink);box-shadow:var(--shadow);justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.header-logo{letter-spacing:0;color:var(--ink);align-items:center;gap:10px;font-size:1.05rem;font-weight:700;text-decoration:none;display:flex}.header-mark{flex:none;width:30px;height:30px;display:block}.header-wordmark{line-height:1}.header-tag{border:2px dashed var(--ink);color:var(--ink2);border-radius:999px;padding:4px 12px;font-size:.8rem}.static-page{flex:1;padding:40px 20px 56px}.static-shell{background:#fffdf6;border:2px solid #67605840;border-radius:18px;width:min(100%,820px);margin:0 auto;padding:28px 24px;box-shadow:0 10px 24px #67605814}.static-eyebrow{letter-spacing:.12em;color:var(--ink2);text-transform:uppercase;margin-bottom:12px;font-size:.76rem;font-weight:700}.static-shell h1{margin:0 0 10px;font-size:clamp(2rem,5vw,3rem)}.static-intro{color:var(--ink2);margin:0 0 18px;line-height:1.6}.static-section{border-top:1.5px dashed #67605833;margin-top:18px;padding-top:18px}.static-section h2{margin:0 0 8px;font-size:1.1rem}.static-section p{color:var(--ink);margin:0;line-height:1.65}.static-shell a{color:var(--teal)}.upload-screen{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:40px 20px;display:flex}.hero-badge{letter-spacing:.12em;border:2px solid var(--ink);background:var(--accent);box-shadow:var(--shadow);border-radius:999px;padding:5px 14px;font-size:.75rem;font-weight:700}.hero-badge-sub{color:var(--ink2);letter-spacing:.06em;font-size:.8rem}.hero-title{letter-spacing:.06em;color:var(--ink);font-size:clamp(2rem,6vw,3.5rem);font-weight:700}.hero-sub{text-align:center;max-width:480px;color:var(--ink2);line-height:1.5}.upload-zone{border:2.5px dashed var(--ink);border-radius:var(--radius);background:var(--bg2);text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:8px;width:min(100%,440px);padding:32px 24px;transition:background .15s;display:flex}.upload-zone:hover{background:#fff8e6}.upload-icon{color:var(--teal);font-size:2.5rem}.upload-text{font-size:1rem;font-weight:600}.upload-hint{color:var(--ink2);font-size:.82rem}.demo-btn{border:2px solid var(--ink);background:var(--coral);color:#fff;cursor:pointer;box-shadow:var(--shadow);border-radius:999px;padding:10px 22px;font-size:.95rem;font-weight:700;transition:transform .1s}.demo-btn:hover{transform:translateY(-1px)}.sample-card{border:2px solid var(--ink);border-radius:var(--radius);background:var(--bg2);width:min(100%,920px);box-shadow:var(--shadow);grid-template-columns:1.2fr .8fr;align-items:center;gap:16px;padding:18px;display:grid}.sample-kicker{letter-spacing:.14em;color:var(--ink2);font-size:.72rem;font-weight:700}.sample-copy{text-align:left;flex-direction:column;gap:8px;display:flex}.sample-copy h2{margin:0;font-size:1.2rem}.sample-copy p{color:var(--ink2);line-height:1.5}.privacy-note{font-size:.85rem;font-weight:700}.sample-image{object-fit:cover;border:2px dashed #67605866;border-radius:12px;width:100%;max-height:240px}.features{grid-template-columns:repeat(3,1fr);gap:12px;width:min(100%,920px);display:grid}.feature-card{text-align:left;background:#fff9e9;border:2px solid #6760584d;border-radius:12px;flex-direction:column;gap:6px;padding:14px;display:flex}.feature-card h3{margin:0;font-size:.95rem}.feature-card p{color:var(--ink2);margin:0;font-size:.82rem;line-height:1.45}.info-section{border-top:2px solid #67605840;flex-direction:column;gap:14px;padding:24px 20px 28px;display:flex}.info-section h2{text-align:center;margin:0;font-size:1.35rem}.steps-grid{grid-template-columns:repeat(3,1fr);gap:12px;width:min(100%,920px);margin:0 auto;display:grid}.step-card{text-align:left;background:#fffdf6;border:2px solid #6760584d;border-radius:12px;flex-direction:column;gap:8px;padding:14px;display:flex}.step-card h3{margin:0;font-size:.95rem}.step-card p{color:var(--ink2);margin:0;font-size:.83rem;line-height:1.5}.faq-section{margin-bottom:22px;padding-top:8px}.faq-list{flex-direction:column;gap:8px;width:min(100%,920px);margin:0 auto;display:flex}.faq-item{background:#fffdf6;border:2px solid #6760584d;border-radius:12px;padding:10px 12px}.faq-item summary{cursor:pointer;font-size:.9rem;font-weight:700}.faq-item p{color:var(--ink2);margin:8px 0 0;font-size:.82rem;line-height:1.5}.seo-article{width:min(100%,900px);color:var(--ink);margin:0 auto;padding:32px 20px 48px;font-size:1rem;line-height:1.7}.seo-header{border-bottom:2px solid #67605833;margin-bottom:28px;padding-bottom:20px}.seo-header h2{color:var(--ink);margin:0 0 12px;font-size:clamp(1.4rem,3vw,2rem);font-weight:700;line-height:1.25}.seo-lead{color:var(--ink2);margin:0;font-size:1.05rem;line-height:1.65}.seo-section{border-bottom:1.5px dashed #6760582e;margin-bottom:36px;padding-bottom:24px}.seo-section:last-of-type{border-bottom:none}.seo-section h2{color:var(--ink);margin:0 0 12px;font-size:1.3rem;font-weight:700}.seo-section h3{color:var(--ink2);margin:20px 0 8px;font-size:1.05rem;font-weight:700}.seo-section p{color:var(--ink);margin:0 0 12px}.seo-section p:last-child{margin-bottom:0}.seo-list{color:var(--ink);margin:0 0 12px;padding-left:1.4em}.seo-list li{margin-bottom:6px;line-height:1.55}.seo-faq .seo-faq-item{background:#fffdf6;border:1.5px solid #67605840;border-radius:10px;margin-bottom:8px;padding:10px 14px}.seo-faq .seo-faq-item summary{cursor:pointer;color:var(--ink);font-size:.92rem;font-weight:700}.seo-faq .seo-faq-item p{color:var(--ink2);margin:8px 0 0;font-size:.85rem;line-height:1.55}.seo-conclusion p{margin-bottom:14px}.seo-disclaimer{color:var(--ink2);opacity:.75;margin-top:20px;font-size:.78rem}@media (width<=768px){.seo-article{padding:20px 14px 36px}.seo-header h2{font-size:1.25rem}}.editor{flex:1;grid-template-columns:220px 1fr 200px;gap:0;min-height:0;display:grid}.sidebar{background:var(--bg2);border-right:2px solid var(--ink);flex-direction:column;gap:4px;padding:12px;display:flex;overflow-y:auto}.sb-section{background:#ffffff80;border:1.5px dashed #6760584d;border-radius:12px;flex-direction:column;gap:6px;padding:10px;display:flex}.sb-label{letter-spacing:.1em;color:var(--ink2);font-size:.68rem;font-weight:700}.sb-label-row{justify-content:space-between;font-size:.82rem;display:flex}.sb-val{font-family:monospace;font-weight:700}.format-grid{flex-direction:column;gap:4px;display:flex}.format-btn{text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:1.5px solid #0000;border-radius:8px;padding:5px 10px;font-size:.78rem;transition:all .1s}.format-btn.active,.format-btn:hover{background:var(--accent);border-color:var(--ink);font-weight:600}.brush-btns{flex-wrap:wrap;gap:4px;display:flex}.brush-btn{border:2px solid var(--ink);background:var(--bg2);cursor:pointer;box-shadow:0 2px 0 var(--ink);border-radius:999px;padding:4px 8px;font-size:.78rem;font-weight:700}.brush-btn.active{background:var(--accent)}.grid-info{color:var(--ink2);font-size:.75rem}.mode-grid{grid-template-columns:1fr;gap:6px;display:grid}.mode-btn{text-align:left;border:2px solid var(--ink);cursor:pointer;box-shadow:0 2px 0 var(--ink);background:#fff;border-radius:10px;padding:7px 10px;font-size:.8rem;font-weight:700}.mode-btn.active{background:var(--teal);color:#fff}.slider{width:100%;accent-color:var(--teal)}.toggle-row{justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.toggle{border:2px solid var(--ink);cursor:pointer;background:var(--bg2);box-shadow:0 2px 0 var(--ink);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700}.toggle.on{background:var(--teal);color:#fff}.reset-btn{border:1.5px solid var(--ink);cursor:pointer;background:var(--bg2);border-radius:999px;padding:5px 10px;font-size:.75rem}.replace-btn{border:2px solid var(--ink);background:var(--accent);cursor:pointer;box-shadow:var(--shadow);text-align:center;border-radius:10px;padding:8px 12px;font-size:.85rem;font-weight:700}.demo-link{color:var(--teal);cursor:pointer;text-align:center;background:0 0;border:none;font-size:.78rem;text-decoration:underline}.canvas-area{background:#f5f0e6;flex-direction:column;gap:8px;padding:12px;display:flex;overflow:hidden}.canvas-stats{color:var(--ink2);flex-wrap:wrap;gap:12px;font-size:.78rem;display:flex}.canvas-stats span:after{content:" ·";margin-left:10px}.canvas-stats span:last-child:after{content:""}.canvas-wrapper{border:2px solid var(--ink);border-radius:var(--radius);background:var(--bg2);flex:1;justify-content:flex-start;align-items:flex-start;display:flex;overflow:auto}.pixel-canvas{image-rendering:pixelated;display:block}.canvas-actions{align-items:center;gap:8px;display:flex;position:relative}.zoom-btn{border:2px solid var(--ink);background:var(--bg2);cursor:pointer;box-shadow:0 2px 0 var(--ink);border-radius:999px;min-width:36px;padding:5px 12px;font-size:.9rem;font-weight:700}.download-btn{border:2px solid var(--ink);background:var(--teal);color:#fff;cursor:pointer;box-shadow:var(--shadow);border-radius:999px;margin-left:auto;padding:7px 18px;font-weight:700}.download-btn.active{box-shadow:0 1px 0 var(--ink);transform:translateY(1px)}.download-menu{margin-left:auto;position:relative}.download-panel{border:2px solid var(--ink);z-index:10;background:#fffdf6;border-radius:18px;width:min(560px,100vw - 48px);padding:14px;position:absolute;bottom:calc(100% + 10px);right:0;box-shadow:0 12px #6760582e}.download-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.download-option{text-align:left;cursor:pointer;color:var(--ink);background:#fffdf6;border:2px solid #67605847;border-radius:16px;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;transition:background .12s,border-color .12s,transform .12s;display:flex}.download-option strong{font-size:1.05rem;line-height:1.1}.download-option span{color:var(--ink2);font-size:.9rem;line-height:1.35}.download-option:hover{border-color:var(--ink);background:#fff8e6;transform:translateY(-1px)}.download-option.featured{border-color:var(--ink);background:#8fd1ea}.download-option.featured span{color:#5a5042}.download-dev{border-top:1.5px dashed #67605847;margin-top:12px;padding-top:12px}.download-dev-label{letter-spacing:.08em;color:var(--ink2);text-transform:uppercase;margin-bottom:8px;font-size:.72rem;font-weight:700}.download-option.compact{gap:4px;padding:12px 14px}.download-option.compact strong{font-size:.95rem}.download-option.compact span{font-size:.82rem}.palette-panel{border-left:2px solid var(--ink);background:var(--bg2);flex-direction:column;gap:8px;padding:12px;display:flex;overflow-y:auto}.palette-title{letter-spacing:.06em;font-size:.85rem;font-weight:700}.palette-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.swatch{aspect-ratio:1;cursor:pointer;border:1.5px solid #6760584d;border-radius:4px;width:100%;transition:transform .1s,border-color .1s}.swatch.used{border:2px solid var(--ink);box-shadow:0 0 0 1px var(--accent)}.swatch.hovered{z-index:2;border-color:var(--ink);box-shadow:0 2px 0 var(--ink);transform:scale(1.3)}.color-legend{border-top:1.5px dashed #6760584d;flex-direction:column;gap:3px;padding-top:8px;display:flex}.legend-title{letter-spacing:.08em;color:var(--ink2);margin-bottom:4px;font-size:.68rem;font-weight:700}.legend-row{cursor:default;border-radius:6px;align-items:center;gap:5px;padding:2px 4px;font-size:.7rem;transition:background .1s;display:flex}.legend-row.hovered{background:#fed74b44}.legend-num{text-align:right;min-width:16px;color:var(--ink2);font-family:monospace;font-weight:700}.legend-swatch{border:1px solid #67605866;border-radius:3px;flex-shrink:0;width:14px;height:14px}.legend-info{color:var(--ink2);flex:1;font-size:.68rem}.legend-count{color:var(--ink2);font-family:monospace;font-size:.68rem}.palette-hint{color:var(--ink2);opacity:.8;font-size:.68rem;line-height:1.4}.site-footer{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffdf6e0;border-top:2px solid #6760582e;margin-top:auto}.site-footer-inner{justify-content:space-between;gap:24px;width:min(100%,1040px);margin:0 auto;padding:20px;display:flex}.footer-brand{max-width:620px}.footer-kicker,.footer-title,.footer-copy,.footer-meta{margin:0}.footer-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);font-size:.72rem;font-weight:700}.footer-title{margin-top:8px;font-size:1.2rem;font-weight:700}.footer-copy{color:var(--ink2);margin-top:8px;line-height:1.55}.footer-links{flex-direction:column;gap:10px;min-width:120px;display:flex}.footer-links a,.footer-meta a{color:var(--ink);text-decoration:none}.footer-links a:hover,.footer-meta a:hover{text-decoration:underline}.footer-meta{width:min(100%,1040px);color:var(--ink2);flex-wrap:wrap;gap:14px;margin:0 auto;padding:0 20px 22px;font-size:.84rem;display:flex}@media (width<=768px){.editor{grid-template-rows:auto 1fr auto;grid-template-columns:1fr}.sample-card,.features,.steps-grid{grid-template-columns:1fr}.header{flex-wrap:wrap;gap:10px}.sidebar{border-right:none;border-bottom:2px solid var(--ink)}.palette-panel{border-left:none;border-top:2px solid var(--ink)}.download-panel{width:min(100vw - 32px,420px);left:auto;right:0}.download-grid{grid-template-columns:1fr}.site-footer-inner{flex-direction:column}.footer-links{flex-flow:wrap}}
