@import url("https://fonts.googleapis.com/css2?family=Andika:wght@400;700&family=Luckiest+Guy&family=Lora:wght@400;700&family=Quicksand:wght@400;700&display=swap");:root{--ink:#174a4f;--muted:#667f82;--soft:#eef8f7;--panel:#ffffff;--line:#c9ece8;--line-strong:#65d0c4;--mint:#dff7f2;--aqua:#bdeefa;--primary:#1bad7f;--primary-dark:#0f7d69;--danger:#c05252;--canvas:#f3dfbf;--shadow:0 24px 60px rgba(28,83,88,0.14)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--soft);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{flex-direction:column;gap:16px;min-height:100vh;padding:24px}.app-shell,.app-topline{align-items:center;display:flex}.app-topline{gap:14px;justify-content:center;text-align:left}.app-topline h1,.app-topline p{margin:0}.app-topline h1{font-size:22px;line-height:1.1}.prototype-label{color:#3f8187;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.top-logo{background:white;display:block;height:48px;object-fit:contain;padding:3px;width:68px}.mock-pill{background:#fff4cf;border:1px solid #f2c76b;border-radius:999px;color:#83601d;font-size:13px;font-weight:800;margin:0;max-width:92%;padding:8px 16px;text-align:center}.phone-card{background:var(--panel);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);max-width:1120px;min-height:min(760px,calc(100vh - 124px));overflow:hidden;width:min(100%,1120px)}.screen-header{align-items:center;background:#f3fbfa;border-bottom:1px solid var(--line);display:flex;gap:14px;padding:22px 28px}.screen-header h2,.screen-header p{margin:0}.screen-header h2{font-size:20px}.step-label{color:var(--muted);font-size:13px;font-weight:700}.back-button{align-items:center;background:white;border:1px solid var(--line);border-radius:999px;color:var(--ink);display:inline-flex;font-size:24px;font-weight:700;height:48px;justify-content:center;width:48px}.app-icon{display:inline-block;flex:0 0 auto;height:24px;object-fit:contain;width:24px}.back-button .app-icon{height:28px;width:28px}.progress-track{display:grid;grid-gap:4px;gap:4px;grid-template-columns:repeat(5,1fr);padding:12px 28px 0}.progress-track span{background:#dce7e7;border-radius:999px;height:4px}.progress-track span.active{background:var(--line-strong)}.landing-screen{min-height:min(760px,calc(100vh - 124px))}.hero{align-items:center;background:linear-gradient(180deg,var(--aqua) 0,#e7fbf6 100%);display:flex;flex-direction:column;padding:clamp(36px,6vw,56px) 24px clamp(32px,5vw,48px);text-align:center}.hero-badge{background:white;border:1px solid var(--line);border-radius:999px;color:#24736f;font-size:13px;font-weight:800;letter-spacing:.03em;margin:0 0 18px;padding:8px 16px;text-transform:uppercase}.hero-title{font-size:clamp(32px,6vw,52px);line-height:1.04;margin:0 0 14px}.hero-sub{color:#2e6166;font-size:clamp(16px,2.4vw,19px);font-weight:650;line-height:1.45;margin:0 auto 22px;max-width:520px}.hero-sub-accent{color:#7f6237;font-weight:800}.hero-cta{font-size:18px;max-width:340px;min-height:56px}.hero-reassurance{color:#3f8187;font-size:13px;font-weight:750;margin:10px 0 0}.private-test-hero{justify-content:center;min-height:min(520px,calc(100vh - 180px))}.private-test-note{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:14px;color:var(--ink-soft);font-size:15px;font-weight:750;line-height:1.45;margin:4px auto 0;max-width:440px;padding:12px 16px}.hero-demo{align-items:center;display:grid;grid-template-columns:minmax(0,1fr);justify-content:center;margin-top:clamp(26px,4vw,38px);margin-left:auto;margin-right:auto;max-width:min(100%,540px);position:relative;width:100%}.demo-carousel{cursor:-webkit-grab;cursor:grab;overflow:hidden;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.demo-carousel:active{cursor:-webkit-grabbing;cursor:grabbing}.demo-track{display:flex;transition:transform .22s ease;width:100%}.demo-slide{align-items:center;display:grid;flex:0 0 100%;grid-gap:clamp(10px,3vw,28px);gap:clamp(10px,3vw,28px);grid-template-columns:minmax(72px,1fr) 40px minmax(72px,1fr);min-width:0;padding:0 clamp(22px,7vw,52px)}.demo-nav{align-items:center;background:rgba(255,255,255,.74);border:1px solid var(--line);border-radius:999px;color:var(--primary-dark);display:inline-flex;font-size:28px;font-weight:800;height:34px;justify-content:center;padding:0;position:absolute;top:calc(50% - 14px);width:34px;z-index:2}.demo-nav-prev{left:0}.demo-nav-next{right:0}.demo-card{align-items:center;display:grid;grid-gap:8px;gap:8px;justify-items:center}.demo-card small{color:#2e6166;font-size:13px;font-weight:800}.demo-photo-card{min-width:0}.demo-photo-frame{aspect-ratio:3/4.15;background:white;border:4px solid white;border-radius:10px;box-shadow:0 10px 24px rgba(54,74,70,.18);overflow:hidden;width:min(100%,clamp(88px,24vw,164px))}.demo-photo-frame img{display:block;height:100%;object-fit:cover;object-position:center;width:100%}.demo-arrow{align-items:center;display:flex;justify-content:center;line-height:1;width:40px}.demo-magic-icon{height:clamp(30px,7vw,42px);width:clamp(30px,7vw,42px)}.demo-dots{display:flex;gap:7px;grid-column:1/-1;justify-content:center}.demo-dot{background:#c9dedf;border:0;border-radius:999px;height:7px;padding:0;width:7px}.demo-dot.active{background:var(--primary-dark);width:18px}.landing-body{margin:0 auto;max-width:560px;padding:36px 24px 44px;text-align:center}.landing-section-title{font-size:22px;margin:0 0 18px}.benefit-row{display:grid;grid-gap:12px;gap:12px;margin:26px 0 24px;text-align:left}.benefit{background:#f3fbfa;border:1px solid var(--line);border-radius:14px;padding:14px 16px}.benefit strong{display:block;font-size:16px}.benefit p{color:var(--muted);font-size:14px;font-weight:650;line-height:1.4;margin:4px 0 0}.how-list{margin:0 0 22px;text-align:left}.how-list,.how-step{display:grid;grid-gap:14px;gap:14px}.how-step{align-items:center;grid-template-columns:52px 1fr}.how-step span{align-items:center;background:var(--mint);border:1px solid var(--line);border-radius:999px;display:flex;height:52px;justify-content:center;width:52px}.how-step .app-icon{height:38px;width:38px}.how-step strong{display:block;font-size:17px}.how-step p{color:var(--muted);font-size:14px;font-weight:650;margin:2px 0 0}.info-pill,.status-pill{background:var(--mint);border-radius:10px;color:#24736f;display:block;font-size:14px;font-weight:800;margin:18px 0;padding:12px 14px;text-align:center}.status-pill.warning{background:#fff4cf;color:#83601d}.status-pill.fail{background:#ffe5e5;color:var(--danger)}.workflow-grid{display:grid;grid-gap:28px;gap:28px;grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);padding:28px}.preview-panel{background:#f3fbfa;border:1px solid var(--line);border-radius:18px;min-height:440px;padding:20px}.preview-panel>p{color:var(--muted);font-size:15px;font-weight:800;margin:14px 0 0;text-align:center}.preview-panel-footer{display:flex;justify-content:center;margin-top:2px}.product-details-trigger{align-items:center;background:transparent;border:0;color:var(--primary-dark);display:inline-flex;font:inherit;font-size:15px;font-weight:850;gap:7px;justify-content:center;min-height:44px;padding:8px 10px}.product-details-trigger-label{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.product-details-trigger:hover{color:var(--ink)}.product-details-trigger:focus-visible{border-radius:6px;outline:3px solid var(--line-strong);outline-offset:1px}.product-details-backdrop{align-items:center;background:rgba(13,42,45,.68);display:flex;inset:0;justify-content:center;overflow:hidden;padding:16px;position:fixed;z-index:1100}.product-details-dialog{background:var(--panel);border:2px solid var(--line-strong);border-radius:8px;box-shadow:0 24px 70px rgba(13,42,45,.28);max-height:calc(100dvh - 32px);max-width:640px;overflow-x:hidden;overflow-y:auto;padding:28px 32px 32px;width:min(640px,calc(100vw - 32px))}.product-details-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.product-details-header h2{color:var(--ink);font-size:clamp(24px,3vw,28px);line-height:1.2;margin:4px 0 0}.product-details-close{align-items:center;background:#f3fbfa;border:1px solid var(--line);border-radius:50%;color:var(--ink);display:inline-flex;flex:0 0 auto;font-size:28px;font-weight:700;height:44px;justify-content:center;line-height:1;padding:0 0 2px;width:44px}.product-details-close:hover{background:var(--mint);border-color:var(--line-strong)}.product-details-close:focus-visible{outline:3px solid var(--line-strong);outline-offset:2px}.product-details-content{color:#365d61;font-size:16px;line-height:1.55}.product-details-content>p:first-child{margin:22px 0 0}.product-details-content h3{color:var(--ink);font-size:17px;line-height:1.3;margin:24px 0 10px}.product-details-content ul{display:grid;grid-gap:8px;gap:8px;margin:0;padding-left:26px}.product-details-content li{padding-left:4px}.product-details-dimensions{background:#f3fbfa;border:1px solid var(--line);border-radius:6px;color:var(--ink);font-weight:850;margin:24px 0 0;padding:12px 14px}.preview-content{align-items:center;background:linear-gradient(180deg,#ffffff,#f3fbfa);border-radius:14px;display:flex;justify-content:center;min-height:360px;overflow:hidden}.empty-preview{align-items:center;display:grid;grid-gap:18px;gap:18px;justify-items:center;text-align:center}.upload-dropzone{background:linear-gradient(180deg,#ffffff,#f3fbfa);border:0;color:var(--ink);height:100%;padding:24px;width:100%}.large-icon{font-size:44px}.empty-preview strong{font-size:26px}.empty-preview p{color:var(--muted);font-weight:800;line-height:1.35;margin:0}.inline-upload-action{font-size:15px;min-height:44px;padding:0 18px;width:auto}.upload-choice-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.text-action{background:transparent;border:0;color:var(--ink);cursor:pointer;font:inherit;font-weight:900;padding:0;text-decoration:underline;text-underline-offset:3px}.selected-upload{align-items:center;display:grid;grid-gap:14px;gap:14px;justify-items:center;width:100%}.selected-upload-actions{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.uploaded-preview{border-radius:12px;display:block;max-height:320px;max-width:90%;object-fit:contain}.edit-frame{align-items:center;display:flex;justify-content:center;max-width:100%;overflow:hidden;touch-action:none}.edit-content{display:inline-block;line-height:0;position:relative;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.edit-content.tool-erase{cursor:crosshair}.edit-content.tool-crop.zoomed,.edit-content.tool-none.zoomed{cursor:-webkit-grab;cursor:grab}.crop-rect.static{border-style:solid;cursor:inherit;pointer-events:none}.edit-canvas{display:block;height:auto;max-height:420px;max-width:100%;pointer-events:none;width:auto}.brush-row{align-items:center;color:var(--muted);display:flex;font-weight:800;gap:12px}.brush-label{flex:0 0 auto}.brush-row input{accent-color:var(--primary);flex:1 1;min-height:44px}.brush-size-row input[type=range]{--brush-thumb-size:24px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer}.brush-size-row input[type=range]::-webkit-slider-runnable-track{background:#425f67;border-radius:999px;height:8px}.brush-size-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--primary);border:2px solid #0e7775;border-radius:999px;box-shadow:0 1px 5px rgba(23,74,79,.2);height:var(--brush-thumb-size);margin-top:calc((8px - var(--brush-thumb-size)) / 2);width:var(--brush-thumb-size)}.brush-size-row input[type=range]::-moz-range-track{background:#425f67;border-radius:999px;height:8px}.brush-size-row input[type=range]::-moz-range-thumb{background:var(--primary);border:2px solid #0e7775;border-radius:999px;box-shadow:0 1px 5px rgba(23,74,79,.2);height:var(--brush-thumb-size);width:var(--brush-thumb-size)}.zoom-row{align-items:center;display:flex;gap:12px;justify-content:center}.zoom-row span{color:var(--muted);font-weight:850;min-width:56px;text-align:center}.zoom-row button{align-items:center;background:white;border:1px solid var(--line);border-radius:999px;color:var(--ink);display:inline-flex;font-size:22px;font-weight:900;height:44px;justify-content:center;width:44px}.zoom-row .app-icon{height:26px;width:26px}.edit-text-actions{align-items:center;color:var(--muted);display:flex;gap:10px;justify-content:center}.edit-text-actions .text-action:disabled{opacity:.45}.crop-rect{border:2px dashed #ffffff;box-shadow:0 0 0 9999px rgba(23,74,79,.45);cursor:move;position:absolute}.crop-handle{align-items:center;display:flex;height:48px;justify-content:center;position:absolute;width:48px}.crop-handle:after{background:white;border:3px solid var(--primary);border-radius:999px;box-shadow:0 1px 6px rgba(23,74,79,.35);content:"";height:26px;width:26px}.crop-handle.nw{cursor:nwse-resize;left:-24px;top:-24px}.crop-handle.ne{cursor:nesw-resize;right:-24px;top:-24px}.crop-handle.sw{bottom:-24px;cursor:nesw-resize;left:-24px}.crop-handle.se{bottom:-24px;cursor:nwse-resize;right:-24px}.control-panel{display:flex;flex-direction:column;gap:18px;justify-content:flex-start}.upload-box{align-items:center;border:2px dashed var(--line);border-radius:18px;display:grid;grid-gap:12px;gap:12px;justify-items:center;padding:28px 20px;text-align:center}.upload-box span{font-size:32px}.file-name,.upload-box p{color:var(--muted);font-weight:750;margin:0}.file-button{position:relative}.file-button input{inset:0;opacity:0;position:absolute}.hidden-file-input{display:none}.btn-primary,.btn-secondary{align-items:center;border-radius:10px;display:inline-flex;gap:8px;font-weight:900;justify-content:center;min-height:52px;padding:0 20px;text-decoration:none;width:100%}.btn-primary{background:var(--primary);border:0;color:white;box-shadow:0 10px 20px rgba(27,173,127,.16)}.btn-primary .app-icon{filter:brightness(0) invert(1)}.btn-primary:hover{background:#189f76}.btn-secondary{background:white;border:2px solid var(--line-strong);color:var(--ink)}.tip-box{align-items:flex-start;background:#f3fbfa;border:1px solid var(--line);border-radius:12px;color:#466e72;display:flex;gap:10px;padding:12px}.tip-box span{flex:0 0 auto}.tip-icon{height:24px;margin-top:1px;width:24px}.tip-box p{font-size:14px;font-weight:700;line-height:1.35;margin:0}.tip-box.centered{margin:24px auto 0;max-width:420px;text-align:left}.tip-box.compact{margin-top:8px}.section-kicker{color:var(--muted);font-size:15px;font-weight:800;margin:0}.choice-card{background:white;border:1px solid var(--line);border-radius:16px;color:var(--ink);display:grid;grid-gap:8px;gap:8px;min-height:120px;padding:18px;text-align:left}.choice-card.selected{background:#f3fbfa;border-color:var(--line-strong);box-shadow:inset 0 0 0 1px var(--line-strong)}.choice-card strong{font-size:18px}.choice-card small{color:var(--muted);font-size:14px;font-weight:750;line-height:1.35}.tag{background:var(--mint);border-radius:999px;color:#24736f;font-size:12px;font-weight:900;justify-self:start;padding:4px 9px}.text-input,textarea{border:1px solid var(--line);border-radius:12px;color:var(--ink);min-height:52px;outline:none;padding:14px 16px;width:100%}textarea{min-height:92px;resize:vertical}.center-screen{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:560px;padding:32px;text-align:center}.center-screen h2,.center-screen p{margin:0}.center-screen h2{font-size:30px;margin-top:16px}.confirmation-screen .center-screen h1{font-size:34px;line-height:1.05;margin:14px 0 0}.center-screen>p{color:var(--muted);font-size:17px;font-weight:700;margin-top:10px;max-width:520px}.confirmation-link{margin-top:22px;max-width:320px}.grow-loader{height:150px;position:relative;width:150px}.sprout-svg{display:block;height:100%;width:100%}.loader-plant{animation:plant-sway 3s ease-in-out 6s infinite alternate;transform-box:view-box;transform-origin:60px 130px}.loader-stem{fill:none;stroke:#147E78;stroke-dasharray:100;stroke-dashoffset:100;stroke-linecap:round;stroke-width:5;animation:stem-draw 4.5s ease-out forwards}.loader-ground{fill:none;stroke:#147E78;stroke-linecap:round;stroke-width:4}.loader-leaf{fill:#dff7f2;stroke:#147E78;stroke-linejoin:round;stroke-width:3.5;transform:scale(0);transform-box:view-box;animation:leaf-pop .5s ease-out forwards}.loader-leaf.l1{animation-delay:.9s}.loader-leaf.l2{animation-delay:1.6s}.loader-leaf.l3{animation-delay:2.3s}.loader-leaf.l4{animation-delay:3s}.loader-leaf.l5{animation-delay:3.7s}.loader-leaf.l6{animation-delay:4.4s}.loader-bud{transform:scale(0);transform-box:view-box;animation:bud-pop .7s cubic-bezier(.34,1.56,.64,1) 5.2s forwards}.loader-bud circle{fill:var(--primary);stroke:var(--primary-dark);stroke-width:3}.loader-bud path{fill:none;stroke:#dff7f2;stroke-linecap:round;stroke-width:2.5}@keyframes stem-draw{to{stroke-dashoffset:0}}@keyframes leaf-pop{0%{transform:scale(0) rotate(-18deg)}70%{transform:scale(1.15) rotate(4deg)}to{transform:scale(1) rotate(0deg)}}@keyframes bud-pop{to{transform:scale(1)}}.grow-sparkle{position:absolute;animation:sparkle-pulse 1.8s ease-in-out infinite}.grow-sparkle.s1{font-size:18px;right:6px;top:12px}.grow-sparkle.s2{animation-delay:.9s;font-size:14px;left:8px;top:40px}@keyframes plant-sway{0%{transform:rotate(-2.5deg)}to{transform:rotate(2.5deg)}}@keyframes sparkle-pulse{0%,to{opacity:.25;transform:translateY(0) scale(.85)}50%{opacity:1;transform:translateY(-4px) scale(1)}}.center-screen>p.processing-status{color:var(--primary-dark);font-size:17px;font-weight:800;margin:12px 0 0;min-height:24px}.center-screen>p.processing-eta{color:var(--muted);font-size:14px;font-weight:700;margin:4px 0 0}@media (prefers-reduced-motion:reduce){.grow-sparkle,.loader-plant,.loader-stem{animation:none}.loader-stem{stroke-dashoffset:0}.loader-bud,.loader-leaf{animation:none;transform:scale(1)}}.magic-loader,.success-mark{align-items:center;background:var(--mint);border-radius:999px;display:flex;font-size:42px;height:84px;justify-content:center;width:84px}.success-mark{color:var(--primary)}.success-mark .app-icon{height:54px;width:54px}.result-grid{align-items:stretch}.result-preview-column{min-width:0;width:100%}.generated-art{align-items:center;display:flex;font-size:82px;justify-content:center;min-height:260px;width:100%}.result-preview-panel .preview-content{aspect-ratio:4/3;min-height:0}.generated-image{display:block;height:100%;max-height:100%;max-width:100%;object-fit:contain;width:100%}.thumbnail-row{display:grid;grid-gap:12px;gap:12px;grid-auto-columns:minmax(112px,136px);grid-auto-flow:column;margin-top:14px;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:4px;width:100%}.thumbnail{align-items:center;background:white;border:1px solid var(--line);border-radius:14px;color:var(--ink);display:grid;grid-gap:8px;gap:8px;min-height:94px;min-width:0;padding:10px}.thumbnail.selected{border-color:var(--line-strong);box-shadow:inset 0 0 0 1px var(--line-strong)}.thumbnail span{font-size:34px}.thumbnail img{display:block;height:46px;justify-self:center;max-width:84px;object-fit:contain;width:84px}.thumbnail small{font-weight:800}.decision-panel{background:#f3fbfa;border:1px solid var(--line);border-radius:18px;padding:18px}.decision-panel h3{font-size:18px;margin:0}.retry-box{display:grid;grid-gap:10px;gap:10px}.retry-box label{align-items:center;color:var(--muted);display:inline-flex;gap:8px;font-weight:800}.retry-box label .app-icon{height:22px;width:22px}.carousel-hint{color:var(--muted);font-size:13px;font-weight:750;margin:12px 0 0}.retry-hint{color:#8b9c9e;font-size:13px;font-weight:700;line-height:1.35;margin:0}.alt-style-box{border-top:1px solid var(--line);display:grid;grid-gap:8px;gap:8px;padding-top:14px}.alt-style-box p{color:var(--muted);font-weight:800;margin:0}.alt-style-box small{color:#8b9c9e;font-weight:700}.fallback-box{background:#fffdfa;border:1px solid #f2d6a5;border-radius:12px;display:grid;grid-gap:10px;gap:10px;padding:12px}.fallback-box p{color:var(--muted);font-size:14px;font-weight:800;line-height:1.35;margin:0}.btn-tertiary{align-items:center;background:white;border:1px dashed var(--line-strong);border-radius:10px;color:var(--ink);display:inline-flex;gap:8px;font-weight:850;justify-content:center;min-height:48px;padding:0 16px;width:100%}.attempt-count{color:#8b9c9e;font-weight:800;margin:0;text-align:right}.tote-preview{align-items:center;display:flex;justify-content:center;min-height:440px;padding:24px 10px 10px;width:100%}.tote-preview.edit-mode{min-height:440px;padding:10px}.tote-preview.realistic-mode{background:#ffffff;border-radius:20px;min-height:260px;padding:18px 10px 12px}.tote-wrap{margin-top:clamp(74px,10vw,118px);position:relative;width:min(84%,390px)}.realistic-mode .tote-wrap{margin-top:clamp(54px,8vw,82px);width:min(72%,250px)}.edit-mode .tote-wrap{margin-top:clamp(56px,8vw,84px);width:min(82%,380px)}.tote-handles{bottom:calc(100% - 20px);height:clamp(120px,19vw,190px);left:0;pointer-events:none;position:absolute;right:0;z-index:0}.edit-mode .tote-handles{bottom:calc(100% - 6px);height:clamp(52px,8vw,80px);z-index:0}.tote-handle{background:linear-gradient(90deg,rgba(133,100,51,.1),transparent 18%,transparent 82%,rgba(133,100,51,.12)),repeating-linear-gradient(90deg,rgba(96,78,52,.09) 0 1px,transparent 1px 5px),#efe1c1;border:1px solid rgba(174,138,79,.35);border-radius:999px;box-shadow:4px 10px 10px rgba(23,74,79,.18);height:100%;position:absolute;top:0;width:clamp(18px,3.2vw,30px)}.tote-handle.left{left:35%;transform:rotate(5deg);transform-origin:bottom center}.tote-handle.right{right:35%;transform:rotate(-5deg);transform-origin:bottom center}.tote-handle-arch{border-right:clamp(16px,2.9vw,27px) solid #efe1c1;border-top:clamp(16px,2.9vw,27px) solid #efe1c1;border-bottom:0;border-left:clamp(16px,2.9vw,27px) solid #ecddb9;border-radius:999px 999px 0 0;box-shadow:0 -1px 0 rgba(174,138,79,.32),4px 8px 9px rgba(23,74,79,.15);height:64%;left:50%;position:absolute;top:0;transform:translateX(-50%);width:30%}.tote-bag{aspect-ratio:15/16;background:linear-gradient(90deg,rgba(130,96,52,.08),transparent 5%,transparent 95%,rgba(130,96,52,.08)),linear-gradient(180deg,rgba(255,250,232,.72),transparent 10%,transparent 90%,rgba(171,137,78,.12)),repeating-linear-gradient(0deg,rgba(111,93,61,.055) 0 1px,transparent 1px 5px),repeating-linear-gradient(90deg,rgba(111,93,61,.05) 0 1px,transparent 1px 6px),#eee0bd;border:1px solid rgba(188,151,91,.45);border-radius:2px 2px 10px 10px;box-shadow:11px 14px 18px rgba(23,74,79,.14),inset 0 2px 0 rgba(255,255,255,.52),inset 0 -8px 18px rgba(145,111,62,.1);overflow:hidden;position:relative;width:100%;z-index:1}.edit-mode .tote-bag{background:var(--canvas);border:2px solid #e1c99d;border-radius:10px;box-shadow:0 18px 36px rgba(54,74,70,.12)}.edit-mode .tote-bag:after,.edit-mode .tote-bag:before,.edit-mode .tote-handle{display:none}.edit-mode .tote-handle-arch{border:8px solid #dfc693;border-bottom:0;border-radius:90px 90px 0 0;box-shadow:none;height:100%;top:0;width:42%}.tote-bag:after,.tote-bag:before{background:rgba(145,111,62,.11);bottom:2%;content:"";position:absolute;top:0;width:1px;z-index:0}.tote-bag:before{left:2.6%}.tote-bag:after{right:2.6%}.tote-top-seam{background:linear-gradient(90deg,transparent,rgba(132,103,58,.16),transparent),repeating-linear-gradient(90deg,rgba(105,81,46,.12) 0 1px,transparent 1px 6px);height:6%;left:0;position:absolute;right:0;top:0;z-index:0}.edit-mode .tote-top-seam{display:none}.print-area{border:2px dashed #90c7be;cursor:-webkit-grab;cursor:grab;height:75%;left:50%;overflow:hidden;position:absolute;top:50%;touch-action:none;transform:translate(-50%,-50%);-webkit-user-select:none;-moz-user-select:none;user-select:none;width:66.67%;z-index:2}.print-area.dragging{cursor:-webkit-grabbing;cursor:grabbing}.print-area.previewing{cursor:default}.print-area.editable{cursor:-webkit-grab;cursor:grab}.print-area.preview-only{border:0;cursor:default;pointer-events:none}.artwork-layer{pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.artwork-layer img{display:block;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.artwork-layer.ghost{border:2px dashed var(--line-strong)}.artwork-layer.hidden{display:none}.artwork-layer.ghost img{filter:grayscale(70%);opacity:.35}.shape-clip{inset:0;overflow:hidden;pointer-events:none;position:absolute}.shape-clip.circle{-webkit-clip-path:circle(closest-side at 50% 50%);clip-path:circle(closest-side at 50% 50%)}.circle-disc,.shape-clip.circle{background:#ffffff;border-radius:999px}.circle-disc{aspect-ratio:1/1;left:50%;top:50%;transform:translate(-50%,-50%);width:100%}.circle-disc,.circle-print-outlines{pointer-events:none;position:absolute}.circle-print-outlines{inset:0}.circle-print-outline{aspect-ratio:1/1;border-color:var(--circle-outline-color);border-radius:50%;border-style:solid;border-width:max(1px,var(--circle-outline-stroke-width));box-sizing:border-box;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.circle-print-outline.outer{width:100%}.circle-print-outline.inner{width:var(--circle-outline-inner-diameter)}.custom-text-box{align-items:center;box-sizing:border-box;color:#000000;cursor:-webkit-grab;cursor:grab;display:inline-flex;font-size:calc(var(--custom-text-font-ratio) * 100cqw);justify-content:center;line-height:var(--custom-text-line-height,1.18);max-height:100%;max-width:100%;min-height:1em;min-width:1ch;overflow:hidden;padding:var(--custom-text-padding-block,6px) var(--custom-text-padding-inline,8px);pointer-events:auto;position:absolute;text-align:center;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:pre;width:max-content;z-index:6}.print-area,.realistic-print-area{container-type:inline-size}.custom-text-box.edit-text{border:1px dashed rgba(23,74,79,.46);border-radius:6px;min-height:calc(1em + 6px)}.custom-text-box.empty{color:rgba(23,74,79,.55)}.custom-text-inline-input{background:transparent;border:0;box-sizing:border-box;color:inherit;height:100%;margin:0;min-height:0;min-width:0;max-width:100%;outline:0;padding:0;resize:none;text-align:center}.custom-text-display,.custom-text-inline-input{display:block;font:inherit;line-height:inherit;overflow:hidden;white-space:pre;width:100%}.custom-text-inline-input::placeholder{color:rgba(23,74,79,.55);opacity:1}.custom-text-box.dragging{cursor:-webkit-grabbing;cursor:grabbing}.custom-text-box.preview-only{border-color:transparent;cursor:default;pointer-events:none}.custom-text-box.editable{box-shadow:0 0 0 2px rgba(255,255,255,.86)}.custom-text-box.realistic-text{cursor:default;pointer-events:none}.realistic-preview-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;display:grid;grid-gap:10px;gap:10px;padding:14px}.realistic-preview-card .eyebrow{color:var(--muted);font-size:.78rem;font-weight:900;letter-spacing:.04em;margin:0;text-transform:uppercase}.printify-spike-panel{border:1px dashed var(--line-strong);border-radius:8px;display:grid;grid-gap:8px;gap:8px;padding:12px}.printify-spike-status{color:#5d7173;font-size:.88rem;font-weight:750;line-height:1.35;margin:0}.printify-spike-status.success{color:#1f6f61}.printify-spike-status.blocked{color:#8a5a00}.printify-spike-status.error{color:#a9352a}.realistic-tote-mockup{background:#ffffff;border-radius:16px;margin-inline:auto;max-width:260px;overflow:hidden;position:relative;width:min(100%,260px)}.realistic-tote-trigger{border:0;cursor:zoom-in;display:block;padding:0}.realistic-tote-trigger:focus-visible{outline:3px solid var(--line-strong);outline-offset:4px}.realistic-tote-mockup>img{display:block;height:auto;width:100%}.realistic-print-area{height:36.8%;left:34.8%;overflow:hidden;pointer-events:none;position:absolute;top:47.2%;width:30.1%}.no-white-ink-preview .shape-clip.circle{background:transparent}.realistic-art img{filter:saturate(.98)}.preview-overlay{background:rgba(13,42,45,.9);display:grid;grid-template-rows:auto minmax(0,1fr);inset:0;overflow:hidden;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));position:fixed;z-index:1000}.preview-overlay-controls{align-items:center;display:flex;gap:10px;justify-content:flex-end;min-height:48px;z-index:3}.preview-overlay-reset{align-items:center;background:#ffffff;border:1px solid rgba(255,255,255,.72);border-radius:999px;color:var(--ink);display:inline-flex;font-size:14px;font-weight:900;gap:8px;min-height:44px;padding:0 16px}.preview-overlay-reset .app-icon{height:20px;width:20px}.preview-overlay-close{background:#ffffff;border:1px solid rgba(255,255,255,.72);border-radius:999px;color:var(--ink);font-size:30px;font-weight:800;height:48px;line-height:1;width:48px}.preview-overlay-stage{align-items:center;display:flex;justify-content:center;min-height:0;min-width:0;overflow:hidden;position:relative;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.preview-overlay.fine-pointer.is-fit .preview-overlay-stage{cursor:zoom-in}.preview-overlay.is-zoomed .preview-overlay-stage{cursor:-webkit-grab;cursor:grab}.preview-overlay.is-zoomed .preview-overlay-stage:active{cursor:-webkit-grabbing;cursor:grabbing}.preview-overlay-pan{display:flex;justify-content:center;transform-origin:center;width:100%;will-change:transform}.preview-overlay-mockup-shell{position:relative;width:min(96vw,1080px,calc((100svh - 78px) * .978))}.preview-overlay-mockup.realistic-tote-mockup{border-radius:8px;max-width:none;width:100%}.segmented{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.segmented button{align-items:center;background:white;border:1px solid var(--line);border-radius:12px;color:var(--ink);display:inline-flex;gap:8px;justify-content:center;font-weight:900;min-height:52px}.segmented .app-icon{height:24px;width:24px}.segmented button.active{border-color:var(--line-strong);box-shadow:inset 0 0 0 1px var(--line-strong)}.preview-action-drawer{background:#f8fdfc;border:1px solid var(--line);border-radius:14px;display:grid;grid-gap:12px;gap:12px;padding:14px}.preview-action-drawer.base{background:transparent;border:0;padding:0}.preview-action-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.preview-action-button{align-items:center;background:white;border:1px solid var(--line);border-radius:14px;color:var(--ink);display:inline-flex;font:inherit;font-weight:900;gap:10px;justify-content:center;min-height:62px;padding:0 16px}.preview-action-button:focus-visible,.preview-action-button:hover{border-color:var(--line-strong);box-shadow:inset 0 0 0 1px var(--line-strong)}.drawer-header{display:grid;grid-gap:4px;gap:4px}.drawer-header strong{font-size:17px}.drawer-header span{color:var(--muted);font-size:13px;font-weight:750;line-height:1.35}.drawer-actions{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.custom-text-panel{background:#f8fdfc}.font-choice-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.font-choice-grid button{background:white;border:1px solid var(--line);border-radius:10px;color:var(--ink);font-size:15px;min-height:46px;padding:0 10px}.font-choice-grid button.active{border-color:var(--line-strong);box-shadow:inset 0 0 0 1px var(--line-strong)}.custom-text-field{color:var(--muted);display:grid;font-size:13px;font-weight:900;grid-gap:6px;gap:6px}.custom-text-field textarea{background:white;border:1px solid var(--line);border-radius:10px;color:var(--ink);font:inherit;font-weight:750;min-height:44px;overflow-x:auto;padding:10px 12px;resize:vertical;white-space:pre;word-break:normal;word-wrap:normal}.custom-text-count{color:var(--muted);font-size:12px;font-weight:850;margin:-4px 0 0;text-align:right}.price-row{align-items:center;border-top:1px solid var(--line);display:flex;justify-content:space-between;padding-top:18px}.price-row span{color:var(--muted);font-weight:800}.feedback-screen{display:grid;grid-gap:18px;gap:18px;margin:0 auto;max-width:640px;padding:34px 24px 44px}.center-card{align-items:center;background:#f3fbfa;border:1px solid var(--line);border-radius:18px;display:grid;grid-gap:10px;gap:10px;justify-items:center;padding:28px;text-align:center}.center-card h2,.center-card p{margin:0}.center-card p{color:var(--muted);font-weight:700}.feedback-group{border:0;display:grid;grid-gap:10px;gap:10px;margin:0;padding:0}.feedback-group legend,.feedback-text{color:var(--muted);font-weight:850}.feedback-group div{display:flex;flex-wrap:wrap;gap:10px}.feedback-group button{background:white;border:1px solid var(--line);border-radius:999px;color:var(--ink);font-weight:850;min-height:44px;padding:0 16px}.feedback-group button.selected{background:var(--mint);border-color:var(--line-strong)}.feedback-text{display:grid;grid-gap:10px;gap:10px}.form-hint{color:var(--muted);font-size:14px;font-weight:750;margin:0;text-align:center}.form-error{background:#ffeaea;border:1px solid #ffc0c0;border-radius:10px;color:var(--danger);font-weight:800;margin:0;padding:12px}.campaign-status{background:rgba(213,246,239,.82);border:1px solid var(--line);border-radius:12px;color:var(--ink-soft);font-size:15px;font-weight:800;margin:16px auto 0;max-width:560px;padding:10px 14px;text-align:center}.campaign-status.closed,.campaign-status.full,.campaign-status.paused{background:#fff8e8;border-color:#f1d89a}.waitlist-form{display:grid;grid-gap:10px;gap:10px;margin:14px auto 0;max-width:420px;width:100%}@media (max-width:760px){.app-shell{padding:0}.app-topline{display:none}.phone-card{border:0;border-radius:0;box-shadow:none;min-height:100vh;width:100%}.hero{padding:32px 18px 30px}.hero-cta{max-width:340px;width:100%}.landing-body{padding:30px 18px 36px}.screen-header{padding:18px 16px}.progress-track{padding:10px 16px 0}.workflow-grid{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:16px}.preview-panel{min-height:auto;padding:12px}.product-details-backdrop{padding:12px}.product-details-dialog{max-height:calc(100dvh - 24px);padding:18px 18px 22px;width:calc(100vw - 24px)}.product-details-header{gap:12px}.product-details-header h2{font-size:22px;margin-top:7px}.product-details-content{font-size:15px}.product-details-content>p:first-child{margin-top:18px}.product-details-content h3,.product-details-dimensions{margin-top:20px}.generated-art,.preview-content{min-height:220px}.thumbnail-row{grid-auto-columns:minmax(104px,32%)}.uploaded-preview{max-height:210px}.control-panel,.decision-panel{gap:14px}.center-screen{min-height:520px;padding:24px 18px}.feedback-screen{padding:24px 16px 36px}.preview-overlay{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.preview-overlay-close{height:44px;width:44px}.preview-overlay-mockup-shell{width:min(96vw,calc((100svh - 64px) * .978))}}@media (min-width:761px){.benefit-row{grid-template-columns:repeat(3,1fr)}}@media (min-width:761px) and (max-width:1024px){.workflow-grid{grid-template-columns:1fr;min-width:0}.preview-content{min-height:320px}.result-grid{align-items:stretch}.thumbnail-row{grid-auto-columns:minmax(128px,20%)}}.dashboard-shell{background:#eefaf8;color:var(--ink);display:grid;grid-gap:24px;gap:24px;min-height:100vh;padding:32px}.dashboard-shell.compact{align-content:center;justify-content:center}.dashboard-header,.dashboard-login-card,.dashboard-section{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 48px rgba(21,79,83,.08)}.dashboard-header{align-items:center;display:flex;justify-content:space-between;gap:18px;padding:24px}.dashboard-header h1,.dashboard-login-card h1,.dashboard-section h2,.dashboard-section h3{margin:0}.dashboard-header p,.dashboard-login-card p,.dashboard-section p{color:var(--muted);font-weight:750;margin:8px 0 0}.dashboard-eyebrow{color:var(--teal);font-size:12px;font-weight:900;letter-spacing:.08em;margin:0;text-transform:uppercase}.dashboard-login-card{max-width:480px;padding:30px}.dashboard-login-card,.dashboard-login-form{display:grid;grid-gap:14px;gap:14px}.dashboard-login-form label{color:var(--ink);display:grid;font-weight:850;grid-gap:8px;gap:8px}.dashboard-login-form input{border:1px solid var(--line);border-radius:12px;color:var(--ink);font:inherit;min-height:48px;padding:0 14px}.dashboard-login-form button,.dashboard-secondary-button{background:var(--teal);border:0;border-radius:12px;color:white;font-weight:900;min-height:44px;padding:0 16px}.dashboard-secondary-button{background:white;border:1px solid var(--line);color:var(--ink)}.dashboard-alert,.dashboard-error{background:#fff8e8;border:1px solid #f1d89a;border-radius:12px;padding:12px}.dashboard-error{background:#ffeaea;border-color:#ffc0c0;color:var(--danger)}.dashboard-filters{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.dashboard-filters label{color:var(--muted);display:grid;font-size:13px;font-weight:900;grid-gap:6px;gap:6px}.dashboard-filters select{background:white;border:1px solid var(--line);border-radius:12px;color:var(--ink);font:inherit;font-weight:850;min-height:44px;min-width:160px;padding:0 38px 0 12px}.dashboard-filters button{background:#154f53;border:0;border-radius:12px;color:#ffffff;font:inherit;font-weight:900;min-height:44px;padding:0 18px}.dashboard-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-distribution,.dashboard-kpi,.dashboard-panel{background:white;border:1px solid var(--line);border-radius:16px;padding:18px}.dashboard-kpi p{color:var(--muted);font-weight:850;margin:0 0 8px}.dashboard-kpi strong{display:block;font-size:34px;line-height:1}.dashboard-kpi span{color:var(--muted);display:block;font-weight:800;margin-top:8px}.dashboard-section{display:grid;grid-gap:18px;gap:18px;padding:24px}.dashboard-section-heading{align-items:flex-end;display:flex;justify-content:space-between;gap:16px}.dashboard-table-wrap{overflow-x:auto}.dashboard-table{border-collapse:collapse;min-width:980px;width:100%}.dashboard-table td,.dashboard-table th{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.dashboard-table thead th{color:var(--muted);font-size:12px;text-transform:uppercase}.dashboard-stepbar{align-items:center;display:grid;grid-gap:6px;gap:6px;grid-template-columns:minmax(72px,1fr) auto auto;min-width:150px}.dashboard-stepbar span,.distribution-bar span{background:var(--teal);border-radius:999px;display:block;height:8px}.dashboard-stepbar>span,.distribution-bar{background:#e8f4f2;border-radius:999px;overflow:hidden;width:100%}.dashboard-stepbar em,.distribution-row em{color:var(--muted);font-style:normal;font-weight:800}.dashboard-two-col,.feedback-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.distribution-row,.prompt-list li,.style-count-row{align-items:center;border-top:1px solid var(--line);display:grid;grid-gap:10px;gap:10px;grid-template-columns:1fr auto;padding:12px 0}.comment-list,.prompt-list{list-style:none;margin:0;padding:0}.prompt-list li{grid-template-columns:1fr auto}.distribution-row{grid-template-columns:minmax(120px,1fr) minmax(120px,2fr) auto auto}.comment-list li{border-top:1px solid var(--line);padding:12px 0}.comment-list time{color:var(--muted);font-size:13px;font-weight:850}.comment-list p{color:var(--ink);margin:4px 0 0}@media (max-width:900px){.dashboard-shell{padding:16px}.dashboard-header,.dashboard-section-heading{align-items:start;flex-direction:column}.dashboard-grid,.dashboard-two-col,.feedback-grid{grid-template-columns:1fr}.dashboard-kpi strong{font-size:28px}}