.shell{max-width:1360px;margin:0 auto;padding:var(--space-8) var(--space-6)}.shell-narrow{max-width:1080px}.shell-tight{max-width:900px}.stack{gap:var(--space-4)}.stack,.stack-tight{display:flex;flex-direction:column}.stack-tight{gap:var(--space-2)}.row,.row-between{display:flex;align-items:center;gap:var(--space-3)}.row-between{justify-content:space-between}.row-wrap{display:flex;flex-wrap:wrap;gap:var(--space-2)}.spacer{flex:1 1}.grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.grid-bench{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}@media (max-width:600px){.grid-2,.grid-3,.grid-4,.grid-bench{grid-template-columns:minmax(0,1fr)}.shell{padding:var(--space-6) var(--space-4)}}.scroll-x{overflow-x:auto}.blueprint{position:relative}.bp-inset{margin:6px}.site-nav{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:var(--color-bg);border-bottom:1px solid var(--color-divider);padding:var(--space-3) var(--space-6);display:flex;align-items:center;gap:var(--space-4)}.site-nav .nav-brand{letter-spacing:.04em}.site-nav a{color:inherit;text-decoration:none;font-size:14px}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--color-accent-700)}@media (max-width:760px){.site-nav{flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.site-nav .nav-brand{margin-right:auto}}.site-footer{border-top:1px solid var(--color-divider);padding:var(--space-6);font-size:12px;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.admin-shell{display:flex;min-height:100vh;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}.admin-side{width:224px;flex:none;border-right:1px solid var(--color-divider);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1);position:-webkit-sticky;position:sticky;top:0;align-self:flex-start;height:100vh;overflow-y:auto}.admin-side a{display:block;padding:var(--space-2) var(--space-3);font-size:14px;text-decoration:none;color:var(--color-text);border:1px solid transparent}.admin-side a:hover{background:color-mix(in srgb,var(--color-text) 6%,transparent)}.admin-side a[aria-current=page]{background:var(--color-accent);color:var(--color-bg)}.admin-main{flex:1 1;padding:var(--space-6);min-width:0}@media (max-width:800px){.admin-shell{flex-direction:column}.admin-side{width:auto;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:none;border-bottom:1px solid var(--color-divider);position:static;height:auto;overflow:visible}.admin-side .spacer{flex:1 0 auto}}.admin-nav{display:flex;flex-direction:column;gap:var(--space-1)}.admin-menu-button{display:none}@media (max-width:800px){.admin-side{padding:var(--space-2) var(--space-3);gap:var(--space-2);align-self:stretch}.admin-side .nav-brand{margin-bottom:0!important}.admin-menu-button{display:inline-flex;align-items:center;margin-left:auto;min-height:44px;padding:0 var(--space-3);border:1px solid var(--color-divider);background:transparent;color:var(--color-text);font:inherit;font-size:15px;cursor:pointer}.admin-nav{display:none;flex-basis:100%}.admin-nav[data-open=true]{display:flex}.admin-nav a{padding:var(--space-3);font-size:16px}.admin-side .spacer,.admin-side>.admin-exit,.admin-side>form,.admin-side>p{display:none}.admin-nav[data-open=true]~.admin-exit,.admin-nav[data-open=true]~form,.admin-nav[data-open=true]~p{display:block;flex-basis:100%}.admin-main{padding:var(--space-3)}.admin-main .btn{min-height:44px}.admin-main .input,.admin-main select,.admin-main textarea{min-height:44px;font-size:16px}.admin-main .filters .tag{display:inline-flex;align-items:center;min-height:44px;padding:0 12px}}.queue-fold>summary{cursor:pointer;padding:var(--space-3) 0;border-top:1px solid var(--color-divider)}.queue-fold-title{font-family:var(--font-heading,"Barlow Condensed",sans-serif);font-size:20px;letter-spacing:.02em}.pack-orders{display:grid;grid-gap:var(--space-4);gap:var(--space-4);max-width:720px}.pack-search{font-size:20px;min-height:52px;letter-spacing:.04em}.pack-group{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.pack-group h3{margin:0}.pack-card{border:1px solid var(--color-divider);background:var(--color-bg)}.pack-card[data-ready=true]{box-shadow:inset 4px 0 0 var(--color-accent)}.pack-card-head{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:2px var(--space-2);gap:2px var(--space-2);padding:var(--space-3);min-height:60px;text-align:left;background:transparent;border:0;color:inherit;font:inherit;cursor:pointer}.pack-card-head:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.pack-card-number{font-size:20px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pack-card-count{align-self:center;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pack-card-meta{grid-column:1/-1;font-size:13px;color:var(--color-neutral-500)}.pack-card-body{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:0 var(--space-3) var(--space-3)}.pack-items{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.pack-item{display:grid;grid-template-columns:28px 56px minmax(0,1fr);grid-gap:var(--space-3);gap:var(--space-3);align-items:center;min-height:68px;padding:var(--space-2);border:1px solid var(--color-divider);cursor:pointer}.pack-item input{width:24px;height:24px;accent-color:var(--color-accent)}.pack-item[data-gathered=true]{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.pack-item[data-printed=false]{opacity:.55;cursor:default}.pack-thumb{display:block;width:56px;height:56px;object-fit:contain;background:color-mix(in srgb,var(--color-text) 5%,transparent)}.pack-item-text{display:grid;grid-gap:2px;gap:2px;min-width:0;font-size:13px;overflow-wrap:anywhere}.pack-item-text strong{font-size:15px}.pack-go{min-height:52px;font-size:16px}.pack-done{border:1px solid var(--color-accent);padding:var(--space-3)}.pack-done h3{margin:0 0 var(--space-2)}.pack-done ul{margin:0;padding-left:1.1em;display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.slot{position:relative;display:grid;place-items:center;padding:var(--space-3);text-align:center;background:repeating-linear-gradient(-45deg,transparent 0 7px,color-mix(in srgb,var(--color-text) 5%,transparent) 7px 8px);color:color-mix(in srgb,var(--color-text) 50%,transparent);font-size:11px;line-height:1.35;overflow:hidden}.slot img{width:100%;height:100%;object-fit:cover}.field{margin-bottom:var(--space-3)}.field-error{color:var(--color-accent-800);font-size:12px;margin-top:var(--space-1)}.notice{border:1px solid var(--color-accent);background:color-mix(in srgb,var(--color-accent) 7%,transparent)}.notice,.notice-quiet{padding:var(--space-3);font-size:13px}.notice-quiet{border:1px solid var(--color-divider)}.pick{cursor:pointer;text-align:left;font:inherit;color:inherit;background:transparent;width:100%}.pick:hover{background:color-mix(in srgb,var(--color-accent) 6%,transparent)}.pick[aria-pressed=true],.pick[data-selected=true]{box-shadow:inset 0 0 0 2px var(--color-accent)}.stages{display:flex;gap:var(--space-2);min-width:640px}.stage{flex:1 1;text-align:center;font-size:11px}.stage-dot{width:13px;height:13px;margin:0 auto var(--space-2);border:1px solid var(--color-accent-700)}.stage-dot[data-reached=true]{background:var(--color-accent)}.stage[data-current=true]{font-weight:700}.stage[data-reached=false]{color:var(--color-neutral-500)}.spec{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-1) 0;border-bottom:1px solid var(--color-divider);font-size:14px}.spec:last-child{border-bottom:none}.spec>span:first-child{color:color-mix(in srgb,var(--color-text) 55%,transparent)}.spec>span:last-child{text-align:right}.total-line{display:flex;justify-content:space-between;font-family:var(--font-heading);font-size:20px;padding-top:var(--space-3)}.steps{display:flex;border:1px solid var(--color-divider)}.steps button{flex:1 1;padding:var(--space-3) var(--space-2);font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:13px;background:transparent;border:0;border-right:1px solid var(--color-divider);cursor:pointer;color:var(--color-text)}.steps button:last-child{border-right:0}.steps button[aria-current=step]{background:var(--color-accent);color:var(--color-bg)}.steps button:disabled{opacity:.4;cursor:not-allowed}@media (max-width:700px){.steps{flex-wrap:wrap}.steps button{flex:1 0 33%;font-size:11px}}.chat-dock{position:fixed;right:var(--space-6);bottom:var(--space-6);z-index:30}.chat-launch{background:var(--color-accent-700);color:#fff;border-color:var(--color-accent-700);font-weight:600}.chat-launch:hover{background:var(--color-accent-900,var(--color-accent-700));color:#fff}.chat-launch:before{content:"\1F4AC";margin-right:6px}.material-group{margin-top:var(--space-6)}.material-group-head{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;padding-bottom:var(--space-2);margin-bottom:var(--space-3);border-bottom:1px solid var(--color-divider)}.material-group-head .text-muted{font-size:13px}.scene-stage{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--color-divider);background:#e9eef1;isolation:isolate}.scene-3d{position:absolute;inset:0;z-index:5;opacity:0;transition:opacity .35s ease}.scene-stage[data-rendered=true] .scene-3d{opacity:1}.scene-stage[data-rendered=true]>span,.scene-stage[data-rendered=true]>svg{visibility:hidden}.scene-stage[data-scene=soft-signage]:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:4;background:radial-gradient(118% 92% at 50% 42%,rgba(255,255,255,0) 52%,rgba(44,52,60,.12) 100%)}.scene-stage>span{position:absolute}.scene-opening{transform:translate(-50%,-50%);box-shadow:inset 0 0 0 2px rgba(60,70,80,.5);background:rgba(60,70,80,.06);z-index:1}.scene-opening[data-scene=window]{background:linear-gradient(135deg,#a8cade,#dbeaf3 46%,#b6d3e4);box-shadow:inset 0 0 0 5px #6d7b85,0 2px 6px rgba(0,0,0,.25)}.scene-opening[data-scene=window]:after{content:"";position:absolute;inset:0;background:linear-gradient(112deg,rgba(255,255,255,.5) 14%,transparent 32%,rgba(255,255,255,.28) 56%,transparent 72%)}.scene-display{transform:translate(-50%,-50%);background:linear-gradient(180deg,#c3ccd3,#9aa5ad 50%,#818d96);z-index:1}.scene-display-shadow{border-radius:50%;background:radial-gradient(ellipse at center,rgba(38,46,54,.3) 0,rgba(38,46,54,.1) 45%,rgba(38,46,54,0) 72%);filter:blur(6px);z-index:0;pointer-events:none}.scene-display-contact{border-radius:50%;background:radial-gradient(ellipse at center,rgba(28,34,41,.55) 0,rgba(28,34,41,.22) 55%,rgba(28,34,41,0) 80%);filter:blur(1.5px);z-index:1;pointer-events:none}.scene-display-reflection{position:absolute;overflow:hidden;opacity:.38;filter:blur(1px) saturate(.85);z-index:0;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0) 38%,rgba(0,0,0,.9));mask-image:linear-gradient(180deg,rgba(0,0,0,0) 38%,rgba(0,0,0,.9))}.scene-fabric{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,rgba(18,24,30,.34),rgba(18,24,30,.12) 1.1%,rgba(255,255,255,.07) 3%,rgba(255,255,255,0) 8%,rgba(255,255,255,0) 92%,rgba(255,255,255,.07) 97%,rgba(18,24,30,.12) 98.9%,rgba(18,24,30,.34)),linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.05) 12%,rgba(255,255,255,0) 38%,rgba(12,18,24,.06) 82%,rgba(12,18,24,.16)),radial-gradient(130% 60% at 32% 18%,rgba(255,255,255,.13) 0,rgba(255,255,255,0) 60%),linear-gradient(100deg,rgba(255,255,255,0) 18%,rgba(255,255,255,.05) 31%,rgba(0,0,0,.03) 46%,rgba(255,255,255,0) 62%,rgba(255,255,255,.04) 78%,rgba(0,0,0,.02) 92%)}.scene-display-foot{border-radius:1px;background:linear-gradient(180deg,#9aa5ad,#6f7982);box-shadow:0 2px 4px rgba(0,0,0,.25);z-index:1}.scene-print[data-scene=soft-signage]{box-shadow:0 18px 30px -16px rgba(26,33,40,.45),0 2px 6px rgba(26,33,40,.18)}.scene-moulding{background:linear-gradient(135deg,#4a3b2c,#6b5744 45%,#3f3225);box-shadow:0 10px 22px rgba(0,0,0,.3)}.scene-mat,.scene-moulding{transform:translate(-50%,-50%);z-index:1}.scene-mat{background:#fbf9f5;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}.scene-print{overflow:hidden;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;z-index:2}.scene-print[data-scene=flag]{box-shadow:6px 6px 16px rgba(0,0,0,.22)}.scene-print[data-scene=banner]:after,.scene-print[data-scene=sign]:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 7px 7px,rgba(60,70,80,.85) 2.5px,transparent 3px),radial-gradient(circle at calc(100% - 7px) 7px,rgba(60,70,80,.85) 2.5px,transparent 3px),radial-gradient(circle at 7px calc(100% - 7px),rgba(60,70,80,.85) 2.5px,transparent 3px),radial-gradient(circle at calc(100% - 7px) calc(100% - 7px),rgba(60,70,80,.85) 2.5px,transparent 3px);pointer-events:none}.scene-print img{max-width:none;transform-origin:center center}.scene-print-empty{font-size:11px;letter-spacing:.04em;text-transform:uppercase;opacity:.45}.scene-figure{z-index:3;pointer-events:none}.scene-stage[data-scene=soft-signage] .scene-figure{opacity:.4}.scene-stage[data-scene=window] .scene-figure{right:4%;bottom:3%}.scene-stage[data-scene=sign] .scene-figure{right:8%;bottom:8%}.scene-stage[data-scene=banner] .scene-figure{right:12%;bottom:4%}.scene-stage[data-scene=flag] .scene-figure{left:60%;bottom:8%}.scene-stage[data-scene=backdrop] .scene-figure{left:58%;bottom:10%}.scene-stage[data-scene=fine-art] .scene-figure{right:6%;bottom:10%}.scene-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2) var(--space-3);margin-top:var(--space-3)}.scene-controls-label{font-size:12px;font-weight:600;align-self:center}.scene-size{display:flex;flex-direction:column;gap:2px;font-size:11px;opacity:.8}.scene-size input{width:92px;padding:6px 8px;font-size:13px}.scene-size-by{align-self:center;font-size:12px;opacity:.6;padding-top:12px}.scene-turn input[type=range]{width:100%}.scene-size-hint{font-size:11px;opacity:.65;align-self:center;flex:1 1;min-width:160px}.scene-caption{font-size:12px;opacity:.75;margin-top:var(--space-2)}.scene-warn{color:#8c3f22}.scene-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:var(--space-2)}.scene-tab{padding:5px 11px;font-size:12px;border:1px solid var(--color-divider);background:transparent;color:inherit;cursor:pointer}.scene-tab[aria-selected=true]{background:var(--color-accent-700);border-color:var(--color-accent-700);color:#fff}.quality-bar{gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--color-divider);background:var(--color-surface,transparent)}.quality-bar,.quality-slider{display:flex;flex-direction:column}.quality-slider{gap:4px;font-size:12px}.quality-slider input[type=range]{width:100%}.quality-ends{display:flex;justify-content:space-between;font-size:11px;opacity:.7}.size-slider{display:flex;flex-direction:column;gap:6px;font-size:12px;margin-top:var(--space-4)}.size-slider input[type=range]{width:100%}.switch{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:12px}.switch input{position:absolute;opacity:0;width:0;height:0}.switch-track{position:relative;width:38px;height:20px;border-radius:999px;background:var(--color-divider);transition:background .15s ease;flex:none}.switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .15s ease}.switch input:checked+.switch-track{background:var(--color-accent,#2f6f4f)}.switch input:checked+.switch-track .switch-knob{transform:translateX(18px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--color-accent,#2f6f4f);outline-offset:2px}.switch input:disabled+.switch-track{opacity:.5}.switch-label{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.account-menu{position:relative;display:inline-flex}.account-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-divider);background:transparent;color:inherit;cursor:pointer}.account-button:hover,.account-button[aria-expanded=true]{border-color:var(--color-accent-700);color:var(--color-accent-700)}.account-panel{position:absolute;right:0;top:calc(100% + 6px);min-width:190px;display:flex;flex-direction:column;gap:2px;padding:var(--space-2);background:var(--color-surface,#fff);border:1px solid var(--color-divider);box-shadow:0 10px 30px rgba(0,0,0,.12);z-index:40}.account-panel a,.account-signout{display:block;width:100%;padding:7px 10px;font-size:14px;text-align:left;color:inherit;text-decoration:none;background:none;border:0;cursor:pointer}.account-panel a:hover,.account-signout:hover{background:var(--color-accent-100);color:var(--color-accent-700)}.account-name{padding:4px 10px 8px;font-size:12px;opacity:.7;border-bottom:1px solid var(--color-divider);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis}.chat-panel{width:min(340px,calc(100vw - var(--space-8)));height:min(460px,calc(100vh - 140px));background:var(--color-bg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;margin-bottom:var(--space-3)}.chat-log{flex:1 1;overflow-y:auto;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.chat-msg{max-width:85%;padding:6px 10px;font-size:13px}.chat-msg[data-from=user]{align-self:flex-end;background:var(--color-accent-100)}.chat-msg[data-from=bot]{align-self:flex-start;background:var(--color-surface)}.stat-value{font-family:var(--font-heading);font-size:32px;line-height:1.05;color:var(--color-accent-700)}.stat-label{font-size:12px;opacity:.7;margin-top:4px}.bar{border:1px solid var(--color-divider);background:var(--color-surface)}.bar>div{height:100%;background:var(--color-accent)}.table td .btn-ghost{padding-inline:4px}.accent-text{color:var(--color-accent-700)}.material-preview{position:relative;width:100%;display:grid;place-items:center;overflow:hidden;background:var(--color-surface)}.material-preview>img{position:absolute;left:50%;top:50%;display:block;max-width:none;transform-origin:center center;image-rendering:auto;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.material-preview-empty{font-size:12px;color:color-mix(in srgb,var(--color-text) 45%,transparent)}.material-preview[data-editable=true]{touch-action:none}.material-preview[data-pannable=true]{cursor:-webkit-grab;cursor:grab}.material-preview[data-busy=pan],.material-preview[data-busy=turn],.material-preview[data-busy=zoom]{cursor:-webkit-grabbing;cursor:grabbing}.material-preview[data-over=true]{outline:2px solid var(--color-danger,#b4462f);outline-offset:-2px}.preview-handle{position:absolute;display:grid;place-items:center;padding:0;width:22px;height:22px;background:var(--color-accent);color:#fff;border:1px solid rgba(255,255,255,.85);border-radius:var(--radius-sm,3px);box-shadow:0 1px 3px rgba(0,0,0,.18);cursor:pointer;line-height:1}.preview-handle-spin{top:6px;left:50%;transform:translateX(-50%);border-radius:50%;font-size:12px;font-weight:700;cursor:-webkit-grab;cursor:grab}.preview-handle-spin:active{cursor:-webkit-grabbing;cursor:grabbing}.preview-handle-resize{right:6px;bottom:6px;width:17px;height:17px;cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%223.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v18M3%2012h18M12%203l-3%203M12%203l3%203M12%2021l-3-3M12%2021l3-3M3%2012l3-3M3%2012l3%203M21%2012l-3-3M21%2012l-3%203%22%2F%3E%3C%2Fg%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%231d1f20%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v18M3%2012h18M12%203l-3%203M12%203l3%203M12%2021l-3-3M12%2021l3-3M3%2012l3-3M3%2012l3%203M21%2012l-3-3M21%2012l-3%203%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 12 12,move}.preview-handle-resize svg{width:10px;height:10px;stroke:#fff;stroke-width:1.3;stroke-linecap:round}.preview-handle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.preview-controls{margin-top:var(--space-4)}.orient-switch{display:inline-flex;border:1px solid var(--color-divider);border-radius:var(--radius-sm,3px);overflow:hidden;background:var(--color-surface)}.orient-opt{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;font:inherit;font-size:12px;line-height:1;color:var(--color-text);background:none;border:0;cursor:pointer}.orient-opt+.orient-opt{border-left:1px solid var(--color-divider)}.orient-opt[aria-checked=true]{background:var(--color-accent);color:#fff}.orient-opt:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.orient-icon{display:block;border:1.5px solid;border-radius:1px}.orient-icon-landscape{width:15px;height:10px}.orient-icon-portrait{width:10px;height:14px}.print-setup{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-gap:var(--space-8);gap:var(--space-8);align-items:start}@media (max-width:900px){.print-setup{grid-template-columns:minmax(0,1fr)}}.crop-zoom{display:flex;align-items:center;gap:var(--space-3)}.crop-zoom input[type=range]{flex:1 1;accent-color:var(--color-accent)}.material-preview[data-clear=true]{background-color:var(--color-bg);background-image:linear-gradient(45deg,var(--color-surface) 25%,transparent 25%),linear-gradient(-45deg,var(--color-surface) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--color-surface) 75%),linear-gradient(-45deg,transparent 75%,var(--color-surface) 75%);background-size:14px 14px;background-position:0 0,0 7px,7px -7px,-7px 0}.material-preview[data-clear=true]>img{opacity:.92}.material-preview>span[class^=surface-]{position:absolute;inset:0;pointer-events:none}.surface-weave{background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.07) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(0,0,0,.07) 0 1px,transparent 1px 3px);mix-blend-mode:multiply}.surface-gloss{background:linear-gradient(115deg,transparent 0 38%,rgba(255,255,255,.3) 47%,rgba(255,255,255,.06) 56%,transparent 64% 100%)}.surface-matte{background:radial-gradient(120% 90% at 50% 0,rgba(255,255,255,.07),transparent 60%)}.surface-holo{background:linear-gradient(115deg,rgba(255,0,128,.22),rgba(255,214,0,.22) 22%,rgba(0,224,158,.22) 44%,rgba(0,140,255,.22) 66%,rgba(178,0,255,.22) 88%,rgba(255,0,128,.22));mix-blend-mode:screen}.piece-row{display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-areas:"thumb   name" "thumb   numbers" "actions actions";grid-gap:var(--space-2) var(--space-3);gap:var(--space-2) var(--space-3);align-items:end}.piece-row>.piece-thumb{grid-area:thumb;align-self:start}.piece-row>.piece-name{grid-area:name;min-width:0}.piece-row>.piece-remove{grid-area:actions;display:flex;flex-wrap:wrap;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-divider)}.piece-row>.piece-numbers{grid-area:numbers;display:grid;grid-template-columns:repeat(3,minmax(64px,90px));grid-gap:var(--space-3);gap:var(--space-3)}@media (max-width:520px){.piece-row{grid-template-areas:"thumb   name" "numbers numbers" "actions actions"}.piece-row>.piece-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}}.piece-thumb{width:56px;height:56px;object-fit:cover;border:1px solid var(--color-divider);display:block}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.filters{flex-direction:column;padding:var(--space-3) 0 var(--space-4);border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-4)}.filter-group,.filters{display:flex;gap:var(--space-3)}.filter-group{align-items:baseline;flex-wrap:wrap}.filter-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text) 55%,transparent);min-width:72px}.filters .tag{text-decoration:none;cursor:pointer;gap:6px;border:1px solid var(--color-divider)}.filters .tag:hover{border-color:var(--color-accent)}.filters .tag[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg);font-weight:600}.filters .tag[aria-pressed=true] .filter-count{opacity:.8}.filter-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.65;font-size:10px}.filter-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}@media (max-width:640px){.filter-group{flex-direction:column;align-items:stretch;gap:var(--space-1)}.filter-label{min-width:0}}a.admin-exit{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-top:var(--space-4);font-family:var(--font-condensed);font-size:13px;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;color:#fff;background:var(--color-accent);border:1px solid var(--color-accent)}a.admin-exit:focus-visible,a.admin-exit:hover{background:var(--color-accent-700);border-color:var(--color-accent-700);color:#fff}.admin-main{max-width:1500px}.table-queue{display:grid;grid-template-columns:minmax(5.5rem,auto) minmax(5.5rem,1.1fr) minmax(6.5rem,1.5fr) minmax(3.5rem,auto) minmax(5rem,auto) minmax(3rem,auto) minmax(3.5rem,auto) minmax(5rem,auto) minmax(3.5rem,auto);width:100%;border-collapse:collapse}.table-queue tbody,.table-queue thead,.table-queue tr{display:contents}.table-queue td,.table-queue th{display:flex;align-items:flex-start;padding:var(--space-2) var(--space-3) var(--space-2) 0;border-bottom:1px solid var(--color-divider)}.table-queue th{align-items:flex-end}.table-queue td:last-child,.table-queue th:last-child{padding-right:0;justify-content:flex-end}.table-queue td{flex-wrap:wrap;gap:4px;min-width:0}.table-queue td:nth-child(3){overflow-wrap:anywhere}.table-queue tr:hover td{background:color-mix(in srgb,var(--color-accent) 6%,transparent)}.hero-roll{position:relative;width:100%;overflow:hidden}.hero-roll-frame{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}.hero-roll-frame[data-showing=true]{opacity:1}.hero-roll-frame>*{height:100%}.hero-roll-dots{position:absolute;left:50%;bottom:var(--space-3);transform:translateX(-50%);display:flex;gap:8px;padding:7px 9px;background:rgb(16 22 29/.5);border:1px solid rgb(246 245 242/.25)}.hero-roll-dot{width:9px;height:9px;padding:0;border:1px solid rgb(246 245 242/.7);background:transparent;cursor:pointer;transition:background .2s ease}.hero-roll-dot[data-on=true]{background:var(--paper)}.hero-roll-dot:hover{background:rgb(246 245 242/.5)}.hero-roll-dot:focus-visible{outline:2px solid var(--paper);outline-offset:2px}@media (prefers-reduced-motion:reduce){.hero-roll-frame{transition:none}}.toggle{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:12px}.toggle input{position:absolute;opacity:0;width:0;height:0}.toggle-track{display:inline-block;position:relative;width:34px;height:18px;border:1px solid var(--color-divider);background:var(--color-surface);transition:background .12s ease-out,border-color .12s ease-out;flex:0 0 auto}.toggle-knob{position:absolute;top:2px;left:2px;width:12px;height:12px;background:color-mix(in srgb,var(--color-text) 45%,transparent);transition:transform .12s ease-out,background .12s ease-out}.toggle input:checked+.toggle-track{background:var(--color-accent);border-color:var(--color-accent)}.toggle input:checked+.toggle-track .toggle-knob{transform:translateX(16px);background:#fff}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--color-accent);outline-offset:2px}.toggle-label{color:var(--color-text)}@media (prefers-reduced-motion:reduce){.toggle-knob,.toggle-track{transition:none}}.promo-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.promo-row label{flex:1 1 100%}.promo-row .input{flex:1 1 12ch;text-transform:uppercase;letter-spacing:.06em}.link-button{display:inline;padding:0;border:0;background:none;font:inherit;font-size:12px;color:var(--color-accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.link-button:hover{color:var(--color-accent-700)}.link-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.rule-list{list-style:none;margin:0 0 var(--space-4);padding:0;font-size:12px;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.rule-list li{padding:1px 0}.rule-list li[data-met=true]{color:var(--color-accent-700)}.hint{position:relative;display:inline-flex}.hint:focus-within,.hint:hover{z-index:20}.hint-text{position:absolute;bottom:calc(100% + 8px);right:0;z-index:5;width:max-content;max-width:290px;padding:var(--space-3);font-size:12px;line-height:1.45;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-divider);box-shadow:0 4px 14px rgba(0,0,0,.13);opacity:0;visibility:hidden;transition:opacity 90ms ease-out;pointer-events:none}.hint:focus-within .hint-text,.hint:hover .hint-text{opacity:1;visibility:visible}@media (prefers-reduced-motion:reduce){.hint-text{transition:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.fill-prompt{display:flex;align-items:flex-end;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.fill-prompt label{flex:1 1 100%;font-size:12px;color:color-mix(in srgb,var(--color-text) 62%,transparent)}.fill-prompt .input{width:6.5ch}.cut-choice{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.piece-thumb-blank{display:grid;place-items:center;text-align:center;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--color-accent-700);background:var(--color-surface);border:1px dashed var(--color-accent);cursor:-webkit-grab;cursor:grab}.outline-tracer{display:grid;grid-gap:var(--space-3);gap:var(--space-3);margin-top:var(--space-3)}.outline-preview{display:grid;place-items:center;min-height:160px;background:repeating-conic-gradient(color-mix(in srgb,var(--color-text) 7%,transparent) 0 25%,transparent 0 50%) 0 0 /14px 14px;border:1px solid var(--color-divider)}.outline-preview .outline-plain,.outline-preview svg{width:100%;max-height:260px;display:block;object-fit:contain}.outline-preview[data-drawing=true]{padding:0}.outline-surface{touch-action:none;cursor:crosshair}.outline-path{fill:none;stroke:var(--color-accent);stroke-width:1.6;stroke-dasharray:5 3}.table-edit-row>td{padding:0 0 var(--space-4)}.table-edit-panel{position:-webkit-sticky;position:sticky;left:0;width:min(100%,calc(100vw - 224px - 2 * var(--space-6)))}@media (max-width:800px){.table-edit-panel{width:calc(100vw - 2 * var(--space-6))}}.nav-badge{display:inline-block;min-width:18px;margin-left:6px;padding:0 5px;border-radius:9px;background:#b4442e;color:#ffffff;font-size:11px;line-height:18px;text-align:center}.breadcrumb{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3);font-size:12px}.breadcrumb a{color:inherit;opacity:.75}.breadcrumb span[aria-hidden]{opacity:.4}.prose{max-width:70ch;font-size:17px;line-height:1.7}.prose h2{margin-top:var(--space-8)}.prose h3{margin-top:var(--space-6)}.prose img{display:block;max-width:100%;height:auto;margin:var(--space-4) 0}.prose blockquote{margin:var(--space-4) 0;padding-left:var(--space-4);border-left:3px solid var(--color-accent)}.prose code{padding:0 4px;font-size:.9em;background:color-mix(in srgb,var(--color-text) 8%,transparent)}.prose pre{overflow-x:auto;padding:var(--space-3);background:color-mix(in srgb,var(--color-text) 6%,transparent)}.prose pre code{padding:0;background:none}.prose table{border-collapse:collapse}.prose td,.prose th{padding:6px 10px;border:1px solid var(--color-divider);text-align:left}.prose ol,.prose ul{padding-left:1.3rem}.blog-cover{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;margin:var(--space-4) 0 var(--space-6)}.blog-toc{margin:0 0 var(--space-6);font-size:14px}.blog-toc ol{margin:var(--space-2) 0 0;padding-left:1.2rem}.blog-toc li[data-level="3"]{margin-left:1rem}.spec-list,.spec-list dd,.spec-list dt{margin:0}.blog-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:var(--space-6);gap:var(--space-6);align-items:start}@media (max-width:1100px){.blog-editor-grid{grid-template-columns:minmax(0,1fr)}}.md-toolbar{display:flex;flex-wrap:wrap;gap:4px;margin:var(--space-2) 0 4px}.md-editor{width:100%;min-height:480px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.6}.snippet-preview{max-width:600px;font-family:Arial,Helvetica,sans-serif}.snippet-url{font-size:12px;color:#1a7f37}.snippet-title{font-size:18px;line-height:1.3;color:#1a0dab}.snippet-description{font-size:13px;color:#4d5156}.seo-checks{margin:var(--space-3) 0 0;padding:0;list-style:none;font-size:12px}.seo-checks li{display:flex;gap:var(--space-2);padding:2px 0}.seo-checks li[data-ok=false]{color:#8c3f22}.ai-assist{margin:4px 0 var(--space-2)}.ai-assist-button{font-size:13px;color:var(--color-accent-700)}.ai-assist-button:before{content:"\2726  "}.ai-result{margin-top:6px;padding:var(--space-3);border:1px dashed var(--color-accent-400);background:color-mix(in srgb,var(--color-accent-100) 60%,transparent)}.ai-suggestions{margin:0;padding:0;list-style:none;display:grid;grid-gap:4px;gap:4px}.ai-suggestions li{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.ai-body-preview{max-height:260px;overflow:auto;padding:var(--space-2);white-space:pre-wrap;font-size:12px;background:var(--color-bg)}.ai-body-preview,.ai-seo{margin:0 0 var(--space-2)}.ai-seo{display:grid;grid-template-columns:8em minmax(0,1fr);grid-gap:4px 12px;gap:4px 12px;font-size:13px}.ai-seo dt{font-weight:600}.ai-seo dd{margin:0}.ai-answer{margin-top:var(--space-2);font-size:14px}.day-bars{display:flex;align-items:flex-end;gap:3px;height:120px;margin:var(--space-2) 0 var(--space-4);border-bottom:1px solid var(--color-divider)}.day-bar{flex:1 1;min-width:4px;background:var(--color-accent)}.bar{display:block;height:8px;background:var(--color-accent-400)}.setup-list{margin:0;padding:0;list-style:none;display:grid;grid-gap:6px;gap:6px;font-size:14px}.setup-item{display:grid;grid-template-columns:1.2em minmax(0,1fr);grid-gap:6px;gap:6px}.setup-item[data-ok=false]>span:first-child{color:#8c3f22}.recommendation{border-top:1px solid var(--color-divider);padding-top:var(--space-2)}.recommendation summary,.upload-pick{cursor:pointer}.upload-pick{display:flex;align-items:center;gap:6px;margin-top:var(--space-2);font-size:13px}.print-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:var(--space-2);gap:var(--space-2);margin-bottom:var(--space-6)}.print-pick{display:grid;grid-template-columns:52px minmax(0,1fr);grid-gap:var(--space-3);gap:var(--space-3);align-items:center;padding:var(--space-2);border:1px solid var(--color-divider);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.print-pick:hover{background:color-mix(in srgb,var(--color-accent) 6%,transparent)}.print-pick[aria-selected=true]{box-shadow:inset 0 0 0 2px var(--color-accent)}.print-pick:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.order-print-text,.print-pick-text{display:grid;grid-gap:2px;gap:2px;min-width:0;font-size:12px}.order-print-name,.print-pick-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-lines{display:grid;grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-4)}.review-grid{grid-template-columns:220px minmax(0,1fr);gap:var(--space-6)}.review-add{align-items:center;margin:var(--space-4) 0}.order-cart-note{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:space-between}@media (max-width:640px){.review-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.review-grid>:first-child{width:140px}}.order-prints{list-style:none;margin:var(--space-2) 0;padding:0}.order-print{display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;padding:var(--space-2) 0;border-top:1px solid var(--color-divider);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.notify-device{display:flex;flex-direction:column;gap:var(--space-2);font-size:14px}.notify-device-words{margin:0;line-height:1.5}.notify-device-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.notify-device-actions:empty{display:none}.notify-device-note{margin:0;font-size:13px;color:var(--color-neutral-700)}@media (max-width:800px){.notify-device-actions .btn{flex:1 1 100%}}@media (max-width:600px){.inbox-table thead{display:none}.inbox-table,.inbox-table tbody,.inbox-table td,.inbox-table tr{display:block;width:100%}.inbox-table tr{border-top:1px solid var(--color-divider);padding:var(--space-3) 0}.inbox-table td{border:none;padding:2px 0;white-space:normal!important}.inbox-table td[data-label]:before{content:attr(data-label);display:inline-block;min-width:6.5em;color:var(--color-neutral-700);font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.04em}.inbox-table td:last-child{padding-top:var(--space-2)}.inbox-table td:last-child .btn{width:100%;justify-content:center}}