:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1014;--surface-1:#15171d;--surface-2:#1b1e26;--surface-3:#232733;--surface-4:#2c313e;--border:#262a34;--border-strong:#353b4a;--text:#e7eaf0;--text-2:#99a2b3;--text-3:#6a7385;--accent:#6b8afd;--accent-strong:#9db2ff;--accent-soft:#6b8afd29;--accent-line:#6b8afd73;--ok:#4ade80;--warn:#f0b429;--danger:#f87171;--info:#60a5fa;--r-sm:6px;--r-md:10px;--r-lg:14px;--shadow-1:0 1px 2px #0000004d;--shadow-2:0 10px 28px #00000061;--shadow-3:0 24px 60px #00000080;--mono:ui-monospace, SFMono-Regular, "JetBrains Mono", "Cascadia Mono", Consolas, monospace}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:system-ui,Segoe UI,Roboto,sans-serif}#root{width:100%;min-height:100svh}button{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface-3);color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:.35rem;padding:.34rem .68rem;font-size:.82rem;line-height:1.35;transition:background .15s,border-color .15s,color .15s;display:inline-flex}button:hover:not(:disabled){background:var(--surface-4);border-color:#444b5c}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input[type=checkbox],input[type=radio]{width:.95rem;height:.95rem;accent-color:var(--accent);cursor:pointer;margin:0}input[type=range]{accent-color:var(--accent);cursor:pointer;height:1.1rem}input[type=text],input[type=number],select,textarea{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text);font:inherit;padding:.3rem .5rem;font-size:.82rem}input[type=text]:hover,input[type=number]:hover,select:hover{border-color:#444b5c}*{scrollbar-width:thin;scrollbar-color:var(--surface-4) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--surface-4);background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#3c4354 padding-box content-box}.app-root{flex-direction:column;align-items:center;gap:1rem;min-height:100svh;padding:1rem 1.25rem 1.5rem;display:flex}.dev-panels{flex-direction:column;gap:1.5rem;width:100%;max-width:900px;display:flex}.dev-panels-toggle{opacity:.75;align-self:flex-start;font-size:.8rem}.diagnostic-panel{width:100%;max-width:640px}.diagnostic-panel h1{text-align:center;margin-bottom:1.5rem;font-size:1.5rem}.diagnostic-table{border-collapse:collapse;width:100%;font-size:1.1rem}.diagnostic-table td{border-bottom:1px solid var(--border);padding:.9rem 1rem}.diagnostic-label{text-align:left;opacity:.85}.diagnostic-value{text-align:right;font-weight:700;font-family:var(--mono)}.diagnostic-ok{color:var(--ok)}.diagnostic-fail{color:#e74c3c}.diagnostic-unknown{color:var(--text-3)}.engine-test-panel{width:100%;max-width:640px}.engine-test-panel h2{margin-bottom:1rem;font-size:1.15rem}.engine-test-row{align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.engine-test-row button{flex-shrink:0}.engine-test-result{font-family:var(--mono);opacity:.9;font-size:.9rem}.step-drop-panel{width:100%;max-width:640px}.step-drop-panel h2{margin-bottom:1rem;font-size:1.15rem}.drop-zone{border:1.5px dashed var(--border-strong);border-radius:var(--r-md);text-align:center;color:var(--text-2);cursor:pointer;background:#ffffff04;padding:2.5rem 1rem;transition:border-color .15s,background .15s,color .15s;display:block;position:relative}.drop-zone:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--text)}.drop-zone-remove{width:1.5rem;height:1.5rem;color:inherit;opacity:.5;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:1.1rem;line-height:1;transition:opacity .15s,background .15s,color .15s;display:flex;position:absolute;top:.5rem;right:.5rem}.drop-zone-remove:hover{opacity:1;color:#e74c3c;background:#e74c3c2e}.drop-zone-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.drop-zone-active{border-color:var(--ok);color:var(--text);background:#4ade801a}.recovery-notice{color:#f1c40f;background:#f1c40f1f;border:1px solid #f1c40f59;border-radius:6px;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;padding:.7rem .9rem;font-size:.9rem;line-height:1.45;display:flex}.recovery-notice button{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;padding:0 .25rem;font-size:1.1rem;line-height:1}.recovery-notice button:hover{opacity:1}.step-error{color:#e74c3c;background:#e74c3c26;border-radius:6px;margin-top:1rem;padding:.75rem 1rem;font-size:.95rem}.step-warning{color:#f5b642;background:#f5a62326;border-radius:6px;margin-top:.5rem;padding:.65rem .8rem;font-size:.85rem;line-height:1.4}.step-result{margin-top:1.5rem}.step-result-table{border-collapse:collapse;width:100%;font-size:.95rem}.step-result-table td{border-bottom:1px solid var(--border);padding:.6rem .8rem}.step-result-table td:first-child{opacity:.75;white-space:nowrap}.step-result-table td:last-child{text-align:right;font-family:var(--mono)}.step-warning-text{color:#f1c40f}.step-warnings{background:#f1c40f1f;border-radius:6px;margin-top:1rem;padding:.75rem 1rem;font-size:.9rem}.step-warnings ul{margin:.5rem 0 0;padding-left:1.2rem}.descriptor-summary{margin-top:1.5rem}.descriptor-summary h3{margin-bottom:.75rem;font-size:1rem}.face-table{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.85rem}.face-table th{text-align:left;border-bottom:2px solid var(--border-strong);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;padding:.5rem .6rem}.face-table th:hover{color:var(--ok)}.face-table td{border-bottom:1px solid var(--border);font-family:var(--mono);white-space:nowrap;padding:.4rem .6rem}.face-table-note{opacity:.7;margin-top:.5rem;font-size:.8rem}.viewer-root{flex-direction:column;gap:.5rem;width:100%;display:flex}.viewer-controls{flex-direction:column;gap:.4rem;display:flex}.viewer-change-panel{z-index:40;border-left:1px solid var(--border-strong);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#101216f0;flex-direction:column;gap:10px;width:17rem;max-width:80%;padding:12px;display:flex;position:absolute;top:6.5rem;bottom:0;right:0;overflow-y:auto}.viewer-change-note{color:var(--text-2);margin:0;padding:0 2px;font-size:.78rem}.viewer-change-card{border:1px solid var(--border-strong);background:linear-gradient(160deg, var(--surface-3), var(--surface-2));border-radius:8px;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.viewer-change-card span,.viewer-change-card small{color:var(--text-2)}.viewer-change-card strong{color:var(--text);font-size:1.2rem}.viewer-change-warning{color:#ffb454}.viewer-change-card.primary{border-color:#c9453b;box-shadow:inset 3px 0 #e65348}.viewer-change-card.increase strong{color:#ff7469}.viewer-change-card.decrease strong{color:#64c7ff}.viewer-toolbar{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);flex-wrap:wrap;align-items:center;gap:.4rem;padding:6px 7px;font-size:.85rem;display:flex}.viewer-toolbar-group,.viewer-measure-bar .viewer-toolbar-group{background:#ffffff09;border-radius:8px;align-items:center;gap:2px;padding:2px;display:flex}.viewer-toolbar-group>button{color:var(--text-2);background:0 0;border-color:#0000}.viewer-toolbar-group>button:hover:not(:disabled){background:var(--surface-3);color:var(--text);border-color:#0000}.viewer-toolbar-divider{background:var(--border);align-self:stretch;width:1px;margin:3px .15rem}.viewer-toolbar button.active,.viewer-toolbar-group>button.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.viewer-toolbar-right{align-items:center;gap:.25rem;margin-left:auto;display:flex}.viewer-root-fullscreen{z-index:100;background:#101216;flex-direction:column;padding:8px;display:flex;position:fixed;inset:0}.viewer-root-fullscreen .viewer-canvas-wrap{flex:1;height:auto;min-height:0}.viewer-settings-panel{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);flex-direction:column;gap:.55rem;padding:11px 13px;font-size:.85rem;display:flex}.viewer-settings-panel .viewer-checkbox{border-radius:var(--r-sm);color:var(--text-2);cursor:pointer;padding:.2rem .45rem;font-size:.8rem}.viewer-settings-panel .viewer-checkbox:hover{background:var(--surface-3);color:var(--text)}.viewer-settings-row{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.viewer-settings-label{min-width:5.6rem;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;font-size:.73rem;font-weight:600}.viewer-settings-slider{color:var(--text-2);align-items:center;gap:.4rem;display:flex}.viewer-settings-slider input[type=range]{width:7rem}.viewer-settings-value{min-width:2.4rem;color:var(--text);font-family:var(--mono);font-size:.78rem}.viewer-control-row{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.viewer-control-row button.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.viewer-control-row button:disabled{opacity:.45;cursor:not-allowed}.viewer-diff-hint{border:1px solid #f0b42947;border-left:3px solid var(--warn);border-radius:var(--r-md);color:#e8dcbe;background:#f0b42914;flex-wrap:wrap;align-items:center;gap:.6rem;padding:9px 12px;font-size:.82rem;display:flex}.viewer-diff-hint-action{background:var(--warn);color:#1a1508;border-color:#0000;font-weight:600}.viewer-diff-hint-action:hover:not(:disabled){background:#ffc94d;border-color:#0000}.viewer-diff-status{border:1px solid var(--border-strong);max-width:60%;color:var(--text);text-align:center;pointer-events:none;background:#14161beb;border-radius:8px;padding:10px 16px;font-size:.85rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.viewer-checkbox{align-items:center;gap:.3rem;display:flex}.solid-list-panel{flex-direction:column;align-items:flex-start}.solid-list-actions{gap:.5rem;display:flex}.solid-list{flex-direction:column;gap:.25rem;width:100%;max-height:9rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.solid-list-item{display:flex}.solid-list-meta{color:var(--text-3);margin-left:.35rem;font-size:.72rem}.solid-context-menu{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-sm);flex-direction:column;min-width:11rem;padding:.25rem;display:flex;box-shadow:0 4px 16px #00000059}.solid-context-menu button{text-align:left;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:.3rem;padding:.4rem .6rem;font-size:.82rem}.solid-context-menu button:hover{background:var(--surface-4)}.viewer-overlay-group-label{color:var(--text-2);margin-left:.4rem;font-size:.8rem}.viewer-overlay-group-label:first-child{margin-left:0}.viewer-control-row label{align-items:center;gap:.4rem;display:flex}.viewer-canvas-wrap{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);width:100%;height:80vh;min-height:480px;box-shadow:var(--shadow-2);position:relative;overflow:hidden}.viewer-canvas{width:100%;height:100%}.viewer-sidepanel-tab{z-index:50;border-radius:0 var(--r-md) var(--r-md) 0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-2);background:#161920d1;border:1px solid #ffffff17;border-left:none;padding:.85rem .3rem;font-size:.75rem;position:absolute;top:50%;left:0;transform:translateY(-50%)}.viewer-sidepanel-tab:hover{border-color:var(--accent-line);color:var(--accent-strong);background:#6b8afd2e}.viewer-sidepanel-tab-text{writing-mode:vertical-rl;letter-spacing:.04em;white-space:nowrap;display:block;transform:rotate(180deg)}.viewer-sidepanel{z-index:40;border-right:1px solid var(--border-strong);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#101216f0;flex-direction:column;gap:.6rem;width:17rem;max-width:80%;padding:.75rem;display:flex;position:absolute;top:0;bottom:0;left:0;overflow-y:auto}.viewer-sidepanel-note{color:var(--text-2);margin:0;font-size:.8rem}.viewer-sidepanel-divider{background:var(--border);height:1px;margin:.15rem 0}.viewer-sidepanel-weight{flex-direction:column;gap:.45rem;display:flex}.viewer-label-layer{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.viewer-axis-gizmo{pointer-events:none;width:88px;height:88px;position:absolute;top:.6rem;right:.6rem}.dim-label{pointer-events:auto;font-family:var(--mono);white-space:nowrap;transform:translate(-50%,-50%)}.dim-label-size{color:#ffd23f;cursor:default;background:#14161bd9;border:1px solid #ffd23f;border-radius:4px;padding:2px 6px;font-size:.72rem}.dim-label-minbox{color:#60a5fa;cursor:default;background:#14161bd9;border:1px solid #60a5fa;border-radius:4px;padding:2px 6px;font-size:.72rem}.dim-label-thickness{color:#7be0a0;cursor:default;background:#14161bd9;border:1px solid #7be0a0;border-radius:4px;padding:2px 6px;font-size:.72rem}.dim-label-measure{color:#4ade80;cursor:default;background:#14161bd9;border:1px solid #4ade80;border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:600}.dim-label-radius{color:#4ade80;cursor:default;background:#14161bd9;border:1px solid #4ade80;border-radius:4px;padding:2px 6px;font-size:.7rem}.viewer-measure-status{color:#4ade80;font-size:.8rem}.auto-align-banner{border-radius:6px;flex-wrap:wrap;align-items:center;gap:.7rem;margin-bottom:.75rem;padding:8px 12px;font-size:.83rem;display:flex}.auto-align-checking{border:1px solid var(--border-strong);background:var(--surface-1);color:var(--text-2)}.auto-align-ok{color:#a7e8c0;background:#16211a;border:1px solid #2f5d43;border-left:3px solid #2ecc71}.auto-align-warn{color:#e0d7c2;background:#221f18;border:1px solid #4a4433;border-left:3px solid #d0a13a}.auto-align-warn span{flex:1;min-width:12rem}.viewer-overlay-bar{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);flex-wrap:wrap;align-items:center;gap:.15rem;padding:5px 7px;font-size:.85rem;display:flex}.viewer-overlay-bar-label{color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;cursor:help;margin-right:.4rem;padding:0 .15rem;font-size:.73rem;font-weight:600}.viewer-overlay-bar .viewer-checkbox,.viewer-overlay-bar .viewer-settings-slider{border-radius:var(--r-sm);color:var(--text-2);cursor:pointer;border:1px solid #0000;padding:.24rem .5rem;font-size:.8rem;transition:background .15s,color .15s}.viewer-overlay-bar .viewer-checkbox:hover{background:var(--surface-3);color:var(--text)}.viewer-overlay-bar .viewer-checkbox:has(input:checked){border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong)}.viewer-measure-bar{background:#16211a;border:1px solid #2f5d43;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:6px 8px;font-size:.85rem;display:flex}.viewer-measure-bar button.active{color:#111;background:#4ade80}.viewer-radius-hover-tooltip{z-index:50;pointer-events:none;color:#ffd23f;font-family:var(--mono);white-space:nowrap;background:#14161beb;border:1px solid #ffd23f;border-radius:4px;padding:3px 8px;font-size:.75rem;position:fixed}.viewer-legend,.viewer-stats,.viewer-face-info{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#101218b8;border:1px solid #ffffff14}.viewer-legend{color:var(--text-2);border-radius:999px;gap:.8rem;padding:.32rem .6rem;font-size:.78rem;display:flex;position:absolute;top:.7rem;left:.7rem}.legend-swatch{border-radius:2px;width:10px;height:10px;margin-right:.3rem;display:inline-block}.legend-a{background:#999}.legend-b{background:#4a90d9}.viewer-stats{font-size:.72rem;font-family:var(--mono);color:var(--text-3);border-radius:var(--r-sm);padding:.28rem .6rem;position:absolute;bottom:.7rem;left:.7rem}.viewer-face-info{font-size:.78rem;font-family:var(--mono);color:var(--warn);border-radius:var(--r-sm);padding:.35rem .7rem;position:absolute;bottom:.7rem;right:.7rem}.viewer-context-lost{color:#fff;background:#e74c3ce6;border-radius:8px;padding:1rem 1.5rem;font-size:.95rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ab-viewer-panel{width:100%;max-width:1600px}.ab-viewer-panel h2{margin:0;font-size:1.15rem}.ab-viewer-panel-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.ab-remove-models-button{opacity:.8;font-size:.8rem}.app-header{border-bottom:1px solid var(--border);align-items:center;gap:.7rem;margin-bottom:.9rem;padding-bottom:.85rem;display:flex}.app-mark{border:1px solid var(--accent-line);width:1.85rem;height:1.85rem;color:var(--accent-strong);background:linear-gradient(160deg,#6b8afd47,#6b8afd14);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.app-title{letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:650}.app-subtitle{border-left:1px solid var(--border);min-width:0;color:var(--text-3);flex:1;padding-left:.7rem;font-size:.8rem}.ab-remove-models-button{flex-shrink:0}.ab-remove-models-button:hover{color:#ffa9a2;background:#f871711f;border-color:#f8717180}.ab-drop-row{gap:.75rem;margin-bottom:.85rem;display:flex}.ab-drop-row-single{max-width:480px;margin-left:auto;margin-right:auto}.welcome-overlay{z-index:50;-webkit-backdrop-filter:blur(10px)saturate(115%);backdrop-filter:blur(10px)saturate(115%);background:radial-gradient(125% 95% at 50% 0,#28304a80,#090a0ddb 62%);justify-content:center;align-items:center;padding:1.5rem;animation:.3s both welcome-fade;display:flex;position:fixed;inset:0;overflow-y:auto}.welcome-overlay:before{content:"";filter:blur(52px);pointer-events:none;background:radial-gradient(46% 46% at 24% 26%,#6c8cff6b,#0000 70%),radial-gradient(42% 42% at 78% 72%,#48d6c54d,#0000 70%);width:min(880px,96vw);height:560px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.welcome-card{text-align:center;background:linear-gradient(#20242ef0,#13151bf2);border:1px solid #ffffff17;border-radius:20px;width:100%;max-width:620px;margin:auto;padding:2.25rem 2.25rem 1.6rem;animation:.42s cubic-bezier(.22,1,.36,1) both welcome-rise;position:relative;box-shadow:0 32px 80px #0000008c,inset 0 1px #ffffff0d}.welcome-card:before{content:"";background:linear-gradient(90deg,#0000,#96b2ffb3,#0000);height:1px;position:absolute;top:-1px;left:14%;right:14%}.welcome-badge{color:#a4afc4;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:.45rem;padding:.3rem .75rem .3rem .6rem;font-size:.72rem;display:inline-flex}.welcome-badge-dot{background:#4ade80;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #4ade8029}.welcome-card h2{letter-spacing:-.025em;background:linear-gradient(#fff,#b6c1d6);color:#0000;-webkit-background-clip:text;background-clip:text;margin:1.05rem 0 .55rem;font-size:1.85rem;font-weight:650;line-height:1.15}.welcome-desc{color:#868fa1;max-width:42ch;margin:0 auto 1.9rem;font-size:.88rem;line-height:1.6}.welcome-example-link{font:inherit;color:#6ea8fe;cursor:pointer;background:0 0;border:none;padding:0;font-size:.88rem;text-decoration:underline}.welcome-example-link:disabled{color:#868fa1;cursor:default;text-decoration:none}.welcome-section{flex-direction:column;align-items:center;gap:.85rem;display:flex}.welcome-section-label{letter-spacing:.1em;text-transform:uppercase;color:#7b8598;font-size:.7rem;font-weight:600}.welcome-section-single .welcome-file-card{width:100%;max-width:300px}.welcome-divider-row{align-items:center;gap:.9rem;margin:1.6rem 0;display:flex}.welcome-divider-line{background:linear-gradient(90deg,#0000,#ffffff21,#0000);flex:1;height:1px}.welcome-divider-text{letter-spacing:.12em;text-transform:uppercase;color:#646d80;font-size:.7rem}.welcome-file-row{justify-content:center;align-items:stretch;gap:1rem;display:flex}.welcome-file-vs{color:#8ea6e8;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-self:center;align-items:center;width:1.9rem;height:1.9rem;font-size:.82rem;display:inline-flex}.welcome-file-card{background:linear-gradient(#ffffff0b,#ffffff03);border:1px solid #ffffff14;border-radius:14px;flex-direction:column;width:200px;padding:1.15rem .9rem;transition:transform .18s cubic-bezier(.22,1,.36,1),border-color .18s,background .18s,box-shadow .18s;display:flex;position:relative}.welcome-file-card:has(.drop-zone):hover{background:linear-gradient(#7c9dff21,#7c9dff08);border-color:#7c9dff8c;transform:translateY(-3px);box-shadow:0 14px 30px #00000061,0 0 0 3px #7c9dff1a}.welcome-file-card:has(.drop-zone-active){background:linear-gradient(#4ade8024,#4ade8008);border-color:#4ade80a6;transform:translateY(-3px);box-shadow:0 14px 30px #00000061,0 0 0 3px #4ade801f}.welcome-file-card .drop-zone{text-align:center}.drop-zone-cta{flex-direction:column;align-items:center;gap:.45rem;display:flex}.drop-zone-glyph{color:#9fb2dd;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;width:2.15rem;height:2.15rem;font-size:.85rem;font-weight:700;transition:color .18s,border-color .18s,background .18s;display:inline-flex}.welcome-file-card:hover .drop-zone-glyph{color:#d2e0ff;background:#7c9dff26;border-color:#7c9dff80}.drop-zone-cta strong{color:#e6eaf2;font-size:.86rem;font-weight:600}.drop-zone-cta small{color:#6f7a8d;font-size:.72rem}.welcome-foot{color:#616a80;border-top:1px solid #ffffff0f;margin:1.8rem 0 0;padding-top:1rem;font-size:.72rem}@keyframes welcome-fade{0%{opacity:0}}@keyframes welcome-rise{0%{opacity:0;transform:translateY(14px)scale(.985)}}@media (prefers-reduced-motion:reduce){.welcome-overlay,.welcome-card{animation:none}.welcome-file-card:has(.drop-zone):hover{transform:none}.welcome-file-card:has(.drop-zone-active){transform:none}}@media (width<=560px){.welcome-card{padding:1.75rem 1.25rem 1.4rem}.welcome-card h2{font-size:1.5rem}.welcome-file-row{flex-direction:column;width:100%}.welcome-file-card,.welcome-section-single .welcome-file-card{width:100%;max-width:none}.welcome-file-vs{transform:rotate(90deg)}}.ab-drop-row-compact .drop-zone-small{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);text-align:left;padding:.45rem .7rem}.ab-drop-row-compact .drop-zone-small:hover{border-color:var(--border-strong);background:var(--surface-2)}.ab-drop-row-compact .drop-zone-remove{top:50%;transform:translateY(-50%)}.slot-badge{border:1px solid var(--accent-line);background:var(--accent-soft);width:1.35rem;height:1.35rem;color:var(--accent-strong);border-radius:6px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}.slot-meta{min-width:0;color:var(--text-3);white-space:nowrap;align-items:center;gap:.5rem;font-size:.73rem;display:flex}.slot-meta>span+span{border-left:1px solid var(--border-strong);padding-left:.5rem}.slot-meta>span:last-child{font-family:var(--mono);cursor:help}@media (width<=1100px){.slot-meta>span:last-child{display:none}}@media (width<=900px){.slot-meta>span:first-child{display:none}}.ab-slot{flex:1;min-width:0;position:relative}.ab-slot-bare{flex-direction:column;flex:1;justify-content:center;width:100%;display:flex}.ab-slot-bare .drop-zone,.ab-slot-bare .ab-progress-bare{flex-direction:column;flex:1;justify-content:center;align-items:stretch;display:flex}.ab-slot-bare .drop-zone-remove{top:-.7rem;right:-.45rem}.ab-slot-bare .drop-zone{opacity:1;border:none;padding:0}.drop-zone-small{padding:1.2rem .8rem;font-size:.85rem}.drop-zone-loaded{align-items:center;gap:.55rem;min-width:0;padding-right:1.6rem;display:flex}.drop-zone-loaded strong{text-overflow:ellipsis;white-space:nowrap;min-width:3rem;color:var(--text);flex:auto;font-size:.85rem;font-weight:600;overflow:hidden}.drop-zone-loaded .slot-meta{flex:0 auto;overflow:hidden}.drop-zone-loaded small{color:var(--text-2);font-family:var(--mono);white-space:nowrap;font-size:.72rem}.drop-zone-loaded-bare{flex-direction:column;align-items:center;gap:.3rem;padding-right:0}.drop-zone-loaded-bare strong{color:#e6eaf2;width:100%;font-size:.85rem;display:block}.drop-zone-loaded-bare small{color:#7be0a0;white-space:normal;background:#4ade801f;border-radius:999px;align-items:center;gap:.35rem;padding:.15rem .55rem;font-family:inherit;font-size:.7rem;display:inline-flex}.drop-zone-loaded-bare small:before{content:"✓";font-size:.68rem}.ab-progress{border:1px solid var(--border);background:var(--surface-1);border-radius:8px;padding:.6rem .8rem}.ab-progress-head{align-items:center;gap:.6rem;margin-bottom:.45rem;font-size:.82rem;display:flex}.ab-progress-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;overflow:hidden}.ab-progress-percent{font-family:var(--mono);color:var(--ok)}.ab-progress-cancel{padding:2px 8px;font-size:.75rem}.ab-progress-track{background:var(--surface-3);border-radius:3px;height:5px;overflow:hidden}.ab-progress-fill{background:var(--ok);height:100%;transition:width .25s}.ab-progress-hint{color:#b8860b;margin-top:.4rem;font-size:.78rem}.ab-progress-bare{flex-direction:column;justify-content:center;align-items:center;gap:.6rem;height:100%;padding:.5rem 0;display:flex}.ab-progress-bare-percent{font-family:var(--mono);font-variant-numeric:tabular-nums;color:#4ade80;font-size:1.4rem;font-weight:700}.ab-progress-bare .ab-progress-track{width:100%}.ab-progress-bare-cancel{color:#8b95a8;background:0 0;border:1px solid #ffffff1f;border-radius:999px;align-self:center;padding:3px 12px;font-size:.73rem;transition:border-color .15s,color .15s,background .15s}.ab-progress-bare-cancel:hover{color:#ff8b80;background:#e74c3c1f;border-color:#e74c3c8c}.align-panel{border:1px solid var(--border);border-radius:8px;margin-top:1rem;padding:1rem}.align-panel h3{margin-bottom:.75rem;font-size:1rem}.align-panel h4{margin:1rem 0 .5rem;font-size:.9rem}.align-method-row{flex-wrap:wrap;align-items:center;gap:1.2rem;margin-bottom:1rem;font-size:.9rem;display:flex}.align-icp-report{color:#7be0a0;font-family:var(--mono);flex-basis:100%;font-size:.78rem}.align-icp-report-warn{color:#e0d7c2;font-family:inherit}.align-method-row label{align-items:center;gap:.3rem;display:flex}.align-advanced-toggle{color:var(--text-2);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin:.3rem 0;padding:.2rem 0;font-size:.82rem}.align-advanced-toggle:hover{color:var(--text)}.align-residual{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);border-left-width:3px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem 1.25rem;margin-bottom:.85rem;padding:.8rem 1rem;display:grid}.align-stat{flex-direction:column;gap:2px;min-width:0;display:flex}.align-stat span{color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.align-stat strong{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:600}.align-residual-ok{border-left-color:var(--ok)}.align-residual-ok .align-stat strong{color:var(--ok)}.align-residual-warn{border-left-color:var(--warn)}.align-residual-warn .align-stat strong{color:var(--warn)}.align-residual-fail{border-left-color:var(--danger)}.align-residual-fail .align-stat strong{color:var(--danger)}.align-warning{border:1px solid #f0b42947;border-left:3px solid var(--warn);border-radius:var(--r-md);color:#e8dcbe;background:#f0b42914;grid-column:1/-1;align-items:flex-start;gap:.5rem;margin:.5rem 0;padding:.6rem .85rem;font-size:.83rem;font-weight:500;line-height:1.45;display:flex}.align-warning:before{content:"⚠";color:var(--warn);flex-shrink:0}.align-6dof{margin-top:.5rem}.align-step-select{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.75rem;font-size:.85rem;display:flex}.align-step-select button.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.align-dof-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.align-dof-row{font-family:var(--mono);align-items:center;gap:.4rem;font-size:.85rem;display:flex}.align-dof-value{text-align:right;min-width:5.5rem}.align-dof-actions{gap:.5rem;margin-top:.75rem;display:flex}.align-matrix-display{margin-top:1rem;font-size:.8rem}.align-matrix-display textarea{width:100%;height:3rem;font-family:var(--mono);color:#ccc;border:1px solid var(--border);resize:vertical;background:#111;margin:.4rem 0;font-size:.75rem}.align-approval-gate{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:.75rem;margin:.75rem 0;padding:.7rem .85rem;display:flex}.align-approve-button{background:var(--accent);color:#0d1220;border-color:#0000;font-weight:600}.align-approve-button:hover:not(:disabled){background:var(--accent-strong);border-color:#0000}.align-approved-badge{color:var(--ok);align-items:center;gap:.35rem;font-size:.82rem;display:inline-flex}.align-approved-badge:before{content:"✓"}.align-forced-badge{color:#e74c3c;font-size:.85rem;font-weight:700}.align-not-approved-note{color:var(--text-3);font-size:.85rem}.result-panel{border:1px solid var(--border);border-radius:8px;margin-top:1.5rem;padding:1rem}.result-panel h3{margin-bottom:.75rem;font-size:1rem}.result-panel h4{margin:1rem 0 .5rem;font-size:.9rem}.result-clean-banner{color:var(--ok);background:#2ecc7126;border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem;font-weight:700}.result-legend{color:var(--text-2);flex-wrap:wrap;gap:1rem;margin-bottom:.9rem;font-size:.78rem;display:flex}.result-legend span{align-items:center;gap:.3rem;display:flex}.legend-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.legend-common{background:#999}.legend-added{background:var(--ok)}.legend-removed{background:#e74c3c}.legend-review{background:#f1c40f}.result-filters{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.9rem;padding:.5rem .7rem;font-size:.82rem;display:flex}.result-filters label{align-items:center;gap:.5rem;display:flex}.result-cluster-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.result-cluster-item{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);cursor:pointer;padding:.75rem .85rem;transition:border-color .15s,background .15s}.result-cluster-item:hover{border-color:var(--border-strong);background:var(--surface-3)}.result-cluster-item.selected{border-color:var(--accent);background:var(--accent-soft)}.result-cluster-header{align-items:center;gap:.6rem;margin-bottom:.5rem;display:flex}.result-confidence{color:var(--text-3);font-family:var(--mono);font-variant-numeric:tabular-nums;align-items:center;gap:.45rem;margin-left:auto;font-size:.74rem;display:flex}.badge{letter-spacing:.02em;border:1px solid;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:600}.badge-added{color:var(--ok);background:#2ecc7133}.badge-removed{color:#e74c3c;background:#e74c3c33}.badge-modified{color:#3498db;background:#3498db33}.badge-moved{color:#9b59b6;background:#9b59b633}.badge-unresolved{color:#f1c40f;background:#f1c40f33}.result-cluster-id{font-family:var(--mono);opacity:.7;font-size:.8rem}.result-confidence-bar{background:var(--surface-4);border-radius:999px;width:58px;height:4px;display:block;overflow:hidden}.result-confidence-fill{background:var(--accent);border-radius:999px;height:100%;display:block}.result-interpretation{color:var(--text-2);margin-bottom:.55rem;font-size:.85rem}.result-cluster-controls{gap:.5rem;display:flex}.result-cluster-controls select,.result-cluster-controls input{font-size:.8rem}.result-cluster-controls input{flex:1}.result-unresolved{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1rem}.result-unresolved-empty{color:var(--text-3);font-size:.85rem}.result-unresolved ul{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.result-unresolved li{background:#f1c40f14;border-radius:6px;padding:.6rem .8rem;font-size:.85rem}.result-unresolved-action{opacity:.8;margin-top:.3rem;font-size:.8rem}.manifest-panel{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1rem;padding:.6rem .85rem;display:flex}.manifest-digest{text-overflow:ellipsis;min-width:12rem;color:var(--text-2);font-family:var(--mono);flex:1;font-size:.78rem;overflow:hidden}.report-root{width:100%;max-width:820px;margin-top:1rem}.report-toolbar{justify-content:flex-end;margin-bottom:.75rem;display:flex}.report-page{color:#111;background:#fff;border:1px solid #333;border-radius:8px;padding:2rem}.report-page h1{margin-bottom:1rem;font-size:1.4rem}.report-page h2{border-bottom:1px solid #ccc;margin:1.5rem 0 .6rem;padding-bottom:.3rem;font-size:1.1rem}.report-page h3{margin:1rem 0 .4rem;font-size:.95rem}.report-table{border-collapse:collapse;width:100%;font-size:.85rem}.report-table td,.report-table th{text-align:left;border:1px solid #ddd;padding:.35rem .6rem}.report-warning-text{color:#b30000;font-weight:600}.report-clean-banner{background:#eef8ee;border:1px solid #9c9;border-radius:6px;margin-top:.75rem;padding:.6rem .8rem}.report-cluster-card{break-inside:avoid;page-break-inside:avoid;border:1px solid #ddd;border-radius:6px;margin-bottom:.75rem;padding:.75rem 1rem}.report-cluster-header{align-items:center;gap:.75rem;margin-bottom:.4rem;font-size:.85rem;display:flex}.report-interpretation{margin-bottom:.4rem;font-size:.85rem;font-style:italic}.report-observations{margin-bottom:.4rem}.report-cluster-meta{opacity:.85;flex-wrap:wrap;gap:1rem;font-size:.78rem;display:flex}.report-digest{word-break:break-all;font-family:monospace;font-size:.8rem}.report-disclaimer{opacity:.8;margin-top:1rem;font-size:.8rem;font-style:italic}@media print{body *{visibility:hidden}.report-root,.report-root *{visibility:visible}.report-root{width:100%;max-width:none;margin:0;position:absolute;top:0;left:0}.no-print{display:none!important}.report-page{border:none;padding:0}}.panel-tabs-wrap{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);margin-top:.85rem;overflow:hidden}.panel-tabs{background:var(--surface-2);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.15rem;padding:0 10px;display:flex}.panel-tabs button{color:var(--text-3);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:.6rem .85rem;font-size:.85rem}.panel-tabs button:hover:not(:disabled){color:var(--text-2);background:0 0}.panel-tabs button.active{border-bottom-color:var(--accent);color:var(--text);background:0 0;font-weight:600}.panel-tabs-body{padding:0 14px 14px}.panel-tabs-body>.measure-panel,.panel-tabs-body>.align-panel,.panel-tabs-body>.result-panel,.panel-tabs-body>.manifest-panel,.panel-tabs-body>.report-root{border:none;border-radius:0;padding-left:0;padding-right:0}.measure-panel{border:1px solid var(--border);border-radius:8px;margin-top:1rem;padding:1rem}.measure-panel h3{margin-bottom:.75rem;font-size:1rem}.measure-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.measure-tabs button{font-size:.85rem}.measure-tabs button.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.measure-target-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.85rem;display:flex}.measure-target-row button.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.measure-section{font-size:.9rem}.measure-result{flex-direction:column;gap:.75rem;display:flex}.measure-dim-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.measure-dim-card{border:1px solid var(--border-strong);background:linear-gradient(160deg, var(--surface-3), var(--surface-2));border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.measure-dim-card span{color:var(--text-2);font-size:.78rem}.measure-dim-card strong{color:var(--text);font-size:1.1rem}.measure-note{color:var(--text-2);margin:0;font-size:.78rem;line-height:1.4}.measure-note-compact{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.measure-note-sep{color:#555c68}.measure-infotip{width:1rem;height:1rem;color:var(--text-2);cursor:help;-webkit-user-select:none;user-select:none;border:1px solid #4a5260;border-radius:50%;justify-content:center;align-items:center;font-size:.68rem;line-height:1;display:inline-flex}.measure-infotip:hover,.measure-infotip:focus-visible{color:#7be0a0;border-color:#7be0a0;outline:none}.measure-table{border-collapse:collapse;width:100%;font-size:.82rem}.measure-table th,.measure-table td{text-align:left;border-bottom:1px solid var(--surface-3);padding:.35rem .6rem}.measure-row-clickable{cursor:pointer}.measure-row-clickable:hover{background:var(--surface-3)}.measure-color-swatch{border:1px solid #ffffff59;border-radius:3px;width:.8rem;height:.8rem;display:inline-block}.measure-tolerance-row{align-items:center;gap:.5rem;margin:.5rem 0;font-size:.85rem;display:flex}.measure-tolerance-row input[type=number]{width:70px}@media (width<=700px){.app-root{gap:.7rem;padding:.7rem .7rem 1rem}.app-subtitle{display:none}.app-header{gap:.55rem;margin-bottom:.7rem;padding-bottom:.7rem}.ab-drop-row{flex-direction:column;gap:.5rem;margin-bottom:.7rem}.viewer-toolbar,.viewer-overlay-bar,.viewer-measure-bar{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.viewer-toolbar::-webkit-scrollbar{display:none}.viewer-overlay-bar::-webkit-scrollbar{display:none}.viewer-measure-bar::-webkit-scrollbar{display:none}.viewer-toolbar>*,.viewer-overlay-bar>*,.viewer-measure-bar>*{flex-shrink:0}.viewer-toolbar-right{margin-left:.15rem}.viewer-toolbar button,.viewer-overlay-bar .viewer-checkbox,.viewer-measure-bar button,.panel-tabs button{min-height:40px}.viewer-overlay-bar .viewer-checkbox{align-items:center;display:flex}input[type=checkbox],input[type=radio]{width:1.1rem;height:1.1rem}.viewer-canvas-wrap{height:58svh;min-height:300px}.viewer-sidepanel,.viewer-change-panel{width:min(17rem,88%);max-width:none}.viewer-change-panel{top:5rem}.panel-tabs{padding:0 6px}.panel-tabs-body{padding:0 10px 12px}.result-cluster-controls{flex-wrap:wrap}.result-cluster-controls input{flex:100%}.manifest-panel button,.result-filters{flex-wrap:wrap}}.viewer-immersive-exit{z-index:60;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-height:40px;color:var(--text);box-shadow:var(--shadow-2);background:#161920db;border:1px solid #ffffff1f;border-radius:999px;padding:.4rem 1rem;font-size:.82rem;position:absolute;top:.7rem;left:50%;transform:translate(-50%)}.viewer-immersive-exit:hover{border-color:var(--accent-line);color:var(--accent-strong);background:#6b8afd40}@media (width<=700px){.ab-viewer-panel-immersive .app-header,.ab-viewer-panel-immersive .ab-drop-row,.ab-viewer-panel-immersive .panel-tabs-wrap,.viewer-root-immersive .viewer-controls,.viewer-root-immersive .viewer-stats{display:none}.viewer-root-immersive .viewer-canvas-wrap{height:calc(100svh - 1.4rem)}}@media (width>=701px){.viewer-immersive-exit{display:none}}.landing-root{flex-direction:column;align-items:center;width:100%;min-height:100svh;display:flex}.landing-nav{justify-content:space-between;align-items:center;width:100%;max-width:1100px;padding:1.1rem 1.5rem;display:flex}.landing-nav-left{align-items:center;gap:.9rem;display:flex}.landing-nav-brand{letter-spacing:-.01em;align-items:center;gap:.55rem;font-size:.95rem;font-weight:650;display:inline-flex}.landing-nav-cta{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.landing-nav-cta:hover{background:var(--accent-soft);border-color:var(--accent)}.landing-hero{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:780px;padding:2.5rem 1.5rem 1rem;display:flex}.landing-hero-badge{margin-bottom:1.4rem}.landing-hero-title{letter-spacing:-.025em;background:linear-gradient(#fff,#b6c1d6);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 .9rem;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:680;line-height:1.2}.landing-hero-tldr{max-width:46ch;color:var(--text-2);margin:0 0 1.8rem;font-size:1rem;line-height:1.6}.landing-hero-actions{flex-direction:column;align-items:center;gap:.7rem;margin-bottom:2.5rem;display:flex}.landing-hero-cta{background:var(--accent);color:#0e1014;border-color:#0000;border-radius:999px;padding:.7rem 1.6rem;font-size:.95rem;font-weight:650}.landing-hero-cta:hover{background:var(--accent-strong)}.landing-hero-hint{color:var(--text-3);font-size:.78rem}.landing-hero-frame{border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--surface-1);width:100%;max-width:640px;box-shadow:var(--shadow-2);overflow:hidden}.landing-hero-frame-bar{border-bottom:1px solid var(--border);background:var(--surface-2);gap:.4rem;padding:.6rem .75rem;display:flex}.landing-hero-frame-bar span{background:var(--surface-4);border-radius:50%;width:.6rem;height:.6rem}.landing-hero-frame-body{justify-content:center;padding:1.5rem 2rem 2rem;display:flex}.feature-visual-svg{width:100%;max-width:320px;height:auto}.landing-nav-back{color:var(--text-2);background:0 0;border-color:#0000;font-size:.82rem}.landing-nav-back:hover{background:var(--surface-3);color:var(--text)}.landing-features{flex-direction:column;gap:3.5rem;width:100%;max-width:980px;padding:4rem 1.5rem;display:flex}.landing-feature{grid-template-columns:1.1fr .9fr;align-items:center;gap:2.5rem;display:grid}.landing-feature-reverse{grid-template-columns:.9fr 1.1fr}.landing-feature-reverse .landing-feature-text{order:2}.landing-feature-reverse .landing-feature-visual{order:1}.landing-feature-text h2{letter-spacing:-.015em;margin:0 0 .75rem;font-size:1.35rem;font-weight:650}.landing-feature-text p{color:var(--text-2);margin:0 0 .7rem;font-size:.92rem;line-height:1.65}.landing-feature-caption{color:var(--text-3);font-size:.78rem;display:block}.landing-feature-visual{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);justify-content:center;padding:1.5rem;display:flex}.landing-faq{width:100%;max-width:720px;padding:2rem 1.5rem 3rem}.landing-section-title{text-align:center;letter-spacing:-.015em;margin:0 0 1.5rem;font-size:1.4rem;font-weight:650}.faq-list{flex-direction:column;gap:.5rem;display:flex}.faq-item{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);overflow:hidden}.faq-item-open{border-color:var(--border-strong)}.faq-question{width:100%;color:var(--text);text-align:left;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;font-size:.9rem;font-weight:550;display:flex}.faq-question:hover{background:var(--surface-2)}.faq-chevron{color:var(--text-3);flex-shrink:0;font-size:1rem}.faq-answer{color:var(--text-2);margin:0;padding:0 1.1rem 1rem;font-size:.86rem;line-height:1.65}.landing-cta-band{text-align:center;flex-direction:column;align-items:center;gap:1.2rem;width:100%;max-width:780px;padding:3rem 1.5rem;display:flex}.landing-cta-band h2{letter-spacing:-.015em;margin:0;font-size:1.4rem;font-weight:650}.landing-footer{border-top:1px solid var(--border);text-align:center;width:100%;color:var(--text-3);padding:1.5rem;font-size:.78rem}@media (width<=720px){.landing-feature,.landing-feature-reverse{grid-template-columns:1fr}.landing-feature-reverse .landing-feature-text,.landing-feature-reverse .landing-feature-visual{order:initial}}.tools-home-root{flex-direction:column;align-items:center;width:100%;min-height:100svh;display:flex}.tools-home-nav{justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:920px;padding:1.4rem 1.5rem;display:flex}.tools-home-brand{letter-spacing:-.01em;align-items:center;gap:.55rem;font-size:.95rem;font-weight:650;display:inline-flex}.tools-home-nav-note{color:var(--text-3);font-size:.76rem}.tools-home-hero{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:700px;padding:1.5rem 1.5rem 2.2rem;display:flex}.tools-home-title{letter-spacing:-.03em;background:linear-gradient(#fff,#b6c1d6);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 .9rem;font-size:clamp(2.2rem,6vw,3.2rem);font-weight:720;line-height:1.05}.tools-home-tldr{max-width:50ch;color:var(--text-2);margin:0 0 1.4rem;font-size:.95rem;line-height:1.65}.tools-home-pick{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:600}.tools-home-grid{grid-template-columns:repeat(2,1fr);gap:1rem;width:100%;max-width:920px;padding:0 1.5rem 3rem;display:grid}.tool-card{border:1px solid var(--border);border-radius:var(--r-lg);background:linear-gradient(160deg, var(--surface-2), var(--surface-1));flex-direction:column;align-items:flex-start;gap:.55rem;padding:1.6rem 1.5rem;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex}.tool-card:not(.tool-card-soon):hover{border-color:var(--border-strong);box-shadow:var(--shadow-2);transform:translateY(-3px)}.tool-card-soon{opacity:.55}.tool-card-icon{border:1px solid #ffffff14;border-radius:12px;justify-content:center;align-items:center;width:2.6rem;height:2.6rem;margin-bottom:.3rem;display:inline-flex}.tool-card-icon-step{color:#b7c6ff;background:linear-gradient(155deg,#6b8afd59,#6b8afd1a)}.tool-card-icon-folder{color:#ffcf8a;background:linear-gradient(155deg,#f09e2959,#f09e291a)}.tool-card-icon-pdf{color:#ffb0ab;background:linear-gradient(155deg,#f8717159,#f871711a)}.tool-card-icon-text{color:#a7f0bf;background:linear-gradient(155deg,#4ade8059,#4ade801a)}.tool-card-title{letter-spacing:-.01em;font-size:1.02rem;font-weight:660}.tool-card-blurb{color:var(--text-2);font-size:.83rem;line-height:1.5}.tool-card-actions{align-items:center;gap:.6rem;margin-top:.55rem;display:flex}.tool-card-more{color:var(--accent-strong);background:0 0;border-color:#0000;padding-left:0;font-size:.82rem}.tool-card-more:hover{color:var(--text);background:0 0}.tool-card-cta{background:var(--accent);color:#0e1014;border-color:#0000;font-size:.82rem;font-weight:650}.tool-card-cta:hover{background:var(--accent-strong)}.tool-card-badge{border:1px solid var(--border-strong);color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin-top:.55rem;padding:.2rem .6rem;font-size:.68rem;font-weight:600;display:inline-flex}.tools-home-why{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:1.2rem;width:100%;max-width:920px;margin-top:.5rem;padding:2.5rem 1.5rem 3.5rem;display:grid}.tools-home-why-item{gap:.7rem;display:flex}.tools-home-why-dot{background:var(--accent);width:.5rem;height:.5rem;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%;flex-shrink:0;margin-top:.35rem}.tools-home-why-item strong{margin-bottom:.3rem;font-size:.88rem;font-weight:620;display:block}.tools-home-why-item p{color:var(--text-2);margin:0;font-size:.8rem;line-height:1.55}.tools-home-footer{border-top:1px solid var(--border);text-align:center;width:100%;color:var(--text-3);padding:1.5rem;font-size:.78rem}@media (width<=640px){.tools-home-grid,.tools-home-why{grid-template-columns:1fr}}
