.studio-page{overflow:hidden}.studio-page .site-header{position:relative}.studio-intro{padding:30px 0 22px;border-bottom:1px solid var(--line);background:var(--bg-raised)}.studio-intro-grid{display:flex;align-items:end;justify-content:space-between;gap:24px}.studio-intro h1{margin:4px 0 8px;font-size:clamp(2rem,4vw,3.8rem)}.studio-intro p{max-width:760px;margin:0;color:var(--muted)}.validation-badge{display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--muted);font-size:.8rem;white-space:nowrap}.validation-badge i{width:8px;height:8px;border-radius:50%;background:var(--orange)}.foldspec-studio{height:calc(100dvh - 68px);min-height:690px;display:grid;grid-template-columns:292px minmax(0,1fr) 302px;grid-template-rows:52px minmax(0,1fr);background:var(--bg);border-top:1px solid var(--line)}.studio-command{grid-column:1/-1;display:flex;align-items:center;gap:9px;padding:6px 10px;border-bottom:1px solid var(--line);background:var(--bg-raised)}.command-group{display:flex;align-items:center;gap:6px}.command-group.center{margin-inline:auto}.command-button,.view-button{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 11px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:.84rem;font-weight:760}.command-button:hover,.view-button:hover{background:var(--panel);color:var(--text)}.command-button:disabled{opacity:.35}.view-switch{display:flex;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.view-button{height:30px}.view-button[aria-pressed="true"]{background:var(--blue-strong);color:white}.export-status{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.78rem}.export-status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange)}.export-status[data-status="ready"]::before{background:var(--green)}.studio-inspector,.studio-review{position:relative;min-width:0;background:var(--bg-raised);overflow:auto;overscroll-behavior:contain}.studio-inspector{grid-column:1;border-right:1px solid var(--line)}.studio-review{grid-column:3;border-left:1px solid var(--line)}.studio-workspace{grid-column:2;position:relative;min-width:0;min-height:0;background:#dfe6ee;overflow:hidden}.panel-head{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 16px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg-raised) 94%,transparent);backdrop-filter:blur(10px)}.panel-head strong{font-size:.88rem}.panel-head small{color:var(--quiet);font-family:var(--mono);font-size:.68rem}.panel-section{padding:17px 16px;border-bottom:1px solid var(--line)}.panel-section h2,.panel-section h3{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.panel-section h2 span,.panel-section h3 span{color:var(--quiet);font-family:var(--mono);font-size:.65rem;font-weight:500;text-transform:none}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.studio-field{min-width:0}.studio-field.full{grid-column:1/-1}.studio-field label{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px;color:var(--muted);font-size:.72rem;font-weight:720}.studio-field label span{color:var(--quiet);font-family:var(--mono);font-size:.64rem}.studio-field input,.studio-field select{width:100%;height:39px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font-family:var(--mono);font-size:.8rem}.studio-field input:hover,.studio-field select:hover{border-color:var(--line-strong)}.studio-field input[aria-invalid="true"]{border-color:var(--red);box-shadow:0 0 0 2px rgba(255,102,127,.12)}.field-error{min-height:14px;margin-top:3px;color:var(--red);font-size:.64rem}.preset-note{margin:8px 0 0;color:var(--quiet);font-size:.69rem}.inline-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;color:var(--muted);font-size:.76rem}.inline-toggle input{accent-color:var(--blue)}.layer-row{display:grid;grid-template-columns:auto 9px 1fr auto;align-items:center;gap:9px;padding:7px 0;color:var(--muted);font-size:.75rem}.layer-row input{accent-color:var(--blue)}.layer-swatch{width:9px;height:9px;border-radius:2px;background:var(--layer,#2979ff)}.layer-row small{color:var(--quiet);font-family:var(--mono)}.workspace-toolbar{position:absolute;z-index:3;left:50%;top:12px;transform:translateX(-50%);display:flex;gap:4px;padding:4px;border:1px solid rgba(18,32,50,.2);border-radius:10px;background:rgba(255,255,255,.86);box-shadow:0 8px 24px rgba(34,51,75,.16);backdrop-filter:blur(12px)}.workspace-toolbar button{height:32px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:#28384c;font-size:.72rem;font-weight:760}.workspace-toolbar button:hover{background:#e8eef5}.view-panel{position:absolute;inset:0}.svg-stage{position:absolute;inset:54px 30px 42px;display:grid;place-items:center;cursor:grab}.svg-stage svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 12px 16px rgba(24,42,64,.14))}.svg-stage svg g{transition:opacity .15s var(--ease)}.workspace-scale{position:absolute;z-index:2;left:14px;bottom:12px;padding:6px 9px;border-radius:7px;background:rgba(255,255,255,.88);color:#35485e;font-family:var(--mono);font-size:.65rem}.workspace-legend{position:absolute;z-index:2;right:14px;bottom:12px;display:flex;gap:12px;padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.88);color:#35485e;font-size:.65rem}.workspace-legend span{display:flex;align-items:center;gap:5px}.workspace-legend i{display:block;width:18px;border-top:2px solid}.workspace-legend .cut i{border-color:#ef476f}.workspace-legend .fold i{border-color:#2979ff;border-top-style:dashed}.workspace-legend .safe i{border-color:#00a878;border-top-style:dashed}.preview-3d{display:grid;place-items:center;height:100%;background:radial-gradient(circle at 50% 42%,#f7fbff,#d9e3ed 58%,#c9d4df)}.box-scene{width:min(68vw,620px);height:min(58vh,470px);display:grid;place-items:center;perspective:1100px;cursor:grab}.box-object{--box-w:170px;--box-h:210px;--box-d:85px;position:relative;width:var(--box-w);height:var(--box-h);transform-style:preserve-3d;transform:rotateX(-18deg) rotateY(31deg);animation:box-float 7s ease-in-out infinite}.box-face{position:absolute;border:1px solid rgba(29,67,108,.36);background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(203,221,241,.88));box-shadow:inset 0 0 30px rgba(74,132,194,.08);backface-visibility:visible}.box-face.front,.box-face.back{width:var(--box-w);height:var(--box-h)}.box-face.front{transform:translateZ(calc(var(--box-d)/2))}.box-face.back{transform:rotateY(180deg) translateZ(calc(var(--box-d)/2))}.box-face.left,.box-face.right{width:var(--box-d);height:var(--box-h);left:calc((var(--box-w) - var(--box-d))/2)}.box-face.left{transform:rotateY(-90deg) translateZ(calc(var(--box-w)/2))}.box-face.right{transform:rotateY(90deg) translateZ(calc(var(--box-w)/2))}.box-face.top,.box-face.bottom{width:var(--box-w);height:var(--box-d);top:calc((var(--box-h) - var(--box-d))/2)}.box-face.top{transform:rotateX(90deg) translateZ(calc(var(--box-h)/2))}.box-face.bottom{transform:rotateX(-90deg) translateZ(calc(var(--box-h)/2))}.preview-caption{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);width:min(90%,620px);padding:10px 14px;border-radius:9px;background:rgba(255,255,255,.86);color:#40536a;text-align:center;font-size:.75rem}.nesting-view{height:100%;display:grid;grid-template-columns:minmax(0,1fr) 250px;background:#dbe3ec}.nesting-stage{display:grid;place-items:center;padding:64px 34px 34px}.nesting-stage svg{width:min(100%,650px);height:min(100%,640px);filter:drop-shadow(0 18px 28px rgba(27,47,71,.18))}.nesting-stage .sheet{fill:white;stroke:#9aacbf;stroke-width:.5}.nesting-stage .nested-blanks rect{fill:rgba(41,121,255,.11);stroke:#2979ff;stroke-width:.6}.nesting-summary{padding:72px 18px 18px;border-left:1px solid #b8c5d4;background:#edf2f7;color:#25364a}.nesting-summary h3{font-size:1rem}.nesting-summary p{color:#5a6c80;font-size:.78rem}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.metric-card{padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.metric-card span{display:block;margin-bottom:5px;color:var(--quiet);font-size:.63rem}.metric-card strong{display:block;font-family:var(--mono);font-size:.78rem;overflow-wrap:anywhere}.check-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.check{position:relative;padding:10px 10px 10px 29px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.check::before{content:"";position:absolute;left:10px;top:13px;width:8px;height:8px;border-radius:50%;background:var(--orange)}.check.pass::before{background:var(--green)}.check.fail::before{background:var(--red)}.check strong{display:block;font-size:.7rem}.check span{display:block;margin-top:3px;color:var(--muted);font-size:.64rem;line-height:1.38}.export-grid{display:grid;gap:7px}.export-button{display:flex;align-items:center;justify-content:space-between;min-height:43px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);font-size:.75rem;font-weight:780}.export-button small{color:var(--quiet);font-family:var(--mono);font-size:.62rem}.export-button.primary{border-color:var(--blue-strong);background:var(--blue-strong);color:white}.export-button.primary small{color:#dceaff}.panel-action{width:100%;height:40px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--muted);font-size:.74rem;font-weight:730}.panel-action:hover{color:var(--text);border-color:var(--line-strong)}.privacy-chip{display:flex;gap:9px;padding:11px;border:1px solid rgba(0,184,132,.25);border-radius:9px;background:rgba(0,184,132,.06);color:var(--muted);font-size:.67rem}.privacy-chip::before{content:"●";color:var(--green)}.toast{position:fixed;z-index:110;left:50%;bottom:24px;transform:translate(-50%,130%);padding:11px 15px;border:1px solid var(--line-strong);border-radius:10px;background:var(--panel);box-shadow:var(--shadow);font-size:.78rem;opacity:0;transition:.24s var(--ease)}.toast[data-open]{transform:translate(-50%,0);opacity:1}@keyframes box-float{0%,100%{transform:rotateX(-18deg) rotateY(31deg) translateY(0)}50%{transform:rotateX(-16deg) rotateY(39deg) translateY(-10px)}}.mobile-studio-actions{display:none}.studio-after{padding:70px 0}.studio-after-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px}.studio-after h2{font-size:clamp(2rem,4vw,3.6rem)}.studio-after p,.studio-after li{color:var(--muted)}@media(max-width:1080px){.foldspec-studio{grid-template-columns:270px minmax(0,1fr)}.studio-review{position:absolute;z-index:20;right:0;top:52px;bottom:0;width:310px;transform:translateX(102%);box-shadow:var(--shadow);transition:transform .22s var(--ease)}.foldspec-studio.review-open .studio-review{transform:none}.nesting-view{grid-template-columns:1fr}.nesting-summary{position:absolute;right:12px;top:64px;width:220px;border:1px solid #b8c5d4;border-radius:12px;padding:15px}}@media(max-width:760px){.studio-page{overflow:auto}.studio-intro{display:none}.foldspec-studio{height:calc(100dvh - 62px);min-height:620px;grid-template-columns:1fr;grid-template-rows:48px 1fr}.studio-command{padding-inline:6px}.command-group.center{margin-left:auto;margin-right:0}.command-button span,.export-status span{display:none}.studio-inspector,.studio-review{position:absolute;z-index:30;top:48px;bottom:0;width:min(88vw,330px);box-shadow:var(--shadow);transition:transform .22s var(--ease)}.studio-inspector{left:0;transform:translateX(-103%)}.studio-review{right:0;transform:translateX(103%)}.foldspec-studio.inspector-open .studio-inspector,.foldspec-studio.review-open .studio-review{transform:none}.studio-workspace{grid-column:1;grid-row:2}.mobile-studio-actions{display:flex}.workspace-toolbar{top:8px}.svg-stage{inset:48px 8px 40px}.workspace-legend{display:none}.nesting-stage{padding:58px 12px 30px}.nesting-summary{display:none}.studio-after-grid{grid-template-columns:1fr}.box-scene{width:92vw}.field-grid{grid-template-columns:1fr 1fr}}@media(max-width:430px){.view-button{padding:0 8px;font-size:.7rem}.command-button{min-width:34px;padding:0 7px}.studio-after{padding:48px 0}.workspace-scale{font-size:.58rem}}
