.assembly-guide{background:var(--paper);overflow-wrap:anywhere;min-width:0;max-width:100%;padding-block:20px}.assembly-guide button,.assembly-guide summary{min-height:44px}.assembly-guide button{white-space:normal;min-width:44px}.assembly-guide-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 24px;display:flex}.assembly-guide-heading>div{flex:20rem;min-width:0}.assembly-guide-heading h2{font-size:20px}.assembly-guide-heading p{margin-top:4px;font-size:15px}.assembly-guide-materials{border-block:1px solid var(--line);margin-block:16px}.assembly-guide-materials ul{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:12px 32px;margin-block:0 16px;display:grid}.assembly-guide-materials li{font-size:15px}.assembly-guide-materials li p{color:var(--muted);font-size:14px}.assembly-guide-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-block:8px;display:flex}.assembly-guide-view{gap:4px;display:flex}.assembly-guide-view button{font-size:14px}.assembly-guide-reading{color:var(--muted);margin:16px 0 4px;font-size:14px}.assembly-guide-content,.assembly-guide-step{min-width:0;max-width:100%}.assembly-guide-step h3{font-size:18px;line-height:1.6}.assembly-guide-face{margin-top:4px;font-size:15px}.assembly-guide-figure{min-width:0;max-width:100%;margin-block:16px}.assembly-guide-figure figcaption{color:var(--muted);margin-top:8px;font-size:14px}.assembly-guide-diagram{overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);scrollbar-color:var(--boundary) var(--surface);scrollbar-gutter:stable;width:100%;max-width:100%;overflow-x:auto}.assembly-guide-diagram:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.assembly-guide-diagram .assembly-illustration{border:0;width:100%;min-width:71.25rem;max-width:none;height:auto;margin:0;display:block}.assembly-guide-instructions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-bottom:20px;display:grid}.assembly-guide-instructions>div{min-width:0}.assembly-guide-part-info{margin:0}.assembly-guide-part-info>div{border-bottom:1px solid var(--line);grid-template-columns:8rem minmax(0,1fr);gap:6px 12px;padding-block:8px;display:grid}.assembly-guide-part-info dt{font-size:14px;font-weight:600}.assembly-guide-part-info dd{min-width:0;margin:0;font-size:15px}.assembly-guide-description{margin-top:12px;font-size:15px}.assembly-guide-glue,.assembly-guide-no-glue{border-bottom:1px solid var(--line);padding-block:8px 12px;font-size:15px}.assembly-guide-glue h4,.assembly-guide-no-glue h4{margin:0 0 6px;font-size:15px;line-height:1.6}.assembly-guide-glue h4{color:var(--accent)}.assembly-guide-glue ul,.assembly-guide-no-glue ul{margin-block:0}.assembly-guide-glue li+li,.assembly-guide-no-glue li+li{margin-top:6px}.assembly-guide-navigation{gap:8px;display:flex}.assembly-guide-navigation button{font-size:14px}.assembly-guide-next{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-block:16px;display:flex}.assembly-guide-step h3{scroll-margin-top:20px}.assembly-guide-identity{border-top:1px solid var(--line);margin-top:16px}.assembly-guide-identity code{overflow-wrap:anywhere;margin-top:8px;display:block}.assembly-guide-content.all-steps .assembly-guide-step+.assembly-guide-step{border-top:1px solid var(--boundary);margin-top:28px;padding-top:24px}@media (width<=760px){.assembly-guide-instructions{grid-template-columns:minmax(0,1fr);gap:8px}}@media (width<=560px){.assembly-guide{padding-block:16px}.assembly-guide-heading>div{flex-basis:100%}.assembly-guide-toolbar{align-items:stretch}.assembly-guide-navigation{width:100%}.assembly-guide-navigation button{flex:1}.assembly-guide-part-info>div{grid-template-columns:minmax(0,1fr);gap:2px}.assembly-guide-part-info dd{padding-left:0}}@media (forced-colors:active){.assembly-guide-diagram,.assembly-guide-glue,.assembly-guide-no-glue{border-color:canvastext}}.design-comparison,.comparison-workbench{min-width:0}.comparison-workbench{flex-direction:column;gap:12px;display:flex}.candidate-state{color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin:0;font-size:15px;font-weight:600;display:flex}.candidate-state span{color:var(--muted);font-size:14px;font-weight:400}.comparison-previews{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.comparison-previews figure{background:var(--paper);border:1px solid var(--line);min-width:0;margin:0;overflow:hidden}.comparison-previews figcaption{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:6px;padding:9px 8px;font-size:14px;display:flex}.comparison-previews figcaption strong{color:var(--ink);font-size:16px}.comparison-previews figcaption span{color:var(--muted)}.comparison-previews .artwork-svg{height:auto;max-height:max(240px,100dvh - 320px)}.comparison-switch.segmented{display:none}.comparison-position{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex}.comparison-position button{background:var(--paper);min-width:44px;min-height:44px;padding:7px 10px}.comparison-position label{flex:1;align-items:center;gap:12px;min-width:140px;max-width:540px;display:flex}.comparison-position input{flex:1;min-width:60px}.comparison-position>span{text-align:right;min-width:44px}.comparison-distances{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin:12px 0;display:grid}.comparison-distances>div{border-bottom:2px solid var(--line);min-width:0;padding-bottom:10px}.comparison-distances dt{color:var(--muted);font-size:14px}.comparison-distances dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:24px;font-weight:600;line-height:1.2}.comparison-distances dd small{margin-left:3px;font-size:14px;font-weight:400}.comparison-distances .comparison-candidate-distance{border-color:var(--accent)}.candidate-alternative,.candidate-change-summary{margin:10px 0;font-size:14px}.candidate-change-summary strong{font-size:16px}.candidate-preserved-summary{margin:10px 0;padding:0;font-size:14px;list-style:none}.candidate-preserved-summary li{flex-wrap:wrap;align-items:baseline;gap:0 4px;padding-block:4px;display:flex}.candidate-preserved-summary li>span{color:var(--muted);margin-left:auto;font-size:13px}.candidate-other-changes{overflow-wrap:anywhere;margin:8px 0;padding-left:18px;font-size:14px}.design-comparison>.button-row{flex-direction:column;gap:8px;margin:14px 0 8px;display:flex}.design-comparison>.button-row>button{width:100%;min-width:0;min-height:44px}.design-comparison .primary{font-weight:600}.candidate-verification{margin:8px 0 12px}.design-comparison>details{border-top:1px solid var(--line);font-size:14px}.design-comparison>details>summary{min-height:44px;color:var(--ink);padding:10px 0;font-weight:500;display:list-item}.change-table{border-collapse:collapse;table-layout:fixed;overflow-wrap:anywhere;width:100%;font-size:14px}.change-table caption{text-align:left;padding-block:8px;font-weight:600}.change-table th,.change-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 4px}.change-table thead th{color:var(--muted);font-weight:400}.change-table tbody th{font-weight:500}.preserved-conditions ul,.candidate-checks ul,.remaining-notes{margin:4px 0 12px;padding-left:20px}.preserved-conditions li+li,.candidate-checks li+li,.remaining-notes li+li{margin-top:8px}.candidate-checks li[data-check-status=fail]{color:var(--danger,#a52d22)}.candidate-checks li p{margin:4px 0 0}@media (width<=700px){.comparison-switch.segmented{display:flex}.comparison-switch button{flex:1;min-height:44px}.comparison-previews{display:block}.comparison-previews figure:not(.current){display:none}.comparison-position label{flex-direction:column;align-items:stretch;gap:0}.comparison-position>span{display:none}}.ai-panel{min-width:0}.ai-panel>.notice{margin-block:10px}.ai-panel .ai-wait{border-block:1px solid var(--line);background:0 0;border-left:0;margin-block:12px;padding:12px 0;font-size:15px}.ai-wait p{margin:0 0 8px}.ai-wait .button-row{gap:8px;margin-top:8px}.ai-panel .proposal>h3,.intent-panel .manual-result>h3{margin-bottom:8px;font-size:16px;line-height:1.5}.proposal-explanation{border-top:1px solid var(--line);font-size:14px}.proposal-explanation>summary{min-height:44px;padding:10px 0;font-weight:500}.proposal-explanation p{overflow-wrap:anywhere;margin:0 0 12px}.ai-validation-issues{border-left:3px solid var(--danger,#a52d22);margin:14px 0;padding-left:12px}.ai-validation-issues h3{margin:0 0 8px;font-size:15px}.ai-validation-issues p{overflow-wrap:anywhere;margin:8px 0;font-size:14px}.ai-settings{margin:0}.ai-settings h3{margin-bottom:12px;font-size:16px}.ai-settings p,.ai-settings small{font-size:14px}.ai-settings .field{margin-top:12px;display:block}.ai-settings .field input{width:100%;max-width:380px;margin-top:6px;display:block}.ai-settings .field small{margin-top:6px;display:block}.ai-evidence,.execution-log{overflow-wrap:anywhere;font-size:14px}.ai-evidence ul,.execution-log{padding-left:20px}.ai-evidence li+li,.execution-log li+li{margin-top:12px}@media (width<=600px){.ai-settings .field input{max-width:none}}.interpretation-details>summary{min-height:44px;padding:10px 0;font-size:14px;font-weight:500}.request-interpretation{background:0 0;margin:0 0 12px;padding:0}.request-interpretation h4{margin:4px 0 8px;font-size:15px}.interpretation-summary{margin:0;padding-left:20px;font-size:14px}.interpretation-summary li+li{margin-top:4px}.interpretation-question{border-left:2px solid var(--accent);margin-top:14px;padding-left:12px}.interpretation-question>p{margin-bottom:10px;font-size:15px}.interpretation-question .button-row{flex-direction:column;align-items:stretch;gap:8px}.interpretation-question button{min-height:44px}.interpretation-editor{border-top:1px solid var(--line);margin-top:10px}.interpretation-editor>summary{min-height:44px;padding:10px 0;font-size:14px}.interpretation-fields{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:12px;margin:12px 0;display:grid}.interpretation-fields label{flex-direction:column;gap:6px;min-width:0;font-size:14px;display:flex}.interpretation-fields input,.interpretation-fields select{width:100%;min-height:44px}.interpretation-fields small{color:var(--muted);font-size:14px}.interpretation-forbidden{border:0;min-width:0;margin:12px 0;padding:0}.interpretation-forbidden legend{font-size:14px}.interpretation-forbidden .button-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.interpretation-forbidden label{align-items:center;gap:8px;min-height:44px;padding-right:8px;display:inline-flex}.interpretation-editor>.button-row{flex-direction:column;align-items:stretch;gap:8px}.interpretation-editor>.button-row button{min-height:44px}.home-library{width:min(1120px,100%);margin:0 auto;padding:40px 24px}.home-library button,.home-library summary{min-height:44px}.library-start{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 32px;padding-block:12px 32px;display:flex}.library-start h1{font-size:24px}.library-start p,.library-list-heading p,.library-backup-note{color:var(--muted);font-size:14px}.library-start p{margin-top:4px}.library-start .library-start-guide{margin-top:14px;font-size:13px}.library-start-actions{flex-wrap:wrap;gap:8px;display:flex}.library-start-actions button{min-height:48px;padding-inline:20px}.library-resume{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px 24px;padding-block:18px;display:flex}.library-resume>div{flex-wrap:wrap;align-items:baseline;gap:4px 16px;min-width:0;display:flex}.library-resume span{color:var(--muted);font-size:13px}.library-resume strong{overflow-wrap:anywhere;font-size:15px}.library-resume button{flex-shrink:0}.library-list-heading{justify-content:space-between;align-items:start;gap:20px;margin-top:24px;display:flex}.library-list-heading h2{margin-bottom:4px;font-size:17px}.library-list-heading h2 span{color:var(--muted);margin-left:8px;font-size:14px;font-weight:400}.library-list-heading>button{flex-shrink:0}.library-live{color:var(--muted);font-size:14px}.library-live:empty{display:none}.library-live:not(:empty){margin-top:14px}.library-error button{margin-top:12px}.library-empty{color:var(--muted);padding:32px 0;font-size:15px}.library-empty p+p{margin-top:6px;font-size:14px}.library-list{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:28px 24px;margin:24px 0 0;padding:0;list-style:none;display:grid}.library-list>li{min-width:0}.library-entry{border-bottom:1px solid var(--line);min-width:0;padding-bottom:16px;position:relative}.library-thumbnail{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;height:190px;display:grid;overflow:hidden}.library-thumbnail img{object-fit:contain;width:100%;min-width:0;height:100%;min-height:0;display:block}.library-thumbnail span{text-align:center;color:var(--muted);padding:8px;font-size:14px}.library-entry-body{min-width:0;padding-top:12px}.library-entry h3{overflow-wrap:anywhere;font-size:16px}.library-entry-meta{color:var(--muted);flex-wrap:wrap;gap:2px 12px;margin-top:4px;font-size:14px;display:flex}.library-active{color:var(--accent);font-weight:600}.library-entry-issue{color:var(--ink);overflow-wrap:anywhere;margin-top:8px;font-size:14px}.library-entry-actions{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:8px;margin-top:12px;display:flex}.library-more{min-width:0;position:relative}.library-more>summary{border-radius:var(--radius);min-height:44px;margin:0;padding:10px 6px;font-size:14px;font-weight:400}.library-more>summary:hover,.library-more[open]>summary{background:var(--surface)}.library-more>summary[aria-disabled=true]{opacity:.55;cursor:not-allowed}.library-more[open]>summary{margin-bottom:0}.library-more>div{inset-inline-end:0;z-index:3;border:1px solid var(--boundary);border-radius:var(--radius);background:var(--paper);min-width:200px;max-width:calc(100vw - 48px);padding:4px;display:grid;position:absolute;top:calc(100% + 4px)}.library-more .text-button{text-align:left;width:100%;color:var(--ink)}.library-more .library-delete,.library-delete{color:#813722}.library-backup-note{margin-top:24px}.library-dialog{border:1px solid var(--boundary);border-radius:var(--radius);width:min(520px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);background:var(--paper);padding:24px}.library-dialog::backdrop{background:#20272566}.library-dialog h2{overflow-wrap:anywhere;margin-bottom:16px;font-size:18px}.library-dialog p{font-size:15px}.library-dialog label{flex-direction:column;gap:8px;font-size:15px;display:flex}.library-dialog-actions{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.library-dialog-actions button{min-width:120px}@media (width<=650px){.home-library{padding:16px}.library-start{gap:20px;padding-block:8px 24px}.library-start h1{font-size:22px}.library-start-actions{width:100%}.library-start-actions button{flex:140px;min-width:0}.library-start-actions .primary{flex-basis:100%}.library-resume{flex-wrap:wrap}.library-list-heading{flex-direction:column;gap:12px;margin-top:20px}.library-list{gap:24px;margin-top:16px}.library-thumbnail{height:180px}.library-entry-actions{gap:8px}.library-entry-actions>button{padding-inline:10px}.library-dialog{padding:20px}.library-dialog-actions{flex-direction:column}.library-dialog-actions button{width:100%;min-width:0}}@font-face{font-family:Workbench Sans;src:url(/fonts/ZenKakuGothicNew-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}:root{color:#202725;font-synthesis:weight;text-rendering:optimizelegibility;--paper:#fff;--surface:#f2f4f3;--ink:#202725;--muted:#55615d;--accent:#24685c;--accent-hover:#174e44;--accent-soft:#e8f2ee;--line:#d9dfdc;--boundary:#77837d;--focus:#174e44;--radius:4px;--error:#8c3526;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--canvas-height:max(280px, calc(100dvh - 270px));--comparison-height:max(280px, calc(100dvh - 264px));background:#f2f4f3;font-family:Workbench Sans,Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}button,summary,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--boundary);border-radius:var(--radius);background:var(--paper);min-height:44px;padding:9px 14px;font-size:14px;font-weight:500;line-height:1.5}button:hover:not(:disabled){background:var(--surface);border-color:var(--ink)}button:disabled{cursor:not-allowed;opacity:.55}button,input,select,textarea,summary,a{scroll-margin-block:20px}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}input:not([type=checkbox],[type=range],[type=file],[type=color]),textarea,select{border:1px solid var(--boundary);border-radius:var(--radius);background:var(--paper);width:100%;min-width:0;min-height:44px;padding:9px 10px;font-size:16px}input:disabled{background:var(--surface);color:var(--muted)}textarea{resize:vertical;line-height:1.6}input[type=range]{height:44px;accent-color:var(--accent);cursor:pointer;width:100%;min-width:0;margin:0}input[type=checkbox]{accent-color:var(--accent);flex:none;width:19px;height:19px}input[type=file]{max-width:100%;font-size:14px}input[type=file]::file-selector-button{border:1px solid var(--boundary);background:var(--paper);border-radius:var(--radius);min-height:44px;color:var(--ink);margin-right:8px;padding:8px}input[type=color]{border:1px solid var(--boundary);border-radius:var(--radius);background:#fff;width:80px;height:44px;padding:4px}label{font-size:14px}h1,h2,h3,p,figure{margin:0}h1{overflow-wrap:anywhere;font-size:22px;font-weight:650;line-height:1.45}h2{font-size:17px;font-weight:650;line-height:1.5}h3{font-size:17px;font-weight:650;line-height:1.6}p+p{margin-top:10px}small{color:var(--muted);font-size:13px}code{overflow-wrap:anywhere;font-size:12px}[hidden]{display:none!important}fieldset{border:1px solid var(--line);border-radius:var(--radius);min-width:0;margin:18px 0 0;padding:12px}legend{padding:0 5px;font-size:14px;font-weight:600}summary{cursor:pointer;overflow-wrap:anywhere;min-height:44px;padding:10px 0;font-size:15px;font-weight:600;line-height:1.65}summary::marker{color:var(--muted)}details[open]>summary{margin-bottom:8px}ul,ol{padding-left:23px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10;background:var(--paper);color:var(--ink);padding:12px;position:fixed;top:10px;left:-10000px}.skip-link:focus{left:16px}.primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.secondary{background:var(--paper)}.text-button{color:var(--muted);background:0 0;border-color:#0000;padding-inline:8px}.text-button:hover:not(:disabled){background:var(--surface);color:var(--ink);border-color:#0000}button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.button-row{flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0 0;display:flex}.muted,.field-note{color:var(--muted)}.field-note{margin-top:10px;font-size:14px;line-height:1.6}.eyebrow{color:var(--muted);margin-bottom:5px;font-size:14px}.outline-tag{color:var(--muted);border:1px solid var(--line);white-space:nowrap;border-radius:4px;padding:3px 7px;font-size:13px;display:inline-block}.notice{background:var(--surface);border-left:3px solid var(--boundary);overflow-wrap:anywhere;margin:14px 0;padding:12px 14px;font-size:15px}.notice.warning,.error-message{color:#77311f;border-color:var(--error);background:#fff1e9}.notice p+p{margin-top:10px}.section-top{justify-content:space-between;align-items:start;gap:16px;margin-bottom:12px;display:flex}.app-shell{width:100%;margin:0 auto}.app-shell.is-home{background:var(--paper);min-height:100dvh}.site-header{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:6px 20px;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;font-size:19px;font-weight:600;display:flex}.brand-mark{color:var(--accent);font-size:25px;line-height:1}.editor-identity{align-items:center;gap:20px;min-width:0;display:flex}.library-back{flex-shrink:0}.document-identity{align-items:baseline;gap:10px;min-width:0;display:flex}.document-identity h1{text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.4;overflow:hidden}.revision{white-space:nowrap;color:var(--muted);font-size:13px}.header-actions,.history-actions{align-items:center;gap:4px;display:flex}.header-actions{flex-shrink:0}.history-actions{border-inline:1px solid var(--line);margin-inline:8px;padding-inline:8px}.history-actions button{justify-content:center;align-items:center;gap:4px;display:inline-flex}.history-actions button>span:first-child{margin-right:4px;font-family:system-ui,sans-serif;font-size:21px;line-height:1}.save-state{color:var(--muted);font-size:13px}.site-header .save-state{white-space:nowrap}.save-state.unsaved:before{content:"●";vertical-align:middle;color:var(--accent);margin-right:6px;font-size:8px}.save-state[data-save-status=failed],.save-state[data-save-status=conflict]{color:var(--error)}.workflow{background:var(--paper);border-bottom:1px solid var(--line);justify-content:center;align-items:center;gap:8px;min-height:48px;display:flex}.workflow button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:14px;display:flex}.workflow button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.step-number{border:1px solid;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;display:inline-grid}.workflow .active .step-number{color:#fff;background:var(--accent);border-color:var(--accent)}.workspace-layout{grid-template-columns:minmax(0,1fr) 352px;align-items:start;gap:0;display:grid}.workspace-main{min-width:0;padding:12px 16px 0}.workbench{background:var(--surface);min-width:0}.canvas-tools{flex-wrap:wrap;align-items:center;gap:4px 12px;min-height:48px;display:flex}.canvas-toolbar{flex-wrap:wrap;flex:1;justify-content:space-between;align-items:center;gap:8px;display:flex}.segmented{flex-wrap:wrap;gap:2px;display:inline-flex}.segmented button{color:var(--muted);background:0 0;border-color:#0000;padding-inline:10px;font-size:14px}.segmented button[aria-pressed=true]{color:var(--accent);background:var(--paper);border-color:var(--accent)}.zoom-controls{align-items:center;gap:4px;display:flex}.zoom-controls label{align-items:center;display:flex}.zoom-controls select{background:0 0;border-color:#0000;width:88px;font-size:14px}.pan-controls{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:14px;display:flex}.pan-controls>span{margin-right:auto}.pan-controls button{width:44px}.artwork-stage{min-width:0;padding:8px;position:relative}.preview-surface{width:100%;min-width:0;position:relative}.artwork-svg{width:100%;height:var(--canvas-height);touch-action:auto;display:block;overflow:hidden}.artwork-svg.editing,.artwork-svg.panning{touch-action:none}.artwork-svg.panning{cursor:grab}.artwork-svg.panning:active{cursor:grabbing}.preview-surface>p{color:var(--muted);padding:4px;font-size:14px}.selection-status{min-height:24px}.comparison-label{z-index:1;border:1px solid var(--boundary);border-radius:var(--radius);background:#fff;padding:4px 10px;font-size:14px;position:absolute;top:10px;left:12px}.empty-state{min-height:var(--canvas-height);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.print-stage{min-height:var(--canvas-height);justify-content:center;align-items:center;display:flex}.print-preview{width:100%;height:var(--canvas-height);object-fit:contain}.playback{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:8px;padding:6px 8px;display:flex}.play-button{justify-content:center;align-items:center;gap:6px;min-width:96px;display:flex}.play-button>span{font-size:19px}.endpoint-button{white-space:nowrap}.position-control{flex:1;min-width:40px;display:flex}.distance-output{text-align:right;font-variant-numeric:tabular-nums;min-width:48px;font-size:15px}.distance-output small{margin-left:4px}.canvas-bottom{padding:8px 4px}.canvas-footnote{color:var(--muted);font-size:14px}.original-note{color:var(--muted);padding:8px 4px;font-size:14px}.settings-panel{background:var(--paper);border-left:1px solid var(--line);scrollbar-gutter:stable;min-width:0;max-height:calc(100dvh - 108px);overflow-y:auto}.settings-section{border-bottom:1px solid var(--line);padding:12px 16px}.settings-section h2{margin-bottom:8px;font-size:15px}.settings-section>.primary,.settings-section>.secondary,.stage-action>.primary,.stage-action>.secondary{width:100%}.start-section>.text-button{margin:6px auto 0;display:block}.selection-methods{grid-template-columns:1fr 1fr;gap:6px;margin-top:12px;display:grid}.selection-methods button{padding-inline:4px}.selection-fields{margin-top:8px}.selection-numeric summary,.selection-help summary{font-size:14px;font-weight:400}.number-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.number-grid label{flex-direction:column;gap:6px;min-width:0;font-size:14px;display:flex}.stage-action{padding:12px 16px}.stage-action>.text-button{margin:6px auto 0;display:block}.direction-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.direction-grid button{justify-content:center;align-items:center;gap:4px;min-height:44px;padding-inline:3px;display:flex}.direction-grid span{font-size:18px}.direction-setting{align-items:center;gap:12px;display:flex}.direction-setting .direction-grid{flex:1;min-width:0}.control-caption{color:var(--muted);font-size:14px}.motion-basic .primary-travel{margin-top:8px}.motion-basic h2{margin-bottom:8px}.motion-presets{grid-template-columns:1fr 1fr;gap:6px;display:grid}.motion-presets button{padding-inline:5px}.numeric-details{padding-block:0}.numeric-details[open]{padding-bottom:16px}.numeric-details>summary{padding-block:10px;font-size:14px;font-weight:400}.advanced-fields .range-label{justify-content:space-between;align-items:center;gap:8px;display:flex}.range-label>div{align-items:center;gap:8px;display:flex}.range-label input{max-width:80px}.draft-number{flex-direction:column;gap:6px;min-width:0;display:flex}.draft-number input{width:100%}.field-error{color:var(--error);overflow-wrap:anywhere;font-size:14px;line-height:1.6}.draft-number input[aria-invalid=true]{border:2px solid var(--error)}.range-label:has(.field-error){flex-wrap:wrap;align-items:start}.range-label:has(.field-error)>div{align-items:start;width:100%}.travel-range{margin-block:0}.check-label{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-size:14px;display:flex}.check-summary{margin-bottom:8px;font-size:14px}.check-summary:empty{display:none}.check-summary.has-fail{color:var(--error)}.status-area{color:var(--muted);border-top:1px solid var(--line);padding:6px 20px;font-size:13px}.status-message{overflow-wrap:anywhere}.error-message{border-left:3px solid;margin:12px 16px;padding:12px}.error-message button{color:inherit}.connection{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.dot{background:var(--muted);border-radius:50%;width:7px;height:7px}.dot.connected{background:var(--accent)}.manual-result,.proposal{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.manual-result>h3,.proposal>h3{margin-bottom:8px}.candidate-state{color:var(--ink);margin:8px 0;font-size:15px}.execution-log{overflow-wrap:anywhere;font-size:14px}.validation-details{border-top:1px solid var(--line);padding:0 16px}.validation-details summary>span{color:var(--muted);margin-left:12px;font-size:13px;font-weight:400}.validation-details[open]{padding-bottom:18px}.check-list{margin:0;padding:0;list-style:none}.check-list li{border-bottom:1px solid var(--line);gap:12px;padding:14px 0;font-size:14px;display:flex}.check-list strong{font-weight:500}.check-list p{color:var(--muted);margin-top:5px}.check-mark{text-align:center;flex:0 0 22px;width:22px;font-weight:600}.check-list .fail{color:var(--error)}.design-hash{color:var(--muted);margin-top:10px;display:block}.repair-section{border-bottom:1px solid var(--line);padding:0 16px}.background-repair[open]{padding-bottom:20px}.background-repair>p{font-size:15px}.background-repair fieldset{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.background-repair fieldset>label:first-of-type{align-items:center;gap:10px;display:flex}.background-repair fieldset>.field-note{width:100%;margin:0}.file-button{border:1px solid var(--boundary);border-radius:var(--radius);cursor:pointer;align-items:center;min-height:44px;padding:8px 12px;display:inline-flex;position:relative}.file-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-button:focus-within{outline:3px solid var(--focus);outline-offset:3px}.repair-candidate{padding-top:20px}.repair-candidate>p{margin-top:8px;font-size:14px}.kit-download{border-bottom:0}.print-heading{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.print-heading h2{margin:0}.print-heading h3{font-size:15px}.print-motion{color:var(--muted);margin-top:6px;font-size:14px}.pdf-contents{border-bottom:1px solid var(--line);padding-block:14px}.pdf-page-count{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pdf-page-count strong{font-size:17px;font-weight:600}.pdf-page-count>span{color:var(--muted);font-size:14px}.pdf-contents dl{margin:8px 0 0;font-size:14px}.pdf-contents dl>div{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:10px;padding-top:8px;display:grid}.pdf-contents dt{color:var(--muted)}.pdf-contents dd{margin:0}.pdf-contents dd span{color:var(--muted);margin-top:2px;font-size:13px;display:block}.kit-download .export-button{width:100%;margin-top:16px}.print-instructions{font-size:13px}.print-guide-next{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.guide-version-note{border-left:2px solid var(--boundary);margin-top:10px;padding-left:10px;font-size:14px}.print-back{margin-top:8px}.making-panel{background:var(--paper);border-top:1px solid var(--line);padding:0 24px}.making-panel>details+details{border-top:1px solid var(--line)}.making-panel>details>summary{padding-block:18px}.making-panel>details[open]{padding-bottom:22px}.kit-materials ul{grid-template-columns:1fr 1fr;gap:20px 30px;padding:0;font-size:15px;list-style:none;display:grid}.kit-materials p{color:var(--muted);margin-top:5px;font-size:14px}.assembly-steps{grid-template-columns:1fr 1fr;gap:30px;padding:0;list-style:none;display:grid}.assembly-steps li{gap:14px;min-width:0;display:flex}.assembly-steps li>span{color:var(--muted);font-variant-numeric:tabular-nums}.assembly-steps li>div{min-width:0}.assembly-steps p{margin-top:8px;font-size:15px}.assembly-illustration{border:1px solid var(--line);width:100%;height:auto;margin:15px 0;display:block}.assembly-steps .glue-note,.assembly-steps .no-glue-note{border-left:3px solid var(--boundary);padding-left:10px;font-size:14px}.assembly-steps .no-glue-note{border-color:var(--accent)}.printing-note{font-size:15px}.printing-note button{margin-top:14px}.physical-section summary>span{color:var(--muted);margin-left:12px;font-size:13px;font-weight:400}.record-meta{background:var(--surface);overflow-wrap:anywhere;margin:14px 0;padding:14px;font-size:14px}.physical-checklist{color:var(--muted);font-size:14px}.record-grid{grid-template-columns:1fr 1fr;gap:20px;margin:20px 0;display:grid}.field{flex-direction:column;align-items:start;gap:6px;font-size:15px;display:flex}.field>input,.field>textarea{width:100%}.record-photos{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}.record-photos img{object-fit:contain;border:1px solid var(--line);width:140px;height:120px}.record-photos figure{flex-direction:column;gap:5px;display:flex}.saved-record{border-top:1px solid var(--line);margin-top:20px;padding:20px 0}.saved-record small{overflow-wrap:anywhere;margin-top:8px;display:block}.saved-record dl>div{gap:15px;margin:12px 0;font-size:14px;display:flex}.saved-record dt{min-width:150px;color:var(--muted)}.saved-record dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.project-dialog{border:1px solid var(--boundary);border-radius:var(--radius);width:min(560px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);padding:24px;box-shadow:0 20px 70px #20272533}.project-dialog::backdrop{background:#20272577}.dialog-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;display:flex}.project-dialog>p{font-size:15px}.project-dialog>h2{margin-bottom:15px}.project-actions{flex-direction:column;gap:12px;margin:20px 0;display:flex}.project-dialog details{border-top:1px solid var(--line)}.project-dialog details p{color:var(--muted);font-size:14px}.pdf-mode{gap:8px;margin-top:18px;display:grid}#open-assembly-guide{width:100%;min-height:44px;margin-top:10px}#assembly-guide{max-width:1440px;margin:0 auto;padding:16px}.ai-wait{border-left:3px solid var(--boundary);background:var(--surface);margin-top:12px;padding:12px;font-size:15px}.ai-wait .button-row{margin-top:8px}.ai-evidence{border-top:1px solid var(--line);margin-top:12px}.ai-evidence ul{padding-left:20px;font-size:14px}.ai-evidence li+li{margin-top:12px}.ai-evidence code{overflow-wrap:anywhere}.image-failure{scroll-margin-block:16px}.image-failure>button{margin-top:10px}.record-photos label{flex-direction:column;gap:4px;font-size:14px;display:flex}.record-photos figcaption{color:var(--muted);font-size:14px}.primary-travel{margin:0}.primary-travel .range-label{justify-content:space-between;align-items:center;gap:8px;display:flex}.primary-travel .range-label .draft-number{max-width:82px}.primary-conditions h2{margin-bottom:4px}.primary-conditions .field-note{margin:0}.primary-conditions .condition-size{margin:-4px 0 4px 27px;font-size:13px}.paper-limit{align-items:center;gap:8px;margin-top:4px;display:flex}.paper-limit label{align-items:center;gap:8px;min-width:0;display:flex}.paper-limit .draft-number{width:68px}.paper-limit>span{white-space:nowrap}.motion-extra{padding-block:0}.motion-alternatives>summary{padding-block:9px;font-size:14px;font-weight:400}.motion-alternatives[open]>summary{margin-bottom:4px}@media (width>=801px){.editor-workspace[data-stage="1"]{--canvas-height:max(280px, calc(100dvh - 234px))}.editor-workspace[data-stage="3"]{--canvas-height:max(320px, calc(100dvh - 260px))}}@media (width<=1180px) and (width>=801px){.site-header{gap:8px;padding-inline:12px}.editor-identity{gap:8px}.history-label{display:none}.history-actions{margin-inline:2px;padding-inline:2px}.workspace-layout{grid-template-columns:minmax(0,1fr) 330px}.workspace-main{padding-inline:12px}.pan-toggle{padding-inline:6px}}@media (width<=800px){:root{--canvas-height:clamp(230px, 45dvh, 420px);--comparison-height:clamp(250px, 43dvh, 420px)}.site-header{flex-wrap:wrap;gap:4px 8px;padding:8px 12px}.editor-identity{gap:12px;width:100%}.header-actions{flex-wrap:wrap;gap:4px;width:100%}.site-header .save-state{white-space:normal;flex:1;min-width:66px}.history-actions{margin:0;padding:0 4px}.history-label{display:none}.history-actions button{min-width:44px;padding:6px}.history-actions button>span:first-child{margin:0}.header-actions>button{padding-inline:6px}.workflow{gap:2px}.workflow button{flex:1;gap:5px;min-width:0;padding:8px 6px;font-size:14px}.step-number{flex:0 0 20px}.workspace-layout{grid-template-columns:minmax(0,1fr)}.workspace-main{padding:8px 12px 0}.settings-panel{border-left:0;border-top:1px solid var(--line);max-height:none;overflow:visible}.canvas-tools{gap:2px 8px}.canvas-toolbar{flex-basis:100%}.zoom-controls{margin-left:auto}.zoom-controls select{width:78px}.artwork-stage{padding:4px}.artwork-svg{height:auto;max-height:var(--canvas-height)}.canvas-bottom{padding:6px 4px}.playback{gap:3px;padding:4px}.play-button{min-width:88px;padding-inline:8px}.settings-section{padding:12px 16px}.assembly-steps{grid-template-columns:1fr}.status-area{padding-inline:16px}}@media (width<=560px){.document-identity{flex:1;gap:6px}.document-identity h1{font-size:15px}.document-identity .revision{font-size:12px}.library-back{padding-inline:2px;font-size:14px}.site-header .save-state{font-size:12px}.header-actions{gap:0}.workflow button{gap:4px;padding-inline:3px;font-size:14px;line-height:1.4}.step-number{flex-basis:18px;width:18px;height:18px;font-size:11px}.canvas-toolbar .segmented{flex:1}.canvas-toolbar .segmented button{padding-inline:8px}.canvas-toolbar>.text-button{padding-inline:4px;font-size:14px}.zoom-controls{margin-left:auto}.playback{flex-wrap:wrap}.position-control{flex-basis:100%;order:2;padding-inline:4px}.distance-output{margin-left:auto}.endpoint-button{padding-inline:8px}.number-grid{gap:12px}.selection-methods{grid-template-columns:1fr 1fr}.section-top{flex-wrap:wrap;gap:6px}.background-repair fieldset{flex-direction:column;align-items:stretch}.file-button{justify-content:center}.validation-details summary>span{margin-left:18px;display:block}.making-panel{padding-inline:16px}.kit-materials ul,.record-grid{grid-template-columns:1fr;gap:16px}.record-photos img{width:120px;height:100px}.physical-section summary>span{margin-left:18px;display:block}.saved-record dl>div{flex-direction:column;gap:3px}.project-dialog{padding:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.candidate-workbench{min-width:0}.comparison-workbench .candidate-state{color:var(--ink);margin:0 0 8px;font-size:16px;font-weight:600}.motion-request{border-bottom:1px solid var(--line);min-width:0;padding:8px 16px 12px}.motion-request .request-editor>summary{align-items:center;gap:6px;min-height:44px;padding:6px 0;font-size:15px;list-style:none;display:flex}.motion-request .request-editor>summary:after{content:"＋";margin-left:auto;font-weight:400}.motion-request .request-editor[open]>summary:after{content:"−"}.motion-request .request-editor[open]>summary{margin-bottom:4px}.request-editor>textarea{width:100%;min-height:78px;scroll-margin-block:80px;font-size:16px;line-height:1.5;display:block}.request-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.request-actions>button,.request-actions>div,.request-actions>div>button{width:100%;min-width:0}.request-actions button{padding-inline:6px}.request-method-note{margin-top:6px;font-size:13px}.result-feedback{margin-block:12px;font-size:14px}.motion-request .intent-panel,.motion-request .ai-panel{padding:0}.motion-request .intent-panel:empty,.motion-request .ai-panel:empty{display:none}.motion-request .manual-result,.motion-request .proposal{border:0;margin-top:12px;padding-top:0}.motion-request .manual-result h3,.motion-request .proposal h3{font-size:16px}.motion-request .request-interpretation{margin-block:8px;padding:10px 0}.interpretation-details{border-top:1px solid var(--line)}.interpretation-details>summary{font-size:14px}.project-dialog .ai-settings{border-top:0;margin-top:0;padding-bottom:16px}.project-dialog .ai-settings h3{margin-bottom:12px}@media (width<=800px){.candidate-workbench{padding:0 0 12px}.motion-request{padding:12px 16px}.request-editor>textarea{min-height:82px}}
