/* Listok print workshop: paper, ink, precise controls. */
:root{--ink:#172b2c;--muted:#526663;--primary:#176250;--primary-dark:#104a3d;--line:#d9dfda;--lavender:#e9f3ed;--paper-bg:#e7eae5}
body{background:#f5f5ef;color:var(--ink);font-size:14px}button:disabled{opacity:.5}button,a,input,select,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,label[role=button]:focus-visible,summary:focus-visible{outline:3px solid #27816b;outline-offset:3px}input:focus,select:focus{outline:2px solid #27816b}input[aria-invalid=true]{border-color:#b64c36!important;background:#fff6f1!important}
.skip-link{position:fixed;left:16px;top:-100px;z-index:50;background:#fff;padding:12px}.skip-link:focus{top:12px}
.topbar{height:64px;padding:0 28px;gap:20px}.brand{font-size:28px;letter-spacing:-1.2px}.brand-icon{width:29px;height:34px;border-radius:3px;transform:none}.brand-description{color:var(--muted);font-size:13px;padding-left:20px}.topbar>.text-button{color:var(--ink);font-size:14px;min-height:44px}main{max-width:1600px;padding:0 28px}.intro{padding:22px 0 20px;align-items:center}.eyebrow{font-size:10px;color:#526663;letter-spacing:1.3px;margin-bottom:5px}h1,.intro h1{font-size:27px;letter-spacing:-.8px;font-weight:650;margin:0 0 5px}.intro p{font-size:14px;color:#526663}.private-note{padding:0;font-size:12px;color:#345c50}.private-note small{display:block;font-size:11px;color:#526663;margin-top:3px}.private-note svg{color:#176250;width:23px;height:23px}
.workspace{grid-template-columns:380px minmax(0,1fr);gap:22px}.controls,.preview-panel{border-radius:5px;box-shadow:none;border-color:var(--line)}.controls{overflow:visible}.panel-section{padding:17px 20px}.section-heading{margin-bottom:12px}h2{font-size:15px;font-weight:650;letter-spacing:0}.step{width:22px;height:22px;border-radius:3px;background:#edf2ed;color:#176250;border-color:#c3d5ca;font-size:12px}.section-caption{font-size:11px;color:#526663}.images-section .section-heading{margin-bottom:11px}.upload-zone{min-height:104px;border-radius:3px;border-color:#6f9785;background:#f4f8f3;gap:3px}.upload-zone:hover,.upload-zone.dragover{background:#e4f1e9;border-color:#176250}.upload-zone strong{font-size:15px;color:#176250;margin:3px 0 0}.upload-zone>span:last-child{color:#526663;font-size:11px}.upload-icon svg{color:#176250;width:24px;height:24px}.small-link{font-size:12px;color:#526663;min-height:32px}.small-link:hover{color:#176250}.list-heading{display:flex;justify-content:space-between;font-size:11px;font-weight:550;color:#526663;margin-top:14px;padding-right:38px}.image-list{margin-top:6px;max-height:190px;gap:0}.image-row{gap:8px;min-height:62px;border-top:1px solid #edf0eb;padding:7px 0}.image-thumb{width:42px;height:44px;border-radius:2px}.image-name{max-width:none;font-size:12px}.image-meta{font-size:10px;color:#526663}.counter{border-radius:3px;height:36px}.counter button{height:36px;width:30px;color:#176250}.counter input{width:31px;font-size:14px}.image-remove{width:30px;height:36px;justify-content:center;color:#526663}.image-remove:hover{color:#a43d2a;background:#fff0e9}.demo-note{color:#526663;font-size:11px;margin-top:8px;gap:10px}.demo-note button{font-size:11px;color:#176250;min-height:36px;text-decoration:underline}.presets{gap:0;border:1px solid #c4cec5;border-radius:3px;overflow:hidden}.preset{border:0;border-right:1px solid #c4cec5;border-radius:0;flex-direction:row;align-items:center;justify-content:center;gap:6px;padding:10px 5px;font-size:12px;font-weight:550;min-height:44px}.preset:last-child{border-right:0}.preset small{display:none}.preset svg{width:17px;height:17px;margin:0;color:#526663}.preset.active{border:0;border-right:1px solid #c4cec5;background:#e5f0e8;color:#104a3d;box-shadow:inset 0 -3px #176250}.preset:last-child.active{border-right:0}.preset.active svg{color:#176250}.controls>.panel-section:nth-child(3){padding-top:13px}.field>span{font-size:12px;color:#34514a}.field input,.field select{height:42px;border-radius:3px;border-color:#b9c6bc;color:#172b2c;font-size:16px}.unit-input>span{color:#526663;font-size:13px;top:11px}.dimension-row{gap:12px}.size-cross{color:#526663}.quick-sizes{margin:9px 0 14px;gap:6px}.quick-sizes button{font-size:11px;background:#f1f3ef;color:#34514a;border-radius:2px;min-height:32px;padding:5px 8px}.quick-sizes button.active{background:#e5f0e8;color:#104a3d;border-color:#a3b9aa}.field select{font-size:13px}.field-note{font-size:11px;color:#526663;line-height:1.5}.paper-settings summary{padding:16px 20px;font-size:14px;gap:8px}.paper-settings summary>span:first-child{display:none}.paper-settings summary .step{display:inline-flex!important}.paper-settings-body{padding:0 20px 18px}.setting-row>span{font-size:12px;color:#34514a}.segmented{background:#edf0eb;border-radius:3px}.segmented button{font-size:11px;min-height:36px;border-radius:2px;color:#526663}.segmented button.active{color:#104a3d}.small-fields{margin:12px 0}.small-fields .field>span{font-size:11px;color:#34514a}.small-fields input{height:38px;font-size:15px}.toggle-row strong{font-size:12px;color:#34514a}.toggle-row small{font-size:11px;color:#526663}.toggle-row{min-height:42px}.toggle-row input:checked+.switch{background:#176250}.error-message{border-radius:3px;font-size:12px;line-height:1.5;border-left:3px solid #b64c36}.error-message#uploadError{margin-top:0;margin-bottom:12px}
.preview-panel{top:16px;position:sticky;display:flex;flex-direction:column}.preview-toolbar{height:54px;padding:0 22px}.preview-toolbar h2{font-size:14px}.live-dot{background:#176250}.paper-tag{font-size:11px;color:#526663;border-color:#d9dfda;border-radius:2px}.icon-button{color:#34514a;min-width:36px;min-height:36px;border-radius:3px}.icon-button:hover{background:#e9f3ed}.paper-workspace{padding:20px 28px 14px;background-image:none;min-height:0;height:clamp(380px,calc(100vh - 355px),640px);align-items:center;overflow:auto}.paper-wrap{width:auto;height:100%;max-width:100%;display:flex;flex-direction:column;align-items:center;flex-shrink:1}.ruler-label{align-self:stretch;flex-shrink:0;font-size:10px;color:#526663;margin:0 0 7px}.ruler-label:before,.ruler-label:after{border-color:#aebdb2}.paper{height:calc(100% - 44px);width:auto;max-width:100%;flex-shrink:0;aspect-ratio:210/297;box-shadow:0 2px 7px #172b2c18}.paper-shadow-caption{font-size:10px;color:#526663;margin-top:8px;white-space:normal}.safe-area{border-color:#dce3dc}.print-item{outline-color:#828e87}.empty-paper{color:#526663;padding:20px}.empty-paper svg{width:34px;height:34px;color:#739182;margin-bottom:13px}.empty-paper strong{font-size:15px;color:#34514a}.empty-paper p{font-size:12px;color:#526663;max-width:220px;line-height:1.5}.preview-bottom{background:#f7f8f4;padding:8px 20px;color:#526663;font-size:12px}.pagination .icon-button{min-width:36px;min-height:36px;border-color:#d9dfda;border-radius:3px;color:#34514a}.count-label{color:#526663;font-size:12px}.download-area{padding:16px 20px;gap:15px;flex-wrap:nowrap}.download-icon{background:#e9f3ed;color:#176250;border-radius:3px;width:32px;height:32px}.download-info strong{font-size:13px;white-space:normal}.download-info span:not([data-icon]){font-size:11px;color:#526663}.primary-button{font-size:14px;min-height:46px;border-radius:3px;padding:11px 20px;box-shadow:none;background:#176250}.primary-button:hover{background:#104a3d}.print-tip{border-radius:3px;border-color:#dce4ce;background:#f5f6e9;color:#687244;margin:0 20px 16px;padding:9px 11px}.print-tip p{font-size:11px;color:#54623d}.print-tip strong{color:#34462a}.download-again{margin:0 20px 12px;padding:10px;background:#e9f3ed;color:#34514a;font-size:12px;border-radius:3px}.download-again a{color:#176250;text-decoration:underline}.download-again>span{display:none}footer{padding:18px 0;font-size:11px;color:#526663}.footer-brand{color:#34514a}footer>.text-button{font-size:11px;color:#34514a}.toast{background:#172b2c;border-radius:4px;font-size:13px;max-width:min(90vw,600px);bottom:16px}dialog{border-radius:6px;border-color:#b9c6bc}dialog::backdrop{background:#172b2c66;backdrop-filter:none}.dialog-symbol{background:#e9f3ed;color:#176250;border-radius:3px}dialog p,dialog li{color:#526663}dialog strong{color:#172b2c}.dialog-note{background:#edf2ed;color:#34514a;border-radius:3px}.preview-panel.zoomed{border-radius:4px}.preview-panel.zoomed .paper-workspace{height:calc(100vh - 230px);max-height:none;padding:24px}.preview-panel.zoomed .paper-wrap{height:100%;width:auto}
@media(min-width:1500px){main{padding:0 32px}.workspace{grid-template-columns:400px minmax(0,1fr)}}
@media(max-width:1050px){main{padding:0 20px}.topbar{padding:0 20px}.workspace{grid-template-columns:355px minmax(0,1fr);gap:16px}.private-note{display:none}.paper-tag{display:none}.download-area{flex-wrap:wrap}.download-info{width:100%}.download-area .primary-button{width:100%}.paper-workspace{height:440px;padding:20px}.setting-row{flex-wrap:wrap}}
@media(max-width:760px){.topbar{height:58px;padding:0 16px}.brand-description{display:none}.brand{font-size:25px}.intro{padding:20px 0 17px}.intro h1{font-size:24px;max-width:400px}.intro p{font-size:13px}.eyebrow{font-size:9px}.workspace{grid-template-columns:1fr;gap:18px}main{padding:0 16px}.controls{display:block}.panel-section{border-right:0;padding:18px}.paper-settings summary{padding:16px 18px}.paper-settings-body{display:block;padding:0 18px 18px}.paper-settings{grid-column:auto}.small-fields{margin:14px 0}.toggle-row{grid-column:auto}.image-name{max-width:none}.image-list{max-height:240px}.preview-panel{position:static}.paper-tag{display:block;font-size:10px}.preview-toolbar{padding:0 16px}.paper-workspace{height:470px;padding:20px}.download-area{padding:16px}.download-info strong{font-size:14px}.download-info span:not([data-icon]){font-size:12px}.primary-button{font-size:15px}.print-tip{margin:0 16px 16px}.print-tip p{font-size:12px}.preview-bottom{padding:8px 12px}footer{font-size:11px;align-items:flex-start;gap:10px;flex-wrap:wrap}footer>.text-button{width:100%;margin-left:0}.preview-panel.zoomed{left:8px;right:8px;top:8px;bottom:8px}.preset{font-size:12px;min-height:46px}.counter{height:40px}.counter button{height:40px;width:32px}.image-remove{min-height:40px}.small-link{min-height:40px}.section-caption{font-size:11px}.toast{font-size:12px}}
@media(max-width:380px){main{padding:0 10px}.intro h1{font-size:23px}.panel-section{padding:16px}.preset{font-size:11px;gap:4px}.preset svg{width:15px}.image-row{gap:6px}.image-thumb{width:35px}.counter button{width:28px}.counter input{width:28px}.paper-tag{display:none}.paper-workspace{height:400px}.paper-settings-body{padding:0 16px 16px}.download-info{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
.counter{border-color:#c4cec5}.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m6 8 4 4 4-4' fill='none' stroke='%23526663' stroke-width='1.4'/%3E%3C/svg%3E")}.chevron{color:#526663}.preset[data-preset=circles] [data-icon]{display:none}.controls.has-images .upload-zone{min-height:52px;flex-direction:row;gap:10px;justify-content:flex-start;padding:10px 12px}.controls.has-images .upload-zone strong{margin:0;font-size:13px}.controls.has-images .upload-zone>span:last-child{display:none}.controls.has-images .image-list{max-height:162px}.controls.has-images .image-row{min-height:54px;padding:5px 0}.controls.has-images .demo-note{margin-top:5px}.controls.has-images .list-heading{margin-top:10px}
.paper-wrap,.preview-panel.zoomed .paper-wrap{height:auto;flex-shrink:0;max-width:100%}.paper{width:100%;height:auto}.skip-link{top:12px;transform:translateY(-200%)}.skip-link:focus{transform:none}
.switch{background:#bac5be}
.mobile-nav{display:none}#editor,#preview,#export{scroll-margin-top:70px}#editor:focus-visible,#preview:focus-visible,#export:focus-visible{outline:3px solid #27816b;outline-offset:3px}
@media(max-width:760px){.mobile-nav{display:flex;position:sticky;top:0;z-index:12;gap:4px;padding:6px;background:#f5f5ef;border:1px solid #c4cec5;border-radius:3px;margin:0 0 16px;box-shadow:0 2px 4px #172b2c0d}.mobile-nav a{display:flex;align-items:center;justify-content:center;min-height:40px;flex:1;padding:6px 8px;font-size:12px;font-weight:550;color:#176250;border-radius:2px}.mobile-nav a:hover{background:#e5f0e8}.mobile-nav a:last-child{background:#e5f0e8}.preview-panel{scroll-margin-top:70px}}
.gap-control{display:grid;grid-template-columns:1fr 90px;gap:9px 12px;margin-top:17px;padding:14px 12px;border:1px solid #c4cec5;background:#f5f8f3;border-radius:3px;align-items:center}.gap-control .field>span{font-size:12px;font-weight:600}.gap-value input{width:100%;height:36px;padding:6px 31px 6px 10px;border:1px solid #b9c6bc;border-radius:3px;background:#fff;font-size:15px;color:#172b2c}.gap-value>span{top:8px;right:10px}.gap-control input[type=range]{grid-column:1/-1;width:100%;margin:4px 0 0;accent-color:#176250;height:25px;cursor:pointer}.gap-control .field-note{grid-column:1/-1;margin:0;font-size:10px}.gap-value input::-webkit-inner-spin-button{display:none}.watermark-settings{border-top:1px solid #d9dfda;border-bottom:0}.enable-mark{display:flex;align-items:center;gap:7px;min-height:36px;cursor:pointer;font-size:12px;color:#34514a}.enable-mark input,.signature-toggle input{appearance:auto;accent-color:#176250;width:17px;height:17px;margin:0;flex-shrink:0}.watermark-settings .field input{font-size:13px}.signature-toggle{display:flex;align-items:center;gap:9px;margin:12px 0 0;min-height:42px;cursor:pointer}.signature-toggle strong{font-size:13px;font-weight:550;display:block;color:#34514a}.signature-toggle small{display:block;font-size:10px;color:#526663;margin-top:2px;line-height:1.5}.signature-note{background:#f5f6e9;border-left:2px solid #839067;padding:9px 10px;margin:9px 0 0;font-size:11px;color:#54623d;line-height:1.5}.watermark-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.paper-workspace{height:clamp(380px,calc(100vh - 278px),720px)}.intro{padding:21px 0 20px}.intro p{max-width:780px}.controls.has-images .watermark-settings{padding-top:14px}.paper-settings .small-fields .field{max-width:160px}
@media(max-width:1050px){.paper-workspace{height:470px}.intro p{max-width:600px}}
@media(max-width:760px){.paper-workspace{height:470px}.watermark-settings{padding:18px}.watermark-settings .field input{font-size:16px}.signature-toggle{min-height:44px}.enable-mark{min-height:40px}.signature-toggle small{font-size:11px}.gap-control .field>span{font-size:13px}.gap-control input[type=range]{height:32px}.gap-control .field-note{font-size:11px}.intro p{font-size:13px}}
@media(min-width:1051px){.paper-workspace{height:clamp(380px,calc(100vh - 325px),720px)}}
