@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_0eeb07{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_0eeb07{--font-body:"DM Sans","DM Sans Fallback"}@font-face{font-family:Archivo Black;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b8bfb68ab9ab617c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo Black;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/982ceffe7b733b3b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Archivo Black Fallback;src:local("Arial");ascent-override:70.78%;descent-override:16.93%;line-gap-override:0.00%;size-adjust:124.05%}.__className_93a132{font-family:Archivo Black,Archivo Black Fallback;font-weight:400;font-style:normal}.__variable_93a132{--font-display:"Archivo Black","Archivo Black Fallback"}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--color-teal:#0D9488;--color-teal-light:#14B8A6;--color-teal-dark:#0F766E;--color-teal-bg:rgba(13,148,136,0.08);--color-teal-border:rgba(13,148,136,0.12);--color-warm-white:#FAFAF9;--color-off-white:#F5F5F4;--color-charcoal:#1C1917;--color-charcoal-light:#44403C;--color-warm-gray:#D6D3D1;--color-warm-gray-light:#E7E5E3;--color-gold:#D4A520;--color-gold-light:#E8BE42;--bg:var(--color-warm-white);--bg-alt:var(--color-off-white);--bg-inset:#FFFFFF;--text:var(--color-charcoal);--text-secondary:var(--color-charcoal-light);--text-muted:#A8A29E;--border:var(--color-warm-gray-light);--border-hover:var(--color-warm-gray);--accent:var(--color-teal);--accent-hover:var(--color-teal-light);--accent-dark:var(--color-teal-dark);--accent-light:var(--color-teal-bg);--accent-badge:var(--color-teal-border);--success:#16A34A;--success-light:rgba(22,163,74,0.08);--error:#DC2626;--error-light:rgba(220,38,38,0.06);--header-height:56px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-card:0 1px 3px rgba(0,0,0,0.04);--shadow-elevated:0 2px 12px rgba(0,0,0,0.08);--shadow-cta:0 2px 8px rgba(13,148,136,0.25);--transition-fast:150ms ease;--transition-normal:250ms ease}html{height:100%}body{min-height:100%;font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;letter-spacing:.02em;text-transform:uppercase;color:var(--text)}h1{font-size:clamp(22px,3vw,24px)}h2{font-size:clamp(16px,2.5vw,18px)}h3{font-size:14px}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-dark)}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg)}.header{justify-content:space-between;height:var(--header-height);padding:0 20px;background:var(--bg-inset);border-bottom:1px solid var(--border);flex-shrink:0}.header,.header__brand{display:flex;align-items:center}.header__brand{gap:10px}.header__logo-img,.header__wordmark{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.header__wordmark{height:16px}.header__actions{display:flex;align-items:center;gap:8px}.header__divider{width:1px;height:18px;background:var(--border)}.header__saved{font-size:11px;color:var(--text-muted);opacity:.7}.header__pro-badge{display:inline-flex;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:var(--accent-light);color:var(--accent);border-radius:12px}.header__avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;justify-content:center;font-size:13px;font-weight:700;letter-spacing:.02em;flex-shrink:0}.header__avatar,.header__promo{display:flex;align-items:center}.header__promo{gap:6px;position:relative}.header__promo-input{padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;width:120px;background:var(--bg);color:var(--text)}.header__promo-input:focus{outline:none;border-color:var(--accent)}.header__promo-error{position:absolute;top:100%;left:0;color:var(--error);font-size:11px;white-space:nowrap;margin-top:2px}.main{display:flex;flex:1 1;overflow:hidden}.canvas-container{flex:1 1;display:flex;padding:16px;overflow:auto;position:relative;background:var(--bg-alt)}.canvas-wrapper{position:relative;margin:auto;flex-shrink:0;background:var(--bg-inset);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated)}.canvas-wrapper canvas{display:block;border-radius:var(--radius-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-family:var(--font-body);font-size:15px;font-weight:600;line-height:1;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:16px;height:16px;fill:currentColor}.btn--primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-cta)}.btn--primary:hover:not(:disabled){background:var(--accent-hover)}.btn--secondary{background:transparent;color:var(--accent);border:1px solid var(--accent)}.btn--secondary:hover:not(:disabled){background:var(--accent-light)}.btn--ghost{background:transparent;color:var(--text-secondary)}.btn--ghost:hover:not(:disabled){background:var(--bg-alt);color:var(--text)}.btn--accent{background:var(--accent);color:#fff;box-shadow:var(--shadow-cta)}.btn--accent:hover:not(:disabled){background:var(--accent-hover)}.btn--sm{padding:8px 16px;font-size:14px}.btn--lg{padding:16px 32px;font-size:17px}.input{width:100%;padding:10px 12px;font-family:var(--font-body);font-size:13px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition-fast)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.badge--accent{background:var(--accent-light);color:var(--accent)}.badge--success{background:var(--success-light);color:var(--success)}.toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:1100}.toast{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);animation:toast-in .3s ease}.toast--success{border-left:3px solid var(--success)}.toast--error{border-left:3px solid var(--error)}.toast__icon{width:18px;height:18px;flex-shrink:0}.toast__icon svg{width:100%;height:100%;fill:currentColor}.toast--success .toast__icon{color:var(--success)}.toast--error .toast__icon{color:var(--error)}.toast__message{font-size:13px;color:var(--text)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-alt)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.pixel-art{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--bg)}.auth-spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}.auth-card{width:100%;max-width:400px;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-lg);padding:36px 32px 28px;box-shadow:var(--shadow-card)}.auth-card__logo{margin-bottom:12px}.auth-card__logo,.auth-card__wordmark{display:flex;align-items:center;justify-content:center}.auth-card__title,.auth-card__wordmark{margin-bottom:24px}.auth-card__title{text-align:center;font-size:22px;color:var(--text)}.auth-card__form{display:flex;flex-direction:column;gap:14px}.auth-card__field{display:flex;flex-direction:column;gap:5px}.auth-card__field label{font-size:12px;font-weight:600;color:var(--text-secondary)}.auth-input{width:100%;padding:10px 12px;font-family:var(--font-body);font-size:14px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.auth-card__password-wrap{position:relative}.auth-card__password-wrap .auth-input{padding-right:40px}.auth-card__eye-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:color var(--transition-fast)}.auth-card__eye-btn:hover{color:var(--text-secondary)}.auth-card__eye-btn svg{width:18px;height:18px;fill:currentColor}.auth-card__error{background:var(--error-light);border:1px solid rgba(220,38,38,.2);border-radius:var(--radius-sm);color:var(--error)}.auth-card__error,.auth-card__success{padding:10px 14px;font-size:13px;margin-bottom:4px}.auth-card__success{background:var(--success-light);border:1px solid rgba(22,163,74,.2);border-radius:var(--radius-sm);color:var(--success)}.auth-card__submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 16px;font-family:var(--font-body);font-size:14px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);box-shadow:var(--shadow-cta);margin-top:4px}.auth-card__submit:hover:not(:disabled){background:var(--accent-hover)}.auth-card__submit:disabled{opacity:.6;cursor:not-allowed}.auth-card__btn-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.auth-card__google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 16px;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--text);background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.auth-card__google-btn:hover:not(:disabled){background:var(--bg-alt);border-color:var(--border-hover)}.auth-card__google-btn:disabled{opacity:.6;cursor:not-allowed}.auth-card__divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--text-muted);font-size:12px}.auth-card__divider:after,.auth-card__divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.auth-card__link-btn{background:none;border:none;color:var(--accent);font-family:var(--font-body);font-size:12px;cursor:pointer;text-align:right;padding:0;transition:color var(--transition-fast);align-self:flex-end}.auth-card__link-btn:hover{color:var(--accent-dark)}.auth-card__footer{text-align:center;margin-top:20px;font-size:13px;color:var(--text-muted)}.auth-card__toggle{background:none;border:none;color:var(--accent);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;padding:0;transition:color var(--transition-fast)}.auth-card__toggle:hover{color:var(--accent-dark);text-decoration:underline}.auth-loading{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--bg)}.auth-loading__spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.step-indicator{display:flex;align-items:center;gap:0}.step-indicator__item{display:flex;align-items:center;gap:6px}.step-indicator__line{width:32px;height:1px;background:var(--border);margin:0 4px;transition:background var(--transition-normal)}.step-indicator__line.completed{background:var(--accent)}.step-indicator__pill{display:flex;align-items:center;gap:6px;padding:5px 14px;border-radius:999px;border:none;font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);background:transparent;color:var(--text-secondary)}.step-indicator__pill:disabled{cursor:not-allowed;opacity:.4}.step-indicator__pill-num{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--bg-alt);color:var(--text-secondary);transition:all var(--transition-fast)}.step-indicator__pill.active{background:var(--accent);color:#fff}.step-indicator__pill.active .step-indicator__pill-num{background:rgba(255,255,255,.2);color:#fff}.step-indicator__pill.completed{background:transparent;color:var(--accent)}.step-indicator__pill.completed .step-indicator__pill-num{background:var(--accent-light);color:var(--accent)}.step-indicator__pill svg{width:14px;height:14px;fill:currentColor}.upload-step{flex:1 1;padding:32px;background:var(--bg)}.upload-step,.upload-step__dropzone{display:flex;align-items:center;justify-content:center}.upload-step__dropzone{flex-direction:column;gap:16px;width:100%;max-width:520px;padding:64px 48px;background:var(--bg-alt);border:2px dashed var(--border-hover);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:center}.upload-step__dropzone.dragover,.upload-step__dropzone:hover{border-color:var(--accent);background:var(--accent-light)}.upload-step__icon{width:48px;height:48px;color:var(--text-muted);opacity:.6}.upload-step__icon svg{width:100%;height:100%;fill:currentColor}.upload-step__title{font-size:18px;color:var(--text)}.upload-step__subtitle{font-size:14px;color:var(--text-secondary)}.upload-step__hint{font-size:12px;color:var(--text-muted)}.upload-step__browse-btn{margin-top:4px}.upload-step__usage{font-size:12px;color:var(--text-muted);margin-top:4px}.upload-step__content{flex:1 1;display:flex;flex-direction:column;width:100%;max-width:800px;margin:0 auto;gap:20px}.upload-step__pages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:12px;gap:12px;flex:1 1;overflow-y:auto;align-content:start}.upload-step__thumb{aspect-ratio:2/3;background:var(--bg-alt);border-radius:var(--radius-sm);overflow:hidden;position:relative;border:1px solid var(--border)}.upload-step__thumb img{width:100%;height:100%;object-fit:cover}.upload-step__thumb-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:rgba(28,25,23,.7);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-fast)}.upload-step__thumb:hover .upload-step__thumb-remove{opacity:1}.upload-step__thumb-remove svg{width:12px;height:12px;fill:currentColor}.upload-step__thumb-number{position:absolute;bottom:6px;right:6px;background:rgba(28,25,23,.7);color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:var(--radius-sm)}.upload-step__add-more{aspect-ratio:2/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--bg-inset);border:2px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:12px;transition:all var(--transition-fast)}.upload-step__add-more.dragover,.upload-step__add-more:hover{border-color:var(--accent);color:var(--accent)}.upload-step__add-more svg{width:24px;height:24px}.upload-step__footer{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid var(--border)}.upload-step__count{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary)}.upload-step__limit{color:var(--text-muted)}.upload-step__upgrade{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 16px;background:var(--accent-light);border:1px solid var(--color-teal-border);border-radius:var(--radius-md);font-size:13px;color:var(--text-secondary);flex-wrap:wrap}.upload-step__promo{display:flex;align-items:center;gap:8px}.upload-step__promo-input{padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;width:140px;background:var(--bg);color:var(--text)}.upload-step__promo-input:focus{outline:none;border-color:var(--accent)}.upload-step__promo-error{color:var(--error);font-size:12px}.draw-step{flex:1 1;flex-direction:row;background:var(--bg)}.draw-step,.draw-step__main{display:flex;overflow:hidden}.draw-step__main{flex:1 1;flex-direction:column;position:relative}.draw-step__canvas-area{flex:1 1;position:relative;overflow:auto;background:var(--bg-alt)}.draw-step__canvas-area,.draw-step__nav-arrow{display:flex;align-items:center;justify-content:center}.draw-step__nav-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:36px;height:36px;background:var(--bg-inset);border:1px solid var(--border);border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-card)}.draw-step__nav-arrow:hover:not(:disabled){background:var(--bg-alt);color:var(--text);border-color:var(--border-hover)}.draw-step__nav-arrow:disabled{opacity:.3;cursor:not-allowed}.draw-step__nav-arrow svg{width:20px;height:20px;fill:currentColor}.draw-step__nav-arrow--prev{left:16px}.draw-step__nav-arrow--next{right:16px}.draw-step__page-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 24px;background:var(--bg-inset);border-top:1px solid var(--border);font-size:13px;color:var(--text-secondary)}.draw-step__page-name{color:var(--text-muted);font-size:12px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draw-step__sidebar{width:220px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-inset);border-left:1px solid var(--border)}.draw-step__sidebar-header{padding:16px 16px 12px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border)}.draw-step__sidebar-panels{flex:1 1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.draw-step__sidebar-empty{font-size:13px;color:var(--text-muted);text-align:center;padding:24px 8px}.draw-step__sidebar-footer{padding:12px 16px;border-top:1px solid var(--border)}.floating-toolbar{display:flex;align-items:center;justify-content:center;gap:4px;padding:5px 12px;background:var(--bg-inset);border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-shrink:0}.floating-toolbar__btn{display:flex;align-items:center;gap:6px;padding:7px 12px;background:transparent;border:none;border-radius:8px;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.floating-toolbar__btn.active,.floating-toolbar__btn:hover{background:var(--accent-light);color:var(--accent)}.floating-toolbar__btn svg{width:16px;height:16px;fill:currentColor}.floating-toolbar__divider{width:1px;height:18px;background:var(--border);margin:0 4px}.floating-toolbar__templates-wrapper{position:relative}.floating-toolbar__zoom{font-size:12px;font-weight:600;color:var(--text-muted);padding:0 8px;min-width:48px;text-align:center}.templates-popover{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:30;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-elevated);padding:12px;min-width:220px}.templates-popover__grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.templates-popover__btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;background:var(--bg-alt);border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-body);font-size:11px;cursor:pointer;transition:all var(--transition-fast)}.templates-popover__btn:hover{border-color:var(--accent);color:var(--text);background:var(--accent-light)}.templates-popover__btn svg{opacity:.6}.templates-popover__btn:hover svg{opacity:1}.floating-toolbar__shortcuts-wrapper{position:relative}.shortcuts-help{position:absolute;bottom:calc(100% + 8px);right:0;z-index:30;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-elevated);padding:16px;min-width:260px}.shortcuts-help__title{font-family:var(--font-display);font-size:13px;font-weight:700;color:var(--text);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.shortcuts-help__grid{display:flex;flex-direction:column;gap:6px}.shortcuts-help__row{display:flex;align-items:center;justify-content:space-between;gap:16px}.shortcuts-help__key{display:inline-block;padding:2px 8px;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:11px;font-weight:600;color:var(--text);white-space:nowrap}.shortcuts-help__action{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);text-align:right}.panel-strip__item{position:relative;width:100%;height:48px;border:2px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;background:var(--bg-alt);transition:border-color var(--transition-fast)}.panel-strip__item:hover{border-color:var(--border-hover)}.panel-strip__item.selected{border-color:var(--accent)}.panel-strip__item canvas{display:block;width:100%;height:100%;object-fit:cover}.panel-strip__number{position:absolute;bottom:2px;right:2px;font-size:9px;font-weight:700;color:#fff;background:rgba(28,25,23,.65);padding:1px 4px;border-radius:2px;line-height:1}.panel-strip__remove-btn{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background:rgba(28,25,23,.7);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-fast);padding:0;z-index:2}.panel-strip__item:hover .panel-strip__remove-btn{opacity:1}.panel-strip__remove-btn:hover{background:rgba(220,38,38,.85)}.panel-strip__remove-btn svg{width:10px;height:10px;fill:currentColor}.panel-strip__actions{position:absolute;top:2px;left:2px;display:flex;flex-direction:column;gap:2px;opacity:0;transition:opacity var(--transition-fast);z-index:2}.panel-strip__item:hover .panel-strip__actions{opacity:1}.panel-strip__reorder-btn{width:18px;height:18px;border-radius:3px;background:rgba(28,25,23,.7);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.panel-strip__reorder-btn:hover:not(:disabled){background:rgba(28,25,23,.9)}.panel-strip__reorder-btn:disabled{opacity:.3;cursor:default}.panel-strip__reorder-btn svg{width:12px;height:12px}.export-step{background:var(--bg)}.export-step,.export-step__preview{flex:1 1;display:flex;overflow:hidden}.export-step__preview{flex-direction:column;background:var(--bg-alt)}.export-step__empty{color:var(--text-muted);font-size:14px;text-align:center;padding:48px;margin:auto}.export-step__canvas-scroll{flex:1 1;overflow-y:auto;padding:24px}.export-step__canvas-scroll canvas{display:block;margin:0 auto;max-width:100%;height:auto;background:var(--bg-inset);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated)}.export-step__settings{width:280px;flex-shrink:0;display:flex;flex-direction:column;gap:22px;padding:28px 24px;background:var(--bg-inset);border-left:1px solid var(--border);overflow-y:auto}.export-step__title{font-size:16px;color:var(--text)}.export-step__group{display:flex;flex-direction:column;gap:8px}.export-step__label{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-secondary)}.export-step__value{font-weight:600;color:var(--text-muted);font-size:12px}.export-step__range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;background:var(--border);border-radius:2px;outline:none;cursor:pointer}.export-step__range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--accent);border-radius:50%;cursor:pointer;-webkit-transition:transform var(--transition-fast);transition:transform var(--transition-fast)}.export-step__range::-webkit-slider-thumb:hover{transform:scale(1.2)}.export-step__range::-moz-range-thumb{width:16px;height:16px;background:var(--accent);border:none;border-radius:50%;cursor:pointer}.export-step__swatches{display:flex;gap:8px}.export-step__swatch{width:28px;height:28px;border-radius:var(--radius-sm);border:2px solid var(--border);cursor:pointer;transition:border-color var(--transition-fast);padding:0}.export-step__swatch:hover{border-color:var(--border-hover)}.export-step__swatch.active{border-color:var(--accent)}.export-step__color-input{width:28px;height:28px;border:2px solid var(--border);border-radius:var(--radius-sm);background:transparent;cursor:pointer;padding:0}.export-step__color-hex{font-size:13px;font-family:monospace;color:var(--text-muted)}.export-step__platform-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:6px;gap:6px}.export-step__platform-btn{padding:8px 6px;font-family:var(--font-body);font-size:12px;font-weight:600;text-align:center;background:var(--bg-alt);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.export-step__platform-btn:hover{border-color:var(--border-hover);color:var(--text)}.export-step__platform-btn.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.export-step__platform-desc{font-size:11px;color:var(--text-muted);margin-top:2px}.export-step__label--toggle{display:flex;align-items:center;justify-content:space-between}.export-step__toggle{position:relative;width:36px;height:20px;background:var(--border);border:none;border-radius:10px;cursor:pointer;padding:0;transition:background var(--transition-fast)}.export-step__toggle.active{background:var(--accent)}.export-step__toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform var(--transition-fast)}.export-step__toggle.active .export-step__toggle-thumb{transform:translateX(16px)}.export-step__hint{font-size:11px;color:var(--text-muted)}.export-step__gutter-presets{display:flex;gap:4px;margin-top:4px}.export-step__gutter-preset{flex:1 1;padding:4px 2px;font-family:var(--font-body);font-size:11px;font-weight:500;text-align:center;background:var(--bg-alt);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.export-step__gutter-preset:hover{color:var(--text-secondary);border-color:var(--border-hover)}.export-step__gutter-preset.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.export-step__actions{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:20px;border-top:1px solid var(--border)}.export-step__size-estimate{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;background:var(--bg-secondary);border-radius:var(--radius-md);font-size:13px;color:var(--text-secondary);text-align:center}.export-step__size-estimate--warning{background:#fef3cd;border:1px solid #ffc107}.export-step__size-warning{font-size:11px;color:#856404;font-weight:500}.export-step__usage{gap:6px;padding:12px;font-size:12px}.export-step__upgrade,.export-step__usage{display:flex;flex-direction:column;align-items:center;margin-top:12px;background:var(--accent-light);border:1px solid var(--color-teal-border);border-radius:var(--radius-md);color:var(--text-secondary);text-align:center}.export-step__upgrade{gap:10px;padding:14px;font-size:13px}.pricing-card{position:relative;width:100%;max-width:440px;background:var(--bg-inset);border:2px solid var(--accent);border-radius:var(--radius-lg);padding:48px 40px 40px;text-align:center}.pricing-card__badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:5px 16px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;white-space:nowrap}.pricing-card__price{font-family:var(--font-display);font-size:52px;color:var(--text);margin-bottom:8px}.pricing-card__price-period{font-family:var(--font-body);font-size:18px;color:var(--text-secondary);font-weight:400}.pricing-card__sub{font-size:14px;color:var(--text-secondary);margin-bottom:4px}.pricing-card__alt{font-size:13px;color:var(--text-muted);margin-bottom:24px}.pricing-card__features{font-size:13px;color:var(--text-secondary);margin-top:16px}.pricing-card__free-note{font-size:12px;color:var(--text-muted);margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.landing{min-height:100vh;background:var(--bg)}.landing-nav{display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:0 auto;padding:20px 48px}.landing-nav__brand{display:flex;align-items:center;gap:12px}.landing-nav__links{display:flex;align-items:center;gap:40px}.landing-nav__link{font-size:16px;color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.landing-nav__link:hover{color:var(--text)}.landing-nav__actions{display:flex;align-items:center;gap:16px}.landing-hero{text-align:center;max-width:960px;margin:0 auto;padding:clamp(48px,8vh,100px) 32px clamp(32px,5vh,56px)}.landing-hero__logo{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:clamp(24px,4vh,48px)}.landing-hero__heading{font-size:clamp(36px,5.5vw,64px);line-height:1.1;color:var(--text);margin-bottom:clamp(16px,2.5vh,28px);text-transform:none;letter-spacing:-.02em}.landing-hero__heading .teal{color:var(--accent)}.landing-hero__sub{font-size:clamp(16px,1.8vw,20px);line-height:1.6;color:var(--text-secondary);max-width:620px;margin:0 auto clamp(28px,4vh,44px)}.landing-hero__buttons{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}.landing-visual{max-width:860px;margin:0 auto;padding:0 32px clamp(48px,6vh,72px);display:flex;justify-content:center}.landing-visual__box{width:100%;background:var(--bg-alt);border-radius:var(--radius-lg);padding:clamp(32px,4vw,56px) clamp(24px,3vw,48px) clamp(24px,3vw,32px)}.landing-visual__inner{display:flex;align-items:center;justify-content:center;gap:clamp(24px,4vw,48px)}.landing-visual__side{display:flex;flex-direction:column;align-items:center}.landing-visual__label{font-size:14px;color:var(--text-muted);margin-top:16px;text-align:center}.landing-visual__grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.landing-visual__cell{width:clamp(48px,6vw,72px);height:clamp(48px,6vw,72px);border-radius:6px}.landing-visual__cell--1{background:#99E0DB}.landing-visual__cell--2{background:#7DD3CD}.landing-visual__cell--3{background:#5BBFB8}.landing-visual__cell--4{background:#3DACA4}.landing-visual__cell--5{background:#0D9488}.landing-visual__cell--6{background:#0A7A70}.landing-visual__strip{display:flex;flex-direction:column;gap:6px}.landing-visual__strip-panel{width:clamp(72px,8vw,100px);height:clamp(24px,3vw,34px);border-radius:4px}.landing-visual__strip-panel--1{background:#C5EEE9}.landing-visual__strip-panel--2{background:#A8E4DD}.landing-visual__strip-panel--3{background:#7DD3CD}.landing-visual__strip-panel--4{background:#5BBFB8}.landing-visual__strip-panel--5{background:#3DACA4}.landing-visual__strip-panel--6{background:#0D9488}.landing-visual__arrow{font-size:32px;color:var(--text-muted);flex-shrink:0}.landing-pain{text-align:center;max-width:800px;margin:0 auto;padding:clamp(40px,6vh,72px) 32px}.landing-pain__heading{font-size:clamp(24px,3.5vw,40px);color:var(--text);margin-bottom:20px;text-transform:none;letter-spacing:-.01em}.landing-pain__sub{font-size:clamp(16px,1.5vw,19px);color:var(--text-secondary);line-height:1.6}.landing-how{max-width:1120px;margin:0 auto;padding:clamp(32px,4vh,56px) 32px clamp(56px,8vh,80px)}.landing-how__heading{text-align:center;font-size:clamp(24px,3.5vw,40px);color:var(--text);margin-bottom:clamp(32px,4vh,56px);text-transform:none}.landing-how__cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:28px;gap:28px}.landing-how__card{background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column}.landing-how__card-body{padding:clamp(20px,2.5vw,28px) clamp(20px,2.5vw,32px) clamp(24px,3vw,36px)}.landing-how__num{width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;margin-bottom:20px}.landing-how__card-title{font-size:clamp(16px,1.5vw,20px);font-weight:700;color:var(--text);margin-bottom:10px}.landing-how__card-desc{font-size:clamp(14px,1.2vw,16px);color:var(--text-secondary);line-height:1.6}.landing-how__gif{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top center;display:block;background:var(--bg-alt);border-bottom:1px solid var(--border);transition:transform .4s ease}.landing-how__card:hover .landing-how__gif{transform:scale(1.25)}.pricing-card__tagline{font-size:16px;color:var(--text-secondary);margin-bottom:28px}.landing-pricing{display:flex;justify-content:center;padding:clamp(40px,6vh,72px) 32px clamp(56px,8vh,80px)}.landing-pricing__inner{width:100%;max-width:960px}.landing-pricing__heading{font-family:var(--font-display);font-size:clamp(24px,3.5vw,40px);color:var(--text);text-align:center;margin-bottom:28px}.landing-pricing__grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px;gap:24px;align-items:start;max-width:680px;margin:0 auto}.pricing-card--free{border-color:var(--border)}.pricing-card--featured{border-color:var(--accent);box-shadow:0 4px 20px rgba(13,148,136,.15)}.landing-redeem{text-align:center;padding:64px 32px;max-width:600px;margin:0 auto}.landing-redeem__heading{font-size:24px;margin-bottom:8px}.landing-redeem__sub{color:var(--text-secondary);margin-bottom:24px;font-size:15px}.promo-redeemer__form{display:flex;gap:12px;justify-content:center;align-items:center}.promo-redeemer__input{padding:12px 16px;border:2px solid var(--border);border-radius:var(--radius-md);font-size:16px;width:260px;background:var(--bg);color:var(--text);text-align:center;letter-spacing:.05em}.promo-redeemer__input:focus{outline:none;border-color:var(--accent)}.promo-redeemer__error{color:var(--error);font-size:14px;margin-top:12px}.promo-redeemer__success{color:var(--accent);font-size:16px;font-weight:600;margin-bottom:16px}.landing-footer{text-align:center;padding:40px 32px;background:var(--accent);font-size:14px;font-weight:700;color:#fff}.landing-footer__contact{margin-top:8px;font-size:14px;font-weight:400;color:rgba(255,255,255,.75)}.landing-footer__contact a{color:#fff;text-decoration:none;font-weight:600}.landing-footer__contact a:hover{text-decoration:underline}.landing-footer__links{margin-top:12px;display:flex;justify-content:center;gap:24px}.landing-footer__links a{color:rgba(255,255,255,.85);text-decoration:none;font-size:14px;font-weight:600}.landing-footer__links a:hover{color:#fff}.legal-page{min-height:100vh;background:var(--bg);padding:40px 24px 80px;display:flex;justify-content:center}.legal-page__content{max-width:680px;width:100%}.legal-page__back{display:inline-block;color:var(--color-teal);text-decoration:none;font-size:14px;margin-bottom:24px}.legal-page__back:hover{text-decoration:underline}.legal-page__content h1{font-family:var(--font-display);font-size:32px;color:var(--text);margin-bottom:8px}.legal-page__updated{color:var(--text-muted);font-size:14px;margin-bottom:32px}.legal-page__content h2{font-family:var(--font-display);font-size:20px;color:var(--text);margin-top:32px;margin-bottom:12px}.legal-page__content h3{font-size:16px;font-weight:600;color:var(--text);margin-top:20px;margin-bottom:8px}.legal-page__content ol,.legal-page__content p,.legal-page__content ul{color:var(--text-secondary);font-size:15px;line-height:1.7;margin-bottom:12px}.legal-page__content ol,.legal-page__content ul{padding-left:24px}.legal-page__content li{margin-bottom:6px}.legal-page__content a{color:var(--color-teal);text-decoration:none}.legal-page__content a:hover{text-decoration:underline}@media (max-width:768px){.landing-nav{padding:16px 20px}.landing-nav__links{display:none}.landing-hero{padding:40px 20px 28px}.landing-hero__heading{letter-spacing:-.01em}.landing-hero__buttons{gap:12px}.btn--lg{padding:14px 28px;font-size:16px}.landing-visual{padding:0 20px 40px}.landing-visual__inner{flex-direction:column;gap:20px}.landing-visual__arrow{transform:rotate(90deg);font-size:24px}.landing-visual__grid{grid-template-columns:repeat(3,1fr)}.landing-visual__strip-panel{width:160px}.landing-how__cards{grid-template-columns:1fr;gap:16px}.landing-how{padding:32px 20px 48px}.landing-pain{padding:32px 20px}.landing-pricing{padding:32px 20px 48px}.landing-pricing__grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}.pricing-card{max-width:400px;padding:36px 28px 28px}.pricing-card__price{font-size:44px}}@media (max-width:480px){.landing-nav{padding:14px 16px}.landing-nav__actions .btn--secondary{display:none}.landing-hero{padding:32px 16px 24px}.btn--lg{padding:14px 24px;font-size:15px;width:100%}.landing-hero__buttons{flex-direction:column;gap:10px;width:100%;max-width:320px;margin:0 auto}.landing-visual{padding:0 16px 32px}.landing-visual__box{padding:24px 16px 16px}.landing-how__card{padding:20px 16px}.landing-pricing{padding:24px 16px 40px}.pricing-card{padding:28px 20px 24px}.pricing-card__price{font-size:38px}.landing-footer{padding:28px 16px}}@media (max-width:640px){.auth-card{padding:28px 20px 20px}.header{padding:0 12px}.step-indicator__pill span:not(.step-indicator__pill-num){display:none}.step-indicator__line{width:20px}.draw-step{flex-direction:column}.draw-step__sidebar{width:100%;border-left:none;border-top:1px solid var(--border);max-height:180px}.export-step{flex-direction:column}.export-step__settings{width:100%;border-left:none;border-top:1px solid var(--border);max-height:50vh}}.mobile-gate{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg)}.mobile-gate__content{text-align:center;max-width:320px;display:flex;flex-direction:column;align-items:center;gap:1rem}.mobile-gate__title{font-family:var(--font-display);font-size:1.5rem;color:var(--text);margin:0}.mobile-gate__message{font-size:.95rem;color:var(--text-muted);line-height:1.6;margin:0}.upload-step__usage-bar{margin-top:1rem;width:100%;max-width:280px;display:flex;flex-direction:column;gap:.4rem;align-items:center}.upload-step__usage-track{width:100%;height:6px;background:var(--border);border-radius:3px;overflow:hidden}.upload-step__usage-fill{height:100%;background:var(--teal);border-radius:3px;transition:width .3s ease}.upload-step__usage-label{font-size:.8rem;color:var(--text-muted)}.upload-step__limit-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.upload-step__limit-card{background:var(--bg);border-radius:16px;padding:2.5rem;max-width:420px;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem;box-shadow:var(--shadow-elevated)}.upload-step__limit-title{font-family:var(--font-display);font-size:1.3rem;color:var(--text);margin:0}.upload-step__limit-desc{font-size:.95rem;color:var(--text-muted);margin:0;line-height:1.5}.upload-step__limit-options{display:flex;flex-direction:column;gap:.75rem;width:100%;margin-top:.5rem}