/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--ink:#121212;--soft:#f3f1ed;--line:#d8d5cf;--green:#00a67e;--acid:#dfff4f}*{box-sizing:border-box}html,body{width:100%;height:100%;color:var(--ink);background:#f7f6f3;margin:0;overflow:hidden}body{font-family:var(--font-geist-sans), Arial, sans-serif}button,input,select{font:inherit}button{cursor:pointer}.studio-shell{grid-template-rows:58px minmax(0,1fr);width:100%;height:100dvh;display:grid;overflow:hidden}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:58px;padding:0 26px;display:flex}.brand{width:142px;height:38px;color:var(--ink);flex:none;align-items:center;text-decoration:none;display:flex}.brand img{object-fit:contain;width:100%;height:100%;display:block}.step-label{letter-spacing:.14em;font-size:12px;font-weight:750}.step-label span{color:#777;margin-left:12px}.quiet-button{color:var(--ink);background:0 0;border:0;text-decoration:underline}.topbar-actions{align-items:center;gap:18px;display:flex}.language-switcher{color:#999;align-items:center;gap:5px;font-size:12px;display:flex}.language-switcher button{color:#888;font:inherit;cursor:pointer;background:0 0;border:0;padding:5px 3px;font-weight:700}.language-switcher button.active{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.studio-grid{grid-template-columns:minmax(290px,330px) minmax(420px,1fr) minmax(250px,285px);min-width:0;min-height:0;display:grid;overflow:hidden}.control-panel,.summary-panel{background:#fff;min-height:0}.control-panel{overscroll-behavior:contain;scrollbar-gutter:stable;padding:25px 25px 54px;overflow-y:auto}.summary-panel{overscroll-behavior:contain;scrollbar-gutter:stable;padding:20px 18px 40px;overflow:hidden auto}.control-panel{border-right:1px solid var(--line)}.summary-panel{border-left:1px solid var(--line)}.panel-heading p,.eyebrow{letter-spacing:.14em;color:#6f6c66;margin:0 0 9px;font-size:11px;font-weight:800}.panel-heading h1{letter-spacing:-.05em;margin:0;font-size:34px;line-height:.98}.panel-heading span{color:#69665f;max-width:310px;margin-top:15px;font-size:13px;line-height:1.55;display:block}.mobile-section{display:contents}.mobile-panel-title,.sheet-handle{display:none}.control-section{border-bottom:1px solid #ebe8e2;padding:18px 0}.control-section>label,.selection-title label{text-transform:uppercase;letter-spacing:.12em;color:#5d5b56;margin-bottom:10px;font-size:11px;font-weight:800;display:block}select,.text-row>input:first-child{background:#fff;border:1px solid #cfcac1;border-radius:4px;width:100%;height:48px;padding:0 14px}.pills{flex-wrap:wrap;gap:8px;display:flex}.pills button{background:#fff;border:1px solid #d7d2c9;border-radius:999px;padding:9px 14px;font-size:13px}.pills button.active{background:var(--ink);border-color:var(--ink);color:#fff}.pills button:disabled{cursor:not-allowed;opacity:.38}.upload-button{width:100%;height:50px;color:var(--ink);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:#fff;border:1px dashed #8c877f;border-radius:4px;justify-content:center;align-items:center;margin:0;font-size:11px;font-weight:800;display:flex}.hidden-file-input{display:none}.artwork-tabs{background:#efede8;border-radius:7px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:12px;padding:4px;display:grid}.artwork-tabs button{color:#716d66;background:0 0;border:0;border-radius:5px;height:34px;font-size:12px;font-weight:700}.artwork-tabs button.active{color:#111;background:#fff;box-shadow:0 1px 4px #00000017}.camera-design-button{color:#111;background:#fff;border:1px solid #d7d2c9;border-radius:7px;width:100%;min-height:42px;font-weight:750}.camera-design-button.active{border-color:var(--ink);background:var(--ink);color:#fff}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.gallery-card{text-align:left;background:#fff;border:1px solid #ddd8cf;border-radius:6px;padding:0;overflow:hidden}.gallery-card img{aspect-ratio:1;object-fit:cover;background:#f1efeb;width:100%;display:block}.gallery-card span{text-overflow:ellipsis;white-space:nowrap;padding:8px;font-size:11px;font-weight:650;display:block;overflow:hidden}.gallery-card .gallery-image{padding:0;position:relative;overflow:visible}.gallery-card .gallery-price{color:#fff;background:#1d1d1b;border-radius:999px;padding:4px 6px;font-size:10px;line-height:1;position:absolute;bottom:6px;right:6px}.gallery-card small{color:#77736d;padding:0 8px 8px;font-size:10px;display:block}.gallery-empty{color:#817c74;text-align:center;border:1px dashed #cbc6bd;border-radius:6px;flex-direction:column;grid-column:1/-1;gap:5px;margin:0;padding:24px 14px;font-size:11px;line-height:1.45;display:flex}.gallery-empty strong{color:#44413d;font-size:12px}.resolution-warning{color:#625844;background:#fffaf0;border:1px solid #d8c9a8;border-radius:8px;margin-top:14px;padding:14px}.resolution-warning.extreme{color:#68362e;background:#fff4f1;border-color:#d58b7c}.resolution-warning>strong{color:#332f28;margin-bottom:4px;font-size:13px;display:block}.resolution-warning>p{margin:0;font-size:11px;line-height:1.45}.resolution-warning ul{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.resolution-warning li{border-top:1px solid #62584429;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding-top:10px;display:grid}.resolution-warning li span{overflow-wrap:anywhere;min-width:0;font-size:11px;line-height:1.45}.resolution-warning li b,.resolution-warning li small{display:block}.resolution-warning li b{color:#39342b;margin-bottom:2px}.resolution-warning li small{color:#766d5d}.resolution-warning .replace-image-button{color:#35312b;white-space:nowrap;background:#fff;border:1px solid;border-radius:3px;min-height:34px;padding:7px 10px;font-size:11px;font-weight:750}.resolution-warning .resolution-block-message{border-top:1px solid #68362e33;margin-top:12px;padding-top:10px;font-weight:700}.microcopy{color:#88837a;margin:8px 0 0;font-size:11px;line-height:1.4}.production-error{color:#7b3024;overflow-wrap:anywhere;background:#fff4f1;border:1px solid #dca69b;border-radius:6px;margin:12px 0 0;padding:11px 12px;font-size:11px;font-weight:650;line-height:1.45}.standalone-followup-cta{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.standalone-followup-cta p{color:#656159;margin:0 0 9px;font-size:11px;line-height:1.45}.standalone-followup-cta a{border:1px solid var(--ink);width:100%;min-height:42px;color:var(--ink);text-align:center;border-radius:3px;justify-content:center;align-items:center;padding:9px 12px;font-size:12px;font-weight:750;line-height:1.3;text-decoration:none;display:flex}.standalone-followup-cta a+a{margin-top:8px}.standalone-followup-cta a:hover{background:#f3f1ed}.related-cart-design{color:#176c50;background:#eff9f4;border:1px solid #cfe5db;border-radius:4px;gap:9px;margin:14px 0 4px;padding:11px 12px;display:flex}.related-cart-design>span{font-weight:900}.related-cart-design p{flex-direction:column;flex:1;gap:3px;margin:0;font-size:11px;line-height:1.4;display:flex}.related-cart-design strong{color:#175d48}.related-cart-design a{color:#175d48;text-underline-offset:2px;font-weight:750;text-decoration:underline}.text-row{grid-template-columns:1fr 44px 54px;gap:7px;display:grid}.text-font-select{margin-bottom:8px}.text-row button{background:var(--ink);color:#fff;border:0;border-radius:4px}.colour-input{background:#fff;border:1px solid #cfcac1;width:44px;height:48px;padding:4px}.selection-title{justify-content:space-between;align-items:center;display:flex}.selection-title button{color:#a13d2d;background:0 0;border:0;font-size:12px}.range-label{grid-template-columns:56px 1fr;align-items:center;gap:10px;margin:11px 0 0!important;display:grid!important}.text-alignment{grid-template-columns:repeat(3,38px);gap:5px;margin-top:10px;display:grid}.text-alignment button{color:#555;background:#fff;border:1px solid #d5d0c8;border-radius:5px;place-items:center;width:38px;height:34px;padding:0;display:grid}.text-alignment button.active{color:#fff;background:#171717;border-color:#171717}.align-icon{flex-direction:column;align-items:center;gap:3px;width:21px;display:flex}.align-icon i{background:currentColor;border-radius:2px;width:21px;height:2px;display:block}.align-icon i:nth-child(2){width:14px}.align-icon.left{align-items:flex-start}.align-icon.right{align-items:flex-end}.curve-label{grid-template-columns:56px minmax(0,1fr) 28px}.curve-label output{color:#716c64;text-align:right;font-size:10px}.reset-curve{color:#555;background:#fff;border:1px solid #d5d0c8;border-radius:5px;margin-top:6px;padding:5px 9px;font-size:10px}.reset-curve:disabled{opacity:.4}.layer-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.layer-heading label{text-transform:uppercase;letter-spacing:.12em;color:#5d5b56;margin:0;font-size:11px;font-weight:800}.layer-heading span{color:#8a857d;font-size:10px}.layer-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.layer-list li{background:#fff;border:1px solid #ddd8cf;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:46px;display:grid;overflow:hidden}.layer-list li.selected{border-color:#171717;box-shadow:0 0 0 1px #171717}.layer-list li.locked{background:#f5f3ef}.layer-select{text-align:left;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;min-width:0;height:44px;padding:0 8px;display:grid}.layer-type{color:#635f58;letter-spacing:.05em;background:#ece9e3;border-radius:4px;place-items:center;width:31px;height:26px;font-size:8px;font-weight:850;display:grid}.layer-type.text{color:#08785e;background:#e8f5f1}.layer-type.collage{color:#c44a0c;background:#fff0e8}.layer-name{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650;overflow:hidden}.layer-actions{align-items:center;padding-right:5px;display:flex}.layer-actions button{color:#4f4b45;background:0 0;border:0;border-radius:4px;width:28px;height:34px;padding:0;font-size:15px}.layer-actions button:hover:not(:disabled){background:#efede8}.layer-actions button.layer-lock{font-size:13px}.layer-actions button.layer-lock[aria-pressed=true]{background:#e4e0d9}.layer-actions button:disabled{cursor:not-allowed;opacity:.22}.layer-actions button:last-child{color:#a13d2d;font-size:19px}.layer-empty{color:#817c74;text-align:center;border:1px dashed #cbc6bd;border-radius:6px;margin:0;padding:14px;font-size:11px;line-height:1.45}.collage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.collage-grid>button{color:#4f4b45;text-align:left;background:#fff;border:1px solid #d7d2c9;border-radius:6px;align-items:center;gap:8px;min-width:0;height:48px;padding:6px 8px;font-size:10px;font-weight:700;display:flex}.collage-grid>button:hover:not(:disabled){border-color:#171717}.collage-grid>button.active{color:#171717;border-color:#ff6b21;box-shadow:0 0 0 1px #ff6b21}.collage-grid>button:disabled{cursor:not-allowed;opacity:.35}.collage-icon{background:#f4f2ee;border:1px solid #c9c4bb;border-radius:3px;flex:none;gap:2px;width:30px;height:32px;padding:2px;display:grid}.collage-icon i{background:#777168;min-width:0;min-height:0;display:block}.collage-icon.two-columns{grid-template-columns:1fr 1fr}.collage-icon.two-rows{grid-template-rows:1fr 1fr}.collage-icon.three{grid-template:1fr 1fr/1fr 1fr}.collage-icon.three i:first-child{grid-column:1/-1}.collage-icon.four{grid-template:1fr 1fr/1fr 1fr}.collage-icon.dynamic{padding:0;display:block;position:relative;overflow:hidden}.collage-icon.dynamic i{box-sizing:border-box;border:1px solid #f4f2ee;position:absolute}.collage-icon.no-collage-icon{color:#777168;justify-content:center;align-items:center;font-size:20px;font-weight:500;line-height:1;display:flex}.collage-none{color:#786f66;cursor:pointer;background:0 0;border:0;font-size:10px;text-decoration:underline}.collage-drag-ghost{z-index:12;pointer-events:none;background:#fffffff0;border:2px solid #ff6b21;border-radius:8px;width:92px;padding:5px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 8px 24px #0000003d}.collage-drag-ghost img{object-fit:cover;opacity:.82;border-radius:4px;width:100%;height:62px;display:block}.collage-drag-ghost span{color:#26221e;text-align:center;padding-top:4px;font-size:9px;font-weight:800;display:block}.collage-editor-backdrop{z-index:80}.collage-editor{background:#fff;border-radius:18px;grid-template-columns:minmax(0,1.45fr) minmax(230px,.7fr);gap:20px;width:min(940px,100vw - 32px);max-height:calc(100vh - 32px);padding:26px;display:grid;position:relative;overflow:auto;box-shadow:0 28px 80px #00000052}.collage-editor-heading{grid-column:1/-1;padding-right:44px}.collage-editor-heading p{color:#08a680;letter-spacing:.14em;margin:0 0 5px;font-size:10px;font-weight:850}.collage-editor-heading h2{margin:0 0 5px;font-size:25px}.collage-editor-heading span{color:#736d65;font-size:12px}.collage-editor canvas{cursor:grab;touch-action:none;background:#e9e6df;border-radius:10px;align-self:start;width:100%}.collage-editor canvas:active{cursor:grabbing}.collage-editor-controls{flex-direction:column;gap:17px;display:flex}.collage-nudge{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.stand-background-control>div{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.stand-background-control input[type=color]{cursor:pointer;background:#fff;border:1px solid #d5d0c8;border-radius:6px;width:44px;height:40px;padding:3px}.stand-background-control output{letter-spacing:.04em;font-size:12px;font-weight:750}.stand-background-control button{color:#171717;cursor:pointer;background:#fff;border:1px solid #d5d0c8;border-radius:999px;min-height:38px;padding:0 14px;font-weight:750}.collage-nudge button,.collage-editor-actions button{cursor:pointer;background:#fff;border:1px solid #d5d0c8;border-radius:6px;min-height:38px;font-weight:750}.collage-editor-actions{gap:8px;margin-top:auto;display:grid}.collage-editor-actions .danger{color:#b42318}.collage-editor-actions .primary{color:#fff;background:#171717;border-color:#171717}@media (width<=700px){.collage-editor{grid-template-columns:1fr;padding:20px}.collage-editor-heading{grid-column:auto}}.collage-cell-toolbar{z-index:8}.preview-panel{background:radial-gradient(circle at 50% 44%,#fff 0,#f1efea 46%,#e5e2db 100%);justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.preview-caption{z-index:6;flex-direction:column;gap:4px;display:flex;position:absolute;top:20px;left:24px}.preview-caption span{letter-spacing:.17em;color:var(--green);font-size:10px;font-weight:850}.preview-caption strong{font-size:13px;font-weight:600}.phone-stage{aspect-ratio:1;flex:none;width:min(73vh,660px,88%);position:relative}.product-layer,.design-layer{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.standalone-camera-protector .phone-stage{width:min(78vh,710px,94%);transform:translate(var(--camera-preview-shift-x,0),var(--camera-preview-shift-y,0)) scale(var(--camera-preview-zoom,2));transform-origin:var(--camera-preview-focus-x,50%) var(--camera-preview-focus-y,20%);transition:transform .22s}.preview-zoom-controls{z-index:10;background:#fffffff0;border:1px solid #d4d0c8;border-radius:999px;grid-template-columns:repeat(3,50px);display:grid;position:absolute;top:20px;right:24px;overflow:hidden;box-shadow:0 5px 18px #1414141a}.preview-zoom-controls button{color:#24211e;cursor:pointer;background:0 0;border:0;border-right:1px solid #ddd8d0;height:36px;padding:0;font-size:11px;font-weight:800}.preview-zoom-controls button:last-child{border-right:0}.preview-zoom-controls button.active{color:#fff;background:#24211e}.design-layer{touch-action:none;z-index:2}.inline-text-editor{z-index:8;transform-origin:50%;background:#fffffffa;border:2px solid #ff6b21;border-radius:9px;grid-template-columns:minmax(0,1fr) 38px 38px;gap:4px;min-width:220px;padding:6px;display:grid;position:absolute;box-shadow:0 10px 32px #14141433}.inline-text-editor input{color:#111;background:#fff;border:1px solid #d6d1c8;border-radius:5px;min-width:0;height:38px;padding:0 10px;font-size:16px}.inline-text-editor button{color:#fff;background:#171717;border:0;border-radius:5px;width:38px;height:38px;padding:0;font-size:18px}.inline-text-editor button:last-child{color:#8e2f22;background:#eeeae4}.bumper-layer{z-index:3;pointer-events:none}.object-toolbar{z-index:5;background:#fffffff5;border-radius:999px;gap:4px;padding:8px;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 8px 30px #14141426}.object-toolbar button{color:#111;background:0 0;border:0;border-radius:999px;place-items:center;width:42px;height:38px;font-size:20px;display:grid}.object-toolbar button:hover{background:#f0eee9}.preview-hint{color:#746f67;margin:0;font-size:10px;position:absolute;bottom:16px}.print-boundary-notice{z-index:6;color:#625d55;background:#ffffffeb;border:1px solid #d8d3ca;border-radius:6px;align-items:flex-start;gap:8px;width:min(360px,45%);padding:10px 12px;display:flex;position:absolute;bottom:28px;right:24px;box-shadow:0 5px 20px #14141414}.print-boundary-notice span{color:#ff6b21;font-size:22px;font-weight:800;line-height:1}.print-boundary-notice p{margin:0;font-size:10px;line-height:1.45}.summary-panel h2{letter-spacing:-.04em;margin:0 0 14px;font-size:21px}dl{margin:0}dl div{border-top:1px solid #e7e3dc;justify-content:space-between;gap:10px;padding:8px 0;font-size:11px;line-height:1.25;display:flex}dt{color:#78736c}dd{margin:0;font-weight:650}.assurance{background:#eff9f5;gap:9px;margin-top:13px;padding:10px;display:flex}.summary-panel>.assurance{display:none}.summary-panel:has(.confirmed)>.assurance{display:flex}.assurance span{color:var(--green);font-weight:900}.assurance p{color:#5d625e;margin:0;font-size:11px;line-height:1.45}.assurance strong{color:#183f35;font-size:12px;display:block}.confirm-button,.confirmed button{background:var(--ink);color:#fff;border:0;border-radius:3px;width:100%;min-height:42px;margin-top:12px;font-size:12px;font-weight:750}.confirm-button:disabled{color:#8f8b84;cursor:not-allowed;background:#d3d0ca}.confirmed{border-top:2px solid var(--ink);margin-top:13px;padding-top:11px}.confirmed>p:first-child{margin:0 0 7px;font-weight:800}.confirmed code{color:#666;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px;font-size:9px;display:block;overflow:hidden}.confirmed button+button,.confirmed .view-board-button{color:var(--ink);border:1px solid var(--ink);background:#fff;margin-top:8px}.confirmed .view-board-button.active{background:var(--ink);color:#fff}.confirmed-board-previews{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:8px;display:grid}.confirmed .board-preview-button{justify-content:center;align-items:center;width:100%;min-height:38px;margin:0;padding:6px 4px;font-size:0;display:flex}.confirmed .board-preview-button:first-child:after{content:"Board 1";font-size:11px}.confirmed .board-preview-button:nth-child(2):after{content:"Board 2";font-size:11px}.confirmed .board-preview-button:nth-child(3):after{content:"Board 3";font-size:11px}.confirmed .camera-preview-button{clear:both;justify-content:center;align-items:center;width:100%;min-height:42px;margin:8px 0 0;padding:7px 10px;font-size:11px;display:flex}.confirmed .confirm-button{clear:both;width:100%;margin-bottom:10px;display:block;position:relative;top:10px}.confirmed .cart-success-status{clear:both;color:#fff;text-align:center;-webkit-font-smoothing:antialiased;background:#00a97a;border-radius:3px;justify-content:center;align-items:center;width:100%;min-height:42px;margin:22px 0 10px;font-size:12px;font-weight:750;line-height:1;display:flex}.mobile-nav{display:none}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0a0a6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.upload-consent-modal{background:#fff;border:1px solid #d8dde0;border-radius:12px;width:min(620px,100%);padding:42px;position:relative;box-shadow:0 22px 80px #00000038}.modal-close{background:#f3f2ef;border:0;border-radius:50%;width:34px;height:34px;font-size:24px;line-height:1;position:absolute;top:16px;right:18px}.consent-intro{color:#29343b;max-width:520px;margin:0 0 28px;font-size:21px;line-height:1.45}.consent-check{color:#29343b;cursor:pointer;grid-template-columns:28px 1fr;align-items:start;gap:16px;font-size:18px;font-weight:750;line-height:1.45;display:grid}.consent-check input{appearance:none;background:#fff;border:2px solid #1689b8;border-radius:6px;width:28px;height:28px;margin:2px 0 0}.consent-check input:checked{background:#0788bc;box-shadow:inset 0 0 0 6px #0788bc}.consent-check input:checked:after{content:"✓";color:#fff;text-align:center;font-size:19px;line-height:23px;display:block}.consent-check a{color:inherit;text-underline-offset:2px;text-decoration:underline}.consent-upload{color:#fff;white-space:nowrap;background:#ff6100;border:0;border-radius:999px;min-width:250px;height:58px;margin:28px 0 0 auto;padding:0 32px;font-size:20px;font-weight:800;display:block}.consent-upload:disabled{cursor:not-allowed;background:#d9d5cf}.design-locked .control-panel{pointer-events:none;opacity:.52}.design-locked .phone-stage .design-layer{pointer-events:none}.edit-design-button{clear:both;color:#111;background:#fff;border:1px solid #111;width:100%;min-height:44px;margin:0 0 20px;font-weight:800;display:block;position:relative;top:16px}.studio-loading{z-index:100;text-align:center;background:#f8f7f4;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.studio-loading strong{letter-spacing:-.025em;margin-top:22px;font-size:20px}.studio-loading p{color:#77736c;margin:7px 0 0;font-size:12px}.studio-loading.preview-loading{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#f8f7f4c2}.preview-loading .loading-mark span{background:#f8f7f4f0}.loading-mark{border:2px solid #171717;border-radius:18px;width:66px;height:82px;position:relative}.loading-mark:before{content:"";border:1px solid #bdb8ae;border-radius:11px;position:absolute;inset:10px}.loading-mark span{background:#f8f7f4;border:2px solid #171717;border-radius:50%;width:16px;height:16px;animation:1s ease-in-out infinite alternate loading-pulse;position:absolute;top:7px}.loading-mark span:first-child{left:8px}.loading-mark span:nth-child(2){animation-delay:.2s;top:16px;left:27px}.loading-mark span:nth-child(3){animation-delay:.4s;top:26px;left:8px}@keyframes loading-pulse{to{opacity:.35;transform:scale(.72)}}@media (width<=1050px){.studio-grid{grid-template-columns:minmax(280px,320px) minmax(390px,1fr) minmax(230px,260px)}.summary-panel{padding:16px 14px}.summary-panel h2{font-size:18px}}@media (width<=700px){.print-boundary-notice{width:calc(100% - 28px);bottom:42px;right:14px}}@media (width<=720px){html,body{height:100%;min-height:0;overflow:hidden}.studio-shell{grid-template-rows:62px minmax(0,1fr);height:100dvh;min-height:0;display:grid;overflow:hidden}.topbar{height:62px;padding:0 18px}.step-label,.quiet-button{display:none}.topbar-actions{gap:0}.studio-grid{min-height:0;display:block;position:relative;overflow:hidden}.preview-panel{inset:0 0 calc(76px + env(safe-area-inset-bottom));height:auto;min-height:0;padding-bottom:0;transition:padding-bottom .2s;position:absolute}.studio-shell:not([data-mobile-panel=closed]) .preview-panel{padding-bottom:min(var(--mobile-sheet-height,30dvh),30dvh)}.preview-caption{top:14px;left:16px}.preview-zoom-controls{grid-template-columns:36px 52px 36px;top:12px;right:12px}.preview-hint{text-align:center;width:100%;padding:0 16px;top:50%;bottom:auto}.control-panel,.summary-panel{z-index:12;right:0;bottom:calc(76px + env(safe-area-inset-bottom));width:100%;height:var(--mobile-sheet-height,30dvh);overscroll-behavior:contain;border:1px solid var(--line);border-width:1px 0 0;border-radius:20px 20px 0 0;min-height:30dvh;max-height:calc(100% - 8px);transition:transform .25s;position:absolute;left:0;overflow-y:auto;transform:translateY(110%);box-shadow:0 -12px 38px #0000001f}.control-panel{padding:44px 18px 34px}.summary-panel{padding:50px 20px calc(36px + env(safe-area-inset-bottom))}.summary-panel .eyebrow{margin-top:0}.summary-panel dl div{align-items:flex-start;gap:16px;padding:10px 0}.summary-panel dt{flex:0 0 42%}.summary-panel dd{overflow-wrap:anywhere;text-align:right;min-width:0;max-width:58%}.summary-panel .confirm-button{min-height:50px;margin-top:18px}.sheet-handle{touch-action:none;z-index:24;cursor:ns-resize;background:#fff;border:0;border-radius:20px 20px 0 0;justify-content:center;align-items:center;width:100%;height:38px;padding:0;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.sheet-handle span{background:#aaa59d;border-radius:999px;width:44px;height:5px;display:block}.studio-shell[data-mobile-panel=product] .control-panel,.studio-shell[data-mobile-panel=design] .control-panel,.studio-shell[data-mobile-panel=artwork] .control-panel,.studio-shell[data-mobile-panel=review] .summary-panel{transform:translateY(0)}.mobile-section{display:none}.studio-shell[data-mobile-panel=product] .product-controls,.studio-shell[data-mobile-panel=design] .design-controls,.studio-shell[data-mobile-panel=artwork] .artwork-controls{display:block}.mobile-panel-title{border-bottom:1px solid #ebe8e2;padding:2px 0 14px;display:block}.mobile-panel-title p{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:850}.mobile-panel-title span{color:#77736c;margin-top:4px;font-size:12px;display:block}.studio-shell[data-mobile-panel=design] .control-panel{overflow:hidden}.studio-shell[data-mobile-panel=design] .design-controls{overscroll-behavior:contain;height:100%;margin:0 -18px -34px;padding:88px 18px 34px;overflow-y:auto}.studio-shell[data-mobile-panel=artwork] .artwork-controls{min-height:100%}.studio-shell[data-mobile-panel=design] .board-selector{z-index:22;background:#fff;height:88px;margin:0;padding:8px 18px 9px;position:absolute;top:38px;left:0;right:0;overflow:hidden;box-shadow:0 8px 14px #12121212}.board-selector>label{margin-bottom:6px;font-size:10px}.board-selector .artwork-tabs{margin-bottom:0;padding:3px}.board-selector .artwork-tabs button{height:36px;min-height:36px}.artwork-tabs button{height:44px;min-height:44px}.pills button{min-height:44px;padding:10px 16px;position:relative}.pills button.active{box-shadow:inset 0 0 0 2px #fff,0 0 0 2px var(--ink)}.pills button.active:after{content:"✓";margin-left:7px;font-size:11px;font-weight:900;display:inline-block}.collage-grid>button.active,.artwork-tabs button.active,.camera-design-button.active{outline:2px solid var(--ink);outline-offset:1px}select,.text-row>input:first-child,.colour-input{min-height:48px}.text-row button{min-width:56px;min-height:48px}.selection-title button{border:1px solid #e3c5bf;border-radius:6px;min-width:64px;min-height:44px}.layer-list li{grid-template-columns:minmax(0,1fr);min-height:88px}.layer-select{width:100%;height:46px;padding:0 10px}.layer-name{white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.layer-actions{border-top:1px solid #eeeae4;justify-content:flex-end;min-height:42px;padding:0 7px 5px}.layer-actions button{width:42px;height:40px;font-size:18px}.range-label input{min-height:36px}.object-toolbar{overscroll-behavior-x:contain;scrollbar-width:none;gap:0;max-width:calc(100vw - 20px);padding:5px;overflow-x:auto}.object-toolbar::-webkit-scrollbar{display:none}.object-toolbar button{touch-action:manipulation;flex:0 0 46px;width:46px;height:46px}.design-layer{touch-action:none;-webkit-user-select:none;user-select:none}.mobile-nav{z-index:30;height:calc(76px + env(safe-area-inset-bottom));padding:4px 4px env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff7;border-top:1px solid #d7d3cb;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#77736c;touch-action:manipulation;background:0 0;border:0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:64px;padding:4px 2px 9px;font-size:11px;font-weight:750;line-height:1.15;display:flex;position:relative}.mobile-nav button span{letter-spacing:.12em;font-size:9px}.mobile-nav button.active{color:#111;background:#f1efeb}.mobile-nav button.active:after{content:"";background:#111;border-radius:999px;width:30px;height:3px;position:absolute;bottom:5px}.resolution-warning li{grid-template-columns:1fr}.resolution-warning .replace-image-button{width:100%;min-height:44px}.production-error{padding:12px 13px;font-size:12px}.panel-heading h1{font-size:36px}.phone-stage{width:min(94vw,560px);max-width:none}.upload-consent-modal{padding:34px 24px 26px}.consent-intro{font-size:18px}.consent-check{font-size:16px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
