:root{--ui-font-scale:1;--topbar-height:clamp(56px, calc(28px + 24px * var(--ui-font-scale)), 72px);--workspace-sidebar-width:clamp(224px, 12vw, 264px);--workspace-inspector-width:clamp(278px, 15vw, 330px);--workspace-canvas-inset:clamp(10px, 1.2vw, 22px);--bg:#eef1f0;--surface:#fff;--surface-subtle:#f7f8f8;--surface-strong:#202526;--line:#d8dddd;--line-strong:#bcc5c5;--text:#1e2425;--muted:#657072;--accent:#007d72;--accent-soft:#e1f2ef;--accent-strong:#0e3f3b;--blue:#2b69a5;--amber:#b86b0c;--amber-soft:#fff2dd;--red:#b33c35;--green:#1e7b47;--shadow:0 8px 24px #1b262617;--radius:6px}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans TC,Microsoft JhengHei,sans-serif;font-size:calc(14px * var(--ui-font-scale));letter-spacing:0;overflow:hidden}button,textarea,input{font:inherit;letter-spacing:0}button{color:inherit}button:focus-visible,textarea:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #007d7261}.app-shell{--topbar-height:clamp(56px, calc(28px + 24px * var(--ui-font-scale)), 72px);grid-template-rows:var(--topbar-height) minmax(0, 1fr);background:var(--surface);width:100%;min-width:0;height:100dvh;font-size:calc(14px * var(--ui-font-scale));display:grid;position:relative;overflow:hidden}.topbar{z-index:30;height:var(--topbar-height);border-bottom:1px solid var(--line);background:#fffffffa;grid-template-columns:auto minmax(190px,1fr) auto minmax(230px,1fr);align-items:center;display:grid;position:relative}.brand-lockup{border-right:1px solid var(--line);align-items:center;gap:10px;min-width:188px;height:100%;padding:0 16px;display:flex}.brand-mark{background:var(--surface-strong);color:#fff;width:28px;height:28px;font-size:calc(14px * var(--ui-font-scale));border-radius:5px;place-items:center;font-weight:800;display:grid}.brand-lockup>div,.account-copy,.panel-header>div,.right-heading>div,.document-header>div:first-child,.project-context,.message-heading{min-width:0}.brand-lockup strong,.brand-lockup small,.account-copy strong,.account-copy small,.panel-header strong,.eyebrow{display:block}.brand-lockup strong{font-size:calc(13px * var(--ui-font-scale));line-height:calc(15px * var(--ui-font-scale))}.brand-lockup strong,.brand-lockup small,.account-copy strong,.account-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand-lockup small,.account-copy small{color:var(--muted);font-size:calc(10px * var(--ui-font-scale));line-height:calc(12px * var(--ui-font-scale));margin-top:2px}.project-context{color:#343c3d;white-space:nowrap;align-items:center;gap:8px;padding:0 16px;display:flex}.project-context>span:not(.demo-badge){text-overflow:ellipsis;overflow:hidden}.demo-badge,.ui-only-badge{color:#306a64;height:20px;font-size:calc(10px * var(--ui-font-scale));background:#f1f6f5;border:1px solid #c8d5d3;border-radius:4px;flex:none;align-items:center;padding:0 6px;font-weight:700;display:inline-flex}.mode-tabs{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-subtle);align-items:center;gap:2px;height:36px;padding:3px;display:flex}.mode-tab{height:28px;color:var(--muted);cursor:pointer;font-size:calc(12px * var(--ui-font-scale));white-space:nowrap;background:0 0;border:0;border-radius:4px;align-items:center;gap:7px;padding:0 12px;font-weight:650;display:inline-flex}.mode-tab:hover{color:var(--text)}.mode-tab.active{background:var(--surface-strong);color:#fff}.top-actions{justify-content:flex-end;align-items:center;gap:12px;padding:0 14px;display:flex}.save-state{color:var(--green);font-size:calc(11px * var(--ui-font-scale));white-space:nowrap;align-items:center;gap:6px;display:flex}.account-slot{position:relative}.account-button{width:136px;height:clamp(40px, calc(12px + 24px * var(--ui-font-scale)), 56px);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:5px;align-items:center;gap:8px;padding:4px 8px 4px 5px;display:flex}.account-button:hover{border-color:var(--line-strong);background:var(--surface-subtle)}.avatar{width:30px;height:30px;color:var(--accent-strong);font-size:calc(12px * var(--ui-font-scale));background:#dce5e3;border-radius:50%;flex:0 0 30px;place-items:center;font-weight:800;display:grid}.account-copy{text-align:left;flex:1}.account-copy strong{font-size:calc(11px * var(--ui-font-scale));line-height:calc(13px * var(--ui-font-scale))}.account-popover{z-index:80;border:1px solid var(--line);border-radius:var(--radius);width:286px;box-shadow:var(--shadow);background:#fff;gap:11px;padding:14px;display:flex;position:absolute;top:46px;right:0}.popover-icon{background:var(--surface-subtle);width:34px;height:34px;color:var(--muted);border-radius:5px;flex:none;place-items:center;display:grid}.account-popover strong{font-size:calc(12px * var(--ui-font-scale))}.account-popover p{color:var(--muted);font-size:calc(11px * var(--ui-font-scale));margin:5px 0 0;line-height:1.45}.account-settings-link{border:1px solid var(--line);color:#343c3d;cursor:pointer;height:30px;font-size:calc(10px * var(--ui-font-scale));background:#fff;border-radius:4px;align-items:center;gap:6px;margin-top:10px;padding:0 9px;font-weight:700;display:inline-flex}.account-settings-link:hover{border-color:var(--line-strong);background:var(--surface-subtle)}.cad-layout,.document-layout{min-width:0;min-height:0;display:grid;overflow:hidden}.left-panel,.right-panel,.document-left,.evidence-panel{background:var(--surface-subtle);min-width:0;min-height:0;overflow-y:auto}.left-panel,.document-left{border-right:1px solid var(--line)}.right-panel,.evidence-panel{border-left:1px solid var(--line)}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:65px;padding:12px 14px;display:flex}.panel-header strong{max-width:170px;font-size:calc(12px * var(--ui-font-scale));text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.eyebrow{color:var(--muted);font-size:calc(10px * var(--ui-font-scale));font-weight:650}.icon-button,.tool-button{border:1px solid var(--line);color:#596466;cursor:pointer;background:#fff;flex:none;place-items:center;display:inline-grid}.icon-button{border-radius:5px;width:32px;height:32px}.icon-button:hover,.tool-button:hover{border-color:var(--line-strong);color:var(--text)}.file-metadata{border-bottom:1px solid var(--line);gap:6px;padding:10px 14px;display:flex}.file-metadata span{border:1px solid var(--line);color:var(--muted);font-size:calc(9px * var(--ui-font-scale));background:#fff;border-radius:4px;padding:3px 6px}.panel-section{border-top:1px solid var(--line);padding:14px}.panel-section:first-of-type,.panel-section.no-border-top{border-top:0}.panel-section.compact{padding-top:12px}.section-title{color:#3f494a;font-size:calc(11px * var(--ui-font-scale));align-items:center;gap:7px;margin-bottom:10px;font-weight:750;display:flex}.layer-list,.check-list,.document-list,.evidence-list{gap:3px;display:grid}.layer-row{color:#465052;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;grid-template-columns:8px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-height:34px;padding:0 7px;display:grid}.layer-row:hover{background:#e9edec}.layer-swatch{border-radius:2px;width:8px;height:8px}.activity-item{grid-template-columns:10px 1fr;gap:8px;padding:8px 4px;display:grid}.activity-dot{background:#7f8b8c;border-radius:50%;width:7px;height:7px;margin-top:4px}.activity-dot.approved{background:var(--green)}.activity-item strong,.activity-item small{display:block}.activity-item strong{font-size:calc(10px * var(--ui-font-scale))}.activity-item small{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-top:3px}.cad-main,.document-main{background:#fff;min-width:0;min-height:0;display:grid}.cad-main{grid-template-rows:minmax(0,1fr) 68px;position:relative}.version-bar{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-width:0;padding:8px 10px;display:flex}.version-scroll{scrollbar-width:none;flex:1;gap:6px;min-width:0;display:flex;overflow-x:auto}.version-scroll::-webkit-scrollbar{display:none}.version-chip{border:1px solid var(--line);color:#364041;cursor:pointer;text-align:left;background:#fff;border-radius:5px;grid-template-columns:1fr auto;align-content:center;min-width:116px;height:42px;padding:5px 8px;display:grid;position:relative}.version-chip span,.version-chip small{text-overflow:ellipsis;white-space:nowrap;grid-column:1;overflow:hidden}.version-chip span{font-size:calc(10px * var(--ui-font-scale));font-weight:750}.version-chip small{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-top:2px}.version-chip svg{color:var(--green);grid-area:1/2/3}.version-chip:hover{border-color:var(--line-strong)}.version-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.viewer-shell{background:#e7ebea;grid-template-rows:40px minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.viewer-toolbar{z-index:2;border-bottom:1px solid var(--line-strong);background:#f9fafa;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 8px;display:grid}.tool-group{align-items:center;gap:4px;display:flex}.tool-group:last-child{justify-content:flex-end}.tool-button{border-radius:4px;width:28px;height:28px}.tool-button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.viewer-title{min-width:0;font-size:calc(10px * var(--ui-font-scale));text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;font-weight:700;display:flex;overflow:hidden}.zoom-readout{min-width:42px;color:var(--muted);font-size:calc(10px * var(--ui-font-scale));text-align:center}.cad-canvas{background:#dfe4e3;min-width:0;min-height:0;position:relative;overflow:hidden}.drawing-wrap{inset:var(--workspace-canvas-inset);transform-origin:50%;place-items:center;transition:transform .14s;display:grid;position:absolute}.floor-plan{filter:drop-shadow(0 5px 12px #1f29291c);width:min(100%,clamp(900px,68vw,1180px));max-height:100%;display:block}.camera-point{cursor:pointer}.camera-point circle,.camera-point path{transition:all .12s}.camera-point:hover circle{fill:#0e3f3b}.camera-point:focus{outline:none}.canvas-coordinate{color:#5d686a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:calc(9px * var(--ui-font-scale));background:#ffffffe6;border:1px solid #7e8a8b6b;border-radius:4px;padding:4px 7px;position:absolute;bottom:9px;right:10px}.prompt-composer{border-top:1px solid var(--line);background:#fff;grid-template-columns:34px minmax(120px,1fr) auto auto;align-items:center;gap:8px;min-width:0;min-height:68px;padding:10px 12px;display:grid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.langui-prompt-composer{position:relative}.langui-history-list{gap:2px;display:grid}.generation-history-dock{z-index:80;position:absolute;bottom:72px;left:4px}.generation-history-trigger{color:#344041;cursor:pointer;text-align:left;background:#fffffffa;border:1px solid #b9c4c4;border-radius:5px;grid-template-columns:18px minmax(0,1fr) auto 16px;align-items:center;gap:8px;width:clamp(204px,18vw,236px);height:42px;padding:0 10px;display:grid;box-shadow:0 5px 15px #1e27271f}.generation-history-trigger:hover,.generation-history-trigger.active{background:#fff;border-color:#8fa09e}.generation-history-trigger>span{min-width:0}.generation-history-trigger strong,.generation-history-trigger small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.generation-history-trigger strong{font-size:calc(10px * var(--ui-font-scale))}.generation-history-trigger small{color:var(--muted);font-size:calc(8px * var(--ui-font-scale));margin-top:2px}.generation-history-trigger em{color:#526061;min-width:20px;height:20px;font-size:calc(8px * var(--ui-font-scale));background:#e7ebea;border-radius:10px;place-items:center;padding:0 6px;font-style:normal;font-weight:800;display:grid}.generation-history-trigger>svg:last-child{color:var(--muted);transition:transform .14s}.generation-history-trigger>svg:last-child.open{transform:rotate(180deg)}.generation-history-popover{border:1px solid var(--line-strong);background:#fff;border-radius:6px;grid-template-rows:auto minmax(0,1fr);width:clamp(284px,25vw,350px);max-width:calc(100vw - 32px);max-height:min(380px,100dvh - 190px);animation:.12s ease-out generation-history-in;display:grid;position:absolute;bottom:calc(100% + 8px);left:0;overflow:hidden;box-shadow:0 14px 36px #1923232e}.generation-history-popover>header{border-bottom:1px solid var(--line);grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;min-height:54px;padding:8px 10px;display:grid}.generation-history-popover>header>span{background:var(--accent-soft);width:30px;height:30px;color:var(--accent-strong);border-radius:4px;place-items:center;display:grid}.generation-history-popover>header strong,.generation-history-popover>header small{display:block}.generation-history-popover>header strong{font-size:calc(11px * var(--ui-font-scale))}.generation-history-popover>header small{color:var(--muted);font-size:calc(8px * var(--ui-font-scale));margin-top:3px}.generation-history-scroll{min-height:0;padding:6px;overflow-y:auto}.generation-history-popover .history-row{border-left:3px solid #0000;min-height:48px;padding:8px 9px}.generation-history-popover .history-row.active{border-left-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}@keyframes generation-history-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.generation-history-popover{animation:none}.generation-history-trigger>svg:last-child{transition:none}}.langui-prompt-message>div{min-width:0}.prompt-composer textarea{resize:none;border:1px solid var(--line);background:var(--surface-subtle);width:100%;min-width:0;height:42px;color:var(--text);line-height:calc(18px * var(--ui-font-scale));border-radius:5px;padding:11px 12px}.prompt-composer textarea:focus{border-color:var(--accent);background:#fff}.composer-meta{height:28px;color:var(--muted);font-size:calc(10px * var(--ui-font-scale));white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.primary-button,.secondary-button,.inline-action{cursor:pointer;white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;gap:7px;font-weight:700;display:inline-flex}.primary-button,.secondary-button{height:34px;font-size:calc(11px * var(--ui-font-scale));padding:0 12px}.primary-button{border:1px solid var(--surface-strong);background:var(--surface-strong);color:#fff}.primary-button:hover:not(:disabled){background:#343b3c}.primary-button:disabled{cursor:not-allowed;opacity:.55}.secondary-button{border:1px solid var(--line);color:#3c4647;background:#fff}.secondary-button:hover{border-color:var(--line-strong);background:var(--surface-subtle)}.right-heading{background:#fff}.field-label{color:var(--muted);font-size:calc(10px * var(--ui-font-scale));margin-bottom:8px;font-weight:700;display:block}.segmented-control{border:1px solid var(--line);background:#e9edec;border-radius:5px;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;width:100%;padding:3px;display:grid}.segmented-control button{height:29px;color:var(--muted);cursor:pointer;font-size:calc(10px * var(--ui-font-scale));text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:3px;font-weight:700;overflow:hidden}.segmented-control button.active{color:var(--text);background:#fff;box-shadow:0 1px 3px #222d2d1f}.check-row{cursor:pointer;border-radius:4px;grid-template-columns:17px minmax(0,1fr);align-items:center;gap:8px;min-height:40px;padding:5px 6px;display:grid}.check-row:hover{background:#e9edec}.check-row input{width:15px;height:15px;accent-color:var(--accent)}.check-row strong,.check-row small{display:block}.check-row strong{font-size:calc(10px * var(--ui-font-scale))}.check-row small{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-top:3px}.metric-grid{border:1px solid var(--line);background:var(--line);border-radius:5px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.metric-grid>div{background:#fff;min-height:48px;padding:8px}.metric-grid span,.metric-grid strong{display:block}.metric-grid span{color:var(--muted);font-size:calc(9px * var(--ui-font-scale))}.metric-grid strong{font-size:calc(15px * var(--ui-font-scale));margin-top:4px}.warning-text{color:var(--amber)}.warning-row{background:var(--amber-soft);color:#80521d;border:1px solid #ead3b2;border-radius:5px;grid-template-columns:20px minmax(0,1fr);gap:7px;margin-top:9px;padding:8px;display:grid}.warning-row strong,.warning-row small{display:block}.warning-row strong{font-size:calc(10px * var(--ui-font-scale))}.warning-row small{font-size:calc(9px * var(--ui-font-scale));margin-top:3px;line-height:1.4}.camera-inspector dl{margin:0 0 10px}.camera-inspector dl>div{font-size:calc(10px * var(--ui-font-scale));border-bottom:1px solid #e2e6e6;justify-content:space-between;gap:12px;padding:6px 0;display:flex}.camera-inspector dt{color:var(--muted)}.camera-inspector dd{text-align:right;margin:0;font-weight:700}.camera-inspector .secondary-button{width:100%}.panel-footer-actions{grid-template-columns:1fr .8fr;gap:7px;padding:12px 14px 18px;display:grid}.demo-notice{z-index:70;color:#4a5657;width:max-content;max-width:min(840px,100vw - 32px);min-height:30px;font-size:calc(10px * var(--ui-font-scale));pointer-events:auto;white-space:normal;background:#fffffff5;border:1px solid #b9c5c4;border-radius:5px;align-items:center;gap:2px;padding:2px;line-height:1.4;display:flex;position:fixed;bottom:122px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #1e27271a}.demo-notice-message,.demo-token-usage{min-width:0;min-height:32px;color:inherit;cursor:pointer;font:inherit;line-height:inherit;background:0 0;border:0;border-radius:3px;align-items:center;gap:7px;padding:4px 8px;display:flex}.demo-notice-message{text-align:left;flex:auto}.demo-notice-message:hover,.demo-notice-message:focus-visible,.demo-token-usage:hover,.demo-token-usage:focus-visible{background:#edf3f2;outline:none}.demo-notice-message>svg,.demo-token-usage>svg{flex:none}.demo-notice-message>span{overflow-wrap:anywhere;min-width:0}.demo-token-usage{color:#176c65;white-space:nowrap;border-left:1px solid #d7dfde;border-radius:0 3px 3px 0;flex:none;font-weight:750}.build-update-notice{z-index:210;color:#334041;background:#fff;border:1px solid #9eb0ae;border-radius:6px;align-items:center;gap:10px;max-width:min(620px,100vw - 32px);min-height:42px;padding:7px 8px 7px 12px;display:flex;position:fixed;top:64px;left:50%;transform:translate(-50%);box-shadow:0 8px 20px #1b262624}.build-update-notice>span{min-width:0;font-size:calc(10px * var(--ui-font-scale));flex:1;gap:1px;line-height:1.35;display:grid}.build-update-notice strong{color:var(--text);font-size:calc(11px * var(--ui-font-scale))}.build-update-notice button{background:var(--surface-strong);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:4px;flex:none;align-items:center;gap:6px;min-height:30px;padding:0 10px;display:inline-flex}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.document-left,.evidence-panel{background:#f7f8f8}.document-list{border-bottom:1px solid var(--line);padding:10px}.document-row{color:#475152;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:5px;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:8px;width:100%;min-height:54px;padding:7px;display:grid}.document-row:hover{background:#ecefef}.document-row.active{color:var(--accent-strong);background:#fff;border-color:#c6d3d1}.document-row strong,.document-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.document-row strong{font-size:calc(10px * var(--ui-font-scale))}.document-row small{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-top:4px}.history-row{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;width:100%;min-height:42px;padding:7px;display:block}.history-row:hover,.history-row.active{background:#e9edec}.history-row span,.history-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.history-row span{font-size:calc(10px * var(--ui-font-scale));font-weight:650}.history-row small{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-top:3px}.document-main{grid-template-rows:66px minmax(0,1fr) 68px}.document-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:0 18px;display:flex}.document-header strong{font-size:calc(13px * var(--ui-font-scale));margin-top:4px;display:block}.document-tabs{border:1px solid var(--line);background:var(--surface-subtle);border-radius:5px;align-items:center;gap:2px;padding:3px;display:flex}.document-tabs button{height:28px;color:var(--muted);cursor:pointer;font-size:calc(10px * var(--ui-font-scale));background:0 0;border:0;border-radius:3px;align-items:center;gap:6px;padding:0 9px;font-weight:700;display:inline-flex}.document-tabs button.active{color:var(--text);background:#fff;box-shadow:0 1px 3px #222d2d1f}.document-content{background:#fff;min-height:0;overflow-y:auto}.document-composer{padding-left:16px;padding-right:16px}.evidence-list{padding:10px}.evidence-item{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:5px;grid-template-columns:auto 1fr;gap:6px 8px;width:100%;padding:9px;display:grid}.evidence-item:hover{background:#ecefef}.evidence-item.active{background:#fff;border-color:#bfd1ce}.page-badge{background:var(--accent-soft);height:20px;color:var(--accent-strong);font-size:calc(9px * var(--ui-font-scale));border-radius:3px;grid-column:1;align-items:center;padding:0 5px;font-weight:800;display:inline-flex}.evidence-item strong{font-size:calc(10px * var(--ui-font-scale));text-overflow:ellipsis;white-space:nowrap;grid-column:2;align-self:center;overflow:hidden}.evidence-item p{color:var(--muted);font-size:calc(10px * var(--ui-font-scale));grid-column:1/3;margin:0;line-height:1.55}.chat-thread{width:min(760px,100%);margin:0 auto;padding:22px 24px 40px}.chat-message{grid-template-columns:30px minmax(0,1fr);gap:11px;padding:14px 0;display:grid}.chat-message+.chat-message{margin-top:6px}.user-message{grid-template-columns:minmax(0,1fr) 30px;width:min(680px,92%);margin-left:auto}.user-message .message-avatar{grid-area:1/2}.user-message>div{background:#f0f2f2;border-radius:8px;grid-area:1/1;justify-self:end;max-width:min(580px,92%);padding:9px 12px 10px}.user-message .message-heading{justify-content:flex-end}.user-message p{text-align:left;margin-top:4px}.assistant-message{width:100%}.message-avatar{color:#596365;background:#e7ebeb;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.message-avatar.ai{background:var(--accent-soft);color:var(--accent);border-radius:5px}.chat-message strong{font-size:calc(11px * var(--ui-font-scale))}.chat-message p{color:#3e4849;font-size:calc(12px * var(--ui-font-scale));margin:7px 0 0;line-height:1.7}.message-heading{align-items:center;gap:8px;display:flex}.answer-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:0;margin-top:14px;display:grid}.answer-list>div{grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:8px;padding:10px 0;display:grid}.answer-list>div+div{border-top:1px solid #e3e7e6}.answer-list>div>span{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:calc(9px * var(--ui-font-scale));font-weight:800}.answer-list p{font-size:calc(11px * var(--ui-font-scale));margin:0;line-height:1.55}.answer-list p strong{margin-bottom:2px;display:block}.answer-list em{color:var(--blue);font-size:calc(9px * var(--ui-font-scale));font-style:normal;font-weight:700}.inline-action{border:1px solid var(--line);color:#384344;height:30px;font-size:calc(10px * var(--ui-font-scale));background:#fff;margin-top:12px;padding:0 10px}.summary-view,.requirements-view{width:min(980px,100%);margin:0 auto;padding:22px 24px 44px}.summary-heading,.requirements-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.summary-heading h1,.requirements-heading h1{font-size:calc(20px * var(--ui-font-scale));margin:5px 0 0;line-height:1.25}.summary-lead{color:#485354;max-width:760px;font-size:calc(12px * var(--ui-font-scale));margin:14px 0 20px;line-height:1.7}.summary-sections{border-top:1px solid var(--line);display:grid}.summary-sections section{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(0,1fr);gap:12px;padding:15px 0;display:grid}.summary-sections section>span{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:calc(10px * var(--ui-font-scale));font-weight:800}.summary-sections h2{font-size:calc(12px * var(--ui-font-scale));margin:0}.summary-sections p{color:var(--muted);font-size:calc(11px * var(--ui-font-scale));margin:5px 0 0;line-height:1.55}.table-actions{gap:7px;display:flex}.table-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:calc(10px * var(--ui-font-scale));gap:22px;margin:16px 0 12px;padding:10px 0;display:flex}.table-summary strong{color:var(--text);font-size:calc(15px * var(--ui-font-scale));margin-right:4px}.table-wrap{border:1px solid var(--line);border-radius:5px;overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%;min-width:690px}th,td{border-bottom:1px solid var(--line);font-size:calc(10px * var(--ui-font-scale));text-align:left;white-space:nowrap;padding:10px}th{background:var(--surface-subtle);color:var(--muted);font-weight:750}tr:last-child td{border-bottom:0}.priority,.status-chip{color:#536061;height:21px;font-size:calc(9px * var(--ui-font-scale));background:#eef0f0;border-radius:3px;align-items:center;padding:0 6px;font-weight:700;display:inline-flex}.priority.high{color:var(--red);background:#fbe8e5}.status-chip.active{background:var(--accent-soft);color:var(--accent-strong)}.source-link{color:var(--blue);cursor:pointer;font-size:calc(10px * var(--ui-font-scale));background:0 0;border:0;padding:0;font-weight:700}.workspace-sidebar{border-right:1px solid var(--line);background:#f6f7f7;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid}.sidebar-primary-actions{grid-template-columns:minmax(0,1fr) 34px;gap:6px;padding:10px;display:grid}.new-work-button,.sidebar-search-button{border:1px solid var(--line);color:#323b3c;cursor:pointer;background:#fff;border-radius:5px;justify-content:center;align-items:center;height:34px;display:inline-flex}.new-work-button{font-size:calc(11px * var(--ui-font-scale));justify-content:flex-start;gap:8px;padding:0 10px;font-weight:700}.sidebar-primary-actions button:hover{border-color:var(--line-strong);background:#ecefef}.workspace-nav-scroll{min-height:0;padding:0 8px 14px;overflow-y:auto}.workspace-nav-section+.workspace-nav-section{margin-top:18px}.workspace-nav-heading{color:#747d7e;min-height:28px;font-size:calc(10px * var(--ui-font-scale));justify-content:space-between;align-items:center;padding:0 7px;font-weight:700;display:flex}.workspace-nav-toggle{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;width:100%}.workspace-nav-toggle:hover{background:#e9ecec}.workspace-nav-toggle-icons{align-items:center;gap:5px;display:flex}.workspace-nav-toggle-icons svg:last-child{transition:transform .14s}.workspace-nav-toggle-icons svg:last-child.open{transform:rotate(180deg)}.project-nav-list,.langui-history-list{gap:2px;display:grid}.project-nav-row{color:#4e5859;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:8px;width:100%;min-height:46px;padding:6px 7px;display:grid}.project-nav-row:hover,.project-nav-row.active{color:var(--text);background:#e8ebeb}.project-nav-row.file-drop-target,.project-child-row.file-drop-target{color:var(--accent-strong);cursor:copy;background:#dff1ed;box-shadow:inset 0 0 0 1px #6aa89f}.project-nav-row>span,.sidebar-footer>span:nth-child(2),.context-file-row>span,.detail-toggle-row>span:not(.layer-swatch){min-width:0}.project-nav-row strong,.project-nav-row small,.sidebar-footer strong,.sidebar-footer small,.context-file-row strong,.context-file-row small,.detail-toggle-row strong,.detail-toggle-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-nav-row strong{font-size:calc(10px * var(--ui-font-scale))}.project-nav-row small,.sidebar-footer small{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-top:3px}.workspace-sidebar .history-row{min-height:40px;padding:7px}.sidebar-footer{border-top:1px solid var(--line);grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:8px;min-height:58px;padding:8px 12px;display:grid}.sidebar-workspace-icon{background:var(--surface-strong);color:#fff;width:28px;height:28px;font-size:calc(10px * var(--ui-font-scale));border-radius:5px;place-items:center;font-weight:800;display:grid}.sidebar-footer strong{font-size:calc(10px * var(--ui-font-scale))}.sidebar-settings-button{color:#606a6b;cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;width:28px;height:28px;display:grid}.sidebar-settings-button:hover{color:var(--text);background:#e3e7e7}.settings-center{z-index:200;font-size:calc(14px * var(--ui-font-scale));background:#f8f9f9;grid-template-columns:clamp(260px,24vw,320px) minmax(560px,1fr);display:grid;position:fixed;inset:0;overflow:hidden}.settings-navigation{color:#fff;background:#252a2b;min-width:0;min-height:0;overflow-y:auto}.settings-navigation-inner{width:100%;max-width:286px;min-height:100%;margin:0 auto;padding:42px 18px 28px}.settings-user-summary{border-bottom:1px solid #3a4041;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;padding:0 8px 20px;display:grid}.settings-user-summary>span,.settings-profile-avatar{color:var(--accent-strong);background:#dce5e3;border-radius:50%;place-items:center;font-weight:800;display:grid}.settings-user-summary>span{width:36px;height:36px;font-size:calc(11px * var(--ui-font-scale))}.settings-user-summary strong,.settings-user-summary small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.settings-user-summary strong{font-size:calc(12px * var(--ui-font-scale))}.settings-user-summary small{color:#aeb7b8;font-size:calc(9px * var(--ui-font-scale));margin-top:3px}.settings-nav-group{border-bottom:1px solid #3a4041;padding:16px 0 4px}.settings-nav-group:last-child{border-bottom:0}.settings-nav-group p{color:#9ea8a9;font-size:calc(9px * var(--ui-font-scale));margin:0 8px 6px;font-weight:800}.settings-nav-group button{color:#c8cfd0;cursor:pointer;width:100%;height:36px;font-size:calc(11px * var(--ui-font-scale));text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:10px;padding:0 10px;font-weight:650;display:flex}.settings-nav-group button:hover{color:#fff;background:#343a3b}.settings-nav-group button.active{color:#0e3f3b;background:#e1f2ef}.settings-content{background:#f8f9f9;grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative}.settings-content-scroll{min-height:0;padding:44px clamp(64px,8vw,112px) 72px clamp(36px,5vw,64px);overflow-y:auto}.settings-page{width:min(100%,860px)}.settings-page>header{padding-right:120px}.settings-page h2{color:#1f2526;font-size:calc(24px * var(--ui-font-scale));line-height:calc(30px * var(--ui-font-scale));margin:0}.settings-page>header p{color:var(--muted);font-size:calc(11px * var(--ui-font-scale));line-height:calc(18px * var(--ui-font-scale));margin:7px 0 0}.settings-page-body{border-top:1px solid var(--line);margin-top:30px}.settings-close{z-index:2;border:1px solid var(--line-strong);color:#657072;cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:36px;right:clamp(20px,3vw,44px)}.settings-close:hover{color:var(--text);background:#ecefef;border-color:#8f9a9b}.settings-profile-row{border-bottom:1px solid var(--line);grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:92px;display:grid}.settings-profile-avatar{width:50px;height:50px;font-size:calc(13px * var(--ui-font-scale))}.settings-profile-row>div strong,.settings-profile-row>div span{display:block}.settings-profile-row>div strong{font-size:calc(14px * var(--ui-font-scale))}.settings-profile-row>div span{color:var(--muted);font-size:calc(10px * var(--ui-font-scale));margin-top:4px}.settings-demo-badge{background:var(--accent-soft);color:var(--accent-strong);font-size:calc(9px * var(--ui-font-scale));border:1px solid #bad4cf;border-radius:4px;padding:4px 7px;font-weight:800}.settings-field,.settings-control,.settings-toggle-row{border-bottom:1px solid var(--line)}.settings-field{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:20px;min-height:58px;display:grid}.settings-field span{color:var(--muted);font-size:calc(10px * var(--ui-font-scale))}.settings-field strong{font-size:calc(11px * var(--ui-font-scale));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-control{grid-template-columns:minmax(190px,1fr) minmax(280px,1.35fr);align-items:center;gap:24px;min-height:92px;display:grid}.settings-control>div:first-child strong,.settings-control>div:first-child small,.settings-toggle-row>span:first-child strong,.settings-toggle-row>span:first-child small{display:block}.settings-control>div:first-child strong,.settings-toggle-row>span:first-child strong{color:#252b2c;font-size:calc(11px * var(--ui-font-scale))}.settings-control>div:first-child small,.settings-toggle-row>span:first-child small{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));line-height:calc(14px * var(--ui-font-scale));margin-top:5px}.settings-segmented{border:1px solid var(--line);background:#edf0f0;border-radius:5px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:3px;min-width:0;padding:3px;display:grid}.settings-segmented button{color:#5f696a;cursor:pointer;min-width:0;height:32px;font-size:calc(9px * var(--ui-font-scale));white-space:nowrap;background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-weight:700;display:inline-flex}.settings-segmented button:hover{color:var(--text)}.settings-segmented button.active{color:var(--accent-strong);background:#fff;box-shadow:0 1px 3px #1923231f}.font-size-control{gap:8px;min-width:0;display:grid}.font-size-scale{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));grid-template-columns:minmax(44px,1fr) minmax(72px,auto) minmax(44px,1fr);align-items:center;gap:8px;font-weight:700;display:grid}.font-size-scale>span:last-child{text-align:right}.font-size-value,.font-size-input-wrap{justify-self:center}.font-size-value{border:1px solid var(--line-strong);min-width:72px;height:32px;color:var(--accent-strong);cursor:text;font-size:calc(11px * var(--ui-font-scale));background:#fff;border-radius:4px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.font-size-value span,.font-size-input-wrap span{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-left:4px}.font-size-input-wrap{border:1px solid var(--accent);background:#fff;border-radius:4px;justify-content:center;align-items:center;min-width:72px;height:32px;display:inline-flex}.font-size-input-wrap input{width:38px;color:var(--accent-strong);font-size:calc(11px * var(--ui-font-scale));text-align:right;background:0 0;border:0;outline:0;font-weight:800}.font-size-slider{width:100%;height:24px;accent-color:var(--accent);cursor:pointer;margin:0}.settings-toggle-row{cursor:pointer;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:24px;min-height:78px;display:grid;position:relative}.settings-toggle-row input{opacity:0;width:1px;height:1px;position:absolute}.settings-switch{background:#aeb7b8;border-radius:11px;width:38px;height:22px;transition:background .12s;position:relative}.settings-switch span{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .12s;position:absolute;top:3px;left:3px}.settings-toggle-row input:checked+.settings-switch{background:var(--accent)}.settings-toggle-row input:checked+.settings-switch span{transform:translate(16px)}.settings-toggle-row input:focus-visible+.settings-switch{outline-offset:2px;outline:2px solid #007d7261}.settings-reset-button{height:30px;color:var(--red);cursor:pointer;font-size:calc(9px * var(--ui-font-scale));background:0 0;border:0;align-items:center;gap:6px;font-weight:700;display:inline-flex;position:absolute;top:45px;right:clamp(76px,8vw,118px)}.settings-event-list{display:grid}.settings-event-row{border-bottom:1px solid var(--line);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;display:grid}.settings-event-row>span{color:#4c5859;background:#e8eceb;border-radius:4px;place-items:center;width:30px;height:30px;display:grid}.settings-event-row strong,.settings-event-row small{display:block}.settings-event-row strong{font-size:calc(10px * var(--ui-font-scale))}.settings-event-row small{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-top:4px}.settings-event-row em{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));font-style:normal}.settings-empty-state{color:var(--muted);font-size:calc(10px * var(--ui-font-scale));text-align:center;padding:38px 0}@media (max-width:900px){.settings-center{grid-template-rows:176px minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.settings-navigation{overflow:auto hidden}.settings-navigation-inner{align-items:flex-start;gap:10px;width:max-content;min-height:176px;margin:0;padding:18px;display:flex}.settings-user-summary{border-bottom:0;border-right:1px solid #3a4041;flex:0 0 190px;width:190px;padding:6px 12px 12px 0}.settings-nav-group{border:0;flex:0 0 164px;width:164px;padding:2px 0}.settings-nav-group button{height:32px}.settings-content-scroll{padding:34px 72px 60px 34px}.settings-close{top:26px;left:auto;right:22px}.settings-reset-button{top:35px;left:auto;right:72px}}@media (max-width:640px){.settings-center{grid-template-rows:150px minmax(0,1fr)}.settings-navigation-inner{min-height:150px;padding:12px}.settings-content{grid-template-rows:minmax(0,1fr)}.settings-content-scroll{padding:24px 18px 54px}.settings-page>header{padding-right:52px}.settings-page h2{font-size:calc(20px * var(--ui-font-scale))}.settings-page-body{margin-top:22px}.settings-close{width:34px;height:34px;top:17px;left:auto;right:14px}.settings-control{grid-template-columns:minmax(0,1fr);gap:12px;padding:16px 0}.settings-reset-button{background:#f8f9f9f5;padding:0 6px;inset:20px 58px auto auto}.settings-field{grid-template-columns:100px minmax(0,1fr)}}.cad-layout{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr) var(--workspace-inspector-width)}.simplified-inspector{grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.inspector-scroll{min-height:0;overflow-y:auto}.inspector-disclosure{border-bottom:1px solid var(--line)}.disclosure-trigger{cursor:pointer;text-align:left;background:#fff;border:0;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:7px;width:100%;min-height:48px;padding:8px 12px;display:grid}.disclosure-trigger:hover{background:#f2f4f4}.disclosure-trigger>span:first-child{align-items:center;gap:7px;min-width:0;display:flex}.disclosure-trigger strong{font-size:calc(11px * var(--ui-font-scale))}.disclosure-value{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));white-space:nowrap}.disclosure-trigger>svg{color:var(--muted);transition:transform .14s}.disclosure-trigger>svg.open{transform:rotate(180deg)}.disclosure-content{background:#f8f9f9;border-top:1px solid #e5e8e8;padding:11px 12px 13px}.compact-segmented button{height:27px}.equipment-label{margin-top:13px}.compact-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.compact-check{cursor:pointer;min-width:0;height:30px;font-size:calc(9px * var(--ui-font-scale));border-radius:4px;align-items:center;gap:6px;padding:0 5px;display:flex}.compact-check:hover{background:#e9eded}.compact-check input{width:14px;height:14px;accent-color:var(--accent)}.detail-groups{gap:14px;display:grid}.detail-group+.detail-group{border-top:1px solid var(--line);padding-top:12px}.layer-control-heading{gap:7px;display:grid}.layer-master-toggle{border:1px solid var(--line-strong);color:#465152;cursor:pointer;min-height:30px;font-size:calc(9px * var(--ui-font-scale));background:#fff;border-radius:4px;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:7px;margin-bottom:4px;padding:4px 7px;font-weight:700;display:grid}.layer-master-toggle:hover{border-color:var(--accent);background:#eef6f4}.layer-master-toggle input{width:14px;height:14px;accent-color:var(--accent);margin:0}.layer-master-toggle:has(input:disabled){cursor:default;opacity:.5}.layer-master-toggle:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.layer-master-toggle small{color:var(--muted);font-size:calc(8px * var(--ui-font-scale));white-space:nowrap;font-weight:500}.detail-toggle-row{color:#4c5657;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;grid-template-columns:16px minmax(0,1fr) 16px;align-items:center;gap:7px;width:100%;min-height:34px;padding:4px 5px;display:grid}.detail-toggle-row:hover{background:#e8eceb}.layer-toggle-row.hidden{color:#7a8585;opacity:.62}.layer-toggle-row.hidden .layer-swatch{outline-offset:1px;outline:1px solid #788282}.layer-toggle-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.cad-background-swatches{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;max-width:360px;display:grid}.cad-background-swatches button{border:1px solid var(--line);min-width:0;min-height:38px;color:var(--ink);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:7px;padding:5px 7px;display:flex}.cad-background-swatches button:hover{border-color:var(--line-strong);background:#f5f7f6}.cad-background-swatches button.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.cad-background-swatches button>span{background:var(--cad-background-swatch);color:#fff;border:1px solid #aeb8b7;border-radius:4px;flex:0 0 24px;place-items:center;width:24px;height:24px;display:grid}.cad-background-swatches button[data-background=paper]>span{color:#182020}.cad-background-swatches button strong{font-size:calc(9px * var(--ui-font-scale));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.detail-toggle-row strong{font-size:calc(9px * var(--ui-font-scale))}.detail-toggle-row small{color:var(--muted);font-size:calc(8px * var(--ui-font-scale));margin-top:2px}.compact-inspector-footer{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;align-items:center;gap:8px;min-height:54px;padding:9px 12px;display:flex}.document-layout{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr)}.gpt-chat-main{grid-template-rows:56px minmax(0,1fr) 76px}.gpt-chat-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:0 14px 0 18px;display:flex}.gpt-chat-header>div:first-child{min-width:0}.gpt-chat-header strong,.gpt-chat-header span{display:block}.gpt-chat-header strong{font-size:calc(12px * var(--ui-font-scale));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gpt-chat-header>div:first-child span{color:var(--muted);font-size:calc(9px * var(--ui-font-scale));margin-top:3px}.gpt-header-actions{align-items:center;gap:6px;display:flex}.context-count-button{border:1px solid var(--line);color:#465051;cursor:pointer;height:32px;font-size:calc(10px * var(--ui-font-scale));white-space:nowrap;background:#fff;border-radius:5px;align-items:center;gap:6px;padding:0 9px;font-weight:700;display:inline-flex}.context-count-button:hover{background:#f1f3f3}.gpt-thread-surface{background:#fff}.gpt-thread-surface .chat-thread{width:min(780px,100%);padding-top:28px}.gpt-context-panel{background:#f8f9f9;grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.context-scroll{min-height:0;overflow-y:auto}.context-section{border-bottom:1px solid var(--line);padding:12px 10px}.context-section-heading{color:#657071;min-height:26px;font-size:calc(10px * var(--ui-font-scale));justify-content:space-between;align-items:center;padding:0 4px;font-weight:700;display:flex}.context-section-heading button{cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;width:26px;height:26px;display:grid}.context-section-heading button:hover{background:#e8eceb}.context-file-list{gap:2px;display:grid}.context-file-row{color:#485253;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:7px;width:100%;min-height:46px;padding:6px;display:grid}.context-file-row:hover{background:#e9eded}.context-file-row strong{font-size:calc(9px * var(--ui-font-scale))}.context-file-row small{color:var(--muted);font-size:calc(8px * var(--ui-font-scale));margin-top:3px}.context-file-row>svg:last-child{color:var(--green)}.compact-evidence-list{padding:0}.generated-output-section>button{color:#485253;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-height:43px;padding:6px;display:grid}.generated-output-section>button:hover{background:#e9eded}.generated-output-section strong,.generated-output-section small{display:block}.generated-output-section strong{font-size:calc(9px * var(--ui-font-scale))}.generated-output-section small{color:var(--muted);font-size:calc(8px * var(--ui-font-scale));margin-top:3px}@media (max-width:1260px){:root{--workspace-sidebar-width:220px;--workspace-inspector-width:278px}.topbar{grid-template-columns:auto minmax(160px,1fr) auto auto}.cad-layout{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr) var(--workspace-inspector-width)}.document-layout{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr)}.save-state{display:none}}@media (max-width:1040px){:root{--workspace-sidebar-width:210px}.project-context{display:none}.topbar{grid-template-columns:auto 1fr auto}.mode-tabs{justify-self:center}.cad-layout,.document-layout{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr)}.right-panel,.evidence-panel,.composer-meta{display:none}.prompt-composer{grid-template-columns:34px minmax(120px,1fr) auto}}@media (max-width:820px){.brand-lockup{min-width:150px}.account-button{width:44px;padding:5px}.account-copy,.account-button>svg{display:none}.cad-layout,.document-layout{grid-template-columns:minmax(0,1fr)}.left-panel,.document-left,.workspace-sidebar{display:none}.document-header{padding:0 12px}}@media (max-width:560px){.brand-lockup{min-width:52px;padding:0 12px}.brand-lockup>div{display:none}.mode-tabs{height:34px}.mode-tab{height:26px;font-size:calc(10px * var(--ui-font-scale));gap:5px;padding:0 7px}.top-actions{padding:0 7px}.account-button{background:0 0;border:0;width:38px;height:38px}.avatar{flex-basis:28px;width:28px;height:28px}.version-bar{padding-left:6px;padding-right:6px}.version-chip{min-width:104px}.viewer-toolbar{grid-template-columns:auto 1fr auto}.viewer-title{justify-content:center}.prompt-composer{grid-template-columns:32px minmax(0,1fr) auto;gap:6px;padding:8px}.prompt-composer .icon-button{width:32px}.prompt-composer .primary-button{padding:0 9px}.document-header>div:first-child{display:none}.document-header{justify-content:center;padding:0 8px}.gpt-chat-header{padding:0 8px 0 12px}.gpt-chat-header>div:first-child span,.gpt-header-actions .icon-button{display:none}.summary-view,.requirements-view,.chat-thread{padding-left:14px;padding-right:14px}.user-message{width:100%}.user-message>div{max-width:88%}.demo-notice{max-width:calc(100vw - 16px)}.generation-history-dock{bottom:72px;left:4px}.generation-history-trigger{width:196px}.canvas-coordinate{top:9px;bottom:auto}}.workspace-mode-surface{min-width:0;min-height:0;overflow:hidden}.workspace-mode-surface.hidden{display:none}.workspace-mode-surface>.cad-layout,.workspace-mode-surface>.document-layout{width:100%;height:100%}.real-cad-layout{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr) var(--workspace-inspector-width)}.real-cad-layout.inspector-collapsed{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr)}.real-cad-main{grid-template-rows:minmax(0,1fr) 68px}.real-viewer-shell{grid-template-rows:40px minmax(0,1fr)}.real-cad-canvas{background:#e7ebea}.real-cad-canvas.drag-active{background:#dfe8e6}.cad-drop-overlay{z-index:20;border:2px dashed var(--accent);color:var(--accent-strong);pointer-events:none;background:#f0f8f6f0;border-radius:6px;place-content:center;justify-items:center;gap:5px;display:grid;position:absolute;inset:8px}.cad-drop-overlay strong{font-size:calc(13px * var(--ui-font-scale))}.cad-drop-overlay span{color:var(--muted);font-size:calc(9px * var(--ui-font-scale))}.cad-reader-frame{background:#f7f8f8;position:absolute;inset:0;overflow:hidden}.cad-reader-host{width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.cad-reader-host canvas{cursor:grab;width:100%;height:100%;display:block}.cad-reader-host canvas:active{cursor:grabbing}.cad-reader-reference-warning,.cad-reader-reference-message{z-index:8;color:#684810;max-width:min(560px,100% - 16px);min-height:30px;font-size:calc(9px * var(--ui-font-scale));background:#fffaebf5;border:1px solid #c99735;border-radius:4px;align-items:center;gap:7px;padding:4px 7px;display:flex;position:absolute;top:8px;left:8px}.cad-reader-reference-warning>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cad-reader-reference-warning button{color:#684810;cursor:pointer;min-height:24px;font:inherit;background:#fff;border:1px solid #9c7427;border-radius:4px;flex:none;align-items:center;gap:4px;padding:2px 6px;display:inline-flex}.cctv-placement-overlay{z-index:6;pointer-events:none;position:absolute;inset:0;overflow:hidden}.cctv-placement-marker{color:#fff;cursor:pointer;pointer-events:auto;background:#087f76;border:2px solid #e8fffb;border-radius:50%;grid-template-columns:1fr;place-items:center;width:28px;height:28px;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #0000006b}.cctv-placement-marker:hover,.cctv-placement-marker.selected{background:#065c57;box-shadow:0 0 0 3px #ffd640e6,0 2px 5px #00000073}.cctv-placement-marker small{color:#fff;text-align:center;background:#182020;border-radius:50%;min-width:15px;height:15px;font-size:8px;line-height:15px;position:absolute;top:-8px;right:-7px}.cctv-direction{transform-origin:0;pointer-events:none;background:#ffd640;width:38px;height:2px;position:absolute;top:calc(50% - 1px);left:50%}.cctv-direction:after{content:"";border-top:2px solid #ffd640;border-right:2px solid #ffd640;width:7px;height:7px;position:absolute;top:-3px;right:-1px;transform:rotate(45deg)}.generation-progress-dialog{width:min(420px,100vw - 32px);max-width:none;color:var(--text);background:0 0;border:0;border-radius:8px;margin:auto;padding:0;overflow:visible}.cad-interaction-surface{display:contents}.generation-progress-dialog::backdrop{background:#0c1111a3}.generation-feedback-backdrop{z-index:220;background:#0c1111a3;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:auto}.generation-feedback-dialog{border:1px solid var(--line-strong);background:var(--surface);width:min(680px,100vw - 32px);max-width:none;max-height:min(760px,100vh - 40px);color:var(--text);border-radius:8px;padding:0;overflow:hidden;box-shadow:0 18px 56px #00000052}.generation-feedback-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding:15px 16px;display:flex}.generation-feedback-dialog>header>div{gap:10px;min-width:0;display:flex}.generation-feedback-heading-icon{color:#087f76;background:#edf7f5;border:1px solid #9bc9c2;border-radius:6px;flex:none;place-items:center;width:34px;height:34px;display:grid}.generation-feedback-dialog h2,.generation-feedback-dialog h3,.generation-feedback-dialog p{margin:0}.generation-feedback-dialog h2{font-size:calc(15px * var(--ui-font-scale));line-height:1.25}.generation-feedback-dialog header p{color:var(--muted);font-size:calc(10px * var(--ui-font-scale));margin-top:3px;line-height:1.45}.generation-feedback-body{max-height:calc(100vh - 150px);padding:0 16px 18px;display:grid;overflow:auto}.generation-feedback-body>section{border-bottom:1px solid var(--line);padding:15px 0}.generation-feedback-body>section:last-child{border-bottom:0}.generation-feedback-body h3{font-size:calc(11px * var(--ui-font-scale));align-items:center;gap:7px;margin-bottom:10px;display:flex}.generation-feedback-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0;display:grid}.generation-feedback-summary>div{justify-content:space-between;gap:10px;min-width:0;display:flex}.generation-feedback-summary dt,.generation-token-grid span,.generation-feedback-meta,.generation-feedback-empty{color:var(--muted)}.generation-feedback-summary dd{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-weight:700;overflow:hidden}.generation-feedback-error{color:#842b25;background:#fff4f2;border-left:3px solid #c23b32;gap:9px;margin-top:12px;padding:10px 11px;display:flex}.generation-feedback-error>svg{flex:none;margin-top:1px}.generation-feedback-error p{margin-top:2px;line-height:1.5}.generation-token-grid{border:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.generation-token-grid>div{border-right:1px solid var(--line);gap:3px;min-width:0;padding:9px 10px;display:grid}.generation-token-grid>div:last-child{border-right:0}.generation-token-grid strong{color:#176c65;font-size:calc(13px * var(--ui-font-scale));text-overflow:ellipsis;overflow:hidden}.generation-feedback-meta{font-size:calc(9px * var(--ui-font-scale));line-height:1.45;margin-top:8px!important}.generation-feedback-list{border-top:1px solid var(--line);display:grid}.generation-feedback-list>div{border-bottom:1px solid var(--line);grid-template-columns:18px minmax(90px,.45fr) minmax(0,1fr);align-items:start;gap:8px;padding:8px 2px;display:grid}.generation-feedback-list>div>svg{color:#087f76}.generation-feedback-list span{min-width:0;color:var(--muted);overflow-wrap:anywhere}@media (max-width:620px){.generation-feedback-backdrop{padding:16px}.generation-feedback-summary,.generation-token-grid{grid-template-columns:minmax(0,1fr)}.generation-token-grid>div{border-right:0;border-bottom:1px solid var(--line)}.generation-token-grid>div:last-child{border-bottom:0}}.generation-progress-content{border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:14px 16px;padding:20px;display:grid;box-shadow:0 14px 40px #00000047}.generation-progress-icon{color:#087f76;background:#e9f5f2;border:1px solid #78b7ae;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.generation-progress-copy{gap:4px;min-width:0;display:grid}.generation-progress-copy strong{font-size:1rem}.generation-progress-copy span{color:var(--muted);line-height:1.45}.generation-cancel-button{grid-column:1/-1;justify-self:end}.tool-button:disabled,.icon-button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.4}.cad-empty-state{color:#4e595a;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-width:0;max-width:520px;margin:auto;padding:32px;display:flex;position:absolute;inset:0}.cad-empty-state>span{border:1px solid var(--line-strong);width:48px;height:48px;color:var(--accent-strong);background:#fff;border-radius:6px;place-items:center;display:grid}.cad-empty-state h1,.cad-empty-state p{margin:0}.cad-empty-state h1{color:var(--text);font-size:calc(18px * var(--ui-font-scale))}.cad-empty-state p{max-width:440px;line-height:1.65}.cad-empty-state small{color:var(--muted);font-size:calc(10px * var(--ui-font-scale))}.cad-empty-actions{align-items:center;gap:8px;display:flex}.cad-viewer-overlay,.cad-viewer-error{z-index:4;border:1px solid var(--line-strong);box-shadow:var(--shadow);background:#fffffff5;border-radius:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cad-viewer-overlay{color:#445051;min-width:150px;font-size:calc(11px * var(--ui-font-scale));justify-content:center;align-items:center;gap:9px;padding:12px 16px;font-weight:700;display:flex}.cad-spinner{border:2px solid #cdd7d6;border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite cad-spin}@keyframes cad-spin{to{transform:rotate(360deg)}}.cad-viewer-error{width:min(420px,100% - 32px);color:var(--red);text-align:center;padding:16px}.cad-viewer-error strong{color:var(--text)}.cad-viewer-error p{margin:6px 0 0;line-height:1.5}.cad-ingestion-state{color:#485354;text-align:center;place-content:center;justify-items:center;gap:9px;max-width:460px;margin:auto;padding:28px;display:grid;position:absolute;inset:0}.cad-ingestion-state.failed,.asset-status-error{color:var(--red)}.cad-ingestion-state.waiting,.asset-status-waiting{color:var(--accent-strong)}.cad-ingestion-state p{color:var(--muted);margin:0;line-height:1.55}.cad-ingestion-spinner,.asset-status-spinner{animation:.7s linear infinite cad-spin}.cad-viewer-status{z-index:3;color:#606b6c;font-size:calc(9px * var(--ui-font-scale));pointer-events:none;background:#ffffffeb;border:1px solid #a5b0b0b8;border-radius:4px;align-items:center;gap:10px;padding:5px 8px;display:flex;position:absolute;bottom:8px;right:8px}.cad-reader-warning-status{color:#805c18;align-items:center;gap:3px;display:inline-flex}.cctv-generation-status{z-index:7;color:#225e59;pointer-events:none;background:#f0f9f7f0;border:1px solid #4a8c84b8;border-radius:4px;align-items:center;gap:6px;min-height:28px;padding:4px 8px;display:flex;position:absolute;bottom:54px;left:8px}.cctv-generation-status span{font-size:calc(9px * var(--ui-font-scale));font-weight:700}.cctv-generation-status small{color:#657271;font-size:calc(8px * var(--ui-font-scale))}.cad-inspector{grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.project-nav-entry{min-width:0;position:relative}.project-nav-entry>.project-nav-row{cursor:default;grid-template-columns:minmax(0,1fr);gap:2px;padding:4px}.project-nav-entry>.project-nav-row.has-add,.project-nav-entry>.project-nav-row.has-menu{grid-template-columns:minmax(0,1fr) 28px}.project-nav-entry>.project-nav-row.has-add.has-menu{grid-template-columns:minmax(0,1fr) 28px 28px}.project-nav-select{min-width:0;min-height:38px;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:13px 18px minmax(0,1fr);align-items:center;gap:8px;padding:2px 3px;display:grid}.project-row-chevron{color:var(--muted);transition:transform .12s}.project-row-chevron.open{transform:rotate(90deg)}.project-nav-select>span,.project-child-row>span{min-width:0}.project-more-button,.project-inline-button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;align-self:center;place-items:center;display:grid}.project-more-button:hover,.project-more-button[aria-expanded=true],.project-inline-button:hover{color:var(--text);background:#dce2e1}.project-row-menu{z-index:60;border:1px solid var(--line-strong);width:142px;box-shadow:var(--shadow);background:#fff;border-radius:5px;padding:4px;position:absolute;top:42px;right:3px}.project-row-menu button{cursor:pointer;width:100%;height:32px;font-size:calc(10px * var(--ui-font-scale));text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:0 8px;display:flex}.project-row-menu button:hover{background:#eef1f0}.project-row-menu button.danger{color:var(--red)}.project-row-menu button.danger:hover{background:#fff0ef}.project-child-list{border-left:1px solid #ced6d5;gap:2px;margin:2px 0 5px 14px;padding-left:9px;display:grid}.project-child-row{color:#596364;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:7px;width:100%;min-height:38px;padding:5px 7px;display:grid}.project-child-row:hover,.project-child-row.active{color:var(--accent-strong);background:#e7eceb}.project-child-row strong,.project-child-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-child-row strong{font-size:calc(9px * var(--ui-font-scale))}.project-child-row small{color:var(--muted);font-size:calc(8px * var(--ui-font-scale));margin-top:2px}.cad-image-reader{padding:var(--workspace-canvas-inset);background:#eef1f0;place-items:center;display:grid;position:absolute;inset:0;overflow:auto}.cad-image-reader img{object-fit:contain;transform-origin:50%;max-width:100%;max-height:100%;transition:transform .12s;display:block;box-shadow:0 5px 16px #1f292921}.cad-inspector-summary{border-bottom:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.cad-inspector-summary>div{background:#fff;gap:4px;min-width:0;padding:10px;display:grid}.cad-inspector-summary span{color:var(--muted);font-size:calc(9px * var(--ui-font-scale))}.cad-inspector-summary strong{font-size:calc(14px * var(--ui-font-scale));text-overflow:ellipsis;overflow:hidden}.cad-disclosure-chevron{color:var(--muted);transition:transform .14s}.cad-disclosure-chevron.open{transform:rotate(180deg)}.detail-toggle-row.active{background:var(--accent-soft);color:var(--accent-strong)}.cctv-detail-heading{align-items:center;gap:6px;display:flex}.cctv-detail-heading .field-label{margin-right:auto}.cctv-detail-heading>span{color:#27655f;font-size:calc(8px * var(--ui-font-scale));background:#dceeea;border-radius:10px;padding:1px 6px;font-weight:700}.cctv-generation-logic{border-top:1px solid var(--line);grid-column:1/-1;margin-top:4px;padding-top:10px}.cctv-generation-logic h4{color:var(--ink);margin:0 0 8px;font-size:.92em;font-weight:700}.cctv-generation-logic>div{gap:3px;margin-top:8px;display:grid}.cctv-generation-logic span{color:var(--muted);font-size:.82em}.cctv-generation-logic p,.cctv-generation-logic ul{color:var(--ink);margin:0;font-size:.88em;line-height:1.5}.cctv-generation-logic ul{padding-left:18px}.cctv-engine-note{color:var(--muted);font-size:calc(8px * var(--ui-font-scale));margin:0 5px 6px;line-height:1.45}.cctv-point-index{color:#27655f;width:18px;height:18px;font-size:calc(8px * var(--ui-font-scale));background:#dceeea;border-radius:50%;place-items:center;font-weight:800;display:grid}.cctv-point-row.active .cctv-point-index{color:#fff;background:#287c73}.cctv-point-detail{background:#f1f7f6;border:1px solid #c8dcd9;border-left:3px solid #5a9a92;gap:6px;margin:7px 5px 10px;padding:8px;display:grid}.cctv-point-detail>div{min-width:0;color:var(--muted);font-size:calc(8px * var(--ui-font-scale));grid-template-columns:42px minmax(0,1fr);gap:6px;display:grid}.cctv-point-detail strong{overflow-wrap:anywhere;color:#35403f;font-weight:650}.cctv-type-control{min-width:0;color:var(--muted);font-size:calc(8px * var(--ui-font-scale));gap:4px;display:grid}.cctv-type-control select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:30px;color:var(--ink);font:inherit;border-radius:4px;padding:4px 7px}.cctv-point-detail .cctv-point-actions{grid-template-columns:none;gap:6px;padding-top:2px;display:flex}.cctv-point-actions .icon-button{width:30px;height:30px}.cctv-point-actions .icon-button.danger{color:#bd2d24;margin-left:auto}.inspector-import-button{border:1px dashed var(--line-strong);color:#465152;cursor:pointer;width:100%;min-height:34px;font-size:calc(10px * var(--ui-font-scale));background:#fff;border-radius:4px;justify-content:center;align-items:center;gap:7px;margin-top:6px;font-weight:700;display:flex}.inspector-import-button:hover{border-color:var(--accent);color:var(--accent-strong)}.cad-inspector-empty,.project-nav-empty{color:var(--muted);font-size:calc(10px * var(--ui-font-scale));margin:0;line-height:1.5}.cad-inspector-empty{padding:8px 5px}.project-nav-empty{padding:10px 9px}.cad-dialog-backdrop{z-index:200;background:#1c222370;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.cad-dialog{border:1px solid var(--line-strong);background:#fff;border-radius:7px;width:min(460px,100%);box-shadow:0 18px 48px #131a1b38}.cad-dialog header{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(0,1fr) 32px;align-items:start;gap:10px;padding:16px;display:grid}.cad-dialog-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent-strong);border-radius:5px;place-items:center;display:grid}.cad-dialog h2,.cad-dialog p{margin:0}.cad-dialog h2{font-size:calc(16px * var(--ui-font-scale))}.cad-dialog p{color:var(--muted);font-size:calc(11px * var(--ui-font-scale));margin-top:4px}.cad-dialog-fields{gap:14px;padding:18px 16px;display:grid}.cad-dialog-fields label,.cad-dialog-fields label>span{display:grid}.cad-dialog-fields label{gap:7px}.cad-dialog-fields label>span{color:#3d4748;font-size:calc(10px * var(--ui-font-scale));font-weight:750}.cad-dialog-fields input,.cad-dialog-fields textarea{border:1px solid var(--line-strong);width:100%;color:var(--text);resize:vertical;background:#fff;border-radius:5px;padding:9px 10px}.cad-dialog footer{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}@media (max-width:1040px){.real-cad-layout{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr) var(--workspace-inspector-width)}.real-cad-layout.inspector-collapsed{grid-template-columns:var(--workspace-sidebar-width) minmax(0, 1fr)}.cad-inspector{display:grid}.cad-viewer-status{top:8px;bottom:auto}.demo-notice{top:calc(var(--topbar-height) + 88px);bottom:auto;left:calc(var(--workspace-sidebar-width) + (100vw - var(--workspace-sidebar-width) - var(--workspace-inspector-width)) / 2)}}@media (max-width:820px){.real-cad-layout{grid-template-columns:minmax(0,1fr) 270px}.real-cad-layout.inspector-collapsed{grid-template-columns:minmax(0,1fr)}.demo-notice{left:calc(50vw - 135px)}}@media (max-width:620px){.real-cad-layout{grid-template-columns:minmax(0,1fr)}.cad-inspector{z-index:40;top:var(--topbar-height);width:min(290px,100% - 44px);position:absolute;bottom:0;right:0;box-shadow:-8px 0 24px #1b262624}.cad-empty-actions{flex-direction:column;align-items:stretch}.demo-notice{left:50%}}
