*{box-sizing:border-box}body{margin:0;color:#172033;background:#eef1f5;font-size:var(--font-size-ui-body);font-family:Arial,Hiragino Sans,Yu Gothic,Meiryo,sans-serif}button,input,textarea{font:inherit}button{border:0}:root{--figma-bg:#f9fafb;--figma-page-bg:#f5f5f5;--figma-border:#e5e7eb;--figma-border-strong:#d9d9d9;--figma-text:#111827;--figma-muted:#9ca3af;--figma-blue:#2563eb;--figma-blue-dark:#1d4fd7;--figma-sidebar:#051c2c;--font-size-ui-small:14px;--font-size-ui-body:16px}.app-shell{min-height:100vh;display:grid;grid-template-columns:52px 1fr}.sidebar{background:var(--figma-sidebar);border-right:0;min-height:100vh;padding:40px 0 24px;display:flex;flex-direction:column;align-items:center;gap:24px}.sidebar-icon,.sidebar-logo{width:36px;height:36px;border-radius:6px;display:grid;place-items:center;cursor:pointer}.sidebar-logo{background:#fff;color:#233044;font-weight:800}.sidebar-icon{background:transparent;color:#cbd5e1}.sidebar-icon.active,.sidebar-icon:hover{background:#334155;color:#fff}.sidebar .sidebar-icon,.sidebar .sidebar-logo,.sidebar .sidebar-toggle{width:52px;height:48px;border-radius:0;background:transparent;color:#e3e3e3;display:flex;align-items:center;justify-content:center;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;line-height:0}.sidebar .sidebar-toggle{width:36px;height:36px;padding:8px;color:#e3e3e3;cursor:default}.sidebar .sidebar-logo{height:64px;padding:4px 20px;color:#fff}.sidebar .sidebar-logo-mark{display:block;flex:0 0 auto;width:24.213px;height:23.989px;fill:currentColor}.sidebar .sidebar-nav,.sidebar .sidebar-primary{display:flex;flex:1 1;flex-direction:column;min-height:0;width:100%}.sidebar .sidebar-primary{align-items:flex-start}.sidebar .sidebar-secondary{display:flex;flex-direction:column;align-items:center;flex:0 0 auto;width:100%}.sidebar .sidebar-icon{border-right:3px solid transparent;cursor:pointer}.sidebar .sidebar-icon:hover{background:hsla(0,0%,100%,.08)}.sidebar .sidebar-icon.active{background:transparent;border-right-color:#d9d9d9;color:#fff}.sidebar .sidebar-create{padding:8px}.sidebar .sidebar-create:hover{background:transparent}.sidebar .sidebar-icon-bubble{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:36px;height:36px;border:1px solid #f0f4fd;border-radius:999px;background:#f0f4fd;color:#051c2c}.sidebar .sidebar-glyph{display:block;flex:0 0 auto;width:20px;height:20px;fill:currentColor}.legacy-topbar{min-height:56px;padding:12px 24px}.main-panel{min-width:0;min-height:100vh;display:flex;flex-direction:column}.topbar{min-height:72px;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border-bottom:1px solid #d9dee7}.topbar h1{margin:0;font-size:22px;line-height:1.25;letter-spacing:0}.topbar p{margin:4px 0 0;color:#667085;font-size:var(--font-size-ui-small)}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.user-chip{min-height:32px;display:inline-flex;align-items:center;gap:8px;padding:0 10px;border:1px solid #d9dee7;border-radius:6px;background:#f8fafc;color:#475467}.user-chip,.user-chip b{font-size:var(--font-size-ui-small)}.user-chip b{padding:2px 6px;border-radius:999px;background:#e0f2fe;color:#0369a1}.content{padding:24px}.content.tight{padding:16px 24px 24px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.grid{display:grid;grid-gap:16px;gap:16px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.folder-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.card{background:#fff;border:1px solid #d9dee7;border-radius:8px}.folder-card,.project-card{min-height:184px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;cursor:pointer}.folder-card:hover,.project-card:hover{border-color:#7aa7d9;box-shadow:0 8px 24px rgba(31,41,55,.08)}.card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.card-title{margin:0;font-size:17px;line-height:1.35}.card-text{margin:8px 0 0;color:#667085;font-size:var(--font-size-ui-small);line-height:1.6}.metric-row{display:flex;gap:8px;flex-wrap:wrap}.metric{min-width:68px;padding:8px 10px;border:1px solid #e5e7eb;border-radius:6px;background:#f8fafc}.metric span{display:block;color:#667085;font-size:var(--font-size-ui-small)}.metric strong{display:block;margin-top:2px;font-size:17px}.button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border-radius:6px;background:#1f6feb;color:#fff;cursor:pointer;font-weight:700;font-size:14px}.button:hover{background:#1758c2}.button.secondary{background:#fff;color:#344054;border:1px solid #d0d5dd}.button.secondary:hover{background:#f8fafc}.button.danger{background:#b42318}.button.danger:hover{background:#912018}.button.small{min-height:32px;padding:0 10px;font-size:var(--font-size-ui-small)}.button:disabled{cursor:not-allowed;opacity:.55}.input,.select,.textarea{width:100%;min-height:40px;border:1px solid #cfd6e2;border-radius:6px;background:#fff;color:#172033;padding:9px 11px;outline:none}.textarea{min-height:96px;resize:vertical}.input:focus,.select:focus,.textarea:focus{border-color:#1f6feb;box-shadow:0 0 0 3px rgba(31,111,235,.12)}.form{display:grid;grid-gap:14px;gap:14px}.form-row{display:grid;grid-gap:6px;gap:6px}.form-row label{color:#344054;font-size:var(--font-size-ui-small);font-weight:700}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.45);z-index:20}.modal{width:min(520px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:8px;border:1px solid #d9dee7;box-shadow:0 24px 64px rgba(15,23,42,.22)}.project-create-modal{width:min(720px,calc(100vw - 32px));height:min(860px,calc(100vh - 48px));display:grid;grid-template-rows:88px minmax(0,1fr) 72px;overflow:hidden;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.25)}.project-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 22px 24px 32px;border-bottom:1px solid #e5e7eb}.project-modal-header h2{margin:0;color:#111827;font-size:18px;line-height:1.2}.project-modal-header p{margin:7px 0 0;color:#9ca3af;font-size:var(--font-size-ui-small)}.icon-button{width:36px;height:36px;display:grid;place-items:center;border-radius:8px;background:transparent;color:#374151;cursor:pointer;font-size:16px}.icon-button:hover{background:#f3f4f6}.project-modal-body{padding:24px 32px;overflow:auto}.project-modal-body .form-row{gap:6px}.member-heading label,.project-modal-body label{color:#111827;font-size:var(--font-size-ui-small);font-weight:700}.required{color:#ef4444;font-size:var(--font-size-ui-small);font-weight:400}.helper-text,.member-heading span,.optional{color:#9ca3af;font-size:var(--font-size-ui-small);font-weight:400}.project-input{height:44px;border-color:#e5e7eb;border-radius:8px;color:#111827;font-size:14px}.project-input::placeholder{color:#9ca3af}.description-field{margin-top:18px}.project-details-fields{min-width:0;display:grid;grid-gap:10px;gap:10px;margin-top:18px;padding:16px;border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc}.project-details-fields legend{padding:0 4px;color:#111827;font-size:14px;font-weight:700}.project-details-fields>.helper-text{margin:0}.project-additional-notes{margin-top:2px}.project-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.project-floor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.project-detail-field{min-width:0;display:grid;align-content:start;grid-gap:6px;gap:6px}.project-detail-field label{color:#344054;font-size:14px;font-weight:700}.field-error{color:#b42318;font-size:14px;line-height:1.4}.project-description-preview{display:grid;grid-gap:4px;gap:4px;padding:10px 12px;border-radius:8px;font-size:14px;line-height:1.5;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a}.project-textarea{min-height:76px;border-color:#e5e7eb;border-radius:8px;color:#111827;font-size:14px}.partner-field{margin-top:22px}.partner-company-label-row{position:relative;display:flex;align-items:center;gap:8px}.partner-company-help{position:static;display:inline-flex}.partner-company-help-button{width:20px;height:20px;display:grid;flex:0 0 20px;place-items:center;padding:0;border:1px solid #9ca3af;border-radius:999px;background:#fff;color:#6b7280;cursor:help;font-size:var(--font-size-ui-small);font-weight:700;line-height:1}.partner-company-help-button:focus-visible{border-color:#1f6feb;box-shadow:0 0 0 3px rgba(31,111,235,.12);outline:none}.partner-company-tooltip{position:absolute;top:calc(100% + 8px);left:0;z-index:3;width:min(480px,100%);padding:10px 12px;border-radius:8px;background:#1f2937;box-shadow:0 8px 20px rgba(15,23,42,.2);color:#fff;font-size:var(--font-size-ui-small);font-weight:400;line-height:1.5}.partner-company-helper{line-height:1.5}.partner-input-row{display:grid;grid-template-columns:minmax(0,1fr) 84px;grid-gap:8px;gap:8px}.add-company-button{height:44px;border-color:#e5e7eb;border-radius:8px;background:#f3f4f6}.create-chip-list{min-height:30px;display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.create-chip{min-height:28px;display:inline-flex;align-items:center;gap:8px;padding:0 10px;border:1px solid #bfdbfe;border-radius:14px;background:#eff6ff;color:#1e40af;font-size:var(--font-size-ui-small);font-weight:700}.create-chip button{background:transparent;color:#60a5fa;cursor:pointer;font-size:14px;line-height:1}.member-section{margin-top:24px}.member-heading{display:flex;align-items:center;gap:8px;margin-bottom:10px}.member-tabs{height:38px;display:flex;align-items:stretch;border-bottom:1px solid #e5e7eb}.member-tabs button{min-width:110px;padding:0 24px;border-bottom:2px solid transparent;background:transparent;color:#6b7280;cursor:pointer;font-size:14px;font-weight:700}.member-tabs button.active{border-bottom-color:#2563eb;color:#2563eb}.member-search{height:40px;display:flex;align-items:center;gap:8px;margin-top:12px;padding:0 11px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.member-search span{color:#9ca3af;font-size:16px}.member-search input{min-width:0;flex:1 1;border:0;outline:0;color:#111827;font-size:14px}.member-search input::placeholder{color:#9ca3af}.selected-summary{display:flex;gap:8px;margin-top:10px;color:#4b5563;font-weight:700}.selected-summary,.selected-summary b{min-height:20px;align-items:center;font-size:var(--font-size-ui-small)}.selected-summary b{display:inline-flex;padding:0 8px;border-radius:10px;background:#dbeafe;color:#1e40af}.selected-summary small{color:#9ca3af;font-size:var(--font-size-ui-small);font-weight:400}.member-list{display:grid;grid-gap:8px;gap:8px;margin-top:10px}.member-list-note{margin:0;padding:12px;color:#6b7280;font-size:var(--font-size-ui-small)}.member-list-note,.member-row{border:1px solid #e5e7eb;border-radius:8px}.member-row{min-height:36px;display:grid;grid-template-columns:36px minmax(0,1fr) 20px;grid-gap:12px;gap:12px;align-items:center;padding:0 12px;background:#fff;cursor:pointer;text-align:left}.member-row.selected{border-color:#2563eb;background:#eff6ff}.member-row:disabled{cursor:default;opacity:1}.member-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:18px;font-size:15px;font-weight:800}.member-avatar.blue{background:#dbeafe;color:#1e40af}.member-avatar.amber{background:#fef3c7;color:#92400e}.member-avatar.green{background:#d1fae5;color:#065f46}.member-avatar.red{background:#fee2e2;color:#991b1b}.member-avatar.purple{background:#ede9fe;color:#5b21b6}.member-copy{min-width:0;display:grid;grid-gap:1px;gap:1px}.member-name{min-width:0;display:flex;align-items:center;gap:8px;color:#111827;font-size:14px;font-weight:700;white-space:nowrap}.member-name b{min-height:20px;display:inline-flex;align-items:center;padding:0 8px;border-radius:10px;background:#dbeafe;color:#1e40af}.member-email,.member-name b{font-size:var(--font-size-ui-small)}.member-email{min-width:0;overflow:hidden;color:#9ca3af;text-overflow:ellipsis;white-space:nowrap}.member-check{width:24px;height:24px;display:grid;place-items:center;border:1.5px solid #d1d5db;border-radius:4px;background:#fff;color:#fff;font-size:var(--font-size-ui-small);font-weight:800}.member-check.checked{border-color:#2563eb;background:#2563eb}.member-row:disabled .member-check.checked{border-color:#9ca3af;background:#9ca3af}.member-pagination{min-height:32px;display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:12px}.member-pagination span{margin-right:auto;color:#6b7280;font-size:var(--font-size-ui-small)}.member-pagination button{width:32px;height:32px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#374151;cursor:pointer;font-weight:700}.member-pagination button.active{border-color:#2563eb;background:#2563eb;color:#fff}.csv-drop-panel.drag-active{outline:2px dashed #2563eb;outline-offset:6px}.csv-drop-notice{color:#2563eb;font-size:var(--font-size-ui-small);font-weight:700}.csv-panel{display:grid;grid-gap:12px;gap:12px;margin-top:12px}.csv-panel p{margin:0;color:#6b7280;font-size:var(--font-size-ui-small)}.project-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 32px;background:#f3f4f6}.folder-create-modal{width:min(1200px,calc(100vw - 32px));height:min(893px,calc(100vh - 48px));display:grid;grid-template-rows:80px minmax(0,1fr) 80px;overflow:hidden;border-radius:12px;box-shadow:0 24px 64px rgba(15,23,42,.24)}.folder-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px 0 32px;border-bottom:1px solid #e5e7eb}.folder-modal-header>div{min-width:0}.folder-modal-header h2{margin:0;color:#111827;font-size:18px;line-height:1.2}.folder-modal-header p{min-width:0;display:flex;align-items:center;gap:6px;margin:7px 0 0;overflow:hidden;color:#6b7280;font-size:var(--font-size-ui-small);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.folder-context-icon{position:relative;width:13px;height:11px;flex:0 0 auto;border:1.5px solid #6b7280;border-radius:2px}.folder-context-icon:before{content:"";position:absolute;top:-4px;left:-1.5px;width:7px;height:4px;border:1.5px solid #6b7280;border-bottom:0;border-radius:2px 2px 0 0;background:#fff}.folder-modal-body{min-height:0;overflow:auto;padding:24px 32px}.folder-modal-body>.alert{margin:0 0 16px}.folder-name-field{display:grid;grid-gap:6px;gap:6px}.folder-name-field label{display:flex;align-items:baseline;gap:6px;color:#111827}.folder-name-field label,.folder-name-field>span{font-size:var(--font-size-ui-small);font-weight:700}.folder-name-field>span{color:#9ca3af;line-height:1.45}.folder-name-field>.field-error{color:#b42318}.upload-section-title{display:flex;align-items:baseline;gap:6px;margin-top:20px;color:#111827;font-size:14px;line-height:22px}.upload-section-title strong{font-weight:800}.upload-section-title span{color:#374151;font-weight:700}.folder-upload-panes{width:min(100%,1116px);display:grid;grid-template-columns:repeat(2,minmax(0,548px));align-items:start;grid-gap:20px;gap:20px;margin-top:20px}.upload-section-title+.folder-upload-pane{margin-top:20px}.folder-upload-pane{min-width:0;display:grid;grid-gap:16px;gap:16px;padding:20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.folder-upload-pane.single{width:min(548px,100%)}.folder-upload-pane header{min-height:24px;display:flex;align-items:center;gap:10px;color:#111827}.folder-upload-pane header strong{font-size:14px;font-weight:800;line-height:1.25}.folder-upload-pane header small{color:#374151;font-size:var(--font-size-ui-small);font-weight:700}.pane-dot{width:10px;height:10px;flex:0 0 auto;border-radius:50%}.pane-dot.blue{background:#2563eb}.pane-dot.red{background:#ef4444}.folder-upload-pane .figma-drop-zone{width:100%;height:180px;gap:8px;border-radius:8px}.folder-upload-pane .figma-drop-zone>span:not(.upload-cloud){color:#111827;font-size:14px;font-weight:800;line-height:1.45}.folder-upload-pane .figma-drop-zone small{font-size:var(--font-size-ui-small);font-weight:700}.upload-cloud{position:relative;width:36px;height:36px;display:block;color:#2563eb;font-size:0;background:linear-gradient(currentColor,currentColor) 50% 10px /3px 18px no-repeat}.upload-cloud:after,.upload-cloud:before{content:"";position:absolute;left:50%;transform:translateX(-50%)}.upload-cloud:before{top:7px;width:13px;height:13px;border-top:3px solid;border-left:3px solid;transform:translateX(-50%) rotate(45deg)}.upload-cloud:after{bottom:5px;width:22px;height:10px;border-right:3px solid;border-bottom:3px solid;border-left:3px solid;border-radius:0 0 7px 7px}.selected-files-title{display:flex;align-items:center;gap:10px;min-height:22px;color:#111827;font-size:var(--font-size-ui-small)}.selected-files-title strong{font-weight:800}.folder-create-modal .badge{min-height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:var(--font-size-ui-small);font-weight:800;white-space:nowrap}.folder-create-modal .badge.success{background:#d1fae5;color:#067647}.folder-create-modal .badge.info{background:#dbeafe;color:#1d4ed8}.folder-create-modal .badge.warning{background:#fef3c7;color:#b54708}.folder-create-modal .badge.error{background:#fee2e2;color:#b42318}.selected-files-title button{margin-left:auto;background:transparent;color:#9ca3af;cursor:pointer;font-size:var(--font-size-ui-small);font-weight:700}.selected-files-title button:disabled{cursor:not-allowed;opacity:.55}.folder-upload-pane .figma-file-list,.folder-upload-pane .figma-upload-file-list{display:grid;grid-gap:8px;gap:8px;margin-top:0}.file-list-empty,.folder-upload-pane .figma-upload-empty{min-height:64px;display:grid;place-items:center;margin:0;border:1px dashed #d9dee7;border-radius:8px;color:#667085;font-size:var(--font-size-ui-small)}.figma-file-row{min-height:68px;display:grid;grid-template-columns:40px minmax(0,1fr) auto 24px;align-items:center;grid-gap:12px;gap:12px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.pdf-icon{width:36px;height:46px;display:grid;place-items:center;border-radius:6px;background:#fee2e2;color:#b42318;font-size:0;font-weight:800}.pdf-icon small{font-size:var(--font-size-ui-small)}.file-row-main{min-width:0;display:grid;grid-gap:6px;gap:6px}.file-row-main>span:first-child{min-width:0;display:flex;align-items:baseline;gap:8px}.file-row-main strong{min-width:0;overflow:hidden;color:#111827;font-size:var(--font-size-ui-small);text-overflow:ellipsis;white-space:nowrap}.file-row-main small{flex:0 0 auto;color:#9ca3af;font-size:var(--font-size-ui-small)}.file-row-main em{color:#2563eb;font-size:var(--font-size-ui-small);font-style:normal;font-weight:700}.file-remove{width:24px;height:24px;border-radius:6px;background:transparent;color:#9ca3af;cursor:pointer;font-size:16px}.file-remove:disabled{cursor:not-allowed;opacity:.55}.file-remove:hover,.selected-files-title button:hover{color:#374151}.folder-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 32px;border-top:1px solid #e5e7eb;background:#f3f4f6}.folder-modal-footer .toolbar-right{flex:0 0 auto;justify-content:flex-end}.folder-modal-footer .footer-note{min-width:0;line-height:1.4}.folder-modal-footer .button{min-width:102px}.folder-modal-footer .button:not(.secondary){min-width:130px}.footer-note{display:flex;align-items:center;gap:8px;color:#9ca3af}.footer-note,.footer-note span{font-size:var(--font-size-ui-small)}.footer-note span{width:20px;height:20px;flex:0 0 20px;display:grid;place-items:center;border:1px solid #9ca3af;border-radius:999px;font-weight:700}@media (max-width:980px){.folder-create-modal{height:min(893px,calc(100vh - 32px))}.folder-upload-panes{width:100%;grid-template-columns:minmax(0,548px)}}@media (max-width:640px){.folder-create-modal{width:min(100%,calc(100vw - 24px));height:min(893px,calc(100vh - 24px));grid-template-rows:auto minmax(0,1fr) auto}.folder-modal-body,.folder-modal-footer,.folder-modal-header{padding-left:18px;padding-right:18px}.folder-modal-header{min-height:72px;padding-top:16px;padding-bottom:16px}.folder-modal-footer{align-items:stretch;flex-direction:column;padding-top:14px;padding-bottom:14px}.folder-modal-footer .toolbar-right{width:100%;flex-direction:column-reverse;align-items:stretch}.folder-upload-panes{grid-template-columns:1fr}.folder-upload-pane{padding:16px}.folder-upload-pane header{align-items:flex-start;flex-wrap:wrap}.figma-file-row{grid-template-columns:40px minmax(0,1fr)}.figma-file-row>.badge,.figma-file-row>.file-remove{justify-self:start}}.modal-footer,.modal-header{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #eaecf0}.modal-footer{border-top:1px solid #eaecf0;border-bottom:0;justify-content:flex-end}.modal-header h2{margin:0;font-size:18px}.modal-body{padding:18px}.status-pill,.summary-pill,.tag{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 8px;border-radius:999px;font-size:var(--font-size-ui-small);font-weight:700;white-space:nowrap}.status-pill.not_started{color:#475467;background:#f2f4f7}.status-pill.ready{color:#155eef;background:#eff4ff}.status-pill.checking{color:#b54708;background:#fffaeb}.status-pill.completed{color:#067647;background:#ecfdf3}.status-pill.error,.summary-pill.ng{color:#b42318;background:#fef3f2}.summary-pill.ok{color:#067647;background:#ecfdf3}.summary-pill.warn{color:#b54708;background:#fffaeb}.reason-pill,.summary-pill.unpaired{color:#475467;background:#f2f4f7}.reason-pill{display:inline-flex;min-height:24px;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;font-size:var(--font-size-ui-small);font-weight:700;white-space:nowrap}.reason-pill.matched{background:#ecfdf3;color:#067647}.reason-pill.dimension_incomplete_or_mismatch,.reason-pill.dimension_mismatch{background:#fef3f2;color:#b42318}.reason-pill.dimension_unreadable,.reason-pill.probable_symbol_alias{background:#fffaeb;color:#b54708}.reason-pill.fixture_missing,.reason-pill.parse_error,.reason-pill.plan_duplicate,.reason-pill.plan_missing,.reason-pill.unsupported_drawing_layout,.reason-pill.unsupported_symbol_category{background:#f2f4f7;color:#475467}.tag{color:#344054;background:#eef1f5}.tag-list{display:flex;gap:8px;flex-wrap:wrap}.alert{margin:0 0 16px;padding:12px;border-radius:6px;border:1px solid #fedf89;background:#fffaeb;color:#93370d;font-size:var(--font-size-ui-small)}.alert.error{border-color:#fecdca;background:#fef3f2;color:#b42318}.status-notice{margin:0 0 12px;padding:8px 16px;border-radius:6px;border:1px solid #fedf89;background:#fffaeb;color:#93370d;font-size:var(--font-size-ui-small);font-weight:600;line-height:1.4}.status-notice.running{display:flex;align-items:center;flex-wrap:wrap;gap:10px;border-color:#f59e0b;background:#fffbeb;color:#92400e}.status-notice.running b{margin-left:auto;color:#78350f;font-size:var(--font-size-ui-small)}.status-notice.error{border-color:#fecdca;background:#fef3f2;color:#b42318}.check-warning-notice{display:grid;grid-gap:6px;gap:6px}.check-warning-notice>strong{font-size:14px}.check-warning-notice ul{display:grid;grid-gap:6px;gap:6px;margin:0;padding-left:20px}.check-warning-notice li b,.check-warning-notice li span{display:block}.check-warning-notice li span{margin-top:2px;font-weight:500}.check-warning-notice.compact{padding:6px 8px}.check-warning-notice.compact,.check-warning-notice.compact>strong{font-size:var(--font-size-ui-small)}.error-guidance-notice{display:grid;align-items:stretch;grid-gap:8px;gap:8px}.error-guidance-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.error-guidance-heading span{color:#912018;font-size:var(--font-size-ui-small);font-weight:700}.error-guidance-notice p{margin:0;color:#b42318}.error-guidance-notice dl{display:grid;grid-gap:6px;gap:6px;margin:0}.error-guidance-notice dl>div{display:grid;grid-template-columns:72px minmax(0,1fr);grid-gap:8px;gap:8px}.error-guidance-notice dt{color:#912018;font-size:var(--font-size-ui-small);font-weight:800}.error-guidance-notice dd{margin:0;color:#7a271a}.error-guidance-notice.compact{padding:8px 10px;gap:6px}.error-guidance-notice.compact dl>div{grid-template-columns:56px minmax(0,1fr)}.folder-status-cell{display:grid;grid-gap:8px;gap:8px;min-width:220px}.folder-error-guidance,.upload-error-guidance{font-size:var(--font-size-ui-small)}.folder-error-guidance{max-width:360px}.upload-error-guidance{margin-top:4px}.check-running-status{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:10px 12px;gap:10px 12px;overflow:hidden;padding:10px 16px 12px}.button-running-spinner,.check-running-spinner{display:inline-block;border-radius:50%;border-style:solid;animation:check-running-spin .8s linear infinite}.check-running-spinner{width:16px;height:16px;border-width:2px;border-color:#93370d rgba(147,55,13,.24) rgba(147,55,13,.24)}.check-paused-icon{width:18px;height:18px;display:inline-grid;place-items:center;border:2px solid #2563eb;border-radius:50%;color:#1d4ed8;font-size:var(--font-size-ui-small);font-weight:900;line-height:1}.check-running-copy{min-width:0;display:flex;align-items:baseline;gap:8px}.check-running-copy strong{color:#7a2e0e;font-size:14px;white-space:nowrap}.check-running-copy span{color:#93370d;font-weight:600}.check-running-copy span,.check-running-meta{min-width:0;font-size:var(--font-size-ui-small)}.check-running-meta{color:#b54708;font-weight:700;line-height:1.5;text-align:right;white-space:normal}.check-running-activity{position:absolute;right:16px;bottom:0;left:16px;height:3px;overflow:hidden;border-radius:999px;background:rgba(245,158,11,.18)}.check-running-activity>span{display:block;width:38%;height:100%;border-radius:inherit;background:#f59e0b;animation:check-running-slide 1.5s ease-in-out infinite}.check-running-status.paused{border-color:#bfdbfe;background:#eff6ff;color:#1e40af}.check-running-status.paused .check-running-copy span,.check-running-status.paused .check-running-copy strong,.check-running-status.paused .check-running-meta{color:#1e40af}.button-status-label{display:inline-flex;align-items:center;justify-content:center;gap:8px}.button-running-spinner{width:13px;height:13px;border-width:2px;border-color:#fff hsla(0,0%,100%,.38) hsla(0,0%,100%,.38)}@keyframes check-running-spin{to{transform:rotate(1turn)}}.inline-spinner{width:14px;height:14px;flex:0 0 auto;display:inline-block;border:2px solid rgba(146,64,14,.2);border-top-color:#d97706;border-radius:999px;animation:inline-spin .8s linear infinite}.inline-spinner.small{width:12px;height:12px;border-width:1.5px}.check-progress-panel{display:grid;grid-gap:12px;gap:12px;padding:14px 16px;border:1px solid #d9dee7;border-radius:8px;background:#fff}.figma-folder-page>.check-progress-panel{margin:12px 24px 0}.check-progress-panel.compact{padding:12px}.check-progress-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.check-progress-title{min-width:0;display:flex;align-items:flex-start;gap:10px}.check-progress-title small,.check-progress-title strong{display:block}.check-progress-title strong{color:#172033;font-size:15px}.check-progress-title small{margin-top:3px;line-height:1.45}.check-progress-meta,.check-progress-title small{color:#667085;font-size:var(--font-size-ui-small)}.check-progress-meta{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;font-weight:700}.check-progress-meta b{min-width:44px;text-align:right;color:#172033;font-size:15px}.check-progress-track{height:8px;overflow:hidden;border-radius:999px;background:#eef2f6}.check-progress-track span{display:block;height:100%;border-radius:inherit;background:#2563eb;transition:width .25s ease}.check-progress-metrics{display:grid;grid-template-columns:repeat(6,minmax(88px,1fr));grid-gap:8px;gap:8px}.check-progress-metric{min-width:0;display:grid;grid-gap:2px;gap:2px;padding:8px 10px;border:1px solid #e5e7eb;border-radius:6px;background:#f8fafc}.check-progress-metric small{color:#667085;font-size:var(--font-size-ui-small);font-weight:700}.check-progress-metric strong{color:#172033;font-size:16px}.running-badge,.running-chip,.running-summary{display:inline-flex;align-items:center;gap:7px;border:1px solid #fbbf24;border-radius:999px;background:#fffbeb;color:#92400e;font-size:var(--font-size-ui-small);font-weight:800;white-space:nowrap}.running-chip{min-height:24px;padding:0 9px}.running-summary{min-height:32px;padding:0 12px}.check-count-summaries{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-left:auto}.running-badge.paused,.running-chip.paused,.running-summary.paused{border-color:#bfdbfe;background:#eff6ff;color:#1e40af}.badge{min-height:22px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 8px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:var(--font-size-ui-small);font-weight:800;white-space:nowrap}.badge.success{background:#ecfdf3;color:#067647}.badge.info{background:#eff4ff;color:#155eef}.badge.paused{background:#eff6ff;color:#1e40af}.badge.warning{background:#fffaeb;color:#b54708}.badge.error{background:#fef3f2;color:#b42318}.badge.neutral{background:#f2f4f7;color:#475467}@keyframes inline-spin{to{transform:rotate(1turn)}}@keyframes check-running-slide{0%{transform:translateX(-110%)}50%{transform:translateX(95%)}to{transform:translateX(270%)}}.empty-state{padding:42px 24px;text-align:center}.empty-state h2{margin:0;font-size:20px}.empty-state p{color:#667085;line-height:1.6}.breadcrumb{display:flex;align-items:center;gap:8px;color:#667085;font-size:var(--font-size-ui-small)}.breadcrumb button{background:transparent;color:#1f6feb;cursor:pointer;padding:0}.settings-layout{display:grid;grid-template-columns:220px minmax(0,760px);grid-gap:20px;gap:20px;align-items:start}.settings-nav{padding:8px}.settings-nav button{width:100%;min-height:40px;border-radius:6px;background:transparent;color:#344054;text-align:left;padding:0 12px;cursor:pointer}.settings-nav button.active{background:#eef4ff;color:#1f6feb;font-weight:700}.panel{padding:18px}.panel h2{margin:0 0 16px;font-size:18px}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:12px;border-bottom:1px solid #eaecf0;text-align:left;font-size:var(--font-size-ui-small)}.table th{color:#667085;font-weight:700;background:#f8fafc}.table tbody tr{cursor:pointer}.table tbody tr.selected-row td{background:#eef4ff}.table-wrap{width:100%;overflow-x:auto}.user-search{width:min(320px,100%)}.user-id-cell{color:#172033;font-weight:700}.role-badge{display:inline-flex;min-height:24px;align-items:center;padding:0 8px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:var(--font-size-ui-small);font-weight:700}.role-badge.admin{background:#e0f2fe;color:#0369a1}.shosa-layout{display:flex;flex-direction:column;gap:16px}.document-bar{display:flex;justify-content:space-between;gap:16px;padding:16px}.document-name{margin:0;font-size:18px}.tab-strip{display:flex;overflow-x:auto;border:1px solid #d9dee7;border-radius:8px 8px 0 0;background:#fff}.tab-strip button{min-height:46px;padding:0 18px;background:#fff;border-right:1px solid #eaecf0;color:#475467;white-space:nowrap;cursor:pointer}.tab-strip button.active{color:#1f6feb;border-bottom:3px solid #1f6feb;font-weight:700}.result-surface{margin-top:-16px;padding:16px;border:1px solid #d9dee7;border-top:0;border-radius:0 0 8px 8px;background:#fff}.filter-row{justify-content:space-between;gap:16px;margin-bottom:16px}.filter-group,.filter-row{display:flex;flex-wrap:wrap}.filter-group{gap:8px}.filter-chip{min-height:32px;padding:0 12px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#344054;cursor:pointer}.filter-chip.active{background:#172033;border-color:#172033;color:#fff}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-top:16px}.finding-detail{display:grid;grid-gap:12px;gap:12px;margin-top:16px;padding:14px;border:1px solid #d9dee7;border-radius:8px;background:#f8fafc}.detail-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.detail-heading-row h3{margin:0;font-size:15px}.finding-detail p{margin:6px 0 0;color:#475467;font-size:var(--font-size-ui-small);line-height:1.5}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.detail-item{min-width:0;padding:10px;border:1px solid #eaecf0;border-radius:6px;background:#fff}.detail-item span{color:#667085;font-weight:700}.detail-item span,.detail-item strong{display:block;font-size:var(--font-size-ui-small)}.detail-item strong{min-width:0;margin-top:4px;overflow-wrap:anywhere;color:#172033;line-height:1.4}.candidate-list{display:grid;grid-gap:8px;gap:8px}.candidate-list>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.candidate-list strong{color:#344054;font-size:var(--font-size-ui-small)}.upload-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.viewer{min-height:520px;border:1px solid #d9dee7;border-radius:8px;overflow:hidden;background:#f8fafc}.viewer-toolbar{height:64px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-bottom:1px solid #d9dee7}.viewer-canvas{min-height:456px;display:grid;place-items:center;padding:24px}.pdf-sheet{width:min(380px,90%);aspect-ratio:.72;position:relative;border:1px solid #c7ceda;background:linear-gradient(#fff 0 0) padding-box,repeating-linear-gradient(0deg,#f1f5f9 0 1px,transparent 1px 28px),repeating-linear-gradient(90deg,#f1f5f9 0 1px,transparent 1px 28px);box-shadow:0 10px 28px rgba(31,41,55,.15)}.mark{position:absolute;border:2px solid #d92d20;background:rgba(217,45,32,.1)}.mark.ok{border-color:#fdb022;background:rgba(253,176,34,.14)}.button.disabled{cursor:not-allowed;opacity:.55}.file-button{position:relative;overflow:hidden}.file-button input{display:none}.button.ghost{background:#fff;color:#111827}.button.danger.outline{border:1px solid #ff5a5f;background:#fff;color:#ef4444}.figma-page{min-height:100vh;background:var(--figma-page-bg)}.figma-page-inner{min-height:100vh;padding:24px;position:relative}.figma-content{padding:32px}.figma-topbar{min-height:56px;justify-content:space-between;gap:16px;padding:10px 32px 10px 24px;border-bottom:1px solid var(--figma-border);background:#fff}.figma-breadcrumb,.figma-topbar{display:flex;flex-wrap:wrap;align-items:center}.figma-breadcrumb{min-width:0;gap:8px;color:var(--figma-muted);font-size:var(--font-size-ui-small)}.figma-breadcrumb button{padding:0;background:transparent;color:var(--figma-muted);cursor:pointer}.figma-breadcrumb strong{color:var(--figma-text)}.back-square{width:32px!important;height:32px;display:grid;place-items:center;border-radius:8px;color:#4b5563!important}.figma-page-title-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.figma-page-title-row .running-summary{margin-left:auto}.figma-page-title-row .check-count-summaries .running-summary{margin-left:0}.figma-list-header h1,.figma-page-title-row h1{margin:0;color:#111827;font-size:24px;line-height:1.2;letter-spacing:0}.figma-page-title-row p{margin:4px 0 0;color:#4b5563;font-size:14px}.figma-list-header{margin-bottom:16px}.figma-filter-row{display:flex;flex-wrap:wrap;gap:20px;margin-top:16px}.figma-filter-row,.figma-search{min-height:40px;align-items:center}.figma-search{display:inline-flex;gap:8px;min-width:240px;padding:0 12px;border:1px solid var(--figma-border);border-radius:8px;background:#fff;color:var(--figma-muted)}.figma-search-wide{width:330px;border-radius:999px;padding-left:16px}.figma-search input{min-width:0;flex:1 1;border:0;outline:0;color:#111827;background:transparent;font-size:14px}.figma-search input::placeholder{color:var(--figma-muted)}.figma-search.full{width:100%}.figma-sort{min-height:40px;padding:8px 12px;border-radius:8px;background:transparent;color:#111827;font-weight:700;cursor:pointer}.figma-sort.active{background:#c5d2f7;color:var(--figma-blue-dark)}.project-card-grid{display:grid;grid-template-columns:320px repeat(auto-fill,minmax(280px,1fr));grid-gap:24px;gap:24px}.add-project-card{min-height:250px;display:grid;place-items:center;align-content:center;grid-gap:16px;gap:16px;border:2px dashed var(--figma-blue-dark);border-radius:16px;background:#f0f4fd;color:#111827;cursor:pointer}.folder-plus-icon{color:var(--figma-blue-dark);font-size:46px;line-height:1}.figma-project-card{min-width:0;min-height:250px;position:relative;display:flex;flex-direction:column;gap:16px;padding:16px;border:1px solid var(--figma-border-strong);border-radius:8px;background:#fff;color:#111827;cursor:pointer;text-align:left}.figma-project-card.running{border-color:#f59e0b;box-shadow:0 10px 26px rgba(217,119,6,.12)}.figma-project-card.paused{border-color:#60a5fa;box-shadow:0 10px 26px rgba(37,99,235,.1)}.figma-project-card.running.paused{border-color:#f59e0b;box-shadow:0 10px 26px rgba(217,119,6,.12),0 0 0 1px rgba(37,99,235,.18)}.figma-project-card:hover{border-color:#7aa7d9;box-shadow:0 8px 24px rgba(31,41,55,.08)}.figma-project-card:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:3px}.figma-project-card.running:hover{border-color:#d97706;box-shadow:0 12px 28px rgba(217,119,6,.16)}.figma-project-card.paused:hover{border-color:#2563eb;box-shadow:0 12px 28px rgba(37,99,235,.14)}.figma-project-card.running.paused:hover{border-color:#d97706;box-shadow:0 12px 28px rgba(217,119,6,.16),0 0 0 1px rgba(37,99,235,.22)}.running-badge{position:absolute;z-index:2;top:10px;right:10px;min-height:28px;padding:0 10px;box-shadow:0 4px 12px rgba(146,64,14,.14)}.running-badge.stacked{top:44px}.drawing-thumb{flex:1 1;min-height:112px;position:relative;overflow:hidden;display:block;background:linear-gradient(90deg,transparent 0 18%,#d1d5db 18% 18.7%,transparent 18.7% 100%),linear-gradient(90deg,transparent 0 55%,#d1d5db 55% 55.7%,transparent 55.7% 100%),linear-gradient(#fff,#fff);border:1px solid #f3f4f6}.drawing-thumb:not(.pdf-preview)>span{position:absolute;border:1px solid #cfd6e2}.drawing-thumb:not(.pdf-preview)>span:first-child{inset:16px 18px auto 18px;height:20px}.drawing-thumb:not(.pdf-preview)>span:nth-child(2){left:18px;right:18px;top:58px;height:1px}.drawing-thumb:not(.pdf-preview)>span:nth-child(3){left:42px;top:72px;width:62px;height:28px}.drawing-thumb:not(.pdf-preview)>span:nth-child(4){right:50px;top:72px;width:56px;height:28px}.drawing-thumb.pdf-preview{display:grid;place-items:center;padding:6px;background:#f8fafc;border-color:#e5e7eb}.drawing-thumb.pdf-preview img{width:100%;height:100%;display:block;object-fit:contain;background:#fff;box-shadow:0 2px 10px rgba(31,41,55,.08)}.drawing-thumb-loader{color:#6b7280;font-size:var(--font-size-ui-small);font-weight:700}.figma-card-body{display:grid;grid-gap:8px;gap:8px}.figma-card-file,.figma-card-meta,.figma-card-title-row{display:flex;align-items:center;gap:8px}.figma-card-title-row{justify-content:space-between}.figma-card-title-row strong{min-width:0;overflow-wrap:anywhere}.project-kebab-button{flex:0 0 auto;width:32px;height:32px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:6px;background:transparent;color:#475467;cursor:pointer;font-size:20px;font-weight:800;line-height:1}.project-kebab-button:focus-visible,.project-kebab-button:hover{border-color:#d0d5dd;background:#f8fafc;color:#b42318;outline:none}.figma-card-file,.figma-card-meta{color:#757575;font-size:var(--font-size-ui-small)}.figma-card-description{display:-webkit-box;overflow:hidden;margin:0;color:#475467;font-size:var(--font-size-ui-small);line-height:1.45;white-space:pre-line;-webkit-box-orient:vertical;-webkit-line-clamp:2}.figma-card-meta{justify-content:space-between}.tiny-avatar{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:999px;background:rgba(230,147,184,.4);font-size:var(--font-size-ui-small)}.figma-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:24px}.project-list-page .figma-pagination{position:absolute;left:0;right:0;bottom:24px}.figma-pagination button,.figma-pagination span{min-width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:transparent;color:#111827;font-size:14px}.figma-pagination button.active{background:var(--figma-blue-dark);color:#fff}.figma-empty{padding:42px 24px;border:1px solid var(--figma-border);border-radius:12px;background:#fff;color:#6b7280;text-align:center}.folder-search{width:320px;margin:24px 0 16px}.folder-search-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:24px 0 8px}.folder-search-row .folder-search{margin:0}.folder-search-note{margin:0 0 16px;color:#6b7280;font-size:var(--font-size-ui-small);font-weight:700}.figma-table-card{overflow:hidden;border:1px solid var(--figma-border);border-radius:10px;background:#fff}.figma-table-card table{width:100%;border-collapse:collapse}.figma-table-card td,.figma-table-card th{height:auto;min-height:48px;padding:10px 20px;border-bottom:1px solid var(--figma-border)}.folder-list-table{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.folder-list-table table{min-width:1120px}.folder-list-table th{white-space:nowrap}.folder-list-table td{vertical-align:middle}.folder-list-table td:first-child{width:30%;min-width:280px}.folder-list-table tbody tr.folder-row{cursor:pointer;transition:background-color .16s ease,box-shadow .16s ease}.folder-list-table tbody tr.folder-row:focus-within,.folder-list-table tbody tr.folder-row:hover{background:#f1f6ff;box-shadow:inset 4px 0 0 #2563eb}.folder-name-cell{min-width:0;display:flex;align-items:center;gap:10px}.folder-icon{flex:0 0 auto;width:18px;height:18px;display:inline-grid;place-items:center;color:#344054;font-size:var(--font-size-ui-small);line-height:1}.folder-name-text{min-width:0;display:flex;flex-direction:column;gap:3px;line-height:1.35}.folder-name-text small,.folder-name-text strong{display:block;max-width:100%;overflow-wrap:anywhere}.folder-name-text strong{color:#111827;font-size:14px;font-weight:700}.folder-name-text small{color:#6b7280;font-size:var(--font-size-ui-small)}.folder-list-table tbody tr.running{background:#fffbeb;box-shadow:inset 4px 0 0 #f59e0b}.folder-list-table tbody tr.folder-row.running:focus-within,.folder-list-table tbody tr.folder-row.running:hover{background:#fef3c7;box-shadow:inset 4px 0 0 #d97706}.folder-list-table tbody tr.paused{background:#eff6ff;box-shadow:inset 4px 0 0 #3b82f6}.folder-list-table tbody tr.folder-row.paused:focus-within,.folder-list-table tbody tr.folder-row.paused:hover{background:#dbeafe;box-shadow:inset 4px 0 0 #2563eb}.folder-list-table tbody tr.running td{border-bottom-color:#fde68a}.folder-list-table tbody tr.paused td{border-bottom-color:#bfdbfe}.folder-list-table .badge.info{display:inline-flex;align-items:center;gap:6px;background:#fffbeb;color:#92400e}.folder-actions-cell,.folder-actions-heading{width:1%;min-width:144px;white-space:nowrap}.folder-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.folder-list-table .folder-open-button{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:1px solid #b8c9e6;border-radius:6px;background:#f5f8ff;color:#1d4ed8;cursor:pointer;font-size:var(--font-size-ui-small);font-weight:700;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease}.folder-list-table .folder-open-button:hover{border-color:#2563eb;background:#dbeafe}.folder-list-table .folder-open-button:focus-visible{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.24)}.folder-list-table .kebab-button{width:32px;height:32px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:6px;background:transparent;color:#475467;cursor:pointer;font-size:18px;line-height:1}.folder-list-table .kebab-button:hover{border-color:#d0d5dd;background:#f8fafc;color:#b42318}.folder-list-table .kebab-button:disabled{cursor:not-allowed;opacity:.42}.folder-list-table .kebab-button:disabled:hover{border-color:transparent;background:transparent;color:#475467}.folder-drawing-count{display:inline-flex;flex-direction:column;gap:2px;line-height:1.2;white-space:nowrap}.folder-drawing-count strong{color:#111827;font-size:var(--font-size-ui-small);font-weight:700}.folder-drawing-count small{color:#6b7280;font-size:var(--font-size-ui-small)}.folder-delete-modal{width:min(560px,calc(100vw - 32px));display:grid;grid-template-rows:80px minmax(0,1fr) 80px;overflow:hidden;border-radius:12px}.folder-delete-body{display:grid;grid-gap:16px;gap:16px}.folder-delete-lead{display:flex;flex-wrap:wrap;gap:4px;margin:0;color:#111827;font-size:16px;line-height:1.5}.folder-delete-lead strong{overflow-wrap:anywhere}.folder-delete-summary{display:grid;margin:0;overflow:hidden;border:1px solid #e5e7eb;border-radius:8px}.folder-delete-summary div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:10px 14px;border-bottom:1px solid #e5e7eb}.folder-delete-summary div:last-child{border-bottom:0}.folder-delete-summary dt{color:#667085;font-size:var(--font-size-ui-small);font-weight:700}.folder-delete-summary dd{margin:0;color:#111827;font-size:var(--font-size-ui-small);font-weight:700;text-align:right}.folder-delete-warning{margin:0;padding:12px 14px;border:1px solid #fecdca;border-radius:8px;background:#fef3f2;color:#b42318;font-size:var(--font-size-ui-small);line-height:1.6}.folder-detail-page,.result-detail-page{display:flex;flex-direction:column;gap:16px}.folder-action-bar,.result-summary-bar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;grid-gap:16px;gap:16px;padding:14px 16px;border:1px solid #d9dee7;border-radius:8px;background:#fff}.folder-action-bar.running,.result-summary-bar.running{border-color:#f59e0b;background:#fffbeb;box-shadow:inset 0 3px 0 #f59e0b}.folder-action-bar.paused,.result-summary-bar.paused{border-color:#bfdbfe;background:#eff6ff;box-shadow:inset 0 3px 0 #3b82f6}.folder-action-bar h2,.result-summary-bar h2{margin:0;font-size:20px}.folder-action-bar p,.result-summary-bar p{margin:4px 0 0;color:#667085;font-size:var(--font-size-ui-small)}.folder-action-metrics{display:flex;gap:8px}.selected-finding-banner{display:grid;grid-gap:6px;gap:6px;padding:12px 16px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.selected-finding-banner>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.selected-finding-banner p{margin:0;color:#344054;font-size:var(--font-size-ui-small);line-height:1.5}.folder-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:720px;overflow:hidden}.folder-finding-card-list,.folder-workspace{display:grid;border:1px solid #d9dee7;border-radius:8px;background:#fff}.folder-finding-card-list{grid-gap:12px;gap:12px;padding:24px}.drawing-pane{min-width:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:#f8fafc}.drawing-pane+.drawing-pane{border-left:1px solid #d9dee7}.drawing-pane-header{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #e5e7eb;background:#fff}.drawing-pane-header h2{display:inline;margin:0;color:#172033;font-size:15px}.pane-badge{display:inline-flex;min-height:22px;align-items:center;margin-left:10px;padding:0 8px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:var(--font-size-ui-small);font-weight:700}.pane-badge.fixture{background:#fee2e2;color:#b42318}.drawing-tabs{min-height:48px;display:flex;gap:8px;padding:8px 16px;overflow-x:auto;border-bottom:1px solid #e5e7eb;background:#fff}.drawing-tabs button{min-width:max-content;min-height:32px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:#475467;cursor:pointer}.drawing-tabs button.active{border-color:#1f6feb;background:#eff6ff;color:#1f6feb;font-weight:700}.drawing-tabs b{padding:2px 5px;border-radius:4px;background:#eef1f5;color:#667085;font-size:var(--font-size-ui-small)}.pdf-image-stage{min-height:0;position:relative;display:grid;place-items:center;grid-gap:12px;gap:12px;overflow:auto;padding:40px;background:#f3f4f6}.pdf-image-stage,.pdf-image-stage.empty{align-content:center}.viewer-empty,.viewer-notice{display:grid;grid-gap:6px;gap:6px;padding:14px 16px;border:1px solid #d9dee7;border-radius:8px;background:#fff;color:#475467;font-size:var(--font-size-ui-small);text-align:center}.viewer-empty strong{color:#172033}.viewer-notice{width:min(560px,100%);border-color:#fedf89;background:#fffaeb;color:#93370d}.viewer-notice.error{border-color:#fecdca;background:#fef3f2;color:#b42318}.pdf-image-frame{position:relative;min-width:260px;max-width:none;box-shadow:0 10px 28px rgba(31,41,55,.15);background:#fff}.pdf-image-frame img{display:block;width:100%;height:auto}.pdf-highlight{--pdf-highlight-color:rgba(217,45,32,.95);--pdf-highlight-halo-color:hsla(0,0%,100%,.9);--pdf-highlight-stroke:3px;--pdf-highlight-halo:2px;position:absolute;box-sizing:border-box;pointer-events:none;border:0;background:transparent;box-shadow:0 0 0 var(--pdf-highlight-stroke) var(--pdf-highlight-color),0 0 0 calc(var(--pdf-highlight-stroke) + var(--pdf-highlight-halo)) var(--pdf-highlight-halo-color)}.pdf-highlight.ok{--pdf-highlight-color:rgba(245,158,11,.95)}.drawing-viewer-toolbar{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 16px;border-top:1px solid #e5e7eb;background:#fff}.result-summary-bar{grid-template-columns:minmax(220px,1fr) auto minmax(220px,auto)}.changed-banner{min-height:36px;padding:0 16px;border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1e40af;cursor:pointer;font-weight:700}.result-view-switcher{width:max-content;display:flex;gap:4px;padding:4px;border:1px solid #d0d5dd;border-radius:8px;background:#f2f4f7}.result-view-switcher button{min-height:36px;padding:0 20px;border-radius:6px;background:transparent;color:#475467;font-weight:700}.result-view-switcher button.active{background:#fff;color:#175cd3;box-shadow:0 1px 3px rgba(16,24,40,.12)}.result-matrix-cell button:focus-visible,.result-matrix-table th button:focus-visible,.result-view-switcher button:focus-visible{outline:3px solid rgba(37,99,235,.42);outline-offset:2px}.result-matrix-panel{height:clamp(620px,calc(100vh - 260px),820px);min-height:560px;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid #d9dee7;border-radius:8px;overflow:hidden;background:#fff}.result-matrix-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,320px) minmax(220px,300px);align-items:end;grid-gap:12px 16px;gap:12px 16px;padding:16px 20px;border-bottom:1px solid #e5e7eb}.result-matrix-toolbar h2,.result-matrix-toolbar p{margin:0}.result-matrix-toolbar h2{font-size:20px}.result-matrix-toolbar p{margin-top:4px;color:#667085;font-size:var(--font-size-ui-small)}.result-matrix-item-filter{margin:0}.result-matrix-filters,.result-matrix-legend{grid-column:1/-1}.result-matrix-filters.filter-group.compact{padding:0;border:0}.result-matrix-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;color:#475467;font-size:var(--font-size-ui-small)}.result-matrix-legend>span{display:inline-flex;align-items:center;gap:6px}.matrix-reviewed-swatch{width:24px;height:24px;display:inline-block;border:1px solid #98a2b3;border-radius:4px;background:#e4e7ec}.result-matrix-scroll{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.result-matrix-table{min-width:max(100%,980px);border-spacing:0;table-layout:fixed}.result-matrix-table td,.result-matrix-table th{width:124px;min-width:124px;height:70px;padding:0;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;background:#fff;text-align:center}.result-matrix-table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:3;height:64px;padding:8px;background:#f8fafc;color:#344054;font-size:var(--font-size-ui-small);line-height:1.4;overflow-wrap:anywhere}.result-matrix-table th:first-child{width:180px;min-width:180px;position:-webkit-sticky;position:sticky;left:0;z-index:2;padding:10px 14px;background:#fff;text-align:left}.result-matrix-table thead th:first-child{z-index:4;background:#f8fafc}.result-matrix-table tbody th small,.result-matrix-table tbody th strong{display:block}.result-matrix-table tbody th small{margin-top:3px;color:#667085;font-weight:400}.result-matrix-table tbody th button{display:block;margin-top:6px;padding:2px 0;background:transparent;color:#175cd3;font-size:var(--font-size-ui-small);font-weight:700}.result-matrix-cell button{width:100%;height:100%;position:relative;display:grid;place-items:center;background:transparent;cursor:pointer}.result-matrix-cell button:hover{background:rgba(37,99,235,.06)}.result-matrix-cell.reviewed,.result-matrix-cell.reviewed button{background:#e4e7ec}.result-matrix-cell.reviewed button:hover{background:#d0d5dd}.matrix-status{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:50%;font-size:18px;font-style:normal;font-weight:800;line-height:1}.matrix-status.ok{background:#d1fae5;color:#067647}.matrix-status.ng{background:#fee2e2;color:#b42318}.matrix-status.warn{background:#fef3c7;color:#b54708}.matrix-status.missing,.matrix-status.unpaired{background:#f2f4f7;color:#667085}.result-matrix-cell.missing{background:#f8fafc;color:#98a2b3;font-size:20px}.matrix-changed-dot{width:9px;height:9px;position:absolute;top:10px;right:10px;border-radius:50%;background:#2563eb}.result-matrix-empty{display:grid;place-items:center;padding:40px 24px;color:#667085}.check-results-layout{height:clamp(620px,calc(100vh - 260px),820px);min-height:560px;display:grid;grid-template-columns:380px minmax(0,1fr);border:1px solid #d9dee7;border-radius:8px;overflow:hidden;background:#fff}.door-list-pane{min-width:0;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);border-right:1px solid #d9dee7;background:#f8fafc}.door-list-search{display:grid;grid-gap:6px;gap:6px;padding:14px 16px;border-bottom:1px solid #e5e7eb;background:#fff}.door-list-search small{color:#667085;font-size:var(--font-size-ui-small)}.check-item-cross-filter{display:grid;grid-gap:6px;gap:6px;margin-top:6px;color:#344054;font-size:var(--font-size-ui-small);font-weight:700}.check-item-cross-filter select{width:100%;min-height:40px;background:#fff;color:#172033}.check-item-cross-filter small{font-weight:400;line-height:1.5}.filter-group.compact{padding:10px 16px;border-bottom:1px solid #e5e7eb;background:#fff}.filter-group.compact .filter-chip{min-height:28px;padding:0 10px;font-size:var(--font-size-ui-small)}.door-list{min-height:0;display:grid;align-content:start;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}.door-list-row{position:relative;min-height:72px;display:grid;grid-template-columns:minmax(0,1fr) 44px;border-bottom:1px solid #e5e7eb;background:#fff}.door-list-select{min-width:0;display:grid;grid-template-columns:32px minmax(0,1fr) 10px;align-items:center;grid-gap:10px;gap:10px;padding:12px 4px 12px 16px;background:transparent;color:#172033;text-align:left;cursor:pointer}.door-list-row.active{box-shadow:inset 4px 0 0 #2563eb;background:#eef4ff}.door-list-menu-trigger{width:36px;height:36px;align-self:center;justify-self:center;border-radius:6px;background:transparent;color:#475467;font-size:22px;line-height:1}.door-list-menu-trigger:focus-visible,.door-list-menu-trigger:hover{background:#e2e8f0;color:#172033}.door-list small,.door-list strong{display:block}.door-list small{margin-top:3px;color:#667085;font-size:var(--font-size-ui-small)}.door-list-select i{width:8px;height:8px;border-radius:50%;background:#1f6feb}.door-list-row.stale{background:#f8fafc}.door-list-empty{padding:24px 16px;color:#667085;font-size:var(--font-size-ui-small);line-height:1.6}.door-status-icon{width:28px;height:28px;display:inline-grid;place-items:center;border-radius:50%;font-size:14px;font-weight:800}.door-status-icon.ok{background:#d1fae5;color:#067647}.door-status-icon.ng{background:#fee2e2;color:#b42318}.door-status-icon.warn{background:#fef3c7;color:#b54708}.door-status-icon.excluded{background:#e2e8f0;color:#475467}.result-exclusion-menu{position:fixed;z-index:1100;width:190px;padding:6px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.18)}.result-exclusion-menu button{width:100%;min-height:38px;padding:8px 10px;border-radius:6px;background:transparent;color:#172033;text-align:left;font-weight:700}.result-exclusion-menu button:focus-visible,.result-exclusion-menu button:hover{background:#f1f5f9}.result-exclusion-confirm{width:min(520px,calc(100vw - 32px));display:grid;grid-gap:16px;gap:16px;padding:24px}.result-exclusion-confirm h2,.result-exclusion-confirm p{margin:0}.result-exclusion-confirm p{color:#475467;line-height:1.7}.result-exclusion-confirm .modal-actions{display:flex;justify-content:flex-end;gap:10px}.excluded-result-empty{min-height:320px;display:grid;place-items:center;align-content:center;grid-gap:12px;gap:12px;padding:32px;text-align:center}.excluded-result-empty h2,.excluded-result-empty p{margin:0}.excluded-result-empty p{max-width:520px;color:#667085}.door-status-icon.unpaired{background:#f2f4f7;color:#667085}.check-detail-pane{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:#f8fafc}.check-detail-header{min-height:96px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px 32px;border-bottom:1px solid #e5e7eb;background:#fff}.check-detail-header h2{margin:0;font-size:24px}.check-detail-header p{margin:6px 0 0;color:#667085;font-size:var(--font-size-ui-small);overflow-wrap:anywhere}.finding-filter-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px}.finding-filter-group .filter-chip{min-height:28px;padding:0 10px;font-size:var(--font-size-ui-small)}.check-item-cross-badge{padding:4px 9px;border:1px solid #b9ccf5;border-radius:999px;background:#eef4ff;color:#1d4ed8;font-size:var(--font-size-ui-small);font-weight:700}.check-detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.drawing-review-action{width:min(360px,100%);display:grid;justify-items:end;grid-gap:8px;gap:8px}.drawing-review-action p{margin:0;color:#475467;font-size:var(--font-size-ui-small);line-height:1.5;text-align:left}.check-card-list{min-height:0;display:grid;align-content:start;grid-gap:12px;gap:12px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;padding:24px 32px}.result-check-card{width:100%;height:auto;min-height:76px;display:grid;grid-template-columns:minmax(0,1fr) 64px;align-items:center;border:1px solid #e5e7eb;border-radius:10px;background:#fff;color:#172033;overflow:hidden}.result-check-card-main{min-width:0;min-height:74px;display:grid;grid-template-columns:64px minmax(160px,220px) minmax(0,1fr);align-items:center;grid-gap:16px;gap:16px;padding:14px 18px;background:transparent;color:inherit;text-align:left;cursor:pointer}.result-check-card:hover{border-color:#cbd5e1;background:#f8fafc}.finding-review-toggle:focus-visible,.result-check-card-main:focus-visible{outline:3px solid rgba(37,99,235,.42);outline-offset:-3px}.result-check-card.selected{border-color:#f59e0b;background:#fffaf0;box-shadow:0 0 0 2px rgba(245,158,11,.18)}.check-card-leading{display:flex;align-items:center;gap:10px}.check-card-leading>span{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:50%;background:#f2f4f7;color:#667085;font-size:var(--font-size-ui-small);font-weight:700}.check-card-heading,.check-card-title{min-width:0;display:block}.check-card-title{margin:0 0 5px;font-size:14px;font-weight:700;line-height:1.45;overflow-wrap:anywhere}.check-card-values{min-width:0;display:grid;grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr) minmax(0,auto);align-items:center;grid-gap:14px;gap:14px}.finding-review-toggle{width:100%;height:100%;min-height:74px;display:grid;place-items:center;border-left:1px solid #e5e7eb;background:#f8fafc;cursor:pointer}.finding-review-toggle span{width:30px;height:30px;display:inline-grid;place-items:center;border:2px solid #98a2b3;border-radius:5px;background:#fff;color:#fff;font-size:20px;font-weight:900;line-height:1}.finding-review-toggle.reviewed,.finding-review-toggle:hover:not(:disabled){background:#ecfdf3}.finding-review-toggle.reviewed span{border-color:#12b76a;background:#12b76a}.finding-review-toggle:disabled{cursor:wait;opacity:.6}.value-block{min-width:0;display:block}.value-block span{display:block;color:#9aa4b2;font-size:var(--font-size-ui-small);font-weight:700}.value-block strong{display:block;margin-top:3px;color:#172033;font-size:15px;line-height:1.45;overflow-wrap:anywhere}.value-block.issue strong{color:#b42318}.finding-value-editor{display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-gap:14px;gap:14px;width:100%;height:100%;padding:16px 18px;background:#f5f8ff;overflow:hidden}.finding-value-dialog-backdrop{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:28px;background:rgba(15,23,42,.1);pointer-events:none}.finding-value-dialog{width:min(920px,calc(100vw - 48px));height:min(580px,calc(100vh - 48px));overflow:hidden;border:1px solid #9bb9ee;border-radius:14px;background:#f5f8ff;box-shadow:0 28px 80px rgba(15,23,42,.35);will-change:transform;pointer-events:auto}.finding-value-dialog .finding-value-editor>header{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.finding-value-dialog.dragging .finding-value-editor>header{cursor:-webkit-grabbing;cursor:grabbing}.finding-value-dialog .finding-memo-editor>header{cursor:default}.finding-value-editor-drag-hint{padding:4px 8px;border:1px solid #9bb9ee;border-radius:999px;background:#e7efff;color:#2458ae!important;font-weight:800;white-space:nowrap}.finding-value-editor>footer,.finding-value-editor>header,.finding-value-editor>header>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.finding-value-editor>header>div{justify-content:flex-start}.finding-value-editor-note,.finding-value-editor>header small,.finding-value-editor>header span{color:#64748b;font-size:14px}.finding-value-editor-sides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.finding-value-editor-body{min-height:0;display:grid;align-content:start;grid-gap:14px;gap:14px;padding:2px 4px 8px 0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.finding-value-editor fieldset{display:grid;grid-gap:9px;gap:9px;margin:0;padding:12px;border:1px solid #cbd8ee;border-radius:9px;background:#fff}.finding-memo-input textarea{width:100%;padding:10px 12px;border:1px solid #98b7ee;border-radius:7px;background:#fff;color:#172033;font:inherit;line-height:1.55;resize:vertical}.finding-memo-input textarea:focus{border-color:#2563eb;outline:3px solid rgba(37,99,235,.18)}.finding-value-editor legend{padding:0 5px;color:#344054;font-size:14px;font-weight:800}.finding-value-editor label{display:grid;grid-template-columns:minmax(88px,.4fr) minmax(0,1fr);align-items:center;grid-gap:9px;gap:9px;color:#475467;font-size:14px;font-weight:700}.finding-value-role-row{display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px solid #e0e8f6;border-radius:8px;background:#f8faff}.finding-value-role-row.selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 2px rgba(37,99,235,.12)}.finding-value-editor input{width:100%;min-height:38px;padding:7px 9px;border:1px solid #98b7ee;border-radius:7px;background:#fff;color:#172033;font:inherit}.finding-value-editor input:focus{border-color:#2367e8;outline:3px solid rgba(35,103,232,.14)}.finding-bbox-control{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:3px}.finding-value-role-row .finding-bbox-control{padding-left:min(97px,28%)}.finding-bbox-control .button{cursor:pointer}.finding-bbox-control .button.active{border-color:#2367e8;background:#2367e8;color:#fff}.finding-bbox-control .button.add:not(.active){border-style:dashed;border-color:#2563eb;background:#eff6ff;color:#1d4ed8;font-weight:800}.finding-bbox-control .button.add:not(.active):focus-visible,.finding-bbox-control .button.add:not(.active):hover{background:#dbeafe}.finding-bbox-control small{color:#64748b;font-size:14px;font-weight:700;text-align:right}.finding-value-editor-note{margin:0}.finding-value-editor-example{padding:9px 12px;border-left:4px solid #2563eb;border-radius:6px;background:#eaf2ff;color:#243b67;font-weight:700}.finding-value-editor>footer{position:static;z-index:1;justify-content:flex-end;margin:0 -18px -16px;padding:12px 18px;border-top:1px solid #bfd2fa;background:hsla(0,0%,100%,.97);box-shadow:0 -8px 22px rgba(31,41,55,.1)}.finding-arc-control{margin-right:auto;display:inline-flex;align-items:center;gap:9px}.finding-arc-control .button.active{border-color:#2367e8;background:#2367e8;color:#fff}.finding-arc-control small{color:#64748b;font-size:14px;font-weight:700}.finding-save-state{display:grid;grid-gap:2px;gap:2px;min-width:210px;color:#64748b;text-align:right}.finding-save-state b,.finding-save-state small{font-size:14px}.finding-save-state.dirty b{color:#b54708}.finding-save-state.dirty b:before{content:"●";margin-right:6px;color:#f79009}@media (max-width:900px){.finding-value-dialog-backdrop{padding:12px}.finding-value-dialog{width:calc(100vw - 24px);height:calc(100vh - 24px)}.finding-value-editor-sides{grid-template-columns:1fr}.finding-value-editor>footer{flex-wrap:wrap}.finding-arc-control,.finding-save-state{width:100%;text-align:left}}.value-arrow{color:#9aa4b2;font-size:22px}.changed-pill,.correct-chip{max-width:100%;min-height:24px;display:inline-flex;align-items:center;padding:0 10px;border-radius:6px;font-size:var(--font-size-ui-small);font-weight:700;line-height:1.4;overflow-wrap:anywhere;white-space:normal}.correct-chip,.correct-chip.ng{background:#fee2e2;color:#b42318}.correct-chip.ok{background:#d1fae5;color:#067647}.correct-chip.warn{background:#fef3c7;color:#b54708}.correct-chip.unpaired{background:#f2f4f7;color:#667085}.changed-pill{border-radius:999px;background:#dbeafe;color:#1e40af;font-size:var(--font-size-ui-small)}.check-card-heading .changed-pill{margin-left:6px}.finding-reviewed-pill{min-height:24px;display:inline-flex;align-items:center;margin-left:6px;padding:0 9px;border-radius:999px;background:#d1fae5;color:#067647;font-size:var(--font-size-ui-small);font-weight:800}@media (max-width:1440px){.result-summary-bar{grid-template-columns:minmax(220px,1fr) auto}.result-summary-bar>:last-child{grid-column:1/-1;justify-self:stretch}.result-check-card{grid-template-columns:minmax(0,1fr) 56px}.result-check-card-main{grid-template-columns:56px minmax(150px,200px) minmax(0,1fr);align-items:start}}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,440px);background:#eef1f5}.auth-visual{padding:48px;display:flex;flex-direction:column;justify-content:space-between;background:#233044;color:#fff}.auth-visual h1{max-width:620px;margin:0;font-size:clamp(32px,5vw,56px);line-height:1.08}.auth-visual p{max-width:540px;color:#cbd5e1;line-height:1.7}.auth-card-wrap{display:grid;place-items:center;padding:24px;background:#fff}.auth-card{width:100%;max-width:360px}.auth-card h2{margin:0 0 6px;font-size:24px}.auth-card p{margin:0 0 24px;color:#667085}@media (max-width:920px){.topbar{align-items:flex-start;flex-direction:column}.figma-content,.figma-page-inner{padding:20px}.figma-filter-row,.figma-page-title-row,.figma-topbar{align-items:stretch;flex-direction:column}.figma-search,.figma-search-wide,.folder-search{width:100%}.project-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}.check-results-layout,.comparison-grid,.folder-action-bar,.folder-workspace,.project-details-grid,.result-summary-bar,.settings-layout,.upload-grid{grid-template-columns:1fr}.folder-action-bar,.result-summary-bar{align-items:stretch}.check-results-layout{height:auto;min-height:0}.result-matrix-panel{height:min(720px,calc(100vh - 160px));min-height:520px}.result-matrix-toolbar{grid-template-columns:1fr;align-items:stretch}.result-matrix-item-filter,.result-matrix-search{width:100%}.result-matrix-filters,.result-matrix-legend{grid-column:1}.check-progress-heading{display:grid}.check-progress-meta{justify-content:flex-start}.check-progress-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.folder-action-bar .toolbar-right,.folder-action-metrics{justify-content:flex-start}.door-list-pane,.drawing-pane+.drawing-pane{border-left:0;border-right:0;border-top:1px solid #d9dee7}.check-detail-pane,.door-list-pane{display:block;overflow:visible}.door-list{max-height:360px;overflow-y:auto}.check-card-list{max-height:min(560px,calc(100vh - 220px));overflow-y:auto}.result-check-card{grid-template-columns:minmax(0,1fr) 56px}.result-check-card-main{grid-template-columns:1fr;align-items:start}.finding-review-toggle{grid-row:1;grid-column:2}.check-detail-header,.drawing-viewer-toolbar{align-items:flex-start;flex-direction:column}.pdf-image-stage{padding:24px}.auth-page{grid-template-columns:1fr}.auth-visual{min-height:260px}}@media (max-width:640px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.content,.figma-content,.figma-page-inner,.figma-topbar{padding:16px}.document-bar,.filter-row,.toolbar{align-items:stretch;flex-direction:column}.toolbar-left,.toolbar-right,.topbar-actions{justify-content:flex-start}}.folder-figma-main{min-height:100vh;overflow:auto;background:#eef1f5}.figma-folder-page{--figma-folder-panel-gutter:24px;min-height:100vh;display:flex;flex-direction:column;background:#eef1f5}.figma-folder-topbar{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px 0 24px;border-bottom:1px solid #d9dee7;background:#fff}.figma-folder-topbar.review-mode{border-bottom-color:#bfdbfe;background:#f8fbff}.figma-folder-breadcrumb{min-width:0;display:flex;align-items:center;gap:10px;color:#667085;font-size:14px;font-weight:700}.figma-folder-breadcrumb button{border-radius:6px;background:transparent;color:#2563eb;cursor:pointer;font-weight:700}.figma-folder-breadcrumb button,.figma-folder-breadcrumb strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.figma-folder-breadcrumb strong{color:#172033}.figma-back-button{min-height:32px;max-width:100%;display:inline-flex;flex:0 0 auto;align-items:center;gap:6px;padding:0 10px;border:1px solid #d0d5dd;border-radius:6px;color:#344054!important;font-size:var(--font-size-ui-small);line-height:1}.review-mode .figma-back-button{border-color:#93c5fd;background:#eff6ff;color:#1e40af!important}.figma-back-icon{flex:0 0 auto;font-size:17px;line-height:1}.figma-back-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.figma-folder-alerts{padding:8px var(--figma-folder-panel-gutter) 0}.figma-folder-alerts .status-notice{margin-bottom:0}.check-result-ready-notice{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:12px var(--figma-folder-panel-gutter);padding:14px 18px;border:1px solid #60a5fa;border-radius:10px;background:#eff6ff;box-shadow:0 8px 20px rgba(37,99,235,.1);color:#172033}.check-result-ready-notice strong{display:block;color:#1e3a8a;font-size:18px;line-height:1.3}.check-result-ready-notice p{margin:4px 0 0;color:#344054;font-size:var(--font-size-ui-small);line-height:1.5}.check-result-ready-button{min-width:190px;min-height:44px;flex:0 0 auto;font-size:var(--font-size-ui-body)}.check-result-ready-button:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:3px}.figma-folder-actionbar{min-height:84px;display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;grid-gap:24px;gap:24px;margin:0 var(--figma-folder-panel-gutter);padding:14px 24px;overflow:visible;border:1px solid #d9dee7;border-radius:8px;background:#fff}.figma-folder-actionbar.running{background:#fffbeb;box-shadow:inset 0 -3px 0 #f59e0b}.figma-folder-actionbar.paused{background:#eff6ff;box-shadow:inset 0 -3px 0 #3b82f6}.figma-folder-heading{min-width:0}.figma-folder-heading h1{margin:0;color:#172033;font-size:22px;line-height:1.2;letter-spacing:0}.figma-folder-heading p{margin:7px 0 0;color:#667085;font-size:var(--font-size-ui-small);font-weight:700}.figma-folder-heading p,.figma-summary-stats{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.figma-summary-stats>span{width:auto;min-width:88px;min-height:54px;display:grid;align-content:center;grid-gap:2px;gap:2px;padding:8px 10px;border:1px solid #d9dee7;border-radius:6px;background:#f8fafc}.figma-summary-stats small{color:#667085;font-size:var(--font-size-ui-small);font-weight:700}.figma-summary-stats strong{color:#172033;font-size:20px;line-height:1}.figma-summary-stats strong.ng{color:#b42318}.figma-summary-stats strong.warn{color:#b54708}.figma-folder-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.figma-folder-actions .results-entry-button{border-color:#93c5fd;background:#eff6ff;color:#1e40af}.figma-folder-actions .results-entry-button:hover{border-color:#60a5fa;background:#dbeafe}.artifact-download-action{display:grid;justify-items:stretch;grid-gap:3px;gap:3px}.artifact-download-action>span{color:#667085;font-size:var(--font-size-ui-small);font-weight:700;line-height:1.2;text-align:center;white-space:nowrap}.figma-selected-finding-banner{display:grid;grid-gap:6px;gap:6px;padding:12px 24px;border-bottom:1px solid #bfdbfe;background:#eff6ff}.door-sequence-nav,.figma-selected-finding-main,.figma-selected-finding-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.figma-selected-finding-main{justify-content:space-between}.figma-selected-finding-title{min-width:0;flex:1 1 360px}.figma-selected-finding-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}.figma-selected-finding-actions .button[aria-pressed=true]{border-color:#2563eb;background:#dbeafe;color:#1d4ed8}.door-sequence-nav{justify-content:flex-end}.door-sequence-nav>span{min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid #bfdbfe;border-radius:6px;background:#fff;color:#1e3a8a;font-size:var(--font-size-ui-small);font-weight:800;white-space:nowrap}.figma-selected-finding-banner p{margin:0;color:#344054;font-size:var(--font-size-ui-small);line-height:1.5;overflow-wrap:anywhere}.figma-review-layout{min-width:0;min-height:0}.figma-review-layout.resizable{height:clamp(780px,88vh,1040px);display:grid;grid-template-rows:calc(100% - var(--drawing-area-percent) - 12px) 12px var(--drawing-area-percent)}.figma-folder-page.finding-review-mode .figma-review-layout.resizable>.figma-folder-workspace{height:auto;min-height:0;flex-basis:auto;grid-row:3;order:3}.figma-review-list-region{min-height:0;display:flex;flex-direction:column;gap:12px;padding:16px 24px 24px;overflow:hidden}.finding-row-memo-trigger{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:2px 8px;gap:2px 8px;align-self:stretch;padding:8px 10px;border:0;border-left:1px solid #e5e7eb;background:#fff;color:#344054;text-align:left;cursor:pointer}.finding-row-memo-trigger:focus-visible,.finding-row-memo-trigger:hover:not(:disabled){background:#f5f8ff}.finding-row-memo-trigger:focus-visible{outline:3px solid rgba(37,99,235,.24);outline-offset:-3px}.finding-row-memo-trigger:disabled{cursor:default;opacity:.55}.finding-row-memo-trigger small{grid-column:1/-1;color:#667085;font-size:14px;font-weight:700}.finding-row-memo-trigger span{min-width:0;overflow:hidden;color:#667085;font-size:14px;line-height:20px;text-overflow:ellipsis;white-space:nowrap}.finding-row-memo-trigger.has-memo span{color:#172033}.finding-row-memo-trigger b{color:#175cd3;font-size:14px;white-space:nowrap}.finding-memo-inline-editor{min-width:0;align-self:stretch;display:grid;align-content:center;padding:6px 10px;border-left:1px solid #e5e7eb;background:#f8faff}.finding-memo-inline-editor .finding-memo-input{min-width:0;display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr);align-items:center;grid-gap:8px;gap:8px;color:#475467;font-size:14px;font-weight:700}.finding-memo-inline-editor .finding-memo-input textarea{min-height:48px;max-height:128px;padding:6px 8px;line-height:1.4}.finding-memo-inline-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.figma-review-layout.resizable>.figma-review-list-region{grid-row:1;order:1}.figma-review-layout.resizable>.figma-review-area-resizer{grid-row:2;order:2}.figma-folder-page.finding-review-mode .figma-review-list-region>.figma-finding-card-list{height:auto;min-height:0;max-height:none;flex:1 1 auto;margin:0}.selected-door-summary-bar{min-width:0;min-height:52px;display:flex;align-items:stretch;gap:8px;padding:8px;border:1px solid #dbe3ef;border-radius:10px;background:#fff;box-shadow:0 2px 8px rgb(15 23 42/5%)}.selected-door-summary-title{min-width:150px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 12px 0 6px;border-right:1px solid #e4e7ec}.selected-door-summary-metric small,.selected-door-summary-title small{color:#667085;font-size:var(--font-size-ui-small);font-weight:700;line-height:1.2;white-space:nowrap}.selected-door-summary-title strong{color:#172033;font-size:var(--font-size-ui-base);line-height:1.2}.selected-door-summary-metric{min-width:90px;display:flex;flex:1 1;align-items:center;justify-content:space-between;gap:12px;padding:7px 12px;border:1px solid #e4e7ec;border-radius:8px;background:#f8fafc;cursor:pointer;font-family:inherit;text-align:left;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.selected-door-summary-metric strong{color:#344054;font-size:20px;line-height:1}.selected-door-summary-metric i{color:#667085;font-size:var(--font-size-ui-small);font-style:normal;font-weight:700;white-space:nowrap}.selected-door-summary-metric:hover:not(:disabled){box-shadow:0 3px 8px rgba(15,23,42,.12);transform:translateY(-1px)}.selected-door-summary-metric:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:1px}.selected-door-summary-metric:disabled{cursor:default;opacity:.55}.selected-door-summary-metric.ok{border-color:#a6f4c5;background:#ecfdf3}.selected-door-summary-metric.ok strong{color:#067647}.selected-door-summary-metric.ng{border-color:#fecdca;background:#fef3f2}.selected-door-summary-metric.ng strong{color:#d92d20}.selected-door-summary-metric.warn{border-color:#fedf89;background:#fffaeb}.selected-door-summary-metric.warn strong{color:#b54708}.selected-door-review-progress{min-width:260px;display:flex;align-items:baseline;justify-content:center;gap:7px;margin-left:4px;padding:7px 14px;border-left:1px solid #d0d5dd;color:#344054;white-space:nowrap}.selected-door-review-progress small{color:#475467;font-size:var(--font-size-ui-small);font-weight:800}.selected-door-review-progress strong{color:#175cd3;font-size:20px;line-height:1}.selected-door-review-progress em{color:#667085;font-size:var(--font-size-ui-small);font-style:normal;font-weight:700}.figma-folder-workspace{height:clamp(540px,58vh,720px);flex:0 0 clamp(540px,58vh,720px);min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid #d9dee7;background:#fff}.figma-folder-workspace.resizable{grid-template-columns:minmax(0,var(--plan-pane-percent)) 12px minmax(0,calc(100% - var(--plan-pane-percent) - 12px))}.figma-pane-resizer{position:relative;z-index:4;display:grid;place-items:center;border:0;border-right:1px solid #d9dee7;border-left:1px solid #d9dee7;background:#eef2f7;cursor:col-resize;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.figma-pane-resizer:before{width:3px;height:56px;border-radius:999px;background:#98a2b3;content:"";transition:width .12s ease,background .12s ease}.figma-pane-resizer>span{width:22px;height:72px;position:absolute}.figma-pane-resizer:focus-visible,.figma-pane-resizer:hover{background:#dbeafe;outline:none}.figma-pane-resizer:focus-visible:before,.figma-pane-resizer:hover:before{width:4px;background:#2563eb}.figma-pane-resizer:focus-visible{box-shadow:inset 0 0 0 3px rgba(37,99,235,.28)}.figma-review-area-resizer{position:relative;z-index:5;display:grid;place-items:center;border-top:1px solid #d9dee7;border-bottom:1px solid #d9dee7;background:#eef2f7;cursor:row-resize;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.figma-review-area-resizer:before{width:56px;height:3px;border-radius:999px;background:#98a2b3;content:"";transition:height .12s ease,background .12s ease}.figma-review-area-resizer>span{width:72px;height:22px;position:absolute}.figma-review-area-resizer:focus-visible,.figma-review-area-resizer:hover{background:#dbeafe;outline:none}.figma-review-area-resizer:focus-visible:before,.figma-review-area-resizer:hover:before{height:4px;background:#2563eb}.figma-review-area-resizer:focus-visible{box-shadow:inset 0 0 0 3px rgba(37,99,235,.28)}.figma-drawing-pane{min-width:0;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:#f8fafc}.figma-drawing-pane+.figma-drawing-pane{border-left:1px solid #d9dee7}.figma-drawing-pane-header{min-height:56px;justify-content:space-between;gap:12px;padding:10px 20px;border-bottom:1px solid #e5e7eb;background:#fff}.figma-drawing-pane-header,.figma-pane-title-row{min-width:0;display:flex;flex-wrap:wrap;align-items:center}.figma-pane-title-row{gap:10px}.figma-pane-title-row h2{min-width:0;margin:0;overflow:hidden;color:#172033;font-size:16px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.figma-pane-badge{min-height:24px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;font-size:var(--font-size-ui-small);font-weight:800;white-space:nowrap}.figma-pane-badge.plan{background:#dbeafe;color:#1d4ed8}.figma-pane-badge.fixture{background:#fee2e2;color:#b42318}.figma-drawing-tabs{min-width:0;display:flex;align-items:center;gap:8px;overflow-x:auto;padding:8px 20px;border-bottom:1px solid #e5e7eb;background:#fff}.figma-drawing-tabs button{max-width:320px;min-height:32px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:#475467;cursor:pointer}.figma-drawing-tabs button.active{border-color:#2563eb;background:#eff6ff;color:#2563eb;font-weight:800}.figma-drawing-tabs button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.figma-drawing-tabs b{padding:2px 6px;border-radius:5px;background:#eef1f5}.figma-drawing-tabs b,.figma-empty-tabs{color:#667085;font-size:var(--font-size-ui-small)}.figma-empty-tabs{font-weight:700}.figma-pdf-stage{height:100%;min-height:0;max-height:100%;position:relative;display:grid;grid-template:minmax(0,1fr) /minmax(0,1fr);place-items:center;overflow:hidden;overscroll-behavior:contain;padding:40px;background:#f3f4f6}.figma-pdf-stage,.figma-pdf-stage.empty{align-content:center}.figma-pdf-viewport{width:100%;height:100%;min-width:0;min-height:0;position:relative;overflow:hidden;place-self:stretch}.figma-pdf-viewport.can-pan{cursor:-webkit-grab;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.figma-pdf-viewport.panning,.figma-pdf-viewport.panning .figma-pdf-frame{cursor:-webkit-grabbing;cursor:grabbing}.figma-pdf-viewport.drawing-arc,.figma-pdf-viewport.drawing-arc .figma-pdf-frame,.figma-pdf-viewport.drawing-bbox,.figma-pdf-viewport.drawing-bbox .figma-pdf-frame{cursor:crosshair;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.bbox-draw-instruction{padding:8px 14px;border-radius:999px;background:rgba(23,32,51,.92);color:#fff}.bbox-draw-instruction,.value-box-edit-instruction{position:absolute;top:12px;left:50%;z-index:8;transform:translateX(-50%);font-size:14px;font-weight:800;pointer-events:none;white-space:nowrap}.value-box-edit-instruction{padding:7px 13px;border:1px solid rgba(37,99,235,.35);border-radius:999px;background:rgba(239,246,255,.94);color:#1d4ed8}.figma-pdf-notice{width:min(560px,calc(100% - 32px));position:absolute;top:16px;left:50%;z-index:5;transform:translateX(-50%);pointer-events:none}.figma-pdf-frame{min-width:0;position:absolute;background:#fff;box-shadow:0 18px 42px rgba(31,41,55,.16);transform-origin:center center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.figma-pdf-frame img{display:block;width:100%;height:100%;object-fit:fill}.pdf-bbox-editor-box{position:absolute;z-index:4;box-sizing:border-box;border:var(--pdf-highlight-stroke,2px) solid #2367e8;background:rgba(35,103,232,.12);box-shadow:0 0 0 1px hsla(0,0%,100%,.9);pointer-events:none}.pdf-bbox-editor-box.preview{border-style:dashed;background:rgba(35,103,232,.2)}.pdf-bbox-editor-box.arc-region{z-index:5;border-color:#7c3aed;border-style:dashed;background:rgba(124,58,237,.12);box-shadow:0 0 0 var(--pdf-highlight-halo,1px) hsla(0,0%,100%,.95)}.pdf-bbox-editor-box.value-region{z-index:5;border-color:#2563eb;background:rgb(37 99 235/9%)}.pdf-bbox-editor-box.value-region.interactive{pointer-events:auto;cursor:move;touch-action:none}.pdf-bbox-editor-box.value-region.active{border-color:#f59e0b;border-style:dashed;background:rgba(245,158,11,.18)}.pdf-bbox-editor-box.value-region>span{position:absolute;left:0;top:0;transform:translateY(-100%) scale(var(--pdf-overlay-inverse-zoom,1));transform-origin:left bottom;padding:2px 5px;border-radius:4px 4px 0 0;background:#2563eb;color:#fff;font-size:14px;font-weight:800;line-height:1.2;white-space:nowrap;pointer-events:none}.pdf-bbox-editor-box.value-region.active>span{background:#d97706}.pdf-bbox-resize-handle{width:calc(10px * var(--pdf-overlay-inverse-zoom, 1));height:calc(10px * var(--pdf-overlay-inverse-zoom, 1));position:absolute;z-index:2;border:calc(1px * var(--pdf-overlay-inverse-zoom, 1)) solid #fff;border-radius:50%;background:#2563eb;transform:translate(-50%,-50%);box-shadow:0 0 0 calc(1px * var(--pdf-overlay-inverse-zoom, 1)) #1d4ed8}.pdf-bbox-resize-handle.nw{left:0;top:0;cursor:nwse-resize}.pdf-bbox-resize-handle.ne{left:100%;top:0;cursor:nesw-resize}.pdf-bbox-resize-handle.sw{left:0;top:100%;cursor:nesw-resize}.pdf-bbox-resize-handle.se{left:100%;top:100%;cursor:nwse-resize}.pdf-value-box-context-menu{position:absolute;z-index:12;transform:scale(var(--pdf-overlay-inverse-zoom,1));transform-origin:left top;padding:5px;border:1px solid #d5dbea;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.24);pointer-events:auto}.pdf-value-box-context-menu button{min-width:132px;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:#b42318;font-size:14px;font-weight:800;text-align:left;cursor:pointer}.pdf-value-box-context-menu button:focus-visible,.pdf-value-box-context-menu button:hover{background:#fff1f0;outline:none}.pdf-arc-editor-overlay{width:100%;height:100%;position:absolute;inset:0;z-index:6;overflow:visible;pointer-events:none}.pdf-arc-editor-overlay polyline{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.pdf-arc-editor-overlay polyline.saved{stroke:#7c3aed;stroke-width:3px;filter:drop-shadow(0 0 2px #fff)}.pdf-arc-editor-overlay polyline.preview{stroke:#7c3aed;stroke-width:4px;stroke-dasharray:7 4;filter:drop-shadow(0 0 2px #fff)}.pdf-grid-axis-overlay{width:100%;height:100%;position:absolute;inset:0;z-index:7;overflow:visible;pointer-events:none}.pdf-grid-axis-overlay line{fill:none;stroke:#facc15;stroke-width:3px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 1px #713f12) drop-shadow(0 0 2px #fff)}.figma-drawing-toolbar{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 20px;border-top:1px solid #e5e7eb;background:#fff}.figma-toolbar-group{display:flex;align-items:center;gap:8px}.figma-toolbar-group button{min-width:34px;height:32px;display:grid;place-items:center;border:1px solid #d0d5dd;border-radius:6px;background:#fff;color:#344054;cursor:pointer;font-weight:800}.figma-toolbar-group button:disabled{cursor:not-allowed;opacity:.45}.figma-toolbar-group span{min-width:54px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#eef1f5;color:#475467;font-size:var(--font-size-ui-small);font-weight:800}.figma-finding-card-list{margin:16px 24px 24px}@media (min-width:921px){.figma-folder-page.finding-review-mode .figma-folder-workspace{height:clamp(640px,70vh,900px);flex-basis:clamp(640px,70vh,900px)}.figma-folder-page.finding-review-mode .figma-finding-card-list{max-height:clamp(520px,68vh,720px);align-content:start;gap:14px;padding:20px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}.figma-folder-page.finding-review-mode .compact-review-row{min-height:64px;grid-template-columns:minmax(0,1fr) minmax(260px,380px) 56px;align-items:stretch}.figma-folder-page.finding-review-mode .compact-review-row .result-check-card-main{min-height:62px;grid-template-columns:52px minmax(110px,170px) minmax(0,1fr);align-items:center;gap:10px;padding:7px 12px}.figma-folder-page.finding-review-mode .compact-review-row .check-card-title{margin-bottom:2px}.figma-folder-page.finding-review-mode .compact-review-row .check-card-values{gap:10px}.figma-folder-page.finding-review-mode .compact-review-row .value-block strong{margin-top:1px;line-height:1.25}.figma-folder-page.finding-review-mode .compact-review-row .finding-review-toggle{min-height:62px}.figma-folder-page.finding-review-mode .figma-finding-card-list:focus-visible{outline:3px solid rgba(37,99,235,.42);outline-offset:-3px}}@media (min-width:1101px) and (max-width:1300px){.figma-folder-page.finding-review-mode .compact-review-row{grid-template-columns:minmax(0,1fr) minmax(210px,280px) 56px}}@media (min-width:921px) and (max-width:1100px){.figma-folder-page.finding-review-mode .compact-review-row{grid-template-columns:minmax(0,1fr) minmax(180px,240px) 56px}}.figma-upload-backdrop{background:rgba(17,24,39,.55)}.figma-drawing-upload-modal{width:min(720px,calc(100vw - 32px));height:min(808px,calc(100vh - 48px));display:grid;grid-template-rows:80px minmax(0,1fr) 80px;overflow:hidden;border-radius:12px}.figma-upload-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px 0 32px;border-bottom:1px solid #e5e7eb}.figma-upload-header h2{margin:0;color:#111827;font-size:18px;line-height:1.2}.figma-upload-header p{margin:7px 0 0;color:#9ca3af;font-size:var(--font-size-ui-small)}.figma-upload-body{min-height:0;overflow:auto;padding:24px 32px}.figma-drop-zone{height:160px;display:grid;place-items:center;align-content:center;grid-gap:8px;gap:8px;border:2px dashed #2563eb;border-radius:10px;background:#eff6ff;color:#111827;cursor:pointer;outline:none;text-align:center;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease}.figma-drop-zone:focus-visible{border-color:#1e2b5b;box-shadow:0 0 0 4px rgba(30,43,91,.14)}.figma-drop-zone.drag-active{border-color:#1e2b5b;background:#f0f4ff;box-shadow:0 0 0 4px rgba(30,43,91,.1),0 14px 34px rgba(30,43,91,.14)}.figma-drop-zone.disabled{cursor:progress;opacity:.72}.figma-drop-zone input{display:none}.figma-drop-zone b{color:#2563eb}.figma-drop-zone small{color:#9ca3af;font-size:var(--font-size-ui-small)}.figma-upload-cloud{color:#2563eb;font-size:34px;line-height:1}.figma-selected-files-title{display:flex;align-items:center;gap:10px;margin-top:24px;color:#111827;font-size:var(--font-size-ui-small)}.figma-selected-files-title span{min-height:22px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:var(--font-size-ui-small);font-weight:800}.figma-selected-files-title button{margin-left:auto;background:transparent;color:#9ca3af;cursor:pointer;font-size:var(--font-size-ui-small);font-weight:700}.figma-upload-file-list{display:grid;grid-gap:8px;gap:8px;margin-top:18px}.figma-upload-empty{min-height:64px;display:grid;place-items:center;border:1px dashed #d9dee7;border-radius:8px;color:#667085;font-size:var(--font-size-ui-small)}.figma-upload-file-row{min-height:68px;display:grid;grid-template-columns:40px minmax(0,1fr) auto 24px;align-items:center;grid-gap:12px;gap:12px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.figma-pdf-icon{width:36px;height:46px;display:grid;place-items:center;border-radius:6px;background:#fee2e2;color:#b42318;font-size:14px;font-weight:800}.figma-pdf-icon small{font-size:var(--font-size-ui-small)}.figma-upload-file-main{min-width:0;display:grid;grid-gap:6px;gap:6px}.figma-upload-file-main>span:first-child{min-width:0;display:flex;align-items:baseline;gap:8px}.figma-upload-file-main strong{min-width:0;overflow:hidden;color:#111827;font-size:var(--font-size-ui-small);text-overflow:ellipsis;white-space:nowrap}.figma-upload-file-main small{color:#9ca3af;font-size:var(--font-size-ui-small)}.figma-upload-file-main em{color:#2563eb;font-size:var(--font-size-ui-small);font-style:normal;font-weight:700}.figma-upload-file-row.done .figma-upload-file-main em{color:#067647}.figma-upload-file-row.warning .figma-upload-file-main em{color:#b54708}.figma-upload-file-row.error .figma-upload-file-main em,.figma-upload-file-row.invalid .figma-upload-file-main em{color:#b42318}.figma-upload-progress{display:flex;align-items:center;gap:10px}.figma-upload-progress>span{width:min(300px,50%);height:4px;overflow:hidden;border-radius:999px;background:#e5e7eb}.figma-upload-progress>span:before{content:"";display:block;width:65%;height:100%;border-radius:inherit;background:#2563eb}.figma-upload-progress em{color:#2563eb}.figma-upload-status{min-height:24px;display:inline-flex;align-items:center;padding:0 9px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:var(--font-size-ui-small);font-weight:800;white-space:nowrap}.figma-upload-status.done{background:#d1fae5;color:#067647}.figma-upload-status.warning{background:#fef3c7;color:#b54708}.figma-upload-status.error,.figma-upload-status.invalid{background:#fee2e2;color:#b42318}.figma-upload-file-row>button{width:24px;height:24px;border-radius:6px;background:transparent;color:#9ca3af;cursor:pointer;font-size:16px}.figma-upload-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 32px;border-top:1px solid #e5e7eb;background:#f3f4f6}.figma-footer-note{display:flex;align-items:center;gap:8px;color:#9ca3af;font-size:var(--font-size-ui-small)}.figma-footer-note span{width:20px;height:20px;flex:0 0 20px;display:grid;place-items:center;border:1px solid #cbd5e1;border-radius:50%;font-size:var(--font-size-ui-small);font-weight:800}@media (max-width:1100px){.figma-folder-actionbar{grid-template-columns:1fr;align-items:stretch}.figma-folder-actions,.figma-summary-stats{justify-content:flex-start}}@media (max-width:920px){.folder-figma-main{overflow:auto}.figma-folder-actionbar,.figma-folder-topbar{align-items:stretch;flex-direction:column}.figma-folder-topbar{padding:12px 16px}.figma-folder-page>.check-progress-panel{margin:12px 16px 0}.figma-folder-workspace{height:auto;flex:initial;grid-template-columns:1fr}.figma-review-layout.resizable{height:auto;display:flex;flex-direction:column}.figma-review-list-region{padding:16px;overflow:visible}.figma-folder-page.finding-review-mode .figma-finding-card-list{height:min(52vh,520px);min-height:300px;overflow-y:auto;overscroll-behavior-y:contain}.figma-folder-page.finding-review-mode .compact-review-row{grid-template-columns:minmax(0,1fr) 56px}.figma-folder-page.finding-review-mode .compact-review-row .finding-memo-inline-editor,.figma-folder-page.finding-review-mode .compact-review-row .finding-row-memo-trigger{grid-column:1/-1;border-top:1px solid #e5e7eb;border-left:0}.figma-pane-resizer,.figma-review-area-resizer{display:none}.figma-drawing-pane{min-height:640px}.figma-drawing-pane+.figma-drawing-pane{border-left:0;border-top:1px solid #d9dee7}.figma-upload-file-row{grid-template-columns:40px minmax(0,1fr)}.figma-upload-file-row>button,.figma-upload-status{justify-self:start}}@media (max-width:640px){.figma-folder-page{--figma-folder-panel-gutter:16px}.check-running-status{grid-template-columns:auto minmax(0,1fr);align-items:flex-start}.check-running-copy{display:grid;grid-gap:2px;gap:2px}.check-running-copy span,.check-running-copy strong{white-space:normal}.check-running-meta{grid-column:2;text-align:left}.check-result-ready-notice,.figma-folder-actionbar,.figma-folder-alerts,.figma-folder-topbar,.figma-selected-finding-banner{padding-left:16px;padding-right:16px}.check-result-ready-notice{align-items:stretch;flex-direction:column;gap:12px}.check-result-ready-button{width:100%}.figma-folder-breadcrumb{align-items:flex-start;flex-wrap:wrap}.figma-back-button{width:100%;justify-content:flex-start}.figma-summary-stats{flex-wrap:wrap}.figma-selected-finding-actions{width:100%;flex-wrap:wrap;margin-left:0}.door-sequence-nav{justify-content:flex-start}.figma-drawing-pane-header,.figma-drawing-toolbar{align-items:flex-start;flex-direction:column;height:auto;padding-top:12px;padding-bottom:12px}.figma-drawing-pane{grid-template-rows:auto 48px minmax(0,1fr) auto}.figma-pdf-stage{padding:24px}.figma-drawing-upload-modal{height:min(808px,calc(100vh - 24px));grid-template-rows:auto minmax(0,1fr) auto}.figma-upload-body,.figma-upload-footer,.figma-upload-header{padding-left:18px;padding-right:18px}.figma-upload-footer{align-items:stretch;flex-direction:column;padding-top:14px;padding-bottom:14px}}@media (prefers-reduced-motion:reduce){.button-running-spinner,.check-running-activity>span,.check-running-spinner{animation:none}.check-running-activity>span{transform:none}}.arc-review-page{min-height:100vh;display:flex;flex-direction:column;overflow:visible;background:#f5f5f5}.arc-review-header{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-bottom:1px solid #e5e7eb;background:#fff}.arc-review-header h1{margin:0;color:#111827;font-size:20px;line-height:1.25;letter-spacing:0}.arc-review-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.arc-review-actions a{text-decoration:none}.arc-review-alert{margin:12px 24px 0}.arc-output-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.36)}.arc-output-modal{width:min(980px,100%);max-height:min(720px,calc(100vh - 48px));overflow:auto;padding:14px;border:1px solid #bfdbfe;border-radius:12px;background:#fff;color:#1e3a8a;box-shadow:0 24px 80px rgba(15,23,42,.28)}.arc-output-paths-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.arc-output-paths-head>div{display:grid;grid-gap:4px;gap:4px}.arc-output-paths-head span{color:#475569;font-size:12px}.arc-output-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px 10px;gap:6px 10px}.arc-output-path-grid div{min-width:0;display:grid;grid-gap:2px;gap:2px}.arc-output-path-grid span{color:#64748b;font-size:11px;font-weight:700}.arc-output-path-grid code{min-width:0;overflow-wrap:anywhere;color:#0f172a;font-size:11px;white-space:normal}.arc-review-layout{height:calc(100vh - 24px);min-height:720px;display:grid;grid-template-columns:380px minmax(0,1fr);grid-gap:12px;gap:12px;overflow:hidden;padding:12px}.arc-review-detail,.arc-review-list,.arc-review-main,.arc-viewer{min-width:0;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.arc-review-list{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.arc-filter-row{display:grid;grid-gap:8px;gap:8px;padding:12px;border-bottom:1px solid #e5e7eb}.arc-row-list{min-height:0;overflow:auto;padding:8px}.arc-row-item{width:100%;min-height:96px;display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:5px 8px;gap:5px 8px;align-items:start;margin:0 0 8px;padding:10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#111827;cursor:pointer;text-align:left}.arc-row-item.selected,.arc-row-item:hover{border-color:#2563eb;background:#f8fbff}.arc-row-item strong{min-width:0;overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.arc-row-item small,.arc-row-item span:not(.arc-status){grid-column:1/-1;color:#6b7280;font-size:12px}.arc-status{min-height:22px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;background:#f3f4f6;color:#4b5563;font-size:11px;font-weight:700;white-space:nowrap}.arc-status.confirmed,.arc-status.high_confidence{background:#d1fae5;color:#065f46}.arc-status.medium_confidence{background:#fef3c7;color:#92400e}.arc-status.needs_review{background:#fee2e2;color:#991b1b}.arc-status.missing_arc{background:#e0f2fe;color:#075985}.arc-review-main{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:12px;gap:12px;border:0;background:transparent}.arc-review-detail{padding:12px}.arc-review-status-editor{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-bottom:10px;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.arc-review-status-heading{display:grid;grid-gap:2px;gap:2px}.arc-review-status-heading strong{color:#0f172a;font-size:13px}.arc-review-status-heading span{color:#64748b;font-size:11px}.arc-review-status-options{display:flex;flex-wrap:wrap;gap:6px}.arc-review-status-option{min-height:30px;padding:0 10px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;cursor:pointer;font-size:12px;font-weight:700}.arc-review-status-option.active,.arc-review-status-option:hover:not(:disabled){border-color:#2563eb;color:#1d4ed8}.arc-review-status-option.active{background:#dbeafe}.arc-review-status-option:disabled{cursor:default;opacity:.55}.arc-edit-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.arc-note-input{flex:1 1 220px;min-height:34px}.arc-review-workspace{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-template-rows:auto minmax(0,1fr);grid-gap:12px;gap:12px}.arc-attribute-sidepanel{min-height:0;overflow:auto;display:grid;grid-template-rows:minmax(0,1fr) auto;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.arc-active-field{min-width:190px;min-height:34px;display:grid;align-content:center;grid-gap:1px;gap:1px;padding:4px 10px;border:1px solid #bfdbfe;border-radius:6px;background:#eff6ff}.arc-active-field span{color:#64748b;font-size:10px;font-weight:700}.arc-active-field strong{color:#1d4ed8;font-size:12px}.manual-value-editor{display:grid;grid-template-columns:minmax(260px,1fr) auto;grid-gap:8px 12px;gap:8px 12px;align-items:end;margin-top:10px;padding:10px;border:1px solid #dbeafe;border-radius:8px;background:#eff6ff}.manual-value-editor label{display:grid;grid-gap:5px;gap:5px;min-width:0}.manual-value-editor label>span{color:#1d4ed8;font-size:12px;font-weight:700}.manual-value-input{min-height:52px;resize:vertical}.manual-value-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.manual-value-editor small{grid-column:1/-1;color:#1e3a8a;font-size:12px}.dimension-pick-mode{display:inline-flex;gap:4px;padding:3px;border:1px solid #e9d5ff;border-radius:8px;background:#faf5ff}.dimension-pick-mode .button{min-height:28px;padding-inline:8px}.manual-text-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.manual-text-list button{min-height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border:1px solid #bbf7d0;border-radius:14px;background:#f0fdf4;color:#14532d;cursor:pointer;font-size:12px}.manual-text-list span{color:#15803d;font-weight:700}.manual-text-list strong{color:#111827}.current-attribute-table{max-height:220px;overflow:auto;margin-top:10px;border:1px solid #e5e7eb;border-radius:8px}.arc-attribute-sidepanel .current-attribute-table{min-height:0;height:auto;max-height:none;margin-top:0;border:0;border-radius:0}.current-attribute-table-head{position:-webkit-sticky;position:sticky;top:0;z-index:1;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 10px;border-bottom:1px solid #e5e7eb;background:#fff}.current-attribute-table-head>div{min-width:0;display:grid;grid-gap:3px;gap:3px}.current-attribute-table-head span{color:#6b7280;font-size:12px}.current-attribute-table-head .cross-drawing-comparison-summary{flex:0 0 auto;display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border:1px solid #bbf7d0;border-radius:999px;background:#f0fdf4;color:#15803d;font-size:11px;font-weight:700;white-space:nowrap}.current-attribute-table-head .cross-drawing-comparison-summary.mismatch{border-color:#fecdd3;background:#fff1f2;color:#be123c}.current-attribute-table table{width:100%;border-collapse:collapse;font-size:12px}.current-attribute-table td,.current-attribute-table th{padding:7px 10px;border-bottom:1px solid #f3f4f6;text-align:left;vertical-align:top}.current-attribute-table th{position:-webkit-sticky;position:sticky;top:35px;z-index:1;background:#f9fafb;color:#4b5563;font-size:11px}.current-attribute-table td:nth-child(2){color:#111827;font-weight:700}.current-attribute-table tr.active td{background:#eff6ff}.current-attribute-table tr.active td:first-child{color:#1d4ed8;font-weight:700}.current-attribute-table tr.editable{cursor:pointer}.current-attribute-table tr.editable:not(.active):focus td,.current-attribute-table tr.editable:not(.active):hover td{background:#f8fbff}.current-attribute-table tr.editable:focus{outline:2px solid #60a5fa;outline-offset:-2px}.current-attribute-table tr.non-editable td{color:#64748b}.current-attribute-table tr.cross-drawing-mismatch td,.current-attribute-table tr.cross-drawing-mismatch:focus td,.current-attribute-table tr.cross-drawing-mismatch:hover td{background:#fff1f2}.current-attribute-table tr.cross-drawing-mismatch td:first-child{box-shadow:inset 3px 0 #e11d48;color:#be123c;font-weight:700}.current-attribute-table tr.cross-drawing-mismatch td:nth-child(2){color:#9f1239}.cross-drawing-mismatch-detail{display:block;margin-top:3px;color:#be123c;font-size:10px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.arc-viewer{min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:none;padding:12px;background:#eef1f5}.arc-viewer-toolbar{grid-column:1/-1;position:-webkit-sticky;position:sticky;top:0;z-index:4;justify-content:flex-end;margin:0;padding:8px 12px;border:1px solid #d9dee7;border-radius:8px;background:hsla(0,0%,100%,.94)}.arc-page-control,.arc-viewer-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.arc-page-control{margin-right:auto}.arc-page-select-label{display:inline-flex;align-items:center;gap:6px;color:#475569;font-size:12px;font-weight:700;white-space:nowrap}.arc-page-select{width:auto;min-width:92px;min-height:30px;padding:4px 28px 4px 8px;font-size:12px}.arc-page-context{color:#64748b}.arc-page-context,.arc-zoom-status{font-size:12px;font-weight:700;white-space:nowrap}.arc-zoom-status{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid #dbeafe;border-radius:999px;background:#eff6ff;color:#1d4ed8}.arc-page-stage{width:100%;min-width:760px;position:relative}.arc-page-frame,.arc-page-stage{touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.arc-page-frame{position:absolute;top:0;left:0;overflow:hidden;border:1px solid #cfd6e2;background:#fff;box-shadow:0 10px 28px rgba(31,41,55,.12);cursor:-webkit-grab;cursor:grab;transform-origin:0 0}.arc-page-frame.is-zooming{will-change:transform}.arc-viewer.panning .arc-layer,.arc-viewer.panning .arc-page-frame,.arc-viewer.panning .arc-page-stage,.arc-viewer.panning .candidate-layer,.arc-viewer.panning .word-layer{cursor:-webkit-grabbing;cursor:grabbing}.arc-overlay,.arc-page-svg,.arc-page-svg>svg{position:absolute;inset:0;width:100%;height:100%}.arc-page-svg>svg{display:block}.arc-overlay{pointer-events:none}.arc-layer,.candidate-layer{pointer-events:auto}.arc-layer,.candidate-layer.clickable{cursor:pointer}.candidate-bbox{fill:rgba(245,158,11,.12);stroke:#d97706;stroke-width:1.8;vector-effect:non-scaling-stroke}.candidate-hit-area{fill:hsla(0,0%,100%,.001);stroke:none;pointer-events:all}.candidate-code-bbox{fill:rgba(217,119,6,.08);stroke:#b45309;stroke-dasharray:3 2;stroke-width:1;vector-effect:non-scaling-stroke}.candidate-layer.selected .candidate-bbox{fill:rgba(245,158,11,.24);stroke-width:3}.candidate-layer.selected .candidate-code-bbox{fill:rgba(250,204,21,.28);stroke:#ca8a04;stroke-dasharray:none;stroke-width:3}.candidate-label-bg{fill:#d97706;opacity:.9}.candidate-layer text{fill:#fff;font-size:8px;font-weight:700;pointer-events:none}.arc-bbox{fill:rgba(37,99,235,.1);stroke:#2563eb;stroke-width:1.8;vector-effect:non-scaling-stroke}.arc-layer.selected .arc-bbox{fill:rgba(22,163,74,.14);stroke:#16a34a;stroke-width:3}.arc-layer polyline{fill:none;stroke:#2563eb;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;vector-effect:non-scaling-stroke}.arc-layer.selected polyline{stroke:#16a34a;stroke-width:3}.arc-layer .hit-area{fill:transparent;stroke:transparent;stroke-width:14;vector-effect:non-scaling-stroke}.arc-layer circle{fill:#2563eb;stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke}.arc-layer.selected circle{fill:#16a34a}.arc-layer text{fill:#1d4ed8;font-size:8px;font-weight:700;paint-order:stroke;pointer-events:none;stroke:#fff;stroke-width:2.4px;vector-effect:non-scaling-stroke}.arc-layer.selected text{fill:#15803d}.arc-layer.manual .arc-bbox{fill:rgba(147,51,234,.12);stroke:#7e22ce}.arc-layer.manual polyline{stroke:#7e22ce}.arc-layer.manual circle{fill:#7e22ce}.arc-layer.manual text{fill:#6b21a8}.manual-arc-draft{fill:rgba(147,51,234,.08);stroke:#7e22ce;stroke-dasharray:6 4;stroke-width:2;vector-effect:non-scaling-stroke}.manual-arc-stroke-draft{fill:none;stroke:#2563eb;stroke-linecap:round;stroke-linejoin:round;stroke-width:3;vector-effect:non-scaling-stroke;pointer-events:none}.arc-edit-guidance{margin:-2px 0 10px;color:#475569;font-size:12px;line-height:1.6}.arc-draw-surface{cursor:crosshair;fill:hsla(0,0%,100%,.001);pointer-events:auto}.word-layer{cursor:pointer;pointer-events:auto}.word-bbox{fill:rgba(20,184,166,.08);stroke:rgba(13,148,136,.75);stroke-width:1;vector-effect:non-scaling-stroke}.word-layer:hover .word-bbox{fill:rgba(20,184,166,.18);stroke:#0f766e;stroke-width:2}.manual-text-selected{fill:rgba(22,163,74,.1);stroke:#16a34a;stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}.gt-annotation-layer{pointer-events:none}.gt-annotation-bbox{stroke-width:2;vector-effect:non-scaling-stroke}.gt-annotation-bbox.text{fill:rgba(99,102,241,.12);stroke:#4f46e5}.gt-annotation-bbox.dimension{fill:rgba(245,158,11,.14);stroke:#d97706}.gt-annotation-bbox.grid{fill:rgba(20,184,166,.12);stroke:#0f766e}.gt-annotation-bbox.room{fill:rgba(14,165,233,.13);stroke:#0284c7}.gt-annotation-bbox.arc{fill:rgba(124,58,237,.1);stroke:#7c3aed}.gt-annotation-label-bg{fill:rgba(17,24,39,.88)}.gt-annotation-label{fill:#fff;font-size:9px;font-weight:700}.attribute-evidence-layer{pointer-events:none}.attribute-evidence-bbox{fill:rgba(245,158,11,.16);stroke:#d97706;stroke-width:2;vector-effect:non-scaling-stroke}.attribute-evidence-bbox.manual{fill:rgba(22,163,74,.18);stroke:#15803d}.attribute-evidence-bbox.component{fill:rgba(59,130,246,.14);stroke:#2563eb}.attribute-evidence-label-bg{fill:rgba(17,24,39,.88)}.attribute-evidence-label{fill:#fff;font-size:9px;font-weight:700;pointer-events:none}.attribute-evidence-list{max-height:260px;overflow:auto;border-top:1px solid #e5e7eb;background:#f9fafb}.attribute-evidence-list-head{position:-webkit-sticky;position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.attribute-evidence-list-head strong{font-size:13px}.attribute-evidence-list-head span{color:#6b7280;font-size:12px}.attribute-evidence-list ul{display:grid;grid-gap:6px;gap:6px;margin:0;padding:8px 10px 10px;list-style:none}.attribute-evidence-list li{display:grid;grid-gap:2px;gap:2px;padding:7px 8px;border:1px solid #fed7aa;border-radius:8px;background:#fffbeb}.attribute-evidence-list li.manual{border-color:#bbf7d0;background:#f0fdf4}.attribute-evidence-list li.component{border-color:#bfdbfe;background:#eff6ff}.attribute-evidence-list li span{color:#6b7280;font-size:11px;font-weight:700}.attribute-evidence-list li strong{color:#111827;font-size:12px;font-weight:700;word-break:break-word}.attribute-evidence-list p{margin:0;padding:10px;color:#6b7280;font-size:12px}.button.secondary.active{border-color:#7e22ce;background:#faf5ff;color:#6b21a8}.chain-review-page{min-height:100vh;padding:20px;background:#f3f5f8;color:#172033}.chain-review-editor-actions,.chain-review-header,.chain-review-header-actions,.chain-review-panel-heading,.chain-review-toolbar{display:flex;align-items:center}.chain-review-header{justify-content:space-between;gap:20px;margin-bottom:14px}.chain-review-header h1{margin:0;font-size:24px}.chain-review-header p{margin:4px 0 0;color:#5c667a}.chain-review-editor-actions,.chain-review-header-actions{flex-wrap:wrap;gap:8px}.chain-review-alert{margin:0 0 12px}.chain-review-toolbar{flex-wrap:wrap;gap:12px;padding:12px;margin-bottom:12px;border:1px solid #dbe0e8;border-radius:10px;background:#fff}.chain-review-editor label,.chain-review-page-review label,.chain-review-toolbar label{display:grid;grid-gap:5px;gap:5px;color:#4a5568;font-size:12px;font-weight:600}.chain-review-toolbar label:first-child{flex:1 1 420px}.chain-review-toolbar label:nth-child(2){width:130px}.chain-review-detector{margin-left:auto;color:#667085;font-size:12px}.chain-review-layout{display:grid;grid-template-columns:230px minmax(520px,1fr) 310px;grid-gap:12px;gap:12px;min-height:calc(100vh - 180px)}.chain-review-canvas-panel,.chain-review-editor,.chain-review-object-list{min-width:0;border:1px solid #dbe0e8;border-radius:10px;background:#fff}.chain-review-editor,.chain-review-object-list{overflow:auto}.chain-review-panel-heading{justify-content:space-between;gap:8px;padding:12px;border-bottom:1px solid #e5e8ee}.chain-review-panel-heading span{color:#697386;font-size:11px}.chain-review-object{display:grid;width:calc(100% - 16px);grid-gap:3px;gap:3px;padding:10px;margin:8px;border:1px solid #e1e5eb;border-radius:8px;background:#fff;color:#263044;text-align:left;cursor:pointer}.chain-review-object.selected,.chain-review-object:hover{border-color:#3b82f6;background:#eff6ff}.chain-review-object.rejected{opacity:.62;background:#f5f5f5}.chain-review-object small,.chain-review-object span{color:#697386}.chain-review-canvas-panel{overflow:auto;padding:12px;background:#dfe3e9}.chain-review-page-frame{position:relative;width:100%;min-width:720px;overflow:hidden;background:#fff;box-shadow:0 2px 12px rgba(15,23,42,.18)}.chain-review-overlay,.chain-review-page-svg,.chain-review-page-svg>svg{position:absolute;inset:0;width:100%;height:100%}.chain-review-page-svg>svg{display:block}.chain-review-overlay{z-index:2}.chain-line-object{cursor:pointer}.chain-line-object .chain-line-visible{stroke:#16a34a;stroke-width:2.4;vector-effect:non-scaling-stroke}.chain-line-object.double_dot .chain-line-visible{stroke:#2563eb}.chain-line-object.dashed .chain-line-visible,.chain-line-object.other .chain-line-visible,.chain-line-object.solid .chain-line-visible,.chain-line-object.unknown .chain-line-visible{stroke:#9333ea}.chain-line-object.manual .chain-line-visible{stroke-dasharray:7 3}.chain-line-object.rejected .chain-line-visible{opacity:.6;stroke:#6b7280;stroke-dasharray:4 4}.chain-line-object.selected .chain-line-visible{stroke:#f97316;stroke-width:3.6}.chain-line-object .chain-line-hit{stroke:transparent;stroke-width:14;vector-effect:non-scaling-stroke}.chain-line-object circle{fill:#fff;stroke:#f97316;stroke-width:2;vector-effect:non-scaling-stroke}.chain-line-preview{stroke:#f97316;stroke-width:2.5;stroke-dasharray:7 4;vector-effect:non-scaling-stroke}.chain-line-draw-surface{fill:transparent;cursor:crosshair;touch-action:none}.chain-review-editor{padding-bottom:16px}.chain-review-editor>.chain-review-editor-actions,.chain-review-editor>fieldset,.chain-review-editor>label{margin:12px}.chain-review-coordinates{padding:10px;border:1px solid #dde2ea;border-radius:8px}.chain-review-coordinates legend{padding:0 4px;font-size:12px;font-weight:600}.chain-review-coordinates>div{display:grid;grid-template-columns:38px 1fr 1fr;grid-gap:6px;gap:6px;align-items:end;margin-top:8px}.chain-review-coordinates .input{min-width:0;padding:6px}.chain-review-page-review{margin-top:16px;padding-top:4px;border-top:4px solid #eef1f5}.chain-review-page-review>label,.chain-review-page-review>small{margin:12px}.chain-review-page-review textarea{resize:vertical}.chain-review-empty{padding:24px;color:#6b7280;text-align:center}@media (max-width:1180px){.chain-review-layout{grid-template-columns:200px minmax(500px,1fr)}.chain-review-editor{grid-column:1/-1}}@media (max-width:760px){.chain-review-header{align-items:flex-start;flex-direction:column}.chain-review-layout{display:flex;flex-direction:column}.chain-review-object-list{max-height:280px}}.opening-trace-page{display:flex;flex-direction:column;gap:16px;min-width:0}.opening-trace-counts,.opening-trace-header-actions,.opening-trace-legend,.opening-trace-original-values,.opening-trace-summary>div{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.opening-trace-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px}.opening-trace-summary strong{font-size:18px}.opening-trace-original-values{justify-content:flex-end;color:#475569}.opening-trace-original-values span{padding-left:10px;border-left:1px solid #dbe3ee}.opening-trace-layout{display:grid;grid-template-columns:210px minmax(0,1fr);grid-gap:14px;gap:14px;min-height:680px}.opening-trace-steps{display:flex;flex-direction:column;gap:8px;align-self:start;padding:12px;position:-webkit-sticky;position:sticky;top:16px}.opening-trace-steps button{display:grid;grid-template-columns:30px 1fr;grid-gap:2px 8px;gap:2px 8px;width:100%;padding:11px 10px;border:1px solid #dbe3ee;border-radius:10px;background:#fff;color:#263449;text-align:left;cursor:pointer}.opening-trace-steps button>span{display:grid;grid-row:1/3;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf2f8;color:#50627b;font-weight:700}.opening-trace-steps button b,.opening-trace-steps button small{min-width:0}.opening-trace-steps button small{color:#6b7c93;font-size:14px}.opening-trace-steps button.active{border-color:#306fde;box-shadow:0 0 0 2px rgba(48,111,222,.12)}.opening-trace-steps button.active>span{background:#306fde;color:#fff}.opening-trace-steps button.correct{border-left:4px solid #21a366}.opening-trace-steps button.incorrect{border-left:4px solid #d9475c}.opening-trace-workspace{min-width:0}.opening-trace-side-tabs{display:flex;gap:6px;margin-bottom:10px}.opening-trace-side-tabs button{min-width:190px;padding:10px 16px;border:1px solid #ced8e6;border-radius:9px 9px 0 0;background:#edf2f8;color:#43536a;font-weight:700;cursor:pointer}.opening-trace-side-tabs button.active.plan{border-color:#306fde;background:#e9f1ff;color:#174a9e}.opening-trace-side-tabs button.active.fixture{border-color:#d9475c;background:#fff0f2;color:#a92136}.opening-trace-main{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(340px,.8fr);grid-gap:14px;gap:14px;align-items:start}.opening-trace-inspector,.opening-trace-viewer{min-width:0;overflow:hidden}.opening-trace-viewer>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #dbe3ee}.opening-trace-viewer>header>div:first-child{display:flex;gap:10px;min-width:0}.opening-trace-viewer>header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.opening-trace-legend{font-size:14px;color:#607089}.opening-trace-legend span:before{display:inline-block;width:10px;height:10px;margin-right:4px;border-radius:2px;content:""}.opening-trace-legend .dot:before{border-radius:50%;background:#2d3748}.opening-trace-legend .line:before{background:#1f6feb}.opening-trace-legend .value:before{border:2px solid #eb8f1f}.opening-trace-legend .wall-center:before{background:#c026d3}.opening-trace-legend .arc:before{border:2px solid #06b6d4}.opening-trace-legend .selected:before{background:#d9475c}.human-corrected-pill{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid #22a06b;border-radius:999px;background:#eafaf3;color:#147a50;font-size:12px;font-weight:800}.opening-trace-canvas{position:relative;max-height:720px;overflow:hidden;background:#eef2f7;touch-action:none}.opening-trace-zoom-stage{transform-origin:center center;transition:transform 80ms linear}.opening-trace-canvas.panning .opening-trace-zoom-stage{transition:none}.opening-trace-page-svg{width:100%;line-height:0}.opening-trace-page-svg>svg{display:block;width:100%;height:auto;background:#fff}.opening-trace-overlay{position:absolute;inset:0;width:100%;height:auto;aspect-ratio:var(--opening-page-aspect,auto);pointer-events:none}.opening-trace-toolbar{position:absolute;z-index:3;right:12px;bottom:12px;display:flex;align-items:center;gap:4px;padding:5px;border:1px solid #cbd5e1;border-radius:6px;background:hsla(0,0%,100%,.92);box-shadow:0 2px 6px rgba(15,23,42,.15)}.opening-trace-toolbar button{min-width:28px;height:26px;padding:0 6px;border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:#334155;cursor:pointer}.opening-trace-toolbar button:disabled{cursor:default;color:#94a3b8;background:#f8fafc}.opening-trace-toolbar span{min-width:44px;color:#334155;font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.opening-trace-divergence{padding:3px 8px;border-radius:999px;background:#fff3cd;color:#7a4b00}.opening-link-number{display:inline-grid;width:24px;height:24px;place-items:center;border-radius:50%;background:#111827;color:#fff}.opening-trace-overlay .trace-finding-focus{fill:rgb(255 193 7/8%);stroke:#d97706;stroke-width:2;stroke-dasharray:7 4;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-geometry polyline,.opening-trace-overlay .trace-geometry rect{fill:none;vector-effect:non-scaling-stroke;pointer-events:none}.opening-trace-overlay .trace-geometry.wall-center polyline,.opening-trace-overlay .trace-geometry.wall-center rect{stroke:#c026d3;stroke-width:3;stroke-dasharray:7 4}.opening-trace-overlay .trace-geometry.arc polyline,.opening-trace-overlay .trace-geometry.arc rect{stroke:#7c3aed;stroke-width:3}.opening-trace-overlay .trace-link-guide line{stroke:rgba(17,24,39,.68);stroke-width:.8;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-link-arrow-head{fill:rgba(17,24,39,.68)}.opening-trace-overlay .trace-link-picker-arrow{fill:none;stroke:#7c3aed;stroke-width:.8;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-link-picker-item{pointer-events:all;cursor:pointer}.opening-trace-overlay .trace-link-picker-line{fill:rgba(31,111,235,.16);stroke:#1f6feb;stroke-width:1.3;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-link-picker-value{fill:rgba(235,143,31,.12);stroke:#eb8f1f;stroke-width:1.2;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-link-picker-hit{fill:transparent;stroke:none}.opening-trace-overlay .trace-link-picker-item:not(.selected){opacity:.48}.opening-trace-overlay .trace-link-picker-item.selected,.opening-trace-overlay .trace-link-picker-item:hover{opacity:1}.opening-trace-overlay .trace-link-picker-item.selected .trace-link-picker-line,.opening-trace-overlay .trace-link-picker-item.selected .trace-link-picker-value{fill:rgba(124,58,237,.24);stroke:#7c3aed;stroke-width:2.2}.opening-trace-overlay .trace-link-picker-item.value.waiting{opacity:.18;cursor:not-allowed}.opening-trace-overlay .trace-link-picker-badge circle{fill:#7c3aed;stroke:#fff;stroke-width:1.2;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-link-picker-badge text{fill:#fff;font-size:7px;font-weight:800;text-anchor:middle;dominant-baseline:central;pointer-events:none}.opening-trace-overlay .trace-candidate-arrow-head{fill:rgba(51,65,85,.72)}.opening-trace-overlay .trace-candidate-line{stroke:#1463d6;stroke-width:2.2;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-candidate-line-group.reference .trace-candidate-line{stroke:rgba(71,85,105,.72);stroke-width:1;stroke-dasharray:5 4}.opening-trace-overlay .trace-candidate-endpoint{fill:#fff;stroke:#1463d6;stroke-width:1.5;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-candidate-line-group.reference .trace-candidate-endpoint{fill:#f8fafc;stroke:#64748b}.opening-trace-overlay .trace-candidate-sequence{fill:#1463d6;stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-candidate-sequence-label{fill:#fff;font-size:8px;font-weight:800;text-anchor:middle;dominant-baseline:central}.opening-trace-overlay .trace-candidate-value-sequence{fill:#d97706;stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-candidate-value-sequence-label{fill:#fff;font-size:8px;font-weight:800;text-anchor:middle;dominant-baseline:central}.opening-trace-overlay .trace-candidate-reference-label{fill:#475569;font-size:9px;font-weight:700;paint-order:stroke;stroke:#fff;stroke-width:3px}.opening-trace-overlay .trace-candidate-proximity-link,.opening-trace-overlay .trace-candidate-value-link{stroke:rgba(51,65,85,.72);stroke-width:.8;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-candidate-proximity-link{stroke-dasharray:5 4}.opening-trace-overlay .trace-candidate-value{fill:rgba(235,143,31,.12);stroke:#d97706;stroke-width:1.6;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-candidate-target{fill:rgb(217 71 92/7%);stroke:#d9475c;stroke-width:1.5;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-candidate-point circle{fill:#fff;stroke:#334155;stroke-width:1.5;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-candidate-point text,.opening-trace-overlay .trace-candidate-unresolved-label{fill:#1e293b;font-size:10px;font-weight:800;paint-order:stroke;stroke:#fff;stroke-width:3px;text-anchor:start}.opening-trace-overlay .trace-candidate-unresolved-label{fill:#9a3412;text-anchor:middle}.opening-trace-overlay .trace-candidate-evidence.composed .trace-candidate-endpoint,.opening-trace-overlay .trace-candidate-evidence.composed .trace-candidate-line{stroke:#6d4cc4}.opening-trace-overlay .trace-candidate-evidence.composed .trace-candidate-sequence{fill:#6d4cc4}.opening-trace-overlay .trace-link-guide circle{fill:rgba(17,24,39,.82);stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-link-guide text{fill:#fff;font-size:8px;font-weight:700;text-anchor:middle;dominant-baseline:central}.trace-link-navigation{position:absolute;z-index:4;top:12px;left:50%;display:flex;align-items:center;gap:10px;min-width:300px;padding:8px 10px;border:2px solid #111827;border-radius:8px;background:hsla(0,0%,100%,.96);box-shadow:0 3px 12px rgba(15,23,42,.22);transform:translateX(-50%)}.trace-link-navigation div{display:grid;flex:1 1;grid-gap:2px;gap:2px;text-align:center}.trace-link-navigation strong{font-size:12px}.trace-link-navigation span{font-size:14px;font-weight:700}.trace-link-navigation button{width:30px;height:30px;border:1px solid #94a3b8;border-radius:5px;background:#fff;font-size:20px;cursor:pointer}.trace-link-navigation button:disabled{color:#cbd5e1;cursor:default}.trace-link-picker-prompt{max-width:calc(100% - 160px);padding:8px 14px;border:1px solid #7c3aed;border-radius:8px;background:hsla(0,0%,100%,.94);box-shadow:0 2px 8px rgba(30,41,59,.18);color:#5b21b6;font-weight:800;pointer-events:none}.trace-candidate-navigation,.trace-link-picker-prompt{position:absolute;z-index:4;top:12px;left:50%;transform:translateX(-50%)}.trace-candidate-navigation{display:flex;width:min(620px,calc(100% - 48px));align-items:center;gap:10px;padding:8px 10px;border:2px solid #1463d6;border-radius:8px;background:hsla(0,0%,100%,.96);box-shadow:0 3px 12px rgba(15,23,42,.22)}.trace-candidate-navigation.composed{border-color:#6d4cc4}.trace-candidate-navigation.proximity{border-color:#d97706}.trace-candidate-navigation>div{min-width:0;display:grid;flex:1 1;grid-gap:2px;gap:2px;text-align:center}.trace-candidate-navigation small,.trace-candidate-navigation span,.trace-candidate-navigation strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trace-candidate-navigation strong{color:#0f172a;font-size:12px}.trace-candidate-navigation span{color:#334155;font-size:13px;font-weight:700}.trace-candidate-navigation small{color:#7c3aed;font-size:11px}.trace-candidate-navigation.proximity small{color:#9a3412}.trace-candidate-navigation button{width:30px;height:30px;flex:0 0 auto;border:1px solid #94a3b8;border-radius:5px;background:#fff;font-size:20px;cursor:pointer}.trace-candidate-navigation button:disabled{color:#cbd5e1;cursor:default}.opening-trace-overlay .trace-dimension-line{fill:rgba(31,111,235,.2);stroke:#1f6feb;stroke-width:1.4;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-dimension-line.selected{fill:rgba(217,71,92,.25);stroke:#d9475c;stroke-width:2.2}.opening-trace-overlay .trace-dimension-dot{fill:#263449;stroke:#fff;stroke-width:1.2;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-dimension-dot.selected{fill:#d9475c}.opening-trace-overlay .trace-dimension-dot.human-selected{fill:#8b3fd1;stroke:#f4e9ff;stroke-width:3}.opening-trace-overlay .trace-dimension-value{fill:rgba(235,143,31,.12);stroke:#eb8f1f;stroke-width:1.2;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-manual-point circle{fill:#8b3fd1;stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke}.opening-trace-overlay .trace-manual-point text{fill:#6b21a8;font-size:12px;paint-order:stroke;stroke:#fff;stroke-width:3px}.opening-trace-click-layer{fill:transparent;pointer-events:all;cursor:crosshair}.opening-trace-inspector{padding:16px}.opening-trace-inspector>header{padding-bottom:12px;border-bottom:1px solid #dbe3ee}.opening-trace-inspector>header>span{color:#306fde;font-weight:700}.opening-trace-inspector h2{margin:4px 0;font-size:20px}.opening-trace-inspector p{color:#56677e}.opening-trace-definition-list{display:grid;grid-gap:1px;gap:1px;margin:14px 0;overflow:hidden;border:1px solid #dbe3ee;border-radius:9px}.opening-trace-definition-list div{display:grid;grid-template-columns:145px 1fr;grid-gap:12px;gap:12px;padding:10px 12px;background:#f8fafc}.opening-trace-definition-list dt{color:#65758b}.opening-trace-definition-list dd{margin:0;font-weight:700}.opening-trace-counts{margin:14px 0}.opening-trace-counts span{padding:8px 10px;border-radius:8px;background:#edf2f8}.opening-trace-hint{padding:8px 10px;border-radius:8px;background:#fff4d6;color:#795600!important}.opening-link-row,.opening-manual-point-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #e7edf4}.opening-manual-point-row span{flex:1 1}.opening-manual-point-row button{border:0;background:none;color:#c0263d;cursor:pointer}.opening-link-list{max-height:300px;margin:12px 0;overflow:auto;border-block:1px solid #dbe3ee}.opening-link-row>span:first-child{min-width:55px;font-weight:700}.opening-link-row input[type=number]{width:100px}.opening-link-row>span:nth-child(3){flex:1 1;color:#64748b}.opening-link-row.rejected{opacity:.55;text-decoration:line-through}.opening-add-link,.opening-triplet-editor fieldset{display:grid;grid-gap:9px;gap:9px;margin:14px 0;padding:12px;border:1px solid #ced8e6;border-radius:9px}.opening-add-link legend,.opening-triplet-editor legend{padding:0 6px;font-weight:700}.opening-add-link.graphical>.button{justify-content:center;width:100%}.opening-add-link.graphical.active{border-color:#8b5cf6;background:#faf7ff}.trace-link-picker-steps{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.trace-link-picker-steps li{display:grid;grid-template-columns:26px 70px minmax(0,1fr);align-items:center;grid-gap:8px;gap:8px;min-height:44px;padding:7px 9px;border:1px solid #d7deea;border-radius:8px;background:#fff;color:#64748b}.trace-link-picker-steps li>b{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:#dbe3ee;color:#475569}.trace-link-picker-steps li.current{border-color:#8b5cf6;color:#5b21b6}.trace-link-picker-steps li.current>b,.trace-link-picker-steps li.done>b{background:#7c3aed;color:#fff}.trace-link-picker-steps li strong{overflow:hidden;color:#172033;text-overflow:ellipsis;white-space:nowrap}.trace-link-picker-actions{display:flex;justify-content:flex-end;gap:8px}.opening-trace-inspector label,.opening-trace-save-panel label{display:grid;grid-gap:5px;gap:5px;color:#52637a;font-weight:600}.opening-trace-inspector input,.opening-trace-inspector select,.opening-trace-inspector textarea,.opening-trace-save-panel select,.opening-trace-save-panel textarea{min-height:40px;padding:8px 10px;border:1px solid #bdc9d8;border-radius:7px;background:#fff;color:#1f2937;font:inherit}.opening-candidate-groups{max-height:420px;overflow:auto}.trace-candidate-index-group{margin:10px 0;border:1px solid #dbe3ee;border-radius:8px;background:#fff}.trace-candidate-index-group>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:1px solid #e6ebf2;background:#f7f9fc}.trace-candidate-index-group>header span{color:#64748b;font-size:12px}.trace-candidate-index-list{display:grid;grid-gap:5px;gap:5px;padding:7px}.trace-candidate-index-list button{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:3px 8px;gap:3px 8px;align-items:center;padding:8px;border:1px solid transparent;border-radius:7px;background:#fff;color:#1e293b;cursor:pointer;text-align:left}.trace-candidate-index-list button.active,.trace-candidate-index-list button:hover{border-color:#5b8ee6;background:#eef5ff}.trace-candidate-index-list button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trace-candidate-index-list button small{grid-column:1/-1;color:#64748b}.trace-candidate-kind{display:inline-flex;min-height:22px;align-items:center;padding:2px 7px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:11px;font-weight:800;white-space:nowrap}.trace-candidate-kind.composed{background:#ede9fe;color:#6d28d9}.trace-candidate-kind.proximity{background:#ffedd5;color:#9a3412}.trace-candidate-detail{display:grid;grid-gap:7px;gap:7px;margin:12px 0;padding:11px;border:1px solid #93b4ed;border-radius:8px;background:#f5f9ff}.trace-candidate-detail.composed{border-color:#c4b5fd;background:#faf8ff}.trace-candidate-detail.proximity{border-color:#fdba74;background:#fffaf3}.trace-candidate-detail>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.trace-candidate-detail p{margin:0}.trace-candidate-calculation{padding:7px 9px;border-radius:6px;background:#ede9fe;color:#5b21b6!important;font-weight:800}.trace-candidate-components{display:grid;grid-gap:4px;gap:4px;margin:0;padding:0;list-style:none}.trace-candidate-components li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:7px;gap:7px;align-items:center;padding:6px 7px;border-radius:6px;background:#fff;color:#334155;font-size:12px}.trace-candidate-components li.reference>span:first-child,.trace-candidate-components li>b{display:inline-grid;min-width:22px;height:22px;place-items:center;padding:0 4px;border-radius:999px;background:#1463d6;color:#fff;font-size:10px}.trace-candidate-components li.reference>span:first-child{background:#e2e8f0;color:#475569}.trace-candidate-components li>strong{color:#9a5b06;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.trace-candidate-warning{padding:8px 9px;border-radius:6px;background:#ffedd5;color:#9a3412;font-size:12px;line-height:1.5}.trace-candidate-detail code{display:block;padding:8px;overflow-wrap:anywhere;color:#475569;font-size:11px}.opening-candidate-groups details,.opening-trace-inspector details{margin:9px 0;border:1px solid #dbe3ee;border-radius:8px}.opening-candidate-groups summary,.opening-trace-inspector details>summary{padding:10px;background:#f7f9fc;cursor:pointer}.opening-candidate-groups ul{display:grid;grid-gap:6px;gap:6px;margin:0;padding:10px 12px 12px 30px}.opening-candidate-groups li span{margin-left:8px;color:#64748b}.opening-trace-inspector pre{max-height:260px;margin:0;padding:10px;overflow:auto;background:#101827;color:#e5edf8;font-size:14px;white-space:pre-wrap}.opening-triplet-editor label{grid-template-columns:1fr}.role-value-editor{display:grid;grid-gap:12px;gap:12px;margin:14px 0;padding:14px;border:1px solid #9bbcff;border-radius:11px;background:#f5f8ff}.role-value-editor>header,.role-value-editor>header>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.role-value-editor-item>small,.role-value-editor>header small,.role-value-editor>header span{color:#64748b}.role-value-editor-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:9px;gap:9px}.role-value-editor-item{display:grid;grid-gap:6px;gap:6px}.role-value-editor-item>span{min-height:34px;color:#44536a;font-size:12px;font-weight:700}.role-value-editor-item button,.role-value-editor-item input{min-height:46px;width:100%;border:1px solid #82a9fb;border-radius:8px;background:#fff;color:#173f91;font:inherit}.role-value-editor-item button{display:flex;align-items:center;justify-content:space-between;padding:0 11px;cursor:text}.role-value-editor-item button:focus-visible,.role-value-editor-item button:hover{border-color:#2367e8;box-shadow:0 0 0 3px rgba(35,103,232,.14)}.role-value-editor-item button>span{color:#2367e8;font-size:11px;font-weight:700}.role-value-editor-item input{padding:0 11px;outline:3px solid rgba(35,103,232,.14)}.opening-comparison-preview{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.opening-comparison-preview>div{padding:12px;border:1px solid #dbe3ee;border-radius:9px;background:#f8fafc}.opening-comparison-preview>div>span{display:block;margin-bottom:7px;color:#65758b}.opening-preview-status{display:inline-flex;min-width:54px;justify-content:center;padding:5px 8px;border-radius:999px;background:#edf2f8}.opening-preview-status.ok{background:#dff6ea;color:#147343}.opening-preview-status.ng{background:#ffe3e7;color:#b4233c}.opening-preview-status.warn{background:#fff2c7;color:#765800}.opening-trace-stage-judgment{display:grid;grid-gap:12px;gap:12px;margin-top:18px;padding-top:14px;border-top:2px solid #dbe3ee}.opening-trace-stage-judgment textarea{min-height:84px;resize:vertical}.opening-trace-save-panel{display:grid;grid-template-columns:180px minmax(260px,1fr) 260px;grid-gap:14px;gap:14px;align-items:end;padding:14px 16px}.opening-trace-save-panel .opening-trace-note textarea{min-height:64px}.opening-trace-save-panel>div{display:grid;grid-template-columns:1fr auto;grid-gap:6px 10px;gap:6px 10px;align-items:center}.opening-trace-empty,.opening-trace-loading{padding:28px;color:#64748b;text-align:center}@media (max-width:1250px){.opening-trace-main{grid-template-columns:1fr}.opening-trace-inspector{max-height:none}}@media (max-width:900px){.opening-trace-layout{grid-template-columns:1fr}.opening-trace-steps{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.opening-trace-save-panel,.opening-trace-summary{display:grid;grid-template-columns:1fr}.opening-trace-original-values{justify-content:flex-start}}.arc-review-empty{min-height:140px;display:grid;place-items:center;padding:24px;color:#6b7280;font-size:13px}@media (max-width:1180px){.arc-review-layout{grid-template-columns:1fr}.arc-review-list{max-height:360px}.arc-review-workspace{grid-template-columns:1fr}.arc-attribute-sidepanel{max-height:320px}}@media (max-width:720px){.arc-edit-row,.arc-review-actions,.arc-review-header{align-items:stretch;grid-template-columns:1fr;flex-direction:column}.arc-active-field,.arc-note-input{width:100%}.arc-review-layout{padding:8px}.arc-page-stage{min-width:620px}}.figma-folder-page.finding-review-mode{height:100vh;min-height:0;overflow:hidden}.folder-figma-main.finding-review-mode{overflow-x:clip}.figma-review-screen,.figma-review-screen-main{min-width:0}.figma-review-screen.finding-review-mode{min-height:0;display:grid;flex:1 1 auto;grid-template-columns:minmax(180px,var(--door-list-width,280px)) 12px minmax(0,1fr);align-items:stretch;grid-gap:0;gap:0;margin-top:12px}.figma-review-screen.finding-review-mode>.figma-review-door-pane{max-height:none}.figma-review-screen.finding-review-mode>.figma-review-screen-main{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.figma-review-screen.finding-review-mode .figma-review-layout.resizable{height:auto}.figma-review-door-pane{min-width:0;max-height:calc(88vh + 118px);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid #d9dee7;border-radius:0;background:#fff}.figma-review-door-pane>header{min-height:48px;display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:8px 10px 8px 16px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.figma-review-door-pane>header strong{color:#172033;font-size:16px}.figma-review-door-pane .door-list-row{min-height:88px;grid-template-columns:minmax(0,1fr)}.figma-review-door-pane .door-list-select{padding-right:12px}.figma-review-door-pane .door-list-select>span:nth-child(2){min-width:0;overflow:hidden}.figma-review-door-pane .door-list-select small,.figma-review-door-pane .door-list-select strong{white-space:nowrap}.figma-review-door-pane .door-list-review-progress{margin-top:5px;color:#475467;line-height:1.35}.figma-review-door-pane .door-list-review-progress b{color:#175cd3;font-size:13px}.figma-review-door-pane .door-list-review-progress .has-issues{color:#b54708;font-weight:700}.figma-door-list-resizer{z-index:6}@media (max-width:920px){.figma-folder-page.finding-review-mode{height:auto;min-height:100vh;overflow:visible}.figma-review-screen.finding-review-mode{display:block}.figma-review-screen.finding-review-mode>.figma-review-door-pane{max-height:320px;margin-bottom:12px;border-radius:0}}.opening-trace-canvas.panning{cursor:-webkit-grabbing;cursor:grabbing}.opening-trace-canvas:not(.adding-point):not(.panning){cursor:-webkit-grab;cursor:grab}