@font-face{font-family:'Open Sauce Sans';src:url('/assets/fonts/OpenSauceSans-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Open Sauce Sans';src:url('/assets/fonts/OpenSauceSans-SemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Open Sauce Sans';src:url('/assets/fonts/OpenSauceSans-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Amsterdam One';src:url('/assets/fonts/AmsterdamOne.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--green:#173d32;--green-light:#e9eee6;--orange:#ff7817;--cream:#f8f7f1;--ink:#25372f;--muted:#6d776e;--line:#e1e5dc;--white:#fff;--red:#a43228;--radius:22px;font-family:'Open Sauce Sans',sans-serif;font-weight:400;font-style:normal;color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--cream);font-size:16px;line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:4px}input,textarea,select{color:var(--ink);accent-color:var(--green)}input:not([type=checkbox]):not([type=radio]),textarea,select{width:100%;border:1px solid #dce1d8;border-radius:10px;padding:13px 15px;background:#fbfcf9;min-height:50px;transition:border-color .18s,box-shadow .18s}input:focus,textarea:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #173d320a;outline:none}input::placeholder,textarea::placeholder{color:#99a095}textarea{resize:vertical;min-height:96px}input[type=checkbox]{width:22px;height:22px;flex-shrink:0;cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600;letter-spacing:-.045em;line-height:1.12}h2{font-size:32px;margin-bottom:14px}h3{font-size:22px}.icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:13px 22px;border-radius:10px;font-size:15px;font-weight:600;border:1px solid transparent;transition:background .18s,transform .18s}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{background:var(--green);color:#fff}.button.primary:hover:not(:disabled){background:#22533f}.button.secondary{background:#fff;border-color:var(--line);color:var(--green)}.button.secondary:hover{background:#f2f5ed}.button.full{width:100%}.button.small{min-height:42px;padding:9px 14px;font-size:13px}.text-button{background:none;border:0;padding:9px 0;min-height:44px;display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:14px;font-weight:600}.icon-button{border:1px solid var(--line);background:transparent;border-radius:50%;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:.16em;line-height:1.5}.serif-word{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400}.muted{color:var(--muted);font-size:13px}.brand{display:inline-flex;gap:10px;align-items:center;font-size:24px;font-weight:700;letter-spacing:.045em;line-height:1.05}.brand img{border-radius:50%;object-fit:cover}.brand-small{display:block;font-size:8px;font-weight:600;letter-spacing:.27em;margin-top:6px}.site-header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:24px 54px;border-bottom:1px solid var(--line)}.header-right{display:flex;gap:18px;align-items:center}.header-tag{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:9px}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);display:inline-block}.studio-layout{max-width:1310px;margin:0 auto;padding:40px 64px 34px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr);gap:64px;align-items:start}.studio-intro{padding-top:3px}.studio-intro>.eyebrow{display:flex;align-items:center;gap:10px;font-size:9px;color:#607364}.tiny-line{display:block;width:25px;height:1px;background:var(--green)}.studio-intro h1{position:relative;display:inline-block;font-size:66px;line-height:1.01;letter-spacing:-.055em;margin:19px 0 18px;color:var(--green)}.hero-spark{position:absolute;right:-64px;bottom:7px;width:39px;height:39px;stroke:var(--orange);stroke-width:3;transform:rotate(12deg)}.intro-copy{font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:18px;max-width:410px}.preview-stage{position:relative;min-height:405px;height:44vh;max-height:470px;min-width:0;background:#e8eddf;border-radius:20px;display:flex;align-items:center;justify-content:center;overflow:hidden;background-image:radial-gradient(ellipse at center,#f1f3e9 0,transparent 70%)}.preview-stage:after{content:'';position:absolute;bottom:36px;width:250px;height:18px;border-radius:50%;background:#102c2426;filter:blur(13px)}.preview-switch{position:absolute;top:16px;left:50%;transform:translateX(-50%);border-radius:24px;padding:4px;background:#ffffffa6;display:flex;gap:2px;z-index:2;white-space:nowrap}.preview-switch button{border:0;background:transparent;font-size:11px;padding:9px 15px;border-radius:24px;min-height:36px}.preview-switch button.active{background:var(--green);color:#fff}.preview-object{position:relative;z-index:1;width:205px;margin-top:34px;transform:rotate(-5deg);transition:transform .3s;filter:drop-shadow(9px 11px 8px #193b3222)}.label-holder{width:100%;overflow:hidden;border-radius:2px}.label-holder canvas,.label-holder>img{display:block;width:100%;height:auto;aspect-ratio:102/152}.preview-object .bag-fold,.preview-object .bag-bottom{display:none}.preview-object.on-bag{width:242px;min-height:327px;background:linear-gradient(94deg,#151e1b,#36413b 18%,#252e29 62%,#111b16);padding:49px 26px 30px;border-radius:6px 6px 13px 13px;transform:rotate(-5deg);clip-path:polygon(3% 0,97% 0,100% 95%,96% 100%,4% 100%,0 95%)}.preview-object.on-bag .label-holder{width:100%;margin:0 auto}.bag-fold{position:absolute;top:13px;left:3%;width:94%;height:8px;border-top:2px solid #8b91864d;border-bottom:1px solid #080d0a;box-shadow:0 8px 0 #19221c88}.bag-bottom{position:absolute;bottom:0;left:5%;width:90%;height:17px;border-top:1px solid #5a65584d;background:linear-gradient(175deg,transparent,#070e0a);border-radius:0 0 15px 15px}.preview-object.on-bag .bag-fold,.preview-object.on-bag .bag-bottom{display:block}.preview-sticker{position:absolute;right:27px;top:40%;background:#fff9e5;border-radius:50%;width:81px;height:81px;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:13px;line-height:1.3;display:flex;flex-direction:column;justify-content:center;transform:rotate(10deg);z-index:2;box-shadow:0 3px 8px #00000005}.preview-sticker b{font-size:18px;font-weight:400}.preview-caption{position:absolute;bottom:14px;font-size:8px;letter-spacing:.16em;color:#62725d;z-index:2}.coffee-notes{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 1px;font-size:10px;color:#6a776b}.coffee-notes>span{display:flex;align-items:center;gap:6px}.coffee-notes .icon{width:15px;height:15px}.designer-card{background:#fff;border:1px solid #e5e7de;border-radius:24px;padding:30px 32px;box-shadow:0 8px 40px #213d3110;align-self:start}.steps{list-style:none;padding:0;display:flex;justify-content:space-between;gap:10px;margin:0 0 31px;padding-bottom:23px;border-bottom:1px solid var(--line);font-size:11px;color:#92998e}.steps li{display:flex;align-items:center;gap:7px;white-space:nowrap}.steps li>span{display:flex;align-items:center;justify-content:center;background:#f1f3ed;border-radius:50%;font-size:10px;width:23px;height:23px}.steps li.current{color:var(--green);font-weight:600}.steps li.current>span,.steps li.done>span{background:var(--green);color:white}.form-heading .eyebrow{color:#8c9789;font-size:9px;margin-bottom:10px}.form-heading h2{font-size:37px;margin-bottom:10px;letter-spacing:-.05em}.form-heading>p{color:var(--muted);font-size:12px;margin-bottom:26px}.form-field{margin-bottom:20px}.form-field label,.field-label{font-weight:600;font-size:13px;display:block;margin-bottom:8px}.field-heading{display:flex;align-items:center;justify-content:space-between}.counter{font-size:10px;color:#89917f}.field-help{display:block;font-size:11px;color:var(--muted);margin-top:6px}.suggestions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.suggestions button{border:1px solid #e6e9df;border-radius:20px;padding:6px 11px;background:#fff;color:#737e6d;font-size:10px;min-height:33px}.suggestions button:hover{background:#eff4e9;border-color:#bbccae}.upload-label{border:1px dashed #cbd5c4;border-radius:10px;padding:16px 14px;display:flex!important;align-items:center;gap:13px;font-weight:400!important;background:#f9fbf5;cursor:pointer;min-height:84px}.upload-label>.icon{width:29px;height:29px;color:#71846a}.upload-label strong{display:block;font-size:12px;font-weight:600}.upload-label small{display:block;color:#87917e;font-size:10px;margin-top:3px}.upload-label img{width:42px;height:42px;object-fit:contain;border-radius:4px}.file-input{position:absolute;width:1px!important;height:1px;overflow:hidden;opacity:0;padding:0!important;min-height:0!important}.file-input:focus-visible+.upload-label{outline:3px solid var(--orange)}.remove-image{font-size:11px;padding-top:0;min-height:28px}.optional-label{font-size:10px;font-weight:400;color:#8d9686;margin-left:6px}.form-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin:25px 0 22px;padding-top:21px;gap:10px}.form-bottom small{display:block;font-size:10px;color:var(--muted)}.form-bottom .field-label{margin-bottom:3px}.quantity-control{display:flex;align-items:center;border:1px solid #e0e5d8;border-radius:9px;overflow:hidden}.quantity-control button{width:39px;min-height:43px;border:0;background:#f8faf5;font-size:20px}.quantity-control output{min-width:32px;text-align:center;font-size:14px;font-weight:600}.fine-print{font-size:10px;color:#8c9487;text-align:center;margin:13px 0 0;display:flex;align-items:center;justify-content:center;gap:6px;line-height:1.6}.fine-print .icon{width:12px;height:12px}.site-footer{max-width:1310px;margin:auto;padding:12px 64px 24px;display:flex;justify-content:space-between;gap:20px;align-items:center;color:#929a8d;font-size:9px;letter-spacing:.06em}.site-footer>span:first-child{font-family:Georgia,serif;font-style:italic;font-size:13px;letter-spacing:0}.site-footer a{display:flex;align-items:center;gap:5px}.site-footer .icon{width:12px;height:12px}.footer-dot{padding:0 10px}.inline-error{border:1px solid #f3d2c9;background:#fff4ef;color:#9c3829;font-size:13px;padding:13px;border-radius:10px}.connection-banner{background:#fff0cd;color:#715922;padding:12px 24px;text-align:center;font-size:13px}.review-panel .back-button{font-size:12px;padding-top:0;margin-bottom:18px}.review-panel .form-heading h2{font-size:48px}.review-summary{background:#f5f7ef;border-radius:13px;padding:18px 20px;margin:23px 0}.review-summary>div{display:flex;justify-content:space-between;gap:18px;padding:8px 0;font-size:12px}.review-summary>div>span{color:var(--muted);flex-shrink:0}.review-summary strong{text-align:right;word-break:break-word;font-weight:600}.check-card{display:flex;align-items:flex-start;gap:12px;padding:18px 0;font-size:12px;line-height:1.6;cursor:pointer}.check-card input{margin:2px 0}.save-notice{font-size:12px;color:var(--muted);display:flex;align-items:flex-start;gap:10px;margin:11px 0 25px}.save-notice .icon{width:18px;margin-top:1px}.success-panel{text-align:center;padding:15px 0}.success-icon{display:flex;align-items:center;justify-content:center;width:68px;height:68px;background:#edf4e6;color:var(--green);border-radius:50%;margin:5px auto 22px}.success-icon .icon{width:32px;height:32px}.success-panel>.eyebrow{color:#8b987f;font-size:9px;margin-bottom:18px}.success-panel h2{font-size:49px}.success-panel>p{font-size:13px;line-height:1.7;color:var(--muted)}.order-ticket{border:1px dashed #aebfa0;background:#f5f8f0;border-radius:12px;padding:24px 14px;display:flex;flex-direction:column;align-items:center;margin:25px 0}.order-ticket>span{font-size:9px;letter-spacing:.14em;color:#839174}.order-ticket strong{font-size:26px;margin:9px 0;font-weight:600}.order-ticket small{font-size:11px;color:#738166}.success-panel>.button{margin:5px 0}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);padding:14px 22px;background:var(--green);color:#fff;border-radius:12px;box-shadow:0 10px 30px #0002;font-size:14px;z-index:30;max-width:90vw}.loading-state{display:flex;align-items:center;justify-content:center;gap:12px;min-height:160px;color:var(--muted);font-size:14px}.spinner{width:20px;height:20px;border:2px solid #d7e1d0;border-top-color:var(--green);border-radius:50%;display:inline-block;animation:spin .8s linear infinite}.skip-link{position:fixed;left:12px;top:-80px;background:var(--green);color:white;padding:12px 20px;z-index:100}.skip-link:focus{top:12px}.login-page{min-height:100svh;display:grid;place-items:center;background:radial-gradient(ellipse at 20% 10%,#e5ecdc,transparent 60%),var(--cream);padding:30px 20px}.login-card{width:100%;max-width:460px;padding:42px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 20px 65px #173d3210}.login-card>.brand{margin-bottom:40px}.login-card>.eyebrow{font-size:9px;margin-bottom:15px;color:#8a967f}.login-card h1{font-size:47px;color:var(--green)}.login-card>p{font-size:14px;color:var(--muted);margin-bottom:27px}.login-card .text-button{margin-top:15px;font-size:12px}.login-card form{margin-top:22px}
.admin-page{background:#f5f6f0}.admin-sidebar{position:fixed;top:0;bottom:0;left:0;width:226px;background:var(--green);color:#eef3e7;padding:30px 20px;display:flex;flex-direction:column;z-index:10}.admin-sidebar>.brand{font-size:24px;margin:3px 10px 43px}.admin-sidebar .brand-small{font-size:7px;letter-spacing:.22em}.sidebar-label{font-size:8px;color:#88a391;letter-spacing:.15em;margin:0 13px 16px}.admin-sidebar nav{display:flex;flex-direction:column;gap:7px}.nav-item{color:#b5c7b8;border:0;background:transparent;text-align:left;display:flex;align-items:center;gap:11px;padding:13px 14px;min-height:47px;border-radius:8px;font-size:12px;width:100%}.nav-item .icon{width:18px;height:18px}.nav-item.active{background:#ffffff12;color:white}.nav-item:hover{background:#ffffff0b;color:white}.nav-count{margin-left:auto;border-radius:5px;font-size:9px;padding:1px 5px;background:#cfddbb;color:var(--green)}.sidebar-bottom{margin-top:auto;padding-top:40px}.sidebar-bottom .nav-item{font-size:11px}.sidebar-bottom .nav-item>.icon:last-child:not(:first-child){width:12px;margin-left:auto}.sidebar-note{font-size:12px;color:#6c947e;display:block;margin:25px 14px 0;font-family:Georgia,serif;font-style:italic;line-height:1.5}.admin-main{margin-left:226px;padding:36px 40px;max-width:1700px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.admin-header .eyebrow{color:#939d8b;font-size:9px;margin-bottom:10px}.admin-header h1{font-size:34px;margin:0}.admin-header .button{font-size:12px;min-height:44px;padding:10px 16px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid var(--line);padding:21px 23px;border-radius:13px;min-width:0}.stat-card>span{font-size:11px;color:#75816c;display:flex;align-items:center;justify-content:space-between;gap:6px}.stat-card .icon{width:16px;height:16px;color:#92a184}.stat-card strong{display:block;font-size:39px;font-weight:600;line-height:1.2;margin:15px 0 6px;letter-spacing:-.04em}.stat-card small{font-size:9px;color:#929d88}.stat-card.accent{background:#e9efdf;border-color:#dce6cf}.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:25px 27px;margin-bottom:23px;min-width:0}.panel h2{font-size:22px;margin-bottom:15px;line-height:1.2}.panel h3{font-size:20px}.panel .eyebrow{color:#91a180;font-size:9px;margin-bottom:7px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.panel-title h2{margin:0;font-size:18px}.panel-title .text-button{font-size:11px;min-height:32px;white-space:nowrap}.panel-copy{font-size:13px;line-height:1.7;color:var(--muted);max-width:790px}.overview-columns{display:grid;grid-template-columns:1fr 1fr;gap:23px}.station-panel{position:relative;padding-bottom:22px}.station-illustration{color:#7f9272;float:left;margin:7px 24px 6px 0;background:#f1f5e9;border-radius:15px;width:90px;height:93px;display:flex;justify-content:center;align-items:center}.station-illustration .icon{width:54px;height:54px;stroke-width:1.2}.station-panel h3{font-size:19px;padding-top:10px;margin:0 0 8px}.station-panel>p{font-size:11px;color:var(--muted);margin:0 0 20px;line-height:1.6}.station-meta{clear:both;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:11px;color:var(--muted)}.station-meta strong{font-weight:600;color:var(--green)}.station-panel>.text-button{font-size:11px;padding-bottom:0;margin-top:6px}.status-pill{font-size:9px;display:inline-flex;align-items:center;gap:5px;background:#edf1e6;color:#657a54;border-radius:6px;padding:5px 8px;white-space:nowrap;font-weight:600}.status-pill.warning{background:#fff0d3;color:#9b7228}.status-pill.danger{background:#ffebe6;color:#b14b3b}.status-pill.neutral{background:#f0f1ec;color:#8a9283}.status-pill.good{background:#e8f3e3;color:#4f7c44}.status-pill:before{content:'';width:4px;height:4px;border-radius:50%;background:currentColor}.activity-list{max-height:243px;overflow:auto}.activity-row{display:flex;gap:12px;align-items:flex-start;padding:9px 0}.activity-dot{flex-shrink:0;width:23px;height:23px;border:1px solid #dfe7d6;border-radius:50%;display:grid;place-items:center;margin-top:1px;color:#8b9b7f}.activity-dot .icon{width:12px;height:12px}.activity-row p{font-size:11px;line-height:1.5;margin:0}.activity-row small{font-size:9px;color:#a1aa96}.empty-state{text-align:center;padding:30px 15px;color:#85927b;font-size:13px}.empty-state .icon{width:29px;height:29px;display:block;margin:0 auto 10px;color:#9da990}.table-wrapper{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px;white-space:nowrap}th{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#96a18d;font-weight:600;padding:11px 12px;background:#f9faf6}td{padding:16px 12px;border-bottom:1px solid #edf0e7;vertical-align:middle}td:first-child,th:first-child{padding-left:4px}td:last-child,th:last-child{padding-right:0}tr:last-child td{border-bottom:0}.table-job-name{max-width:190px;overflow:hidden;text-overflow:ellipsis;display:block;font-weight:600}.table-job-number{font-size:9px;color:#8d9882;display:block;margin-top:3px}.table-action{font-size:11px;color:var(--green);border:1px solid var(--line);border-radius:6px;padding:8px 10px;background:#fff;min-height:36px}.table-toolbar{display:flex;align-items:center;gap:15px;margin-bottom:20px}.search-input{position:relative;flex:1}.search-input>.icon{position:absolute;left:13px;top:14px;width:18px;height:18px;color:#9aa58f}.search-input input{padding-left:41px;font-size:12px;min-height:45px}.table-toolbar select{max-width:225px;font-size:12px;min-height:45px}.align-left{text-align:left;justify-content:flex-start}.field-setting{display:grid;grid-template-columns:minmax(200px,1fr) minmax(230px,1.1fr);gap:28px;border-top:1px solid var(--line);padding:25px 0}.field-setting>label{display:flex;align-items:flex-start;gap:13px;cursor:pointer}.field-setting>label strong{display:block;font-size:14px;margin-top:1px}.field-setting>label small{display:block;margin-top:5px;font-size:11px;color:#8b9780}.field-setting input[type=checkbox]{margin-top:1px}.field-setting .form-field{margin-bottom:12px}.field-setting .form-field label{font-size:10px;color:#7a886e}.field-setting .form-field:last-child{margin-bottom:0}.field-setting .max-chars{display:flex;align-items:center;gap:14px}.field-setting .max-chars input{max-width:84px;min-height:40px;padding:7px 12px;font-size:12px}.field-setting .max-chars label{margin:0;font-size:10px;color:#87947b}.settings-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;margin-top:12px}.settings-footer .muted{font-size:11px}.compact-note{display:flex;align-items:center;gap:18px;background:#eef2e7;border-color:#dfe7d6}.compact-note p{font-size:12px;margin:0;color:#708062}.compact-note>.icon{color:#90a27b}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 23px;margin-top:25px}.span-2{grid-column:span 2}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);cursor:pointer}.toggle-row strong{display:block;font-size:13px;font-weight:600}.toggle-row small{display:block;font-size:11px;color:#859379;margin-top:5px;max-width:580px}.toggle-row input{appearance:none;-webkit-appearance:none;width:43px;height:25px;border-radius:20px;background:#d7dfd0;position:relative;flex-shrink:0;border:1px solid transparent}.toggle-row input:before{content:'';position:absolute;left:3px;top:3px;border-radius:50%;width:17px;height:17px;background:white;transition:transform .15s}.toggle-row input:checked{background:var(--green)}.toggle-row input:checked:before{transform:translateX(17px)}.detail-list{font-size:12px}.detail-list>div{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:1px solid var(--line);padding:12px 0}.detail-list dt{color:var(--muted);flex-shrink:0}.detail-list dd{margin:0;text-align:right;word-break:break-word}.printer-detail-icon{display:flex;align-items:center;justify-content:center;background:#f3f7ed;border-radius:18px;max-width:280px;height:155px;margin:22px auto 25px;color:#7f966d}.printer-detail-icon .icon{width:92px;height:92px;stroke-width:1}.notice{padding:15px;background:#fbf7eb;border:1px solid #f1e8d0;border-radius:9px;font-size:11px;color:#8d7e59;line-height:1.7;margin:20px 0}.setup-steps{padding-left:22px;font-size:12px;line-height:1.8;color:#748269;margin:24px 0}.setup-steps li{padding:0 0 15px 9px}.setup-steps li::marker{font-weight:600;color:var(--green)}#section-printer .button.full{margin-bottom:12px}.token-box{border:1px solid #a2b98b;background:#f3f8ed;border-radius:10px;padding:15px;margin-bottom:15px}.token-box label{display:block;font-size:11px;margin-bottom:8px}.token-box input{font-family:monospace;font-size:11px;min-height:43px}.token-box .text-button{font-size:11px}.danger{color:var(--red)}.job-dialog{padding:30px;width:calc(100% - 32px);max-width:750px;max-height:90svh;border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 90px #0003;color:var(--ink)}.job-dialog::backdrop{background:#112b2399;backdrop-filter:blur(3px)}.dialog-close{position:absolute;top:15px;right:15px;z-index:2;background:white}.job-detail-grid{display:grid;grid-template-columns:220px 1fr;gap:30px;margin-top:25px}.job-detail-image{background:#e9eedf;padding:18px;border-radius:10px;display:flex;align-items:center;justify-content:center}.job-detail-image img{max-width:100%;height:auto;display:block}.job-detail-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.job-detail-actions .button{font-size:12px;min-height:45px}.job-dialog h2{padding-right:40px;font-size:26px;margin-bottom:8px}.job-dialog .detail-list{font-size:11px}.job-dialog .detail-list>div{display:block;padding:8px 0}.job-dialog .detail-list dd{text-align:left;font-size:13px;margin-top:4px}.handbook{max-width:820px;margin:auto;padding:45px 30px 80px}.handbook>.text-button{margin-bottom:40px}.handbook h1{font-size:66px;color:var(--green);margin:17px 0 50px}.handbook section{padding:26px 0;border-top:1px solid var(--line)}.handbook h2{font-size:24px}.handbook p{font-size:15px;line-height:1.9;color:#66745d}.handbook code,.handbook pre{background:#eaf0e1;font-size:12px;padding:4px 6px;border-radius:4px;overflow:auto}.handbook pre{padding:18px}.handbook a:not(.text-button){text-decoration:underline}
.display-page{background:var(--orange);color:#263c2d}.display-poster{width:100%;min-height:100svh;max-width:1080px;margin:0 auto;padding:5.2vh 7vw 2.8vh;display:flex;flex-direction:column;overflow:hidden}.display-poster>.brand{font-size:clamp(25px,4vw,48px);gap:17px;margin-bottom:4.3vh}.display-poster .brand-small{font-size:clamp(9px,1.25vw,16px);letter-spacing:.35em}.display-poster .brand img{width:clamp(50px,8vw,90px);height:auto}.display-kicker{font-size:clamp(9px,1.4vw,19px);letter-spacing:.18em;font-weight:600;margin-bottom:2vh}.display-poster h1{font-size:clamp(50px,9.7vw,112px);letter-spacing:-.065em;line-height:1.02;margin-bottom:2.2vh}.display-poster h1 .serif-word{color:#fff9eb}.display-message{font-size:clamp(16px,2.4vw,29px);margin-bottom:0}.display-product{height:44vh;min-height:400px;position:relative;display:flex;align-items:center;justify-content:center}.display-bag{position:relative;width:clamp(220px,40vw,440px);padding:54px 47px 42px;transform:rotate(-8deg);background:linear-gradient(96deg,#141e18,#384039 17%,#252b23 68%,#121b14);border-radius:7px 7px 20px 20px;box-shadow:25px 45px 30px #88420952;z-index:2}.display-bag>img{display:block;width:100%;height:auto}.display-bag .bag-fold{height:11px;top:18px}.display-bag .bag-bottom{height:24px}.display-stamp{position:absolute;left:-2%;top:19%;width:clamp(90px,16vw,173px);height:clamp(90px,16vw,173px);border-radius:50%;background:#fff7df;display:flex;align-items:center;justify-content:center;transform:rotate(-17deg);font-size:clamp(13px,2vw,24px);line-height:1.4;letter-spacing:.04em;font-weight:700;z-index:3}.display-orbit{position:absolute;width:110%;height:70%;border:1px solid #f4b477;border-radius:50%;transform:rotate(-18deg)}.orbit-two{width:90%;height:85%;transform:rotate(23deg)}.display-side-note{position:absolute;right:-3%;bottom:18%;font-size:clamp(12px,2vw,22px);font-weight:600;line-height:1.6;letter-spacing:.02em;transform:rotate(7deg);z-index:3}.display-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #da6816;padding-top:3vh;margin-top:auto}.display-instructions>.eyebrow{font-size:clamp(9px,1.3vw,15px);margin-bottom:22px}.display-instructions p{font-size:clamp(14px,2.1vw,24px);margin:14px 0;display:flex;align-items:center;gap:15px}.display-instructions p>b{width:27px;height:27px;border:1px solid #a65114;border-radius:50%;font-size:13px;display:grid;place-items:center}.display-qr{background:#fff9eb;padding:14px 14px 10px;border-radius:12px;display:block;width:25%;flex-shrink:0}.display-qr img{width:100%;height:auto;display:block}.display-qr>span{font-size:clamp(6px,.85vw,10px);display:flex;align-items:center;justify-content:space-between;font-weight:600;margin-top:7px;white-space:nowrap}.display-qr .icon{width:14px;height:14px}.display-poster>footer{border-top:1px solid #da6816;margin-top:3.1vh;padding-top:1.8vh;display:flex;justify-content:space-between;font-size:clamp(8px,1.25vw,14px);letter-spacing:.1em;font-weight:600}
@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1500px){.studio-layout{padding-top:50px;gap:82px}.studio-intro h1{font-size:76px}.preview-stage{min-height:450px}.preview-object{width:230px}.preview-object.on-bag{width:260px}.designer-card{padding:35px 38px}.form-heading h2{font-size:42px}}
@media(max-width:1150px){.studio-layout{padding:35px 38px;gap:35px}.site-header{padding:21px 38px}.studio-intro h1{font-size:57px}.hero-spark{right:-43px;width:29px;height:29px}.preview-sticker{right:14px;width:65px;height:65px;font-size:11px}.preview-sticker b{font-size:16px}.designer-card{padding:26px 24px}.site-footer{padding-right:38px;padding-left:38px}.coffee-notes{flex-wrap:wrap;justify-content:center;gap:7px 15px}.admin-sidebar{width:196px;padding:26px 14px}.admin-main{margin-left:196px;padding:30px 26px}.stat-card{padding:17px}.stat-card>span{font-size:10px}.stat-card strong{font-size:33px}.stat-card small{font-size:8px}.overview-columns{gap:16px}.panel{padding:22px}.station-illustration{width:64px;height:76px;margin-right:14px}.station-illustration .icon{width:40px}.station-panel h3{font-size:16px}.field-setting{gap:20px;grid-template-columns:1fr 1fr}}
@media(max-width:900px){.site-header{padding:20px 27px}.header-tag{display:none}.studio-layout{padding:32px 27px;gap:26px;grid-template-columns:minmax(0,.85fr) minmax(340px,1.15fr)}.studio-intro h1{font-size:45px}.hero-spark{right:-29px;bottom:3px;width:23px}.studio-intro>.eyebrow{font-size:7px}.intro-copy{font-size:12px}.preview-stage{height:415px;min-height:360px}.preview-sticker{right:8px;top:22%;width:57px;height:57px;font-size:9px}.preview-sticker b{font-size:13px}.preview-object{width:185px}.preview-object.on-bag{width:209px;padding:43px 22px 27px;min-height:0}.steps{font-size:10px;gap:5px}.steps li{gap:5px}.steps li>span{width:21px;height:21px}.form-heading h2{font-size:33px}.designer-card{padding:25px 22px}.coffee-notes{font-size:9px}.admin-sidebar{position:relative;width:100%;padding:18px 22px 10px;display:block}.admin-sidebar>.brand{margin:0 0 18px;font-size:22px}.admin-sidebar>.brand img{width:35px;height:35px}.sidebar-label,.sidebar-note{display:none}.admin-sidebar nav{flex-direction:row;gap:5px;overflow:auto;padding-bottom:4px}.nav-item{width:auto;font-size:11px;min-height:43px;white-space:nowrap;padding:10px 12px}.admin-sidebar .sidebar-bottom{position:absolute;right:16px;top:15px;display:flex;margin:0;padding:0}.sidebar-bottom .nav-item{font-size:0;gap:0;padding:9px}.sidebar-bottom .nav-item>.icon:last-child:not(:first-child){display:none}.admin-main{margin-left:0;padding:29px 25px}.stats-grid{gap:12px}.stat-card strong{font-size:34px}.stat-card small{font-size:9px}.admin-header h1{font-size:32px}.panel{padding:23px}}
@media(max-width:680px){.site-header{padding:17px 22px}.brand{font-size:23px}.brand img{width:40px;height:40px}.brand-small{font-size:7px}.header-right{gap:9px}.header-right>.button{font-size:10px;padding:8px}.studio-layout{display:flex;flex-direction:column;padding:29px 20px 20px;gap:21px}.studio-intro{width:100%;display:grid;grid-template-columns:1fr 1fr;column-gap:15px}.studio-intro>.eyebrow{grid-column:span 2;font-size:8px}.studio-intro h1{font-size:44px;align-self:center;margin:18px 0 10px;grid-column:1;grid-row:2}.hero-spark{display:none}.intro-copy{grid-column:1;grid-row:3;font-size:11px;margin-bottom:10px}.preview-stage{grid-column:2;grid-row:2/span 3;height:250px;min-height:250px;margin-top:13px;border-radius:12px}.preview-switch{top:8px;padding:3px}.preview-switch button{font-size:8px;padding:6px 8px;min-height:28px}.preview-object{width:112px;margin-top:26px;transform:rotate(-4deg)}.preview-object.on-bag{width:138px;padding:28px 15px 16px;min-height:0}.preview-object.on-bag .bag-fold{top:9px;height:5px}.preview-object.on-bag .bag-bottom{height:9px}.preview-sticker{display:none}.preview-caption{font-size:5px;bottom:7px;letter-spacing:.1em}.preview-stage:after{width:120px;bottom:20px}.coffee-notes{grid-column:span 2;padding:13px 0 0;font-size:8px;justify-content:flex-start;gap:10px}.coffee-notes .icon{width:12px;height:12px}.designer-card{width:100%;padding:25px 24px;border-radius:18px}.steps{margin-bottom:24px;padding-bottom:20px;font-size:11px}.form-heading h2{font-size:35px}.form-heading>p{font-size:12px}.site-footer{padding:13px 21px 24px;font-size:7px;gap:10px}.site-footer>span:first-child{display:none}.footer-dot{padding:0 5px}.form-field{margin-bottom:18px}.login-card{padding:33px 25px}.login-card h1{font-size:42px}.overview-columns{grid-template-columns:1fr;gap:0}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:17px}.stat-card>span{font-size:10px}.stat-card strong{font-size:36px}.stat-card small{font-size:8px}.admin-main{padding:24px 16px}.admin-header{gap:10px}.admin-header h1{font-size:29px}.admin-header .button{font-size:10px;padding:10px;min-height:40px;gap:5px}.admin-header .button .icon{width:14px}.admin-header .eyebrow{font-size:7px}.panel{padding:20px;border-radius:12px}.panel-title{align-items:flex-start}.panel-title h2{font-size:17px}.panel-title>.button{font-size:9px;padding:7px 10px;min-height:34px}.panel-title>.button>.icon{width:14px}.table-toolbar{flex-direction:column;align-items:stretch;gap:9px}.table-toolbar select{max-width:none}.field-setting{grid-template-columns:1fr;gap:18px;padding:23px 0}.field-setting>div{padding-left:35px}.settings-footer{align-items:flex-start;flex-direction:column;gap:15px}.settings-footer .button{width:100%}.settings-grid{grid-template-columns:1fr;gap:0}.span-2{grid-column:1}.toggle-row small{font-size:10px}.job-dialog{padding:26px 22px}.job-detail-grid{grid-template-columns:1fr;gap:17px}.job-detail-image img{width:145px}.job-detail-actions{margin-top:15px}.job-dialog h2{font-size:24px}.handbook{padding:30px 24px 60px}.handbook h1{font-size:52px}.display-poster{padding:5vh 7vw 3vh}.display-product{min-height:310px;height:40vh}.display-bag{width:210px;padding:32px 25px 24px}.display-stamp{width:85px;height:85px;font-size:11px;left:-2%}.display-side-note{font-size:11px}.display-instructions p{font-size:12px;gap:8px}.display-instructions>.eyebrow{font-size:8px;margin-bottom:14px}.display-instructions p>b{width:20px;height:20px;font-size:10px}.display-qr{padding:7px;width:27%}.display-qr>span{font-size:5px}.display-qr .icon{width:9px}.display-bottom{gap:15px}.display-poster>footer{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:681px){.display-poster{height:100svh;min-height:0}.display-product{height:40vh;min-height:0;flex-shrink:1}}
@media(pointer:coarse){.suggestions button,.preview-switch button,.table-action,.text-button{min-height:44px}.preview-switch button{padding-left:12px;padding-right:12px}.quantity-control button{min-width:44px;min-height:44px}}
.coffee-choice{border:0;margin:0 0 23px;padding:0;min-width:0}.coffee-choice legend{font-weight:600;font-size:13px;padding:0;margin-bottom:10px}.coffee-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.coffee-options label{position:relative;cursor:pointer;min-width:0}.coffee-options input{position:absolute;opacity:0;width:1px;height:1px}.coffee-options label>span{border:1px solid var(--line);border-radius:12px;display:grid;grid-template-columns:20px 1fr;align-items:center;gap:2px 8px;padding:13px 11px;background:#fafbf7;min-height:76px}.coffee-options strong{font-size:13px;font-weight:600}.coffee-options small{font-size:9px;color:var(--muted);grid-column:span 2;white-space:normal}.coffee-options .icon{width:17px;height:17px}.coffee-options input:checked+span{border-color:var(--green);background:#ecf2e5;box-shadow:inset 0 0 0 1px var(--green)}.coffee-options input:focus-visible+span{outline:3px solid var(--orange);outline-offset:3px}.inline-preview{display:none;margin:23px 0;scroll-margin-top:20px}.inline-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.inline-preview-heading h3{font-size:17px;letter-spacing:-.025em;margin:0}.inline-preview-heading>span{font-size:8px;letter-spacing:.13em;color:var(--muted)}.inline-preview-stage{background:#e8eddf;border-radius:13px;padding:22px;display:flex;align-items:center;justify-content:center}.inline-preview-stage canvas,.inline-preview-stage>img{display:block;width:100%;max-width:260px;height:auto;box-shadow:0 8px 24px #173d3220}.inline-preview>p{font-size:10px;text-align:center;color:var(--muted);margin:9px 0 0}.inline-preview[data-coffee=filterkaffee] .inline-preview-stage,#preview-stage[data-coffee=filterkaffee]{background-color:#e6f0ee}.print-help{font-size:11px;color:var(--muted);line-height:1.7;margin:12px 0 16px}.customer-print-page{background:var(--cream)}.print-toolbar{max-width:780px;margin:30px auto;padding:25px;background:white;border:1px solid var(--line);border-radius:15px}.print-toolbar h1{font-size:28px;margin:10px 0}.print-toolbar p{font-size:13px;color:var(--muted);line-height:1.7}.print-toolbar .print-dialog-hint{margin:16px 0 0}.print-sheets{display:flex;flex-direction:column;align-items:center;gap:24px;padding:15px 20px 40px}.print-sheet{width:102mm;height:152mm;max-width:100%;background:white;box-shadow:0 5px 30px #173d321a;break-after:page;page-break-after:always}.print-sheet:last-child{break-after:auto;page-break-after:auto}.print-sheet img{display:block;width:100%;height:100%}@media(max-width:900px){.inline-preview{display:block}}@media(max-width:680px){.print-toolbar{margin:20px;padding:20px}.print-toolbar .button{width:100%}.print-sheet{height:auto;aspect-ratio:102/152}.print-sheet img{height:auto}.inline-preview-stage{padding:20px}}
@page{size:102mm 152mm;margin:0}
@media print{html,body.customer-print-page{margin:0!important;padding:0!important;background:white!important;width:102mm!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.customer-print-page .print-toolbar{display:none!important}.customer-print-page .print-sheets{display:block;padding:0;margin:0}.customer-print-page .print-sheet{width:102mm!important;height:152mm!important;max-width:none!important;margin:0;padding:0;box-shadow:none;overflow:hidden}.customer-print-page .print-sheet img{width:102mm!important;height:152mm!important}.customer-print-page .print-sheet:last-child{break-after:auto;page-break-after:auto}}
.without-site-brand .brand{display:none!important}.without-site-brand .site-header{justify-content:flex-end}.header-right{margin-left:auto}.color-field{padding-top:3px}.color-original{border:0;background:none;color:var(--muted);font-size:10px;text-decoration:underline;min-height:32px;padding:4px;cursor:pointer}.color-swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:3px;margin:4px 0 10px}.color-swatch{border:1px solid transparent;border-radius:8px;display:grid;place-items:center;background:none;width:100%;height:40px;padding:4px}.color-swatch:before{content:'';display:block;width:24px;height:24px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px #0002}.color-swatch[aria-pressed=true]{border-color:var(--green);background:var(--green-light)}.custom-color{display:flex!important;align-items:center;gap:10px;font-weight:400!important;font-size:11px!important;min-height:44px;margin-bottom:0!important}.custom-color input[type=color],.admin-color-default input[type=color]{width:40px;min-width:40px;height:36px;min-height:36px;padding:3px;border-radius:7px;background:white;cursor:pointer}.custom-color output{margin-left:auto;font-size:10px;color:var(--muted);font-family:monospace}.admin-color-default{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-color-default>label{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.skip-link:not(:focus){clip-path:inset(50%)}
@media(min-width:901px){.studio-intro{position:sticky;top:20px}}
[hidden]{display:none!important}
.cookie-notice{position:fixed;z-index:70;left:50%;bottom:18px;transform:translateX(-50%);width:calc(100% - 32px);max-width:800px;display:flex;align-items:center;gap:22px;background:#fffdf6;color:var(--ink);padding:19px 22px;border:1px solid #d5ddcd;border-radius:16px;box-shadow:0 8px 40px #173d322e;text-align:left;font-size:12px;letter-spacing:0;line-height:1.65}.cookie-notice strong{font-size:14px;letter-spacing:0}.cookie-notice p{margin:5px 0 8px;font-size:12px;line-height:1.65}.cookie-notice a{text-decoration:underline;text-underline-offset:3px;margin-right:12px;display:inline-flex;align-items:center;min-height:32px}.cookie-notice>.button{flex-shrink:0;min-height:44px}.cookie-open{border:0;background:none;font-size:inherit;text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:0}.submission-legal-note{padding:16px 18px;background:var(--green-light);border-radius:12px;font-size:12px;line-height:1.8;margin:20px 0}.submission-legal-note strong{font-size:13px}.submission-legal-note p{margin:7px 0 0}.submission-legal-note a{text-decoration:underline;text-underline-offset:3px}.storage-table-wrap{overflow-x:auto}.storage-table{border-collapse:collapse;width:100%;font-size:12px;line-height:1.8;table-layout:fixed}.storage-table caption{text-align:left;font-weight:600;padding:12px 0}.storage-table th,.storage-table td{vertical-align:top;text-align:left;overflow-wrap:anywhere;padding:12px 10px;border-bottom:1px solid var(--line)}.storage-table thead{background:var(--green-light)}.storage-table th{font-weight:600}.storage-table th:first-child{width:26%}@media(max-width:680px){.cookie-notice{padding:16px;bottom:10px;gap:10px;flex-direction:column;align-items:stretch;max-height:50svh;overflow-y:auto}.cookie-notice>.button{align-self:flex-end}.storage-table{min-width:560px}}@media print{.cookie-notice,.cookie-open{display:none!important}}
.simple-printer h2{font-size:30px;line-height:1.2;max-width:750px;margin-top:13px}.simple-print-steps{list-style:none;margin:26px 0;padding:0;display:grid;gap:20px;max-width:780px}.simple-print-steps li{display:flex;gap:17px;align-items:flex-start}.simple-print-steps li>span{flex-shrink:0;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--green-light);font-weight:600;color:var(--green)}.simple-print-steps strong{font-size:15px}.simple-print-steps p{font-size:13px;color:var(--muted);line-height:1.7;margin:5px 0 0}.simple-print-actions,.legal-preview-links{display:flex;gap:12px;flex-wrap:wrap}.print-mode-feedback{font-size:12px;line-height:1.7;color:var(--green);margin:16px 0}.help-disclosure{margin:23px 0;padding:17px 19px;background:#f5f7ef;border:1px solid var(--line);border-radius:10px}.help-disclosure summary{cursor:pointer;font-size:13px;font-weight:600;min-height:25px}.help-disclosure p,.help-disclosure li{font-size:13px;color:var(--muted);line-height:1.8}.advanced-printer{margin:0 0 25px}.advanced-printer>summary{display:flex;align-items:center;gap:16px;padding:20px 22px;border:1px solid var(--line);border-radius:13px;background:#edf1e5;cursor:pointer;list-style:none}.advanced-printer>summary::-webkit-details-marker{display:none}.advanced-printer>summary strong{display:block;font-size:13px}.advanced-printer>summary small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.advanced-printer>summary>.icon:last-child{margin-left:auto}.advanced-printer[open]>summary{margin-bottom:20px}.advanced-printer[open]>summary>.icon:last-child{transform:rotate(90deg)}.print-quick-settings{display:flex;gap:18px;flex-wrap:wrap;padding:18px 0;font-size:12px}.print-quick-settings span{display:flex;flex-direction:column;gap:4px}.print-quick-settings b{font-size:10px;color:var(--muted)}.legal-links{display:flex;gap:10px 23px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:11px;letter-spacing:0}.legal-links a{min-height:40px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:3px}.site-footer{flex-wrap:wrap}.site-footer>.legal-links{flex-basis:100%;margin-top:6px}.login-card>.legal-links{border-top:1px solid var(--line);margin-top:23px;padding-top:8px}.display-poster>.legal-links{margin-top:8px;font-size:clamp(10px,1.1vw,14px)}.print-legal-links{padding:0 20px 25px}.customer-data-note{font-size:11px;line-height:1.8;color:var(--muted);margin:20px 0}.customer-data-note a{text-decoration:underline;text-underline-offset:2px}.legal-document{max-width:850px;margin:0 auto;padding:40px 28px 65px}.legal-document>.text-button{margin-bottom:25px}.legal-document h1{font-size:44px;color:var(--green);margin:16px 0 35px}.legal-document section{padding:22px 0;border-top:1px solid var(--line)}.legal-document h2{font-size:23px;line-height:1.3}.legal-document section p{font-size:14px;line-height:1.9;color:#53624e;overflow-wrap:anywhere}.legal-document>.legal-links{border-top:1px solid var(--line);margin-top:35px;padding-top:15px}.legal-sources{font-size:12px;line-height:1.8;color:var(--muted)}.legal-sources a{text-decoration:underline}.draft-missing{color:var(--red)}@media(max-width:680px){.simple-printer h2{font-size:25px}.simple-print-actions>.button{width:100%}.advanced-printer>summary{padding:17px;gap:11px}.advanced-printer>summary strong{font-size:12px}.legal-document{padding:28px 22px 50px}.legal-document h1{font-size:32px}.legal-links{gap:0 16px}.legal-preview-links>.button{width:100%}}@media print{.print-legal-links{display:none!important}}

.customer-reset{margin-top:24px}.reset-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:13px 0 7px;font-size:10px;line-height:1.5;color:var(--muted)}.reset-caption [role=timer]{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--green);font-weight:600}.reset-progress{display:block;width:100%;height:5px;border:0;border-radius:8px;overflow:hidden;appearance:none;background:#e9eee6;color:var(--green)}.reset-progress::-webkit-progress-bar{background:#e9eee6;border-radius:8px}.reset-progress::-webkit-progress-value{background:var(--green);border-radius:8px;transition:width 1s linear}.reset-progress::-moz-progress-bar{background:var(--green);border-radius:8px}.success-team-help{font-size:11px;color:var(--muted);line-height:1.8;margin:19px 0}.success-options{text-align:left;border-top:1px solid var(--line);padding-top:8px;margin-top:19px}.success-options summary{font-size:11px;font-weight:600;color:var(--muted);cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.success-options summary:before{content:'+';font-size:19px;color:var(--green)}.success-options[open] summary:before{content:'−'}.success-options p{font-size:11px;color:var(--muted);line-height:1.8}.success-options .text-button{font-size:12px}.legacy-print-reset{max-width:500px;margin:0 auto 30px;padding:0 20px}.legacy-print-reset>.button{width:100%}#success-panel{scroll-margin-top:24px}
@media print{.legacy-print-reset{display:none!important}body.studio-page.studio-printing{margin:0!important;padding:0!important;background:#fff!important;width:102mm!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.studio-page.studio-printing>*{display:none!important}.studio-page.studio-printing>#customer-print-sheets{display:block!important;padding:0!important;margin:0!important}.studio-page.studio-printing .print-sheet{width:102mm!important;height:152mm!important;max-width:none!important;margin:0!important;padding:0!important;box-shadow:none;overflow:hidden}.studio-page.studio-printing .print-sheet img{width:102mm!important;height:152mm!important}.studio-page.studio-printing .print-sheet:last-child{break-after:auto;page-break-after:auto}}

/* Straight previews and accessible enlargement controls. */
.preview-object,.preview-object.on-bag{transform:none}
.label-holder canvas,.label-holder>img,.inline-preview-stage canvas,.inline-preview-stage>img{cursor:zoom-in}
.label-zoom-trigger{position:absolute;right:14px;bottom:13px;z-index:4;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:10px 13px;border:1px solid #d4ddce;border-radius:24px;background:#fffdf5;color:var(--green);font-size:11px;font-weight:600;box-shadow:0 3px 12px #173d3210}
.label-zoom-trigger:hover{background:#f1f5ea}
.label-zoom-trigger .icon{width:17px;height:17px}
.inline-preview-heading .inline-zoom-trigger{position:static;flex-shrink:0;min-width:44px;min-height:44px;padding:8px 11px;font-size:10px;box-shadow:none}
.inline-preview-heading{flex-wrap:wrap}
.inline-preview-heading>span{margin-left:auto}

/* Contrasting choices stay identifiable while their disabled state is clear. */
.color-swatch:disabled{position:relative;opacity:1;cursor:not-allowed;background:#f4f4ef}
.color-swatch:disabled:before{opacity:.3;filter:saturate(.35)}
.color-swatch:disabled:after{content:'';position:absolute;width:28px;height:2px;border-radius:2px;background:#777f74;transform:rotate(-45deg);box-shadow:0 0 0 1px #ffffffc9}
.color-notice{font-size:11px;line-height:1.7;color:var(--green);padding:10px 12px;margin:8px 0 18px;border:1px solid #d8e1ce;background:#f2f6eb;border-radius:8px}

/* Image sliders are a keyboard and touch alternative to direct manipulation. */
.image-controls{padding:16px 14px 13px;margin:12px 0 22px;background:#f5f8ef;border:1px solid #dde5d5;border-radius:12px}
.image-controls>p{font-size:11px;line-height:1.7;color:var(--muted);margin-bottom:12px}
.image-controls label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 0;font-size:11px;font-weight:600}
.image-controls output{font-size:10px;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.image-controls input[type=range]{display:block;width:100%;height:44px;min-height:44px;padding:0;margin:0;background:transparent;border:0;box-shadow:none;accent-color:var(--green);cursor:ew-resize}
.image-controls input[type=range]:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.image-controls .text-button{font-size:11px;min-height:44px;padding:8px 0}

/* The large view scrolls independently; its controls never enter print output. */
body.label-zoom-open{overflow:hidden}
.label-zoom-dialog{width:min(calc(100% - 24px),1100px);max-width:none;max-height:calc(100dvh - 24px);padding:0;margin:auto;border:1px solid #dce4d4;border-radius:20px;background:var(--cream);color:var(--ink);box-shadow:0 22px 85px #071e1666;overflow:hidden}
.label-zoom-dialog[open]{display:flex;flex-direction:column}
.label-zoom-dialog::backdrop{background:#10271ed1;backdrop-filter:blur(4px)}
.zoom-header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;padding:18px 22px;background:#fff;border-bottom:1px solid var(--line)}
.zoom-header h2{font-size:22px;margin:0;letter-spacing:-.03em}
.zoom-header .icon-button{flex-shrink:0;background:#fff;min-width:44px;min-height:44px}
.zoom-toolbar{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;flex-shrink:0;padding:12px 20px 4px}
.zoom-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;border:1px solid #d5decd;border-radius:9px;background:#fff;padding:8px 13px;font-size:12px;font-weight:600;color:var(--green)}
.zoom-toolbar button:hover:not(:disabled){background:var(--green-light)}
.zoom-toolbar output{min-width:58px;text-align:center;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
#zoom-editor-hint{flex-shrink:0;padding:0 22px;margin:8px 0 12px;font-size:11px;line-height:1.7;text-align:center;color:var(--muted)}
.zoom-viewport{flex:1 1 auto;min-height:0;overflow:auto;padding:24px;overscroll-behavior:contain;scrollbar-gutter:stable;background:#e5ebdd;background-image:radial-gradient(ellipse at center,#f1f4e9,transparent 80%)}
.zoom-stage{position:relative;margin:0 auto;background:#fff;box-shadow:0 9px 35px #173d3229;line-height:0;flex-shrink:0;isolation:isolate}
.zoom-stage>canvas,.zoom-stage>img{display:block;width:100%;max-width:none;height:auto;aspect-ratio:102/152;user-select:none;-webkit-user-drag:none}
.image-selection{position:absolute;z-index:2;border:2px solid var(--green);box-shadow:0 0 0 1px #fff,0 0 0 2px #173d324d;cursor:move;touch-action:none;user-select:none;line-height:normal}
.image-selection:active{cursor:grabbing}
.image-selection:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
.image-selection [data-image-handle]{position:absolute;width:44px;height:44px;min-width:44px;min-height:44px;margin:0;padding:0;background:transparent;border:0;border-radius:10px;touch-action:none;display:grid;place-items:center}
.image-selection [data-image-handle]:before{content:'';width:17px;height:17px;background:#fff;border:2px solid var(--green);border-radius:4px;box-shadow:0 2px 7px #173d322b}
.image-selection [data-image-handle]:hover:before,.image-selection [data-image-handle]:focus-visible:before{background:#e7f0de}
.image-selection [data-image-handle=nw]{top:-23px;left:-23px;cursor:nwse-resize}
.image-selection [data-image-handle=ne]{top:-23px;right:-23px;cursor:nesw-resize}
.image-selection [data-image-handle=sw]{bottom:-23px;left:-23px;cursor:nesw-resize}
.image-selection [data-image-handle=se]{bottom:-23px;right:-23px;cursor:nwse-resize}
@media(max-width:680px){
  .label-zoom-dialog{width:calc(100% - 12px);max-height:calc(100dvh - 12px);border-radius:14px}
  .zoom-header{padding:12px 14px;gap:12px}
  .zoom-header h2{font-size:19px}
  .zoom-toolbar{padding:10px 10px 2px;gap:7px}
  .zoom-toolbar button{padding:8px 11px;font-size:11px}
  #zoom-editor-hint{padding:0 14px;font-size:10px;margin:8px 0 10px}
  .zoom-viewport{padding:24px}
  .label-zoom-trigger{right:10px;bottom:10px;padding:9px 11px}
}
@media print{.label-zoom-dialog,.label-zoom-trigger,.image-selection,.image-controls{display:none!important}}

/* Keep the viewing frame stable while the label itself is enlarged or reduced. */
.label-zoom-dialog{height:min(960px,calc(100dvh - 24px))}
.zoom-viewport{flex:1 1 0;min-height:0;overflow-anchor:none}
.zoom-stage{min-height:0}

/* The same image handles are available in the ordinary label previews. */
.label-holder{position:relative;overflow:visible}
.inline-label-holder{position:relative;width:100%;max-width:260px;line-height:0;box-shadow:0 8px 24px #173d3220}
.inline-preview-stage .inline-label-holder>canvas,.inline-preview-stage .inline-label-holder>img{display:block;width:100%;max-width:none;height:auto;box-shadow:none}
.label-holder:has(.image-selection:not([hidden]))>canvas,.inline-label-holder:has(.image-selection:not([hidden]))>canvas{cursor:default}
.preview-stage:has(#preview-image-selection:not([hidden])) .preview-object{z-index:3}
.preview-stage:has(#preview-image-selection:not([hidden])) .preview-sticker{pointer-events:none;opacity:.3}
#preview-image-selection,#inline-image-selection{z-index:4}

/* Choosing another file remains separate from editing the already chosen photo. */
.upload-label{cursor:default;text-align:left}
.photo-edit-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:48px;min-height:48px;padding:3px;border:1px solid #cbd8c1;border-radius:8px;background:#fff;color:var(--green);cursor:pointer}
.photo-edit-button img{display:block;width:48px;height:48px;object-fit:contain;border-radius:4px}
.photo-edit-button:hover:not(:disabled){background:var(--green-light);border-color:var(--green)}
.photo-edit-button .icon{width:29px;height:29px}
#change-image{font-size:11px;min-height:44px;margin-right:14px}

/* Reset actions describe their scope and remain usable on touch screens. */
.color-original{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#f8faf5;color:var(--green);font-size:10px;font-weight:600;line-height:1.4;text-decoration:none;white-space:normal;text-align:center}
.color-original:hover:not(:disabled){background:var(--green-light);border-color:#bccdb1}
.color-original:disabled{opacity:.45;background:#f7f8f4;color:var(--muted);cursor:default}
.color-field .field-heading{gap:12px;align-items:center;margin-bottom:5px}
.color-field .field-heading>label{margin-bottom:0}
.color-reset-all{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin:4px 0 20px;padding:0}
.color-reset-all>small{display:block;color:var(--muted);font-size:11px;line-height:1.7}
.color-reset-all .button,#reset-colors{min-height:44px;font-size:12px}
@media(max-width:680px){
  .label-zoom-dialog{height:calc(100dvh - 12px)}
  .color-original{max-width:155px;padding:8px;font-size:10px}
  .color-reset-all .button,#reset-colors{width:100%}
}
