@font-face{font-family:Jost;src:url(assets/fonts/jost-latin-400-normal.woff2);font-weight:400;font-display:swap}@font-face{font-family:Jost;src:url(assets/fonts/jost-latin-600-normal.woff2);font-weight:600;font-display:swap}@font-face{font-family:CardSerif;src:url(assets/fonts/cormorant-garamond-latin-600-normal.woff2);font-weight:600;font-display:swap}@font-face{font-family:CardScript;src:url(assets/fonts/great-vibes-latin-400-normal.woff2);font-display:swap}
:root{--brand:#35b2b6;--brand-dark:#0d6a6d;--soft:#eaf6f6;--primary:#35b2b6;--on-primary:#10151b;--ink:#10151b;--muted:#4b5563;--line:#e5e7eb;--page:#f5f0eb;--surface:#fff;--subtle:#faf7f4;--danger:#b91c1c;--ui:Roboto,system-ui,sans-serif;--radius:8px;--shadow:0 8px 28px -12px #0f151b28;--motion:240ms}
[data-brand=orwo]{--brand:#06acda;--brand-dark:#05647e;--soft:#e4f7fc;--primary:#10151b;--on-primary:#fff;--page:#f5f0eb;--subtle:#faf7f4;--ui:Roboto,system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;color:var(--ink);font:15px/1.45 var(--ui);background:var(--surface)}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--brand-dark);outline-offset:3px}button{border:0;background:none}a{color:var(--brand-dark)}h1,h2,h3,p{margin:0}h1{font-size:34px;line-height:1.18;font-weight:600;letter-spacing:-.035em}h2{font-size:24px;line-height:1.25;letter-spacing:-.02em}h3{font-size:17px;font-weight:600}small,.small{font-size:13px}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--brand-dark)}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}.btn{min-height:44px;padding:10px 18px;border-radius:6px;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-weight:600;white-space:normal;border:1.5px solid transparent;text-decoration:none}.btn.primary{background:var(--primary);color:var(--on-primary)}.btn.primary:hover{filter:brightness(.91)}.btn.secondary{border-color:var(--line);background:white}.btn.secondary:hover{border-color:var(--brand-dark);background:var(--soft)}.btn.quiet{padding:10px 12px;color:var(--muted)}.btn.quiet:hover{background:#f3f4f6}.btn.full{width:100%}.icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:6px;border:1px solid var(--line);background:white}.icon-btn:hover{background:var(--soft)}.chip{min-height:44px;padding:8px 15px;border-radius:999px;white-space:nowrap;border:1px solid var(--line);background:white;font-size:13px}.chip[aria-pressed=true]{background:var(--soft);border-color:var(--brand-dark);color:var(--brand-dark);font-weight:600}.field{width:100%;height:44px;border:1.5px solid #b8bec5;border-radius:6px;background:white;padding:0 13px;min-width:0}textarea.field{height:118px;padding-top:12px;resize:vertical}.field:focus{border-color:var(--brand-dark)}label.label{font-size:13px;font-weight:600;display:block;margin:0 0 7px}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.stack{display:grid;gap:16px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
#reviewer{background:#f3f4f6;border-bottom:1px solid var(--line);min-height:38px;padding:3px 28px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#4b5563}.review-tools{display:flex;gap:8px;align-items:center}.review-tools select{border:1px solid #d1d5db;border-radius:4px;background:white;padding:3px 8px;font-size:12px;height:29px}.proto-label{letter-spacing:.07em;text-transform:uppercase}.review-notice{margin-left:15px;letter-spacing:0;text-transform:none}.review-tools button{font-size:11px;text-decoration:underline;min-height:30px}#header{min-height:78px;display:flex;align-items:center;justify-content:space-between;padding:12px 4vw;gap:24px;border-bottom:1px solid var(--line);background:white}.brand-logo{width:145px;height:34px;object-fit:contain;object-position:left center}.brand-logo.orwo{width:76px;height:45px}.brand-button{display:flex;align-items:center;min-height:44px;padding:0}.steps{display:flex;align-items:center;gap:22px;color:var(--muted);font-size:13px}.step{display:flex;align-items:center;gap:8px}.step b{border:1px solid #c2c8cb;border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-size:12px;font-weight:500}.step.active{color:var(--brand-dark);font-weight:600}.step.active b,.step.done b{background:var(--primary);border-color:var(--primary);color:white}.step-line{width:34px;height:1px;background:var(--line)}.header-actions{display:flex;align-items:center;gap:10px}.lang-btn{min-height:44px;padding:8px 12px;border-radius:999px;border:1px solid var(--line);font-size:13px}.saved{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:5px}.saved .icon{width:16px;height:16px}
.gallery{background:var(--page);min-height:calc(100vh - 116px);padding:38px 4vw 40px}.gallery-top{display:flex;justify-content:space-between;gap:30px;align-items:center;max-width:1360px;margin:auto}.gallery-top h1{margin:8px 0 10px}.gallery-top p{max-width:570px;color:var(--muted)}.upload-hero{width:350px;flex-shrink:0;display:flex;align-items:center;gap:15px;border:1px dashed #91b1ad;border-radius:12px;padding:16px;background:#ffffffb3}.upload-hero p{font-size:12px;line-height:1.4;margin-top:4px}.upload-hero .btn{margin-top:10px;padding:6px 10px;min-height:38px;font-size:13px}.upload-hero .upload-symbol{width:57px;height:66px;border-radius:6px;background:var(--soft);display:grid;place-items:center;flex-shrink:0;color:var(--brand-dark);overflow:hidden}.upload-symbol img{width:100%;height:100%;object-fit:cover}.format-grid{max-width:1360px;margin:28px auto;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.format-card{position:relative;text-align:left;display:flex;align-items:center;gap:13px;padding:16px;background:white;border:1.5px solid transparent;border-radius:8px;box-shadow:0 1px 2px #10151b05;min-height:100px}.format-card.selected{border-color:var(--brand-dark);background:var(--soft)}.format-card .format-title{font-size:15px;font-weight:600;display:block}.format-card small{display:block;color:var(--muted);font-size:12px;margin:3px 0}.format-card strong{font-size:14px}.format-card .check{position:absolute;right:10px;top:8px;color:var(--brand-dark);width:16px;height:16px}.format-glyph{width:45px;height:39px;display:grid;place-items:center;flex-shrink:0}.format-glyph span{display:block;border:1.5px solid var(--brand-dark);background:white;position:relative;box-shadow:3px 3px 0 #b9d3d0}.format-glyph span.folded:before{content:'';position:absolute;width:14%;inset:0 auto 0 0;background:var(--soft);border-right:1px solid var(--brand-dark)}.gallery-controls{max-width:1360px;margin:0 auto 20px;display:flex;gap:16px;align-items:center;justify-content:space-between}.filters{display:flex;gap:7px;flex-wrap:wrap}.search{max-width:270px;flex:1;min-width:200px;position:relative}.search .icon{position:absolute;left:12px;top:12px;color:var(--muted);width:18px}.search input{padding-left:39px;border-color:var(--line)}.grid-head{max-width:1360px;margin:0 auto 16px;font-size:13px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.design-grid{max-width:1360px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.design-tile{position:relative;background:white;border:1px solid #e3e3df;border-radius:10px;overflow:hidden;transition:transform var(--motion),box-shadow var(--motion)}.design-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.tile-image{display:flex;width:100%;height:215px;align-items:center;justify-content:center;background:#fff;padding:25px 15px}.tile-image img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 8px 5px #10151b15)}.tile-footer{padding:14px 16px;border-top:1px solid #f0f1f2;display:flex;align-items:center;justify-content:space-between;gap:10px}.tile-footer h3{font-size:15px;margin-bottom:3px}.tile-footer small{font-size:12px;color:var(--muted)}.tile-go{width:36px;height:36px;display:grid;place-items:center;color:var(--brand-dark);border-radius:50%;background:var(--soft);flex-shrink:0}.tile-action{position:absolute;inset:0;width:100%;height:100%;border-radius:10px}.tile-action:focus-visible{outline-offset:-4px}.gallery-bottom{text-align:center;padding:26px}.gallery-bottom .btn{background:white;min-width:200px}.empty-state{grid-column:1/-1;text-align:center;padding:60px 20px;background:white;border-radius:12px}.empty-state p{margin:12px 0}.resume{max-width:1360px;margin:0 auto 20px;padding:14px 18px;background:white;border:1px solid var(--brand-dark);border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:15px}.resume p{font-size:13px;color:var(--muted)}
.editor-top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 28px;border-bottom:1px solid var(--line);background:white}.editor-top h1{font-size:20px;letter-spacing:-.02em}.editor-top .project-name{display:flex;align-items:center;gap:14px}.editor-top .field{width:auto;max-width:245px;font-size:13px}.edit-layout{display:grid;grid-template-columns:310px minmax(0,1fr);min-height:calc(100vh - 266px)}.sidebar{border-right:1px solid var(--line);background:white;display:flex;flex-direction:column;min-width:0}.tabs{padding:16px 18px 0;display:flex;gap:5px;border-bottom:1px solid var(--line)}.tab{flex:1;min-height:48px;border-bottom:3px solid transparent;display:flex;gap:8px;align-items:center;justify-content:center;font-size:14px;color:var(--muted)}.tab[aria-selected=true]{border-color:var(--brand-dark);color:var(--brand-dark);font-weight:600}.panel{padding:22px 20px;display:grid;gap:20px;align-content:start}.panel h3{margin-bottom:6px}.panel p{color:var(--muted);font-size:13px}.panel .section{border-top:1px solid var(--line);padding-top:18px}.photo-tray{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.photo-thumb{aspect-ratio:1;border-radius:6px;overflow:hidden;padding:0;border:2px solid transparent;position:relative;background:#f3f4f6}.photo-thumb img{width:100%;height:100%;object-fit:cover}.photo-thumb[aria-pressed=true]{border-color:var(--brand-dark)}.photo-thumb small{position:absolute;bottom:0;left:0;right:0;background:#fffef2ed;color:#4b5563;font-size:10px;padding:2px}.range-row{display:grid;gap:8px}.range-head{display:flex;justify-content:space-between;font-size:13px}.range-head output{color:var(--muted)}input[type=range]{width:100%;accent-color:var(--brand-dark);height:25px}.crop-grid{display:grid;gap:13px}.swatches{display:flex;gap:8px;flex-wrap:wrap}.swatch{width:32px;height:32px;border:3px solid white;outline:1px solid #c3c9c7;border-radius:50%}.swatch[aria-pressed=true]{outline:2px solid var(--brand-dark)}.text-fields{display:grid;gap:6px}.text-field-btn{text-align:left;padding:12px;border:1px solid var(--line);border-radius:6px;min-height:44px;font-size:13px}.text-field-btn[aria-pressed=true]{border-color:var(--brand-dark);background:var(--soft)}.help-inline{font-size:12px!important;color:var(--muted);padding:12px;border-radius:6px;background:#f6f7f8}.sample-toggle{font-size:13px;color:var(--brand-dark);text-decoration:underline;min-height:44px;text-align:left;padding:0}.reference{padding:14px;background:var(--subtle);border:1px solid var(--line);border-radius:8px;display:flex;gap:12px;align-items:center;text-align:left;min-width:0}.reference img{width:66px;height:55px;object-fit:contain}.reference span{font-size:12px}.workspace{background:#f3f4f6;position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;padding:22px 30px 14px}.workspace-toolbar{display:flex;justify-content:space-between;align-items:center;width:100%;gap:15px}.segmented{background:white;border:1px solid var(--line);border-radius:8px;padding:3px;display:flex}.segmented button{padding:8px 14px;min-height:38px;border-radius:5px;font-size:13px;display:flex;gap:7px;align-items:center}.segmented button[aria-pressed=true]{background:var(--ink);color:white}.workspace-tools{display:flex;gap:7px}.stage{width:100%;flex:1;min-height:360px;display:flex;align-items:center;justify-content:center;padding:30px 10px;perspective:1800px}.paper-wrap{position:relative;width:100%;max-width:570px;aspect-ratio:var(--ratio);transition:transform 400ms ease;filter:drop-shadow(0 20px 15px #1f242920)}.paper-wrap.portrait{max-width:300px}.paper-wrap.wide{max-width:640px}.paper-wrap svg{display:block;width:100%;height:100%;background:white}.paper-wrap [data-slot],.paper-wrap [data-text]{cursor:pointer}.paper-wrap [data-slot]:focus,.paper-wrap [data-text]:focus{outline:none;stroke:var(--brand-dark);stroke-width:4px}.canvas-hint{text-align:center;font-size:12px;color:var(--muted);margin-bottom:18px;max-width:480px}.side-tabs{display:flex;gap:12px;align-items:flex-start;justify-content:center;width:100%;padding:8px 0 10px}.side-tab{display:flex;flex-direction:column;align-items:center;gap:7px;font-size:11px;color:var(--muted);border-bottom:2px solid transparent;padding:5px 7px 10px;min-width:64px}.side-tab[aria-pressed=true]{color:var(--brand-dark);border-color:var(--brand-dark)}.side-tab svg{width:56px;height:40px;object-fit:contain;background:white;border:1px solid var(--line);box-shadow:0 1px 3px #10151b08}.side-tab.portrait svg{width:30px;height:42px}.editor-footer{position:sticky;bottom:0;z-index:10;background:white;border-top:1px solid var(--line);padding:13px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 -5px 15px #10151b04}.order-summary strong{display:block;font-size:15px}.order-summary small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.price-group{display:flex;align-items:center;gap:22px}.price{text-align:right}.price strong{font-size:22px;letter-spacing:-.025em}.price small{display:block;font-size:11px;color:var(--muted)}.check-row{display:flex;gap:9px;align-items:flex-start;font-size:13px}.check-row input{margin-top:3px;accent-color:var(--brand-dark);width:17px;height:17px;flex-shrink:0}.photo-warning{color:#805500!important;background:#fff9e8;padding:10px;border-radius:6px}.danger{color:var(--danger)}.text-counter{font-size:11px;color:var(--muted);text-align:right;margin-top:4px}
.preview-object{position:relative;transform-style:preserve-3d;width:100%;height:100%;transform:rotateY(var(--turn,0deg));transition:transform 700ms cubic-bezier(.2,.85,.25,1)}.preview-panel{position:absolute;inset:0;transform-style:preserve-3d}.preview-panel.cover{transform-origin:left;transform:translateZ(1px) rotateY(var(--fold,0deg));transition:transform 700ms ease}.preview-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 1px 3px #10151b20}.preview-face.reverse{transform:rotateY(180deg)}.preview-face svg{width:100%;height:100%}.paper-wrap.opened{transform:scale(.64) translateX(30%)}.paper-wrap.preview-flat{transform:rotateX(5deg) rotateY(-9deg)}
.review-page{max-width:1250px;margin:auto;padding:28px 4vw 60px}.review-heading{margin:22px 0 28px}.review-heading p{color:var(--muted);margin-top:10px}.review-columns{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:34px;align-items:start}.review-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.review-card{background:var(--subtle);border:1px solid var(--line);padding:22px;border-radius:10px;min-width:0}.review-card svg{display:block;width:100%;max-height:250px;background:white;filter:drop-shadow(0 5px 5px #10151b17)}.review-card .row{margin-top:15px}.review-card p{font-size:13px}.review-card button{font-size:12px;color:var(--brand-dark);text-decoration:underline;min-height:44px}.summary-box{border:1px solid var(--line);border-radius:12px;padding:22px;display:grid;gap:18px;position:sticky;top:20px}.summary-line{display:flex;justify-content:space-between;gap:15px;font-size:13px}.summary-line.total{padding-top:18px;border-top:1px solid var(--line);font-size:18px;font-weight:600}.quantity{display:flex;align-items:center;gap:16px}.quantity button{width:36px;height:36px;border:1px solid var(--line);border-radius:5px}.notice{padding:12px;border-radius:6px;font-size:12px;background:var(--soft);color:var(--brand-dark)}.issues{display:grid;gap:8px}.issue{font-size:12px;color:#805500;background:#fff9e8;padding:11px;border-radius:6px;display:flex;gap:8px;align-items:center;text-align:left}.issue .icon{width:18px}.done-page{text-align:center;padding:55px 20px;max-width:760px;margin:auto}.done-icon{width:70px;height:70px;border-radius:50%;background:var(--soft);color:var(--brand-dark);display:grid;place-items:center;margin:0 auto 24px}.done-icon .icon{width:32px;height:32px}.done-page p{margin:15px 0 26px;color:var(--muted)}.done-preview{max-width:380px;margin:28px auto;filter:drop-shadow(0 10px 12px #10151b22)}.done-page .row{justify-content:center;flex-wrap:wrap}
dialog{border:0;border-radius:12px;box-shadow:0 25px 90px #10151b40;padding:0;width:min(690px,calc(100vw - 28px));max-height:90vh;color:var(--ink);background:white}dialog::backdrop{background:#10151b65;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);gap:20px}.dialog-head h2{font-size:20px}.dialog-body{padding:24px}.dialog-body p{color:var(--muted);margin-bottom:18px;font-size:14px}.dialog-body .choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{padding:24px 14px;border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;text-align:center;justify-items:center;min-height:125px}.choice:hover{background:var(--soft);border-color:var(--brand-dark)}.choice .icon{width:28px;height:28px}.dialog-footer{padding:16px 22px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px}.reference-image{display:block;max-height:430px;max-width:100%;margin:0 auto 22px;object-fit:contain}.reference-images{display:flex;gap:15px;overflow:auto}.reference-images img{height:180px;max-width:250px;object-fit:contain}.dialog-body .model-image{width:100%;height:340px;object-fit:contain;background:var(--subtle);border-radius:8px}.model-switch{display:flex;gap:6px;margin-top:15px;flex-wrap:wrap}#toast{position:fixed;bottom:95px;left:50%;transform:translate(-50%,18px);padding:13px 22px;border-radius:8px;background:#172923;color:white;box-shadow:var(--shadow);z-index:100;max-width:min(600px,92vw);opacity:0;pointer-events:none;transition:opacity 180ms,transform 180ms;font-size:13px}#toast.show{opacity:1;transform:translate(-50%,0)}body.is-fullscreen .sidebar,body.is-fullscreen #header,body.is-fullscreen #reviewer,body.is-fullscreen .editor-top{display:none}body.is-fullscreen .edit-layout{grid-template-columns:1fr;min-height:calc(100vh - 88px)}body.is-fullscreen .paper-wrap{max-width:800px}body.is-fullscreen .paper-wrap.portrait{max-width:400px}
@media(min-width:1600px){.edit-layout{grid-template-columns:340px 1fr}.stage{min-height:480px}.paper-wrap{max-width:700px}.paper-wrap.portrait{max-width:350px}}
@media(max-width:1100px){.design-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.format-card{padding:13px 10px;gap:8px}.format-glyph{width:35px}.steps{gap:12px}.step-line{width:15px}.saved{display:none}.gallery-controls{align-items:flex-start}.filters{gap:5px}.chip{font-size:12px;padding:8px 11px}.edit-layout{grid-template-columns:280px minmax(0,1fr)}.workspace{padding:20px}.stage{min-height:335px}.editor-top{padding:12px 20px}.review-columns{grid-template-columns:minmax(0,1fr) 300px;gap:22px}}
@media(max-width:760px){#reviewer{padding:5px 16px}.review-notice{display:none}.review-tools button{display:none}#header{min-height:68px;padding:10px 16px;gap:12px}.brand-logo{width:117px;height:29px}.brand-logo.orwo{width:57px;height:36px}.steps{gap:6px;font-size:11px}.step{gap:5px}.step b{width:23px;height:23px;font-size:11px}.step:not(.active) .step-name{display:none}.step-line{width:10px}.header-actions{gap:0}.header-actions>.btn{display:none}.lang-btn{padding:8px;border:0}.gallery{padding:25px 16px}.gallery-top{display:block}.gallery-top h1{font-size:28px;max-width:430px}.gallery-top p{font-size:14px}.upload-hero{width:100%;margin-top:20px;padding:12px;gap:12px}.upload-hero .upload-symbol{height:46px;width:46px}.upload-hero p{display:none}.upload-hero>div:last-child{display:flex;align-items:center;justify-content:space-between;gap:14px;flex:1}.upload-hero h3{font-size:13px}.upload-hero .btn{margin:0;min-height:44px;flex-shrink:0}.format-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px auto}.format-card{min-height:92px;padding:12px 10px}.format-card .format-title{font-size:13px}.format-card small{font-size:11px}.format-glyph{width:33px}.format-card strong{font-size:13px}.gallery-controls{display:flex;flex-direction:column;gap:14px}.filters{max-width:100%;flex-wrap:nowrap;overflow:auto;width:100%;padding:4px 2px}.chip{font-size:13px}.search{width:100%;max-width:none}.grid-head{font-size:12px}.design-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tile-image{height:168px;padding:16px 10px}.tile-footer{padding:11px 12px;gap:5px}.tile-footer h3{font-size:13px}.tile-footer small{font-size:11px}.tile-go{width:26px;height:26px}.tile-go .icon{width:16px}.resume{align-items:flex-start}.resume .btn{font-size:12px;flex-shrink:0}.editor-top{padding:9px 16px;gap:8px}.editor-top h1{font-size:15px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-top .project-name{gap:8px}.editor-top .project-name>.btn{padding:8px 0;font-size:0}.editor-top .field{font-size:12px;max-width:140px;height:40px;padding:0 6px}.edit-layout{display:flex;flex-direction:column;min-height:auto}.workspace{order:0;padding:14px 16px 7px}.sidebar{order:1;border-right:0;border-top:1px solid var(--line)}.workspace-toolbar{gap:6px}.segmented button{padding:8px 10px;font-size:12px}.workspace-tools .icon-btn{width:38px;height:38px}.workspace-tools{gap:4px}.stage{min-height:260px;max-height:365px;padding:23px 8px}.paper-wrap{max-width:460px}.paper-wrap.portrait{max-width:200px}.paper-wrap.wide{max-width:500px}.canvas-hint{margin-bottom:6px;font-size:11px}.side-tabs{gap:8px;padding:4px 0}.side-tab{padding:5px 4px;min-width:57px;font-size:10px}.side-tab svg{width:44px;height:32px}.side-tab.portrait svg{width:24px;height:33px}.tabs{padding:0 16px}.tab{min-height:48px}.panel{padding:18px 20px;gap:16px}.panel .photo-tray{grid-template-columns:repeat(6,1fr)}.crop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.crop-grid .range-row:first-child{grid-column:1/-1}.editor-footer{padding:12px 16px;gap:12px}.order-summary strong{font-size:12px}.order-summary small{font-size:10px}.price-group{gap:10px}.price{display:none}.price-group .btn{font-size:13px;min-width:170px}.review-page{padding:18px 16px 35px}.review-heading h1{font-size:28px}.review-columns{display:flex;flex-direction:column}.review-pages{width:100%;gap:12px}.review-card{padding:12px}.summary-box{width:100%;position:static}.review-card .row{gap:5px}.review-card p{font-size:12px}.review-card button{font-size:11px}.dialog-body{padding:20px}.dialog-head{padding:15px 18px}.dialog-body .choices{grid-template-columns:1fr}.dialog-body .model-image{height:250px}.dialog-footer{padding:15px 18px}.dialog-footer .btn{font-size:13px}.done-page h1{font-size:28px}.done-page{padding:35px 20px}body.is-fullscreen .paper-wrap{max-width:600px}body.is-fullscreen .paper-wrap.portrait{max-width:290px}body.is-fullscreen .stage{max-height:none;min-height:400px}}
@media(max-width:370px){.step-name{display:none!important}.steps{gap:4px}.step-line{width:8px}.format-glyph{display:none}.format-card{min-height:87px}.tile-image{height:133px}.tile-footer{padding:9px}.tile-go{display:none}.editor-top h1{max-width:110px}.editor-top .field{max-width:135px}.order-summary{max-width:110px}.price-group .btn{min-width:155px;padding:10px}.panel .photo-tray{grid-template-columns:repeat(4,1fr)}.side-tabs{gap:4px}.reviewer .proto-label{font-size:10px}.upload-hero>div:last-child{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:761px){.stage{min-height:240px;padding:22px 10px}.paper-wrap{max-width:min(570px,calc((100vh - 420px)*var(--ratio)))}.paper-wrap.portrait{max-width:min(300px,calc((100vh - 420px)*var(--ratio)))}.paper-wrap.wide{max-width:min(640px,calc((100vh - 420px)*var(--ratio)))}body.is-fullscreen .paper-wrap{max-width:min(800px,calc((100vh - 270px)*var(--ratio)))}}
.editor-top h1::after{content:'Layout demo';display:block;font-size:11px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:3px}
.spatial-demo{padding:65px 40px;background:#ebe7df;perspective:1000px;min-height:290px;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.spatial-paper{width:75%;max-height:360px;transform:rotateX(30deg) rotateZ(-12deg);box-shadow:2px 3px 0 #d2cec5,12px 28px 25px #28241d30}.spatial-paper svg{width:100%;height:100%;display:block}
@media(max-width:760px){.paper-wrap.opened{transform:scale(.5) translateX(35%)}}
html[lang=de] .editor-top h1::after{content:'Layout-Demo'}
@media(min-width:761px){.edit-layout{height:calc(100dvh - 270px);min-height:430px}.sidebar{overflow-y:auto}.workspace{height:100%;overflow:hidden}.stage{min-height:0;padding:16px 8px}.paper-wrap{max-width:min(570px,calc((100dvh - 490px)*var(--ratio)))}.paper-wrap.portrait{max-width:min(300px,calc((100dvh - 490px)*var(--ratio)))}.paper-wrap.wide{max-width:min(640px,calc((100dvh - 490px)*var(--ratio)))}body.is-fullscreen .edit-layout{height:calc(100dvh - 88px)}.canvas-hint{margin-bottom:8px}.side-tabs{padding:3px 0}}
/* v3 — shared core / ORWO systems, quieter surfaces and direct editing. */
:root{--radius:8px;--focus-halo:rgba(53,178,182,.3)}
[data-brand=orwo]{--focus-halo:rgba(6,172,218,.3)}
button{transition:background 160ms,color 160ms,transform 80ms}
button:active:not(:disabled){transform:scale(.985)}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--brand-dark);outline-offset:3px;box-shadow:0 0 0 5px var(--focus-halo)}
.btn{height:44px;min-height:44px;border-radius:8px;font-size:15px;letter-spacing:-.005em;padding:0 20px}
.btn.primary:hover{background:var(--brand-dark);color:white;filter:none}
[data-brand=orwo] .btn.primary:hover{background:#2a323b}
.btn.secondary{border-color:transparent;background:var(--soft);color:var(--brand-dark)}
.btn.secondary:hover{border-color:transparent;background:var(--soft);filter:brightness(.97)}
.btn:disabled{opacity:1;background:#d1d5db;color:#6b7280;border-color:transparent}
.icon-btn{border:0;background:transparent}.icon-btn:hover{background:var(--soft)}
#reviewer{border:0;background:#f3f4f6;min-height:32px;padding:2px 4vw}
.review-tools select{border:0;background:transparent}.review-notice{color:#6b7280}
#header{border:0;min-height:84px}.lang-btn{border:0;border-radius:8px}
.step b{border:0;background:#f3f4f6;color:#6b7280}.step.active b{background:var(--soft);color:var(--brand-dark);font-weight:700}.step.done b{background:var(--soft);color:var(--brand-dark)}
.step-line{background:#e5e7eb;width:24px}.steps{gap:16px}
.gallery{padding-top:40px}.gallery-top{align-items:center;gap:40px}.gallery-top h1{margin:10px 0 12px;max-width:680px;font-size:34px;letter-spacing:-.03em}.gallery-top p{font-size:15px;line-height:1.6;max-width:560px}
.upload-hero{border:0;background:transparent;padding:0 0 0 24px;width:320px;gap:16px;border-radius:0}.upload-hero .upload-symbol{background:#fff;width:60px;height:72px;border-radius:8px}.upload-hero h3{font-size:15px}.upload-hero .btn{background:white;height:44px;padding:0 16px;margin-top:12px}.upload-hero p{font-size:13px}
.format-grid{margin:32px auto;gap:16px}.format-card{background:transparent;border-color:transparent;box-shadow:none;padding:16px;border-radius:8px;min-height:104px}.format-card:hover{background:#f0e9df}.format-card.selected{background:var(--soft);border-color:var(--brand)}.format-card.selected:hover{background:var(--soft)}.format-card .check{top:12px;right:12px}.format-glyph span{border-color:var(--muted);box-shadow:3px 3px 0 #d1d5db}.format-card.selected .format-glyph span{border-color:var(--brand-dark);box-shadow:3px 3px 0 var(--brand)}
.gallery-controls{margin-bottom:24px;gap:24px}.filters{gap:4px}.chip{border:0;background:transparent;border-radius:8px;padding:0 14px;height:44px;font-size:13px}.chip:hover{background:#ffffff99}.chip[aria-pressed=true]{background:white;color:var(--brand-dark);box-shadow:none}.search input{border:0;background:#ffffffb3;border-radius:8px}.search{max-width:260px}.grid-head{margin-bottom:20px;font-size:13px}
.design-grid{gap:32px 24px}.design-tile{background:transparent;border:0;border-radius:0;overflow:visible}.design-tile:hover{transform:none;box-shadow:none}.tile-image{height:230px;background:#fff;border-radius:8px;padding:24px 16px;overflow:hidden}.tile-image img{transition:transform 240ms cubic-bezier(.2,.85,.25,1);filter:drop-shadow(0 7px 6px #10151b12)}.design-tile:hover .tile-image img{transform:scale(1.035)}.tile-footer{padding:12px 0 0;border:0;align-items:center}.tile-footer h3{font-size:15px;font-weight:500;margin:0}.tile-go{background:transparent;width:28px;height:32px;color:var(--muted)}.tile-go .icon{width:18px}.tile-action{border-radius:8px}.gallery-bottom{padding:32px 0 8px}.gallery-bottom+.gallery-bottom{padding-top:8px}.gallery-bottom .btn{background:transparent}.gallery-bottom .btn.secondary{background:#fff}
.resume{border:0;border-radius:8px;background:white;padding:16px 20px;margin-bottom:32px}.resume .btn.primary{background:var(--soft);color:var(--brand-dark)}
.editor-top{border:0;padding:12px 28px;background:white}.editor-top h1{font-size:20px}.editor-top .field{border:0;background:#f3f4f6;border-radius:8px}.sidebar{border:0}.tabs{border:0;gap:8px;padding:12px 20px 0}.tab{border:0;border-radius:8px;min-height:44px;background:transparent}.tab[aria-selected=true]{background:var(--soft);color:var(--brand-dark)}.panel{padding:24px 24px;gap:24px}.panel h3{font-size:17px}.panel .section{border:0;padding-top:0}.panel .help-inline{padding:0;background:none;font-size:11px!important}.reference{padding:0;border:0;background:transparent;gap:12px;border-radius:0}.reference img{width:56px;height:48px}.reference span{font-size:11px;color:var(--muted)}.reference strong{font-size:13px;color:var(--ink);font-weight:500}.sample-toggle{font-size:13px;text-decoration:none}.sample-toggle:hover{text-decoration:underline}.photo-thumb{border-radius:8px;border-width:2px}.text-field-btn{border:0;background:#f3f4f6;border-radius:8px}.text-field-btn[aria-pressed=true]{background:var(--soft)}.field{background:#f3f4f6;border:1.5px solid transparent;border-radius:8px}.field:focus{background:white;border-color:var(--brand)}
.workspace{background:#fff;padding:20px 32px 12px}.workspace-toolbar{padding-bottom:4px}.segmented{background:#f3f4f6;border:0;border-radius:8px;padding:4px}.segmented button{border-radius:6px;min-height:36px}.segmented button[aria-pressed=true]{background:white;color:var(--ink);box-shadow:0 1px 3px #10151b10;font-weight:600}.workspace-tools{gap:4px}.paper-wrap{filter:drop-shadow(0 12px 14px #10151b1c)}.side-tab{border:0;border-radius:8px;padding:7px 12px;gap:7px;color:var(--muted);min-height:66px}.side-tab[aria-pressed=true]{background:var(--soft);color:var(--brand-dark);font-weight:600}.side-tab svg{border:0;box-shadow:0 1px 4px #10151b18}.side-tabs{gap:8px}.canvas-hint{font-size:11px;color:#6b7280}
.editor-footer{border-top:1px solid #f3f4f6;box-shadow:none;padding:16px 28px}.editor-footer .btn{font-size:15px}.price strong{font-size:24px}.order-summary strong{font-weight:500}.text-fields{gap:8px}.swatch{width:36px;height:36px}.summary-box{border:0;border-radius:0;padding:8px 0 8px 24px;gap:20px}.review-card{border:0;background:transparent;padding:20px 16px;border-radius:0}.review-pages{gap:32px}.review-card .row{margin-top:20px}.review-card button{font-size:13px}.review-heading{margin:24px 0 40px}.summary-line.total{border-color:#f3f4f6}.quantity button{border:0;background:#f3f4f6;width:44px;height:44px;border-radius:8px}.notice{background:transparent;padding:0;color:var(--muted)}.summary-box>.notice{font-size:11px}
.dialog-head{border:0;padding-bottom:0}.dialog-footer{border:0}.dialog-body .choice{border:0;background:var(--subtle)}
@media(max-width:1000px) and (min-width:761px){.gallery-top{gap:24px}.upload-hero{width:280px;padding-left:0}.format-grid{gap:8px}.format-card{padding:12px}.gallery-controls{align-items:flex-start}.filters{flex-wrap:wrap}.search{min-width:190px}.steps{gap:10px}.step-line{width:14px}}
@media(max-width:760px){#reviewer{padding:2px 16px;min-height:32px}#header{min-height:72px;padding:12px 16px}.steps{gap:6px}.step-line{width:8px}.gallery{padding:24px 16px 32px}.gallery-top h1{font-size:28px}.gallery-top p{font-size:15px}.upload-hero{width:100%;padding:0;margin-top:20px}.upload-hero .upload-symbol{height:44px;width:44px}.upload-hero .btn{margin-top:0;padding:0 12px;font-size:13px}.format-grid{gap:8px;margin:24px 0}.format-card{padding:12px 10px;min-height:96px}.gallery-controls{gap:16px;margin-bottom:20px}.filters{padding:0}.chip{font-size:13px;padding:0 12px}.search{max-width:none}.grid-head{font-size:11px;gap:8px}.design-grid{gap:24px 12px}.tile-image{height:170px;padding:14px 8px}.tile-footer{padding:10px 0 0}.tile-footer h3{font-size:13px}.tile-go{width:22px}.editor-top{padding:8px 16px}.editor-top h1{font-size:15px}.editor-top .field{font-size:11px}.workspace{padding:12px 16px 8px}.workspace-tools .icon-btn{width:36px;height:44px}.workspace-toolbar>.segmented button{padding:8px;gap:5px}.sidebar{border:0}.tabs{padding:8px 16px}.panel{padding:16px 20px 24px;gap:20px}.side-tab{padding:6px 8px;min-width:0}.side-tabs{gap:4px}.editor-footer{padding:12px 16px}.editor-footer .btn{font-size:13px}.order-summary strong{font-size:11px}.order-summary small{font-size:10px}.summary-box{padding:12px 0}.review-heading{margin:24px 0}.review-pages{gap:16px}.review-card{padding:8px}.review-card .row{margin-top:12px}.review-card p{font-size:11px}.review-card button{font-size:13px}}

/* v4 — white canvas, brand typography and lightweight card photography. */
@font-face{font-family:Montserrat;src:url(assets/fonts/montserrat-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url(assets/fonts/montserrat-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url(assets/fonts/montserrat-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url(assets/fonts/montserrat-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Jost;src:url(assets/fonts/jost-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Jost;src:url(assets/fonts/jost-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Jost;src:url(assets/fonts/jost-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Jost;src:url(assets/fonts/jost-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}

:root{--on-primary:#fff;--page:#fff;--subtle:#f6f7f8;--ui:Montserrat,system-ui,sans-serif}
[data-brand=orwo]{--page:#fff;--subtle:#f6f7f8;--ui:Jost,system-ui,sans-serif;--primary:#060607}
#reviewer{background:#f8f9fa;font-size:10px}.proto-label{letter-spacing:.045em}
#header{border-bottom:1px solid #f1f3f4}
.gallery{padding-top:38px}.gallery-top{gap:32px}.gallery-top h1{font-size:36px;font-weight:600;letter-spacing:-.04em;line-height:1.2}.gallery-top .eyebrow{font-size:12px;letter-spacing:.1em}.gallery-top p{font-size:14px;line-height:1.65}
.upload-hero{width:310px;padding:0;gap:0}.upload-hero .upload-symbol{display:none}.upload-hero h3{font-size:14px;font-weight:600}.upload-hero p{font-size:12px}.upload-hero .btn{background:var(--primary);color:white;font-size:13px;padding:0 20px}.upload-hero .btn:hover{background:var(--brand-dark)}
.format-grid{gap:12px;margin:32px auto 28px}.format-card{gap:8px;padding:12px 16px 12px 6px;min-height:116px;border:0;border-radius:10px}.format-card:hover{background:#f7f9f9}.format-card.selected{background:var(--soft);border:0}.format-card .format-title{font-size:13px;line-height:1.4;font-weight:600}.format-card small{font-size:11px;line-height:1.5;margin:4px 0}.format-card strong{font-size:13px;font-weight:600}.format-card .check{right:10px;top:9px;font-size:14px}.format-render{width:94px;height:86px;object-fit:contain;flex-shrink:0;mix-blend-mode:multiply}
.gallery-controls{gap:20px;margin-bottom:26px;padding-top:22px;border-top:1px solid #edf0f1}.chip{border-radius:6px;font-weight:500;padding:0 12px;font-size:12px}.chip:hover{background:#f6f8f8}.chip[aria-pressed=true]{background:var(--soft);color:var(--brand-dark)}.search input{background:#f5f7f8;font-size:12px}.search{max-width:245px}.grid-head{font-size:12px;margin-bottom:16px}
.design-grid{gap:32px 30px}.tile-image{height:210px;padding:16px 4px;background:transparent;border-radius:0;overflow:visible}.tile-image img{filter:drop-shadow(0 3px 3px #10151b13);transition:transform 240ms ease}.design-tile:hover .tile-image img{transform:translateY(-4px) scale(1.015)}.tile-footer{padding-top:8px}.tile-footer h3{font-size:13px;font-weight:600;line-height:1.5}.tile-go{color:#869097}.tile-go .icon{width:17px}.tile-action{border-radius:4px}.gallery-bottom .btn.secondary{background:#f3f6f7;font-size:13px}.resume{background:#f6f8f8}
.btn.primary{color:#fff}.btn{font-size:14px}.resume .btn.primary{background:var(--primary);color:#fff}.panel h3{font-size:16px}.panel .help-inline{font-size:12px!important}.canvas-hint{font-size:12px}.editor-top h1{font-weight:600}.editor-footer .btn{font-size:14px}.editor-top .field{max-width:290px}.editor-footer .order-summary strong{font-size:13px}.side-tab{font-size:12px}.step-name{font-size:12px}.summary-box>.notice{font-size:12px}
.preview-object{transform:rotateX(var(--tilt,8deg)) rotateY(var(--turn,0deg));cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}.preview-object.rotating{transition:none;cursor:grabbing}.preview-object svg{pointer-events:none}.preview-face{outline:.5px solid #d9dddf;box-shadow:0 2px 2px #1b232b20}.paper-wrap.is-preview{filter:drop-shadow(0 18px 14px #13242d20)}
#preview-controls{width:100%;padding:12px 0 6px}.rotation-control{display:flex;align-items:center;gap:12px;max-width:320px;margin:16px auto 0;font-size:12px;color:var(--muted)}.rotation-control input{flex:1;min-width:0;height:32px;margin:0}.rotation-control output{min-width:36px;text-align:right;font-variant-numeric:tabular-nums}.rotation-control span{font-weight:500}
@media(min-width:761px){.paper-wrap.is-preview{max-width:min(530px,calc((100dvh - 450px)*var(--ratio)))}.paper-wrap.is-preview.portrait{max-width:min(290px,calc((100dvh - 450px)*var(--ratio)))}.paper-wrap.is-preview.opened{max-width:min(510px,calc((100dvh - 450px)*var(--ratio)))}.stage:has(.is-preview){perspective:1400px}}
@media(max-width:1200px) and (min-width:761px){.format-render{width:70px;height:74px}.format-card{padding-right:10px}.format-card .format-title{font-size:12px}.format-card small{font-size:10px}.gallery-controls{align-items:flex-start}.filters{gap:2px}.chip{padding:0 10px}.gallery-top h1{font-size:32px}}
@media(max-width:760px){.gallery{padding-top:26px}.gallery-top h1{font-size:28px;max-width:440px}.gallery-top p{font-size:13px}.upload-hero{margin-top:20px;width:100%}.upload-hero>div:last-child{gap:10px}.upload-hero h3{font-size:12px}.upload-hero .btn{font-size:12px;padding:0 14px}.format-grid{gap:6px;margin:26px 0 22px}.format-card{gap:5px;padding:12px 8px 12px 2px;min-height:100px}.format-render{width:52px;height:66px}.format-card .format-title{font-size:11px;line-height:1.4}.format-card small{font-size:10px}.format-card strong{font-size:12px}.format-card .check{font-size:12px;right:6px;top:5px}.gallery-controls{gap:12px;padding-top:18px;margin-bottom:18px}.search{max-width:none}.chip{font-size:12px}.grid-head{font-size:10px}.design-grid{gap:26px 18px}.tile-image{height:133px;padding:10px 0}.tile-footer h3{font-size:12px}.tile-footer{padding-top:2px}.tile-go{width:18px}.steps{gap:4px}.step-name{font-size:10px}.step-line{width:5px}.brand-logo{width:108px}.header-actions{gap:0}.lang-btn{font-size:12px;padding:8px 6px}.editor-top .field{max-width:160px;font-size:10px}.editor-footer .btn{font-size:12px;padding:0 13px;min-width:0}.order-summary{max-width:145px}.editor-footer .order-summary strong{font-size:10px}.editor-footer{gap:10px}.side-tab{font-size:10px}.rotation-control{max-width:270px;margin-top:8px}.canvas-hint{font-size:11px}#preview-controls{padding-top:4px}.stage:has(.is-preview){min-height:275px}.panel h3{font-size:16px}.step b{width:22px;height:22px}}
@media(prefers-reduced-motion:reduce){.preview-object,.preview-panel.cover,.paper-wrap,.tile-image img{transition:none!important}}
/* Let the artwork determine the gallery rhythm, without oversized tile containers. */
.tile-image{height:auto;aspect-ratio:1.8;padding:14px 4px}.tile-image img{width:100%;height:100%;object-fit:contain}
@media(max-width:760px){.tile-image{height:auto;aspect-ratio:1.5;padding:8px 0}}
/* Keep names attached to artwork at every format and viewport. */
.design-grid{align-items:start;row-gap:32px}.tile-image{display:block;height:auto;aspect-ratio:auto;padding:0}.tile-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}.tile-footer{padding:10px 2px 0;min-height:34px}.tile-footer h3{margin:0}.grid-head{margin-bottom:26px}
.lang-btn{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;flex-shrink:0}
@media(max-width:760px){.design-grid{row-gap:24px;column-gap:16px}.tile-image{height:auto;aspect-ratio:auto;padding:0}.tile-footer{padding:8px 0 0;min-height:30px}.format-card small{font-size:11px}.grid-head{margin-bottom:22px}.lang-btn .icon{width:14px}}

/* Shadow-free vector format miniatures, sharp at every pixel density. */
.format-render{mix-blend-mode:normal;filter:none;box-shadow:none}

/* v4.2: precise gallery edges, open-V cards and quiet page status. */
.tile-image{position:relative}.tile-image img{filter:none;box-shadow:none;clip-path:inset(1.5% 1% 2.5% 1%)}.tile-image::after{content:'';position:absolute;inset:1.5% 1% 2.5% 1%;border:1px solid #dce2e5;pointer-events:none}.design-tile:hover .tile-image img{transform:none}.design-tile:hover .tile-image::after{border-color:#aabcc1}
.paper-wrap.opened{transform:scale(.62) translateX(43%)}
.page-label{display:inline-flex;align-items:center;justify-content:center;gap:5px}.page-indicator{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.page-indicator svg,.page-indicator .icon{width:16px!important;height:16px!important;background:none!important;box-shadow:none!important;border:0!important}.page-indicator.pending{color:#a36b1d}.page-indicator.ready{color:var(--brand-dark)}.page-indicator.blank{color:#8a959b}.preview-pages-nav{padding-top:8px;gap:4px}.preview-pages-nav .side-tab{min-height:36px;padding:6px 10px;font-size:11px;background:none}.text-review-prompt{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted)}.text-review-prompt>span{display:inline-flex;align-items:center;gap:5px}.text-review-prompt .btn{font-size:12px;padding:0 6px;white-space:nowrap;color:var(--brand-dark)}
@media(min-width:761px){.paper-wrap.is-preview{max-width:min(530px,calc((100dvh - 505px)*var(--ratio)))}.paper-wrap.is-preview.portrait{max-width:min(290px,calc((100dvh - 505px)*var(--ratio)))}.paper-wrap.is-preview.opened{max-width:min(510px,calc((100dvh - 505px)*var(--ratio)))}}
@media(max-width:760px){.paper-wrap.opened{transform:scale(.5) translateX(43%)}.side-tab{padding:6px 5px}.side-tab .page-label{gap:3px}.page-indicator{width:14px;height:14px}.preview-pages-nav .side-tab{font-size:10px;padding:5px}.text-review-prompt{font-size:12px}}

.page-indicator.pending{width:16px;color:#9b650f}
@media(max-width:760px){.paper-wrap.portrait.opened{transform:scale(.68) translateX(43%)}}

/* v4.3 — angle-dependent, flat face shading, capped at 5% black. */
.preview-face::after{content:'';position:absolute;inset:0;background:#000;opacity:var(--face-shade,0);pointer-events:none;transition:opacity 700ms cubic-bezier(.2,.85,.25,1)}
.preview-object.rotating .preview-face::after{transition:none}
@media(prefers-reduced-motion:reduce){.preview-face::after{transition:none!important}}

/* v4.4 — a bounded card workspace with controls anchored to the artwork. */
.workspace{--stage-height:clamp(280px,calc(100dvh - 505px),500px);background:#f6f8f9;border-radius:12px;margin:8px 24px 18px 0;padding:20px 24px;justify-content:center;height:auto;overflow:auto}
.workspace-inner{width:100%;max-width:920px;margin:auto;display:flex;flex-direction:column;align-items:center;min-height:0}
.workspace-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0;flex-shrink:0}
#workspace-title{font-size:14px;font-weight:600;letter-spacing:-.015em;color:var(--muted);white-space:nowrap}
.mode-switch{background:#e9edef;padding:4px;border-radius:9px;gap:3px}.mode-switch button{height:42px;min-height:42px;padding:0 18px;font-size:14px;gap:8px;white-space:nowrap;font-weight:500;border-radius:6px}.mode-switch button[aria-pressed=true]{background:var(--primary);color:var(--on-primary);box-shadow:none;font-weight:600}.mode-switch button:not([aria-pressed=true]):hover{background:#fff}
.workspace-tools{justify-self:end;gap:2px}.workspace-tools .icon-btn{width:36px;height:40px}.workspace-tools .icon{width:18px}
.workspace .canvas-hint{max-width:none;margin:14px 0 0;font-size:12px;line-height:1.5;color:#65727b;min-height:18px}
.workspace .stage{flex:none;height:var(--stage-height);min-height:0;max-height:none;width:100%;padding:24px 16px;margin:0;perspective:1600px}
.workspace .paper-wrap,.workspace .paper-wrap.is-preview{max-width:min(560px,calc((var(--stage-height) - 56px)*var(--ratio)))}
.workspace .paper-wrap.portrait,.workspace .paper-wrap.is-preview.portrait{max-width:min(300px,calc((var(--stage-height) - 56px)*var(--ratio)))}
.workspace .paper-wrap.is-preview.opened{max-width:min(690px,calc((var(--stage-height) - 64px)*var(--ratio)/.62));transform:scale(.62) translateX(43%)}
.workspace .paper-wrap.is-preview.portrait.opened{max-width:min(420px,calc((var(--stage-height) - 64px)*var(--ratio)/.62))}
.canvas-actions{display:flex;flex-direction:column;align-items:center;width:100%;gap:6px;flex-shrink:0}
.workspace #preview-controls{width:auto;padding:0;display:flex;gap:22px;align-items:center;justify-content:center;flex-wrap:wrap}.workspace #preview-controls:empty{display:none}.workspace #preview-controls>.row{gap:8px}.workspace #preview-controls .btn{background:#fff;font-size:12px;height:38px;min-height:38px;padding:0 14px;color:var(--brand-dark)}
.workspace .rotation-control{margin:0;width:235px;font-size:11px;gap:8px;max-width:none}.workspace .rotation-control input{height:36px}
.workspace .side-tabs{width:auto;gap:8px;padding:8px 0 0}.workspace .side-tab{padding:8px 12px;min-height:66px;font-size:12px}.workspace .side-tab[aria-pressed=true]{background:#e3eff0}.workspace .side-tab>svg{box-shadow:none;border:1px solid #dce3e7}.workspace .preview-pages-nav .side-tab{min-height:38px;background:transparent;font-size:12px;padding:7px 10px}.workspace .preview-pages-nav .side-tab:hover{background:#e8eef0}
@media(min-width:761px){.edit-layout{height:calc(100dvh - 266px);min-height:560px;grid-template-columns:300px minmax(0,1fr)}.sidebar{padding-top:8px}.tabs{padding-top:8px}.workspace{min-height:0}body.is-fullscreen .edit-layout{height:calc(100dvh - 88px);min-height:0}body.is-fullscreen .workspace{margin:16px;--stage-height:clamp(320px,calc(100dvh - 330px),680px)}}
@media(max-width:1100px) and (min-width:761px){.workspace{padding:16px;margin-right:16px}.workspace-toolbar{grid-template-columns:1fr auto;gap:12px}#workspace-title{display:none}.mode-switch{justify-self:center;margin-left:45px}.mode-switch button{padding:0 14px;font-size:13px}.workspace-tools{gap:0}.workspace-tools .icon-btn{width:32px}.workspace #preview-controls{gap:10px}.workspace .rotation-control{width:210px}}
@media(max-width:760px){.edit-layout{height:auto;min-height:0}.workspace{--stage-height:290px;padding:16px 10px 14px;margin:8px 12px 16px;border-radius:10px;overflow:hidden}.workspace-toolbar{display:flex;justify-content:center;gap:8px;position:relative;flex-wrap:wrap}#workspace-title{display:none}.mode-switch{margin:0}.mode-switch button{padding:0 16px;font-size:13px;height:40px;min-height:40px}.workspace-tools{gap:0;justify-self:auto}.workspace-tools .icon-btn{width:32px;height:38px}.workspace .canvas-hint{font-size:11px;line-height:1.5;margin-top:12px;max-width:290px;min-height:32px}.workspace .stage{padding:24px 8px}.workspace .paper-wrap.is-preview.opened{max-width:340px;transform:scale(.52) translateX(43%)}.workspace .paper-wrap.is-preview.portrait.opened{max-width:250px;transform:scale(.64) translateX(43%)}.workspace #preview-controls{gap:8px 14px}.workspace #preview-controls .btn{font-size:12px}.workspace .rotation-control{width:245px}.workspace .side-tabs{gap:2px;padding-top:8px}.workspace .side-tab{font-size:10px;padding:6px;min-height:62px}.workspace .preview-pages-nav .side-tab{font-size:10px;padding:6px 5px;min-height:34px}.canvas-actions{gap:0}.sidebar{padding-top:0}.workspace .paper-wrap{max-width:min(330px,calc((var(--stage-height) - 48px)*var(--ratio)))}.workspace .paper-wrap.portrait{max-width:170px}body.is-fullscreen .workspace{--stage-height:420px;margin:12px}.workspace .mode-switch .icon{width:18px}}

/* v4.5 — mobile progressive disclosure, prioritising the designs. */
.mobile-intro,.mobile-format,.mobile-category{display:none}
/* Keep each paper face on a separate plane; avoid filtered 3D ancestors. */
.workspace .paper-wrap.is-preview{filter:none!important;transform-style:preserve-3d}
.preview-face{box-shadow:none!important;transform:translateZ(.15px);backface-visibility:hidden;-webkit-backface-visibility:hidden}
.preview-face.reverse{transform:rotateY(180deg) translateZ(.15px)}
.preview-face::after{content:none!important;display:none!important}
.preview-face .face-tint{transition:none}
@media(max-width:760px){
 #reviewer{min-height:26px;padding:0 16px;font-size:9px}.review-tools select{font-size:11px;height:26px}.proto-label{letter-spacing:.025em}
 #header{min-height:60px;padding:8px 16px;gap:12px}.brand-logo{width:112px;height:28px}.steps{gap:0;margin-left:auto}.steps .step:not(.active),.steps .step-line{display:none}.step.active{gap:7px}.step.active b{width:auto;min-width:30px;border:0;border-radius:0;background:none;height:auto;font-size:11px;white-space:nowrap}.step.active b::after{content:' / 3';white-space:pre;color:#829098;font-weight:400}.step-name{font-size:10px;line-height:1.3;max-width:72px}.lang-btn{min-height:36px;font-size:11px;padding:4px}.lang-btn .icon{display:none}
 .gallery{padding:20px 16px 28px}.gallery-top{margin:0 0 22px}.gallery-top .eyebrow,.gallery-top .desktop-intro,.gallery .upload-hero,.gallery>.format-grid{display:none}.mobile-intro{display:block}.gallery-top h1{font-size:25px;line-height:1.2;margin:0 0 8px;letter-spacing:-.035em}.gallery-top p.mobile-intro{font-size:13px;line-height:1.5;margin:0;color:var(--muted)}
 .resume{padding:0;margin:0 0 18px;background:transparent;gap:0;border:0}.resume>div:first-child{display:none}.resume .row{width:100%;gap:4px}.resume .btn.primary{height:40px;min-height:40px;flex:1;justify-content:flex-start;background:#f1f7f7;color:var(--brand-dark);font-size:12px;padding:0 12px}.resume .btn.quiet{width:36px;height:40px;min-height:40px;padding:0}.resume .icon{width:17px}
 .mobile-format{display:block;margin:0 0 20px}.mobile-format>label{display:block;margin:0 0 7px;font-size:12px;font-weight:600}.mobile-format select{height:48px;font-size:14px;background:#f5f7f8;padding:0 12px;border:1px solid #e7ecef;border-radius:7px}.mobile-format p{margin:8px 0 0;font-size:11px;color:var(--muted);line-height:1.5}
 .gallery-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:0;margin-bottom:16px;border:0;align-items:center}.gallery-controls .filters{display:none}.mobile-category{display:block;min-width:0}.mobile-category .field{height:42px;font-size:12px;padding:0 9px;background:#f5f7f8;border:0}.gallery-controls .search{min-width:0;width:100%}.gallery-controls .search .field{height:42px;font-size:12px;padding-left:32px;padding-right:7px}.gallery-controls .search .icon{left:10px;top:12px;width:15px}
 .grid-head{margin-bottom:14px;font-size:12px}.grid-head>span:last-child{display:none}.design-grid{gap:22px 16px}.tile-footer h3{font-size:12px}.tile-footer{padding-top:7px}.gallery-bottom{padding-top:24px}
}

@media(max-width:760px){.step.active b{display:inline-flex;align-items:center;justify-content:center;gap:0}}
