.pkg-workbench{display:grid;grid-template-columns:minmax(310px,390px) minmax(0,1fr);border:1px solid var(--ws-line);border-radius:16px;overflow:hidden;background:#fff;color:var(--ws-ink)}
.pkg-config{min-width:0;border-right:1px solid var(--ws-line);margin:0;background:#fff;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c3d1d2 transparent}
.pkg-config fieldset{margin:0;border:0;padding:0;min-width:0}.pkg-section{padding:22px;border-bottom:1px solid var(--ws-line)}.pkg-kicker{font-size:10px;letter-spacing:1.8px;color:var(--ws-teal)}.pkg-section h2{font-size:16px;margin:9px 0 18px;line-height:1.4}.pkg-section label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--ws-ink);margin:0 0 15px;min-width:0}.pkg-section :is(input:not([type=color]),select,textarea){width:100%;box-sizing:border-box;border:1px solid #ccd8da;border-radius:9px;padding:11px 12px;background:#f8fafb;color:var(--ws-ink);font:inherit;line-height:1.5}.pkg-section textarea{resize:vertical;min-height:76px}.pkg-section input[type=color]{width:100%;height:40px;padding:4px;border:1px solid #ccd8da;background:#fff;border-radius:8px;cursor:pointer}.pkg-dimensions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.pkg-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pkg-unit{position:relative}.pkg-section .pkg-unit input{padding-right:28px;padding-left:8px}.pkg-unit>span{position:absolute;right:7px;top:13px;color:#61787c;font-size:10px;pointer-events:none}.pkg-hint{color:var(--ws-muted);font-size:11px;line-height:1.7;margin:6px 0 0}.pkg-upload{border:1px dashed #a7c5bf;border-radius:10px;padding:15px;flex-direction:row!important;align-items:center;background:#f4faf7;cursor:pointer}.pkg-upload:hover{border-color:var(--ws-teal)}.pkg-upload img{height:42px;width:42px;object-fit:contain}.pkg-upload span{line-height:1.5;overflow-wrap:anywhere}.pkg-upload small{display:block;color:var(--ws-muted);font-size:10px;margin-top:5px}.pkg-submit{position:sticky;bottom:0;padding:15px 22px;background:#fffffff5;backdrop-filter:blur(8px);border-top:1px solid var(--ws-line);z-index:3}.pkg-submit>p{font-size:11px;margin:0 0 9px;color:var(--ws-muted)}.pkg-submit .primary{width:100%;min-height:44px;font-size:13px;background:#087c72;color:#fff;border:1px solid #087c72;border-radius:9px}.pkg-submit .primary:disabled{background:#e0ebe7;color:#4b7169;border-color:#ccddd7;cursor:not-allowed}.pkg-submit .pkg-error{color:#a72e25;margin:9px 0 0;line-height:1.5}
.pkg-results{padding:24px;min-width:0;background:#fff;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.pkg-results-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.pkg-results-head h2{font-size:22px;margin:7px 0 0}.pkg-results-head .secondary{font-size:11px;white-space:nowrap}.pkg-view-tabs{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}.pkg-view-tabs button{background:#f3f6f7;border:1px solid #dae3e4;border-radius:8px;padding:9px 13px;color:#556c71;font-size:12px}.pkg-view-tabs button[aria-pressed=true]{background:var(--ws-tint);color:var(--ws-teal);border-color:#9ec9bd}.pkg-stage{position:relative;min-height:410px;border-radius:12px;background:radial-gradient(ellipse at 50% 36%,#fafbf9,#eef2ef);border:1px solid #dce5de;overflow:hidden;display:flex;align-items:center;justify-content:center}.pkg-preview-tag{position:absolute;top:14px;left:14px;z-index:2;font-size:10px;color:#566f65;background:#ffffffe8;padding:7px 9px;border-radius:6px;border:1px solid #dce6e0}.pkg-size-label{position:absolute;bottom:18px;text-align:center;left:12px;right:12px;font-size:11px;color:#546c63}.pkg-scene{width:var(--bw);height:var(--bh);perspective:1000px;position:relative;margin-top:6px}.pkg-cube{width:100%;height:100%;position:relative;transform-style:preserve-3d;transform:rotateX(-16deg) rotateY(var(--turn))}.pkg-face{position:absolute;background:var(--board);color:var(--ink);border:1px solid color-mix(in srgb,var(--ink) 25%,transparent);box-sizing:border-box;overflow:hidden;backface-visibility:hidden}.pkg-front,.pkg-back{width:var(--bw);height:var(--bh);padding:15% 9%;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:space-around;gap:8px}.pkg-front{transform:translateZ(var(--half-d))}.pkg-back{transform:rotateY(180deg) translateZ(var(--half-d));font-size:10px;white-space:pre-wrap;overflow-wrap:anywhere}.pkg-right,.pkg-left{width:var(--bd);height:var(--bh);left:calc((var(--bw) - var(--bd))/2);display:flex;align-items:center;justify-content:center;font-size:10px;box-shadow:inset 0 0 100px #0000000d}.pkg-right{transform:rotateY(90deg) translateZ(var(--half-w));writing-mode:vertical-rl}.pkg-left{transform:rotateY(-90deg) translateZ(var(--half-w))}.pkg-top,.pkg-bottom{width:var(--bw);height:var(--bd);top:calc((var(--bh) - var(--bd))/2);font-size:9px;display:flex;align-items:center;justify-content:center}.pkg-top{transform:rotateX(90deg) translateZ(var(--half-h));box-shadow:inset 0 0 100px #ffffff22}.pkg-bottom{transform:rotateX(-90deg) translateZ(var(--half-h))}.pkg-box-brand{font-size:clamp(11px,1.45vw,21px);font-weight:650;letter-spacing:.04em;overflow-wrap:anywhere;line-height:1.2}.pkg-box-product{font-size:10px;line-height:1.6;overflow-wrap:anywhere}.pkg-box-mark{width:42px;height:42px;border:1.5px solid var(--ink);border-radius:50% 0 50% 0;transform:rotate(-12deg)}.pkg-front small{font-size:8px;line-height:1.4}.pkg-rotation{display:flex;align-items:center;gap:13px;margin:18px 0 10px;font-size:11px;color:var(--ws-muted)}.pkg-rotation input{flex:1;accent-color:var(--ws-teal)}.pkg-rotation output{width:36px}.pkg-flat{background:#fafbf9;border:1px solid var(--ws-line);border-radius:12px;padding:24px;min-height:360px;display:flex;align-items:center;justify-content:center}.pkg-flat svg{width:100%;height:390px;max-width:100%}.pkg-flat-controls{display:flex;align-items:center;flex-wrap:wrap;gap:15px;margin:16px 0;font-size:11px;color:var(--ws-muted)}.pkg-flat-controls label{display:flex;align-items:center;gap:6px}.pkg-flat-controls input{accent-color:var(--ws-teal)}.pkg-flat-controls .secondary{margin-left:auto;font-size:11px}.pkg-note{padding:16px 0;border-top:1px solid var(--ws-line);margin-top:20px}.pkg-note strong{font-size:12px}.pkg-note p{font-size:11px;line-height:1.8;color:var(--ws-muted);margin:7px 0 0}.pkg-wait{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:410px;background:#f4faf7;border:1px dashed #bfd7cd;border-radius:12px;padding:24px}.pkg-wait>span{font-size:64px;color:var(--ws-teal)}.pkg-wait h3{font-size:18px;margin:15px 0 8px}.pkg-wait p{color:var(--ws-muted);font-size:12px;line-height:1.8}.pkg-wait a{font-size:12px;color:var(--ws-teal);margin-top:14px}.pkg-ai-result{margin:0}.pkg-ai-result img{display:block;width:100%;height:min(54vh,540px);object-fit:contain;border-radius:12px;background:#f5f7f6}.pkg-ai-result figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;font-size:12px}.pkg-ai-result a{font-size:11px}.pkg-workbench :focus-visible{outline:2px solid #087c72;outline-offset:3px}.pkg-workbench [hidden]{display:none!important}
@media(min-width:901px){body:has(#packaging-studio-root){height:100dvh;overflow:hidden}body:has(#packaging-studio-root) .shell{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}body:has(#packaging-studio-root) .shell main{width:100%;max-width:none;flex:1;min-height:0;display:flex;flex-direction:column;padding:14px 24px 12px;box-sizing:border-box}body:has(#packaging-studio-root) .heading-row{flex:none;margin:0 0 12px}body:has(#packaging-studio-root) .heading-row h1{font-size:23px;line-height:1.2;margin:0}body:has(#packaging-studio-root) .heading-row .intro{font-size:11px;margin:4px 0 0}body:has(#packaging-studio-root) .shell>footer{display:none}#packaging-studio-root{flex:1;min-height:0;display:flex}.pkg-workbench{width:100%;height:100%;min-height:0}.pkg-config,.pkg-results{min-height:0;max-height:none}.pkg-stage,.pkg-wait{min-height:340px}.pkg-flat svg{height:330px}}
@media(max-width:1100px) and (min-width:901px){.pkg-workbench{grid-template-columns:310px minmax(0,1fr)}.pkg-section{padding:18px}.pkg-results{padding:18px}.pkg-results-head h2{font-size:19px}}
@media(max-width:900px){.pkg-workbench{grid-template-columns:1fr}.pkg-config{border-right:0;border-bottom:1px solid var(--ws-line)}.pkg-submit{position:static}.pkg-results{padding:20px}.pkg-stage{min-height:400px}.pkg-config fieldset{display:block}}
@media(max-width:480px){.pkg-section{padding:18px}.pkg-results{padding:16px}.pkg-results-head{align-items:flex-start}.pkg-results-head h2{font-size:20px}.pkg-flat{padding:12px}.pkg-flat svg{height:280px}.pkg-flat-controls .secondary{margin-left:0}.pkg-stage{min-height:360px}}
@media(prefers-reduced-motion:no-preference){.pkg-view-tabs button,.pkg-upload{transition:background .16s,border-color .16s}.pkg-pulse{animation:pkg-breathe 1.6s ease-in-out infinite}@keyframes pkg-breathe{50%{transform:rotate(90deg) scale(.8);opacity:.45}}}
.pkg-view-tabs button:disabled{color:#718387;background:#f4f6f6;border-color:#e2e8e8;cursor:not-allowed;opacity:.7}
#pkg-flat-hint{margin:-4px 0 14px}
.pkg-dimensions.pkg-two-dimensions{grid-template-columns:repeat(2,minmax(0,1fr))}
.pkg-section h2{margin:0 0 16px}
#pkg-type-hint{margin:-4px 0 16px;color:#405b61;font-size:12px}
#pkg-recommended{font-size:12px;margin:0 0 16px;color:var(--ws-teal)}
.pkg-advanced{margin:12px 0 0;border-top:1px solid var(--ws-line);padding-top:12px}
.pkg-advanced>summary{cursor:pointer;color:var(--ws-muted);font-size:12px;font-weight:600;line-height:1.6}
.pkg-advanced[open]>summary{margin-bottom:12px;color:var(--ws-ink)}
.pkg-flat-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 12px}
.pkg-face-tabs,.pkg-zoom{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.pkg-flat-toolbar button{font:inherit;font-size:12px;min-height:34px;padding:6px 10px;border:1px solid var(--ws-line);border-radius:7px;background:#fff;color:var(--ws-ink);cursor:pointer}
.pkg-flat-toolbar button:hover{background:var(--ws-subtle);border-color:#9bbdb8}
.pkg-face-tabs button[aria-pressed=true]{background:var(--ws-tint);color:var(--ws-teal);border-color:#79b9ac}
.pkg-flat-toolbar button:disabled{color:#6c7c80;background:#f3f6f7;cursor:not-allowed}
.pkg-zoom output{min-width:44px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums;color:var(--ws-ink)}
.pkg-flat-viewport{width:100%;height:clamp(300px,43vh,460px);overflow:auto;overscroll-behavior:contain;background:#f3f6f7;border:1px solid var(--ws-line);border-radius:10px;scrollbar-width:thin}
.pkg-flat-canvas{min-width:0;flex:none;background:#fff}
.pkg-flat-canvas svg{display:block;width:100%;height:100%;max-width:none;stroke:none;fill:none}
.pkg-flat-canvas svg text,.pkg-shape-stage svg text{stroke:none}
.pkg-flat-legend{font-size:11px;color:#405b61;line-height:1.6;margin:9px 0 0}
.pkg-flat-controls{gap:12px;font-size:12px;margin:14px 0 8px;color:#405b61}
.pkg-flat-controls .secondary{margin-left:0;min-height:34px;font-size:12px}
.pkg-results-head h2{margin:0}
.pkg-note{margin-top:14px;padding:10px 0 0}
.pkg-note p{margin:0;color:#506970}
.pkg-shape-stage>svg{width:min(100%,350px);height:330px;padding:12px 0 24px;stroke:none;fill:none}
.pkg-stage{background:#f3f6f7}
.pkg-preview-tag{color:#405b61;background:#fff}
.pkg-closure-line{position:absolute;left:0;right:0;border-top:1px solid color-mix(in srgb,var(--ink) 38%,transparent);display:none}
.pkg-cube--rigid .pkg-closure-line{display:block;top:16%}
.pkg-cube--magnetic .pkg-closure-line{display:block;bottom:12%}
.pkg-cube--sleeve .pkg-closure-line{display:block;left:8%;right:8%;bottom:6%}
.pkg-cube--mailer .pkg-closure-line{display:block;top:8%}
@media(max-width:600px){.pkg-flat-toolbar{gap:8px}.pkg-flat-viewport{height:350px}.pkg-flat-toolbar button{min-height:38px}.pkg-shape-stage>svg{height:330px}}
@media(prefers-reduced-motion:no-preference){.pkg-flat-toolbar button{transition:background .16s ease-out,border-color .16s ease-out}}
