@font-face{font-family:Inter;src:url('./assets/inter-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('./assets/inter-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('./assets/inter-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url('./assets/inter-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Fredoka;src:url('./assets/fredoka-one.woff2') format('woff2');font-weight:400;font-display:swap}
:root{font-family:Inter,system-ui,sans-serif;color:#111111;background:#F4F3EE;font-synthesis:none;--paper:#F4F3EE;--ink:#111111;--muted:#77756e;--orange:#FF5A1F;--line:#e4e2d9;--lilac:#e9e5f5;--radius:24px}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:wait;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:3px solid #cf4918;outline-offset:4px}button,input{border-radius:0}button{background:none;border:0}a{color:inherit;text-decoration:none}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}h1,h2,h3,p{margin:0}button{transition:background .16s,box-shadow .16s,transform .16s}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.topbar{height:88px;max-width:1600px;margin:auto;padding:0 40px;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;font-size:20px;font-weight:700;letter-spacing:-1px}.brand-mark{display:flex;align-items:center;font-family:Fredoka;font-size:24px;letter-spacing:-3px;background:var(--orange);color:var(--paper);width:37px;height:37px;border-radius:12px;padding:0 6px 4px}.brand-mark span{margin-top:4px}.brand-dot{font-size:10px;vertical-align:top;margin-left:3px;line-height:18px}.product-lockup{border-left:1px solid #d8d6ce;padding-left:28px;display:flex;gap:12px;align-items:center}.product-lockup>span:first-child{font-family:Fredoka;font-size:22px;letter-spacing:-.3px}.test-badge{font-size:9px;font-weight:600;letter-spacing:1.1px;background:#e9e6de;color:#6b6961;padding:5px 7px;border-radius:5px}.header-actions{display:flex;margin-left:auto;align-items:center;gap:22px}.text-button{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:500;white-space:nowrap;padding:8px 0}.text-button:hover{color:#c94718}.text-button svg{width:17px;height:17px}.icon-button{width:36px;height:36px;display:inline-flex;justify-content:center;align-items:center;border-radius:11px;flex-shrink:0}.icon-button:hover{background:#00000009}.icon-button[aria-pressed=true]{background:var(--ink);color:#fff}.count{font-size:10px;border-radius:50%;height:17px;min-width:17px;display:grid;place-content:center;background:var(--orange);color:#fff}.app-shell{max-width:1600px;padding:0 40px;margin:auto}.intro{display:flex;align-items:center;justify-content:space-between;padding:31px 0 28px}.eyebrow{font-size:9px;line-height:1.6;font-weight:600;letter-spacing:1.5px;display:flex;align-items:center;gap:7px;color:#75726a}.orange-dot{width:5px;height:5px;background:var(--orange);border-radius:50%}h1{font-family:Fredoka;font-weight:400;font-size:52px;letter-spacing:-1.7px;line-height:1.22;margin-top:4px}h1 span{color:var(--orange)}.intro-copy{font-size:13px;line-height:1.8;color:#75726a;padding-right:2px}.studio-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:stretch}.stage{isolation:isolate;position:relative;min-height:612px;overflow:hidden;border-radius:var(--radius);background:#eae6f1;border:1px solid #e2ddeb;box-shadow:inset 0 0 100px #ffffff55}.stage-wash{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 45% 45%,#f6f2fe 0%,#e9e3f2 57%,#e1dbea 100%)}.stage::after{content:'fluffytag';position:absolute;z-index:-1;left:50%;top:46%;transform:translate(-50%,-50%) rotate(-7deg);font-family:Fredoka;font-size:clamp(90px,13.8vw,210px);letter-spacing:-7px;color:#b9adcf12;white-space:nowrap;pointer-events:none}.stage-top{position:absolute;z-index:3;left:24px;top:24px;display:flex;align-items:center;gap:12px;pointer-events:none}.live-badge{font-size:9px;font-weight:600;letter-spacing:1px;display:flex;align-items:center;gap:6px;background:#ffffffa8;padding:7px 9px;border-radius:6px}.live-badge span{height:5px;width:5px;background:#8173a2;border-radius:50%}.stage-caption{font-size:10px;color:#8f839f}.stage canvas{display:block;position:absolute;inset:0;width:100%;height:100%;touch-action:none;z-index:1;outline-offset:-4px}.viewer-actions{position:absolute;z-index:4;right:18px;top:19px;display:flex;flex-direction:column;gap:3px;padding:5px;background:#ffffffab;border:1px solid #ffffffa0;backdrop-filter:blur(10px);border-radius:16px}.viewer-actions .icon-button{height:33px;width:33px;border-radius:10px;color:#6b5f7d}.viewer-actions .icon-button[aria-pressed=true]{background:#85709f;color:#fff}.viewer-actions svg{width:17px;height:17px}.action-divider{height:1px;background:#d3cadc;margin:3px 8px}.stage-bottom{position:absolute;left:24px;right:24px;bottom:22px;z-index:3;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:22px;pointer-events:none}.stage-bottom>*{pointer-events:auto}.dimension-label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:500;letter-spacing:-.1px;color:#6e607f}.dimension-label>span:last-child{font-size:9px;font-weight:400;color:#95899f}.view-switch{padding:4px;border-radius:13px;display:flex;gap:2px;background:#ffffffb3;border:1px solid #ffffffa1;backdrop-filter:blur(12px)}.view-switch button{font-size:10px;font-weight:500;padding:9px 12px;border-radius:9px;color:#80718f}.view-switch button:hover{background:#d3c9e133}.view-switch button.is-active{background:#fff;color:#483858;box-shadow:0 2px 6px #58436711}.orbit-hint{width:100%;text-align:center;font-size:9px;color:#95899f;letter-spacing:.15px;margin-top:-10px;pointer-events:none}.model-status{position:absolute;z-index:5;left:50%;top:48%;transform:translate(-50%,-50%);background:#ffffffde;box-shadow:0 8px 30px #5a426410;backdrop-filter:blur(12px);display:flex;gap:10px;align-items:center;padding:13px 17px;border:1px solid #fff;border-radius:16px;font-size:12px;color:#756482;max-width:85%;white-space:nowrap}.model-status.is-updating{top:76px;transform:translateX(-50%);font-size:10px;padding:8px 12px}.spinner{width:14px;height:14px;flex-shrink:0;border:2px solid #d9cfe4;border-top-color:#8a66a5;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.model-error{position:absolute;z-index:6;left:50%;top:50%;transform:translate(-50%,-50%);width:min(85%,370px);background:#fffaf7f2;border:1px solid #eacabb;border-radius:20px;padding:21px;box-shadow:0 10px 45px #64423315;backdrop-filter:blur(16px)}.error-heading{font-family:Fredoka;font-size:22px;font-weight:400}.model-error p{font-size:12px;line-height:1.7;color:#7d6559;margin-top:9px}.small-button{padding:10px 14px;background:var(--ink);color:#fff;font-size:11px;border-radius:9px;margin-top:13px}.editor{background:#fffefa;border:1px solid #e8e6dc;border-radius:var(--radius);padding:25px 23px 14px}.editor-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:21px}.editor-heading .eyebrow{font-size:8px;letter-spacing:1.25px}.editor h2{font-family:Fredoka;font-size:27px;letter-spacing:-.6px;font-weight:400;margin-top:3px}.step-flower{font-size:34px;color:var(--orange);line-height:1;transform:rotate(10deg)}.sheet-close{display:none}.editor-section+.editor-section{border-top:1px solid #eeece3;padding-top:19px;margin-top:20px}.field-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:12px}.field-heading label,.field-heading h3{font-size:11px;font-weight:600}.field-heading>span{font-size:9px;color:#99968e}.name-field{position:relative}.name-field input{width:100%;background:var(--paper);border:1px solid #e7e4da;border-radius:12px;font-family:Fredoka;font-size:25px;letter-spacing:.5px;padding:12px 40px 12px 15px;color:var(--ink);line-height:1.3}.name-field input:focus{outline:none;border-color:#ae98c6;box-shadow:0 0 0 3px #b597db19}.name-field input[aria-invalid=true]{border-color:#cc6d4c}.name-cursor{position:absolute;right:14px;top:16px;color:#bdaacb;font-size:21px;pointer-events:none}.field-note{font-size:9px;color:#9b978d;line-height:1.6;margin-top:8px}.sample-names{display:flex;gap:7px;align-items:center;margin-top:9px}.sample-names span{font-size:9px;color:#9b978d;margin-right:1px}.sample-names button{font-size:8px;letter-spacing:.45px;color:#8d8374;background:#f5f2e9;padding:4px 6px;border-radius:4px}.sample-names button:hover{background:#e9e1cf}.compact{font-size:9px;padding:0;color:#928b80;gap:5px}.compact svg{width:13px;height:13px}.color-row{margin-top:12px}.swatch-heading{display:flex;justify-content:space-between;font-size:10px;color:#6d685d;margin-bottom:8px}.swatch-heading>span:last-child{font-size:9px;color:#a49c8f}.swatch-list{display:flex;gap:9px;justify-content:space-between}.swatch{position:relative;height:26px;width:26px;flex-shrink:0;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px #00000008}.swatch::after{content:'';position:absolute;inset:-4px;border:1.5px solid transparent;border-radius:50%;transition:border-color .15s}.swatch[aria-pressed=true]::after{border-color:#756464}.swatch[aria-pressed=true]::before{content:'';position:absolute;width:6px;height:3px;left:9px;top:10px;border-left:1.5px solid var(--check,#fff);border-bottom:1.5px solid var(--check,#fff);transform:rotate(-45deg)}.swatch:hover{transform:scale(1.06)}.palette-row{display:flex;align-items:center;justify-content:space-between;margin-top:17px;padding-top:10px;border-top:1px dashed #e9e5d9}.palette-row>span{font-size:9px;color:#9a9180}.palettes{display:flex;gap:6px}.palette-button{padding:3px 5px;display:flex;border:1px solid #e9e3d7;border-radius:6px}.palette-button span{width:11px;height:11px;display:block;border-radius:50%;background:var(--color);box-shadow:inset 0 0 0 1px #00000006}.palette-button span+span{margin-left:-3px}.palette-button:hover{background:#eeeadf}.size-options{display:flex;gap:6px}.size-options button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #e8e4d9;border-radius:10px;padding:9px 4px;gap:4px}.size-options strong{font-size:10px;font-weight:500}.size-options span{font-size:9px;color:#9c9486}.size-options .is-active{border-color:#ce9e7c;background:#fff4e9}.size-options .is-active strong{color:#aa501e}.download-area{margin-top:19px}.primary-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--orange);color:#fff;font-size:12px;font-weight:600;border-radius:12px;padding:15px 17px;box-shadow:0 3px 0 #d8491017;min-height:47px}.primary-button:hover:not(:disabled){background:#ea4c15;box-shadow:0 5px 14px #fe58172b}.primary-button svg{width:17px;height:17px}.button-arrow{margin-left:auto;width:16px!important}.download-note{text-align:center;font-size:8px;color:#aaa191;margin-top:9px}.editor-secondary{display:flex;align-items:center;justify-content:center;gap:29px;border-top:1px solid #eeece3;padding-top:8px;margin-top:17px}.editor-secondary .text-button{font-size:9px;color:#7f786a}.editor-secondary svg{width:13px;height:13px}.how-it-works{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:30px;padding:29px 3px;align-items:center}.how-it-works>div{display:flex;align-items:flex-start;gap:11px}.how-it-works .how-title{align-items:center;gap:13px}.tiny-tag{width:42px;height:42px;border-radius:14px 17px 14px 18px;background:#e1d6ed;box-shadow:0 3px 0 #c4b3d6;display:flex;justify-content:center;align-items:center;font-family:Fredoka;font-size:28px;color:#fffbf1;transform:rotate(-14deg)}.how-title p{font-size:11px;line-height:1.65;color:#857d70}.how-title strong{font-weight:500;color:#4a453b}.step-number{border:1px solid #dbd7cc;color:#988d7b;font-size:8px;padding:4px;border-radius:5px;line-height:1;margin-top:1px}.how-it-works p strong{display:block;font-size:10px;font-weight:500;margin-bottom:5px}.how-it-works p span{display:block;font-size:9px;color:#969083;line-height:1.8;max-width:170px}.page-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 0 20px;font-size:8px;color:#9f988a;gap:15px}.page-footer>span{letter-spacing:1px;font-weight:500}.page-footer .text-button{font-size:8px;color:#8e877a}.page-footer svg{width:12px;height:12px}.mobile-toolbar{display:none}.studio-dialog{border:1px solid #e6e1d5;border-radius:25px;background:#fffdf7;color:var(--ink);width:min(510px,calc(100% - 28px));max-height:90svh;padding:25px;box-shadow:0 20px 100px #29231c33;overflow-y:auto}.studio-dialog::backdrop{background:#342b3d55;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.dialog-top .eyebrow{font-size:8px}.studio-dialog h2{font-family:Fredoka;font-size:31px;font-weight:400;letter-spacing:-.8px}.dialog-lead{font-size:12px;line-height:1.8;color:#8f8574;margin-top:8px;margin-bottom:22px}.export-parts{border:1px solid #e9e3d6;border-radius:15px;overflow:hidden}.part-download{display:flex;align-items:center;width:100%;text-align:left;gap:14px;padding:19px 16px}.part-download+.part-download{border-top:1px solid #e9e3d6}.part-download:hover{background:#f4f0e6}.part-number{font-family:Fredoka;font-size:21px;color:#bfaacc}.part-download strong{display:block;font-size:12px;font-weight:500}.part-download small{display:block;font-size:10px;color:#a09787;margin-top:5px}.part-download>svg{margin-left:auto;color:#9f9380;width:17px;height:17px}.print-note{display:flex;gap:10px;background:#f3efe5;border-radius:12px;padding:13px 14px;margin:20px 0;color:#8b806d}.print-note svg{width:16px;height:16px;margin-top:2px}.print-note p{font-size:10px;line-height:1.9}.print-note strong{font-weight:600}.dialog-footnote{font-size:9px;color:#9f9583;text-align:center;margin-top:12px}.settings-dialog{width:min(570px,calc(100% - 28px))}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-grid label{font-size:11px;font-weight:500}.settings-grid input{display:block;width:100%;border:1px solid #e3dccd;border-radius:8px;padding:10px 12px;margin:8px 0 5px;background:#f7f4eb;color:#463e30;font-size:13px;min-height:40px}.settings-grid small{font-size:9px;color:#a29682;line-height:1.5;font-weight:400}.settings-explainer{font-size:10px;color:#8c7960;line-height:1.8;background:#f6eddf;padding:13px;border-radius:10px;margin:20px 0}.settings-actions{display:flex;align-items:center;justify-content:space-between;gap:18px}.settings-actions .primary-button{width:auto;min-width:170px}.settings-actions .text-button{font-size:10px;color:#8d7e69}.form-error{font-size:11px;color:#aa402b;line-height:1.7;padding-bottom:14px}.saved-list{display:flex;flex-direction:column;gap:9px}.empty-state{padding:30px 20px 40px;text-align:center;color:#a6967e;font-size:12px;line-height:1.9;background:#f5f0e4;border-radius:15px}.saved-design{display:flex;align-items:center;gap:12px;border:1px solid #e8e0d0;border-radius:13px;padding:10px}.saved-design .load-design{display:flex;align-items:center;text-align:left;flex:1;gap:13px;padding:4px;min-width:0}.saved-preview{display:block;padding:9px 11px;border-radius:12px;background:var(--base);color:var(--letters);font-family:Fredoka;font-size:16px;letter-spacing:.5px;max-width:175px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:inset 0 -2px 0 #00000011}.saved-meta{font-size:10px;color:#96876f;line-height:1.8}.saved-meta strong{display:block;color:#655a48;font-weight:500}.saved-design .icon-button{color:#a08f76}.about-copy{font-size:12px;line-height:1.9;color:#8b7d65;display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.toast{position:fixed;z-index:1000;left:50%;bottom:26px;transform:translateX(-50%);background:#282421;color:#fff7e8;box-shadow:0 5px 30px #0002;padding:13px 20px;border-radius:12px;font-size:12px;max-width:90vw;line-height:1.6;text-align:center}.noscript{position:fixed;z-index:100;inset:0;display:grid;place-content:center;background:var(--paper);padding:40px;text-align:center;font-family:Fredoka;font-size:28px}.stage:fullscreen{border-radius:0;border:0;width:100vw;height:100vh;background:#eae6f1}.stage.is-fullscreen{position:fixed!important;inset:0!important;z-index:70!important;border-radius:0!important;height:100dvh!important;min-height:100dvh!important}.stage:fullscreen .stage-top,.stage.is-fullscreen .stage-top{top:30px}.stage:fullscreen .stage-bottom,.stage.is-fullscreen .stage-bottom{bottom:30px}.stage:fullscreen .viewer-actions,.stage.is-fullscreen .viewer-actions{top:26px}.stage:fullscreen .stage-caption,.stage.is-fullscreen .stage-caption{display:inline}.stage:fullscreen .dimension-label,.stage.is-fullscreen .dimension-label{display:flex}
@media(min-width:1500px){.studio-grid{grid-template-columns:minmax(0,1fr) 360px;gap:24px}.editor{padding:27px 27px 16px}.stage{min-height:635px}.swatch{height:29px;width:29px}.swatch[aria-pressed=true]::before{left:10px;top:11px}.intro{padding-top:36px;padding-bottom:32px}}
@media(max-width:1150px) and (min-width:761px){.topbar{padding:0 25px}.app-shell{padding:0 25px}.studio-grid{grid-template-columns:minmax(0,1fr) 310px;gap:15px}.editor{padding:23px 20px 13px}.stage-caption{display:none}.stage-bottom{justify-content:center;left:16px;right:16px;gap:14px}.dimension-label{width:100%;align-items:center}.orbit-hint{margin-top:0}.how-it-works{gap:16px}.how-it-works .how-title{display:none}.how-it-works{grid-template-columns:1fr 1fr 1fr}.swatch-list{gap:8px}.swatch{height:25px;width:25px}.intro-copy{font-size:11px}}
@media(max-width:760px){.topbar{height:62px;padding:0 18px;gap:17px;border-bottom:0}.brand{font-size:17px;gap:7px}.brand-mark{width:30px;height:30px;font-size:20px;border-radius:10px;padding:0 5px 3px;letter-spacing:-2.6px}.brand-dot{font-size:8px}.product-lockup{padding-left:15px;gap:6px;border-color:#dcd8cc}.product-lockup>span:first-child{font-size:20px}.test-badge{font-size:6px;letter-spacing:.4px;padding:4px;display:none}.header-actions{gap:8px}.header-actions .text-button{padding:7px}.header-actions .text-button svg{width:19px;height:19px}.header-actions .text-button>span:not(.count){display:none}.header-actions>.icon-button{display:none}.app-shell{padding:0 10px}.intro{padding:8px 8px 15px;align-items:flex-end}.intro .eyebrow{font-size:7px;letter-spacing:1.3px;gap:5px}.intro h1{font-size:34px;line-height:1.2;letter-spacing:-.9px;margin-top:3px}.intro-copy{font-size:9px;line-height:1.5;max-width:133px;padding:0 0 4px}.intro-copy br{display:none}.studio-grid{display:block}.stage{border-radius:22px;min-height:260px;height:calc(100svh - 232px);max-height:900px;transition:height .22s}.stage-top{left:17px;top:17px}.live-badge{font-size:7px;letter-spacing:.7px;padding:6px 7px;gap:5px}.live-badge span{width:4px;height:4px}.stage-caption{display:none}.stage::after{font-size:96px;letter-spacing:-3px;top:43%}.viewer-actions{right:10px;top:11px;gap:2px;padding:3px;border-radius:13px}.viewer-actions .icon-button{width:31px;height:31px;border-radius:10px}.viewer-actions svg{width:15px;height:15px}#zoom-in,#zoom-out{display:none}.stage-bottom{left:12px;right:12px;bottom:15px;display:flex;flex-direction:column;align-items:center;gap:12px}.dimension-label{font-size:10px;flex-direction:row;align-items:center;gap:9px}.dimension-label>span:last-child{display:none}.view-switch{padding:4px;border-radius:12px;gap:1px}.view-switch button{font-size:9px;padding:8px 14px}.orbit-hint{font-size:8px;margin-top:0}.stage:fullscreen .stage-bottom,.stage.is-fullscreen .stage-bottom{bottom:max(22px,env(safe-area-inset-bottom))}.stage:fullscreen .dimension-label,.stage.is-fullscreen .dimension-label{flex-direction:column}.stage:fullscreen .dimension-label>span:last-child,.stage.is-fullscreen .dimension-label>span:last-child{display:block}.editor{display:none;position:fixed;bottom:calc(78px + env(safe-area-inset-bottom));left:10px;right:10px;width:auto;max-height:48svh;padding:19px 20px 13px;border-radius:22px;z-index:30;overflow:auto;box-shadow:0 -8px 50px #31231609;background:#fffdf7}.editor-heading{margin-bottom:15px}.editor-heading .eyebrow{display:none}.editor h2{font-size:22px;margin:0}.sheet-close{display:flex;width:28px;height:28px}.sheet-close svg{width:17px;height:17px}.step-flower{display:none}.editor-section{display:none}.editor-section+.editor-section{border:0;padding-top:0;margin-top:0}.editor-secondary{display:none}.field-heading{margin-bottom:8px}.field-heading label,.field-heading h3{font-size:10px}.field-heading>span{font-size:9px}.name-field input{font-size:25px;padding:10px 40px 10px 13px}.name-cursor{top:13px}.field-note{font-size:9px}.sample-names{margin-top:8px}.sample-names button{font-size:9px;padding:5px 8px}.color-row{margin-top:10px}.swatch-heading{font-size:10px;margin-bottom:9px}.swatch-heading>span:last-child{font-size:9px}.swatch-list{gap:9px;justify-content:flex-start}.swatch{width:28px;height:28px}.swatch[aria-pressed=true]::before{left:10px;top:11px}.palette-row{margin-top:15px;padding-top:10px}.palettes{gap:8px}.palette-button{padding:5px 8px}.palette-button span{width:12px;height:12px}.color-section .field-heading{margin-bottom:12px}.size-options button{padding:8px}.size-options strong{font-size:11px}.size-options span{font-size:9px}.download-area{margin-top:15px}.primary-button{padding:13px 16px;font-size:12px;min-height:45px}.download-note{font-size:9px}.how-it-works,.page-footer{display:none}.mobile-toolbar{position:fixed;z-index:40;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);height:calc(74px + env(safe-area-inset-bottom));padding:5px 17px calc(8px + env(safe-area-inset-bottom));background:#F4F3EEf5;border-top:1px solid #e4dfd2;backdrop-filter:blur(18px);gap:10px}.mobile-toolbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;color:#958a79;font-size:9px;font-weight:500;border-radius:14px}.mobile-toolbar svg{width:21px;height:21px;stroke-width:1.5}.mobile-toolbar button[aria-expanded=true]{background:#eae4d9;color:#6f5941}.mobile-toolbar button[data-panel=print]{color:#d95726}.mobile-toolbar button[data-panel=print][aria-expanded=true]{background:#ffeadb}.model-status{font-size:10px;padding:11px 13px;max-width:85%}.model-status.is-updating{top:57px;font-size:9px;padding:7px 10px}.model-error{width:calc(100% - 72px);padding:17px;left:calc(50% - 9px);top:46%;border-radius:15px}.error-heading{font-size:20px}.model-error p{font-size:11px;margin-top:7px;line-height:1.6}.small-button{font-size:10px;padding:8px 10px;margin-top:10px}.studio-dialog{padding:20px;border-radius:23px;max-height:89svh}.studio-dialog h2{font-size:28px}.dialog-lead{font-size:11px;margin-bottom:18px}.settings-grid{gap:14px}.settings-grid input{font-size:16px;padding:8px 10px}.settings-grid small{font-size:8px}.settings-actions{gap:10px}.settings-actions .primary-button{min-width:150px;font-size:11px}.settings-actions .text-button{font-size:9px;gap:5px}.toast{bottom:calc(88px + env(safe-area-inset-bottom));font-size:11px;padding:12px 16px;width:max-content;max-width:90vw}body[data-panel] .editor{display:block}body[data-panel=name] .name-section,body[data-panel=colors] .color-section,body[data-panel=print] .print-section{display:block}body[data-panel=name] .stage{height:calc(100svh - 410px)}body[data-panel=colors] .stage{height:calc(100svh - 465px)}body[data-panel=print] .stage{height:calc(100svh - 478px)}body[data-panel] .stage-bottom{gap:7px;bottom:11px}body[data-panel] .orbit-hint{display:none}body[data-panel] .dimension-label{font-size:9px}body[data-panel] .view-switch button{padding:7px 12px}.stage:fullscreen,.stage.is-fullscreen{height:100dvh!important;max-height:none!important}.saved-preview{max-width:155px}.about-copy{font-size:11px}.count{min-width:15px;height:15px;font-size:9px}}
@media(max-width:370px){.topbar{gap:12px;padding:0 14px}.product-lockup{padding-left:12px}.product-lockup>span:first-child{font-size:18px}.intro h1{font-size:30px}.intro-copy{font-size:8px;max-width:112px}.editor{padding:16px}.view-switch button{padding:8px 11px}.swatch-list{gap:8px}.swatch{width:26px;height:26px}.swatch[aria-pressed=true]::before{left:9px;top:10px}.model-error{width:calc(100% - 56px)}.settings-actions .primary-button{min-width:130px;padding:12px}.settings-grid small{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){body[data-panel=print] .editor-secondary{display:flex;margin-top:12px;padding-top:7px;gap:35px}body[data-panel=print] .editor-secondary .text-button{font-size:10px;padding:6px 0}body[data-panel=print] .editor-secondary svg{width:14px;height:14px}.editor{max-height:min(48svh,calc(100svh - 305px))}}

@media(max-width:760px){body[data-panel] .intro{display:none}body[data-panel] .stage{min-height:180px}.stage{min-height:200px}.stage:fullscreen,.stage.is-fullscreen{min-height:100dvh!important}}
.export-progress{font-size:10px;line-height:1.6;color:#806c91;background:#eee8f5;padding:10px 12px;border-radius:9px;margin:-6px 0 14px}.individual-files-heading{display:flex;justify-content:space-between;align-items:center;margin:21px 0 10px;gap:15px}.individual-files-heading h3{font-size:11px;font-weight:500}.individual-files-heading span{font-size:8px;color:#9b8f7d}.individual-letter-files{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:8px}.letter-file-button{display:flex;flex-direction:column;align-items:center;gap:5px;border:1px solid #e4dbe8;background:#f4eef7;padding:12px 7px;border-radius:12px;min-height:89px}.letter-file-button:hover:not(:disabled){background:#eae0ef;border-color:#baa2cb}.letter-file-button strong{font-family:Fredoka;font-weight:400;font-size:26px;line-height:1;color:#9b7cb5}.letter-file-button span{font-size:9px;color:#766384}.letter-file-button small{font-size:8px;color:#a18faa}.download-location-help{font-size:10px;line-height:1.9;color:#8e816c;margin-top:19px;padding-top:15px;border-top:1px solid #e9e1d4}.download-location-help strong{font-weight:500;color:#71624b}.ready-file-card{padding:16px;border:1px solid #e2d7e7;background:#f1eaf4;border-radius:12px;margin:0 0 20px;display:flex;flex-direction:column;gap:7px}.ready-file-card strong{font-size:12px;font-weight:500;overflow-wrap:anywhere;color:#745784}.ready-file-card span{font-size:10px;color:#9b85aa}.download-troubleshooting{font-size:10px;line-height:1.8;color:#948570;margin-top:14px}.download-troubleshooting summary{cursor:pointer;font-weight:500;color:#7d6950}.download-troubleshooting p{margin-top:10px}.download-troubleshooting a{color:#b34c22;text-decoration:underline;text-underline-offset:2px}.download-troubleshooting strong{font-weight:500}.studio-dialog .primary-button:not(button){cursor:pointer}.part-download strong,.part-download small{overflow-wrap:anywhere}.part-download>span:nth-child(2){min-width:0}
@media(max-width:760px){.export-progress{font-size:9px}.individual-files-heading h3{font-size:10px}.individual-files-heading span{font-size:8px}.individual-letter-files{gap:6px;grid-template-columns:repeat(auto-fit,minmax(56px,1fr))}.letter-file-button{min-height:83px;padding:10px 5px}.letter-file-button strong{font-size:24px}.download-location-help,.download-troubleshooting{font-size:9px}#export-dialog h2{font-size:25px}}
