:root{--app-bg: #ffffff;--chrome: #ffffff;--chrome-2: #f5f5f3;--chrome-3: #eeeeec;--chrome-border: #e4e4e1;--chrome-ink: #191d24;--chrome-muted: #6a6a63;--accent: #e08a1e;--accent-2: #a86209;--accent-soft: #fbecce;--accent-glow: rgba(224, 138, 30, .28);--on-accent: #1a1205;--ink-900: #14181f;--ink-800: #1c222c;--ink-700: #2a313d;--ink-line: #343c49;--on-dark: #f3f1ea;--on-dark-muted: #a8aeb8;--canvas: #ffffff;--sheet-border: #e3e3e0;--ink: #232830;--ink-soft: #5b5b54;--grid: #2f6df0;--joist: #6f86b8;--joist-over: #d8392b;--bearing: #d8392b;--dim: #8a8472;--wall: #33425e;--beam: #2a6df0;--column: #33425e;--guide: #e08a1e;--ok: #1e9e6a;--warn: #d8392b;--shadow: 0 1px 2px rgba(28, 22, 8, .05), 0 10px 30px rgba(28, 22, 8, .1);--shadow-sm: 0 1px 2px rgba(28, 22, 8, .08), 0 3px 8px rgba(28, 22, 8, .06);--shadow-panel: 0 30px 80px rgba(14, 18, 25, .35);--radius: 10px;--radius-sm: 7px;--radius-lg: 22px;--radius-xl: 30px;--ease-out: cubic-bezier(.16, 1, .3, 1);--font-display: "Bricolage Grotesque", "Manrope", system-ui, sans-serif;--font-sans: "Manrope", system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{font-family:Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased;background:var(--app-bg);color:var(--chrome-ink);font-size:13px}.mono{font-family:IBM Plex Mono,monospace;font-variant-numeric:tabular-nums}.landing h1,.landing h2,.landing h3,.page-head h1,.page-head h2,.article-body h1,.article-body h2{font-family:var(--font-display);font-weight:700;letter-spacing:-.015em}.app{height:100vh;width:100vw;display:flex;flex-direction:column;overflow:hidden;-webkit-user-select:none;user-select:none}.app.canvas-full .topbar,.app.canvas-full .left-rail,.app.canvas-full .panel{display:none}.editor-gate{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:32px 28px;background:var(--app-bg);color:var(--chrome-ink)}.editor-gate .brand-mark{width:46px;height:46px;border-radius:12px}.editor-gate h1{margin:4px 0 0;max-width:320px;font-family:var(--font-display);font-size:23px;line-height:1.15;letter-spacing:-.02em}.editor-gate p{margin:0;max-width:320px;font-size:14.5px;line-height:1.6;color:var(--ink-soft)}.editor-gate .landing-primary{margin-top:8px;min-height:46px;padding:0 20px;border-radius:var(--radius-sm);font-weight:800}@media (max-width: 720px){.app>:not(.editor-gate){display:none}.editor-gate{display:flex}}.topbar{height:56px;flex:none;display:flex;align-items:center;gap:14px;padding:0 16px;background:var(--chrome);border-bottom:1px solid var(--chrome-border);z-index:10}.brand{display:flex;align-items:center;gap:9px}.brand-mark{width:30px;height:30px;border-radius:8px;background:var(--accent);display:grid;place-items:center;box-shadow:0 2px 6px var(--accent-glow)}.brand-name{font-weight:800;font-size:15px;letter-spacing:-.3px}.brand-name span{color:var(--accent-2)}.autosave-pill,.pill-warn{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:4px 11px;border-radius:999px;border:1px solid var(--chrome-border);background:var(--chrome-2);color:var(--chrome-muted);white-space:nowrap}.autosave-pill:before,.pill-warn:before{content:"";width:6px;height:6px;border-radius:50%;flex:none}.autosave-pill{margin-left:auto;color:var(--ink-soft)}.autosave-pill:before{background:var(--ok)}.pill-warn{color:#946700;background:#fdf6e8;border-color:#efe1bd}.pill-warn:before{background:#e0a216}.topbar-link{display:inline-flex;align-items:center;height:30px;padding:0 11px;border-radius:999px;border:1px solid transparent;color:var(--ink-soft);font-size:11.5px;font-weight:800;text-decoration:none;white-space:nowrap;transition:background .12s,color .12s,border-color .12s}.topbar-link:hover{border-color:var(--accent);color:var(--accent-2);background:var(--accent-soft)}.account-chip{display:inline-flex;align-items:center;gap:7px;max-width:240px;height:30px;padding:0 11px;border:1px solid var(--chrome-border);border-radius:999px;background:var(--chrome-2);color:var(--ink-soft);font:inherit;font-size:11.5px;font-weight:800;white-space:nowrap;cursor:pointer}.account-chip:has(.account-avatar){padding-left:4px}.account-chip .account-email{overflow:hidden;text-overflow:ellipsis}.account-avatar{flex:none;width:22px;height:22px;border-radius:50%;object-fit:cover;background:var(--chrome-3)}.account-avatar-fallback{display:grid;place-items:center;background:var(--accent);color:var(--on-accent);font-family:var(--font-sans);font-size:11px;font-weight:800;line-height:1}.account-chip:hover{border-color:var(--accent);color:var(--accent-2);background:var(--accent-soft)}.toolbar{height:46px;flex:none;display:flex;align-items:center;gap:14px;padding:0 14px;background:var(--chrome-2);border-bottom:1px solid var(--chrome-border);z-index:9}.tool-group{display:flex;gap:4px}.tool{display:inline-flex;align-items:center;gap:6px;font:inherit;font-weight:600;font-size:12.5px;padding:6px 11px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.tool:hover{background:var(--chrome-3)}.tool.active{background:var(--accent-soft);color:var(--accent-2);border-color:#c5d6fb}.main{flex:1;display:flex;min-height:0}.canvas-wrap{flex:1;position:relative;min-width:0;background:var(--app-bg)}.three-view{position:absolute;top:0;right:0;bottom:0;left:0}.three-view canvas{display:block;touch-action:none}.view-toggle{position:absolute;top:12px;right:12px;z-index:6;display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);font-size:13px;font-weight:800;cursor:pointer;box-shadow:var(--shadow-sm)}.view-toggle[aria-pressed=true]{background:var(--chrome);color:var(--chrome-ink)}.view-toggle:hover{filter:brightness(1.03)}.three-views{position:absolute;top:12px;left:12px;z-index:6;display:flex;gap:6px}.three-views button{height:30px;min-width:38px;padding:0 10px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:#ffffffeb;color:var(--chrome-ink);font-size:12px;font-weight:700;cursor:pointer}.three-views button.active{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.three-views button:hover:not(.active){border-color:var(--accent)}.three-legend{position:absolute;right:12px;bottom:12px;z-index:6;width:168px;max-height:52%;overflow:auto;padding:12px 14px;background:#fffffff0;border:1px solid var(--chrome-border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.three-legend h3{margin:0 0 8px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--chrome-muted)}.three-legend ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.stage-host{position:absolute;top:0;right:0;bottom:0;left:0}.left-rail{width:200px;flex:none;display:flex;flex-direction:column;min-height:0;background:var(--chrome);border-right:1px solid var(--chrome-border)}.library{flex:1 1 auto;min-height:0;overflow-y:auto;padding:14px 12px}.library-title{margin:0 0 12px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--chrome-muted);font-weight:700}.library-group{margin-bottom:16px}.library-group h3{margin:0 0 8px;font-size:11px;font-weight:700;color:var(--ink-soft)}.symbol-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.symbol-chip{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px 9px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);color:var(--ink);cursor:grab;transition:border-color .12s,box-shadow .12s,transform 80ms}.symbol-chip:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.symbol-chip:active{cursor:grabbing;transform:scale(.97)}.symbol-glyph{font-size:20px;line-height:1;color:var(--accent-2)}.symbol-label{font-size:10.5px;font-weight:600;text-align:center;line-height:1.25;color:var(--ink-soft)}.library-note{margin-top:4px}.layers{flex:none;border-top:1px solid var(--chrome-border);background:var(--chrome);padding:12px 12px 14px}.layer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.layer-row{display:flex;align-items:center;gap:8px;width:100%;padding:6px 7px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--ink);cursor:pointer;text-align:left;transition:background-color .12s,border-color .12s,opacity .12s}.layer-row:hover{background:var(--chrome-2);border-color:var(--chrome-border)}.layer-row:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.layer-row.off{opacity:.5}.layer-eye{display:inline-flex;color:var(--accent-2);flex:none}.layer-row.off .layer-eye{color:var(--chrome-muted)}.layer-swatch{width:10px;height:10px;border-radius:3px;flex:none;box-shadow:inset 0 0 0 1px #0000001f}.layer-row.off .layer-swatch{filter:grayscale(1)}.layer-name{flex:1;font-size:12px;font-weight:600;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-count{flex:none;min-width:20px;text-align:center;font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:10.5px;font-weight:600;color:var(--chrome-muted);background:var(--chrome-2);border-radius:999px;padding:1px 6px}.context-menu{position:absolute;z-index:20;min-width:184px;padding:5px;background:var(--chrome);border:1px solid var(--chrome-border);border-radius:var(--radius-sm);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:1px}.ctx-header{padding:5px 9px 6px;font-size:10px;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:var(--chrome-muted)}.ctx-divider{height:1px;margin:4px 2px;background:var(--chrome-border)}.ctx-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:none;border-radius:5px;background:transparent;color:var(--ink);font-size:12.5px;font-weight:600;text-align:left;cursor:pointer;transition:background-color .11s,color .11s}.ctx-item:hover{background:var(--accent);color:var(--on-accent)}.ctx-item.danger:hover{background:var(--bearing)}.ctx-item:disabled{opacity:.45;cursor:default}.ctx-check{width:12px;flex:none;font-size:12px;color:var(--accent-2)}.ctx-item:hover .ctx-check{color:#fff}.ctx-label{flex:1}.tool-divider{width:1px;height:22px;background:var(--chrome-border)}.tool:disabled{opacity:.38;cursor:default}.tool:disabled:hover{background:transparent}.inspector{position:absolute;top:14px;right:14px;z-index:15;width:226px;padding:12px;background:var(--chrome);border:1px solid var(--chrome-border);border-radius:var(--radius);box-shadow:var(--shadow)}.inspector-head{display:flex;align-items:center;gap:8px;margin-bottom:11px}.inspector-glyph{font-size:16px;line-height:1;color:var(--accent-2)}.inspector-title{flex:1;font-size:13px;font-weight:700;color:var(--ink)}.inspector-x{width:24px;height:24px;flex:none;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);color:var(--ink-soft);font-size:11px;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.inspector-x:hover{background:var(--bearing);color:#fff;border-color:var(--bearing)}.inspector-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.inspector-grid label{display:flex;flex-direction:column;gap:3px;font-size:10px;letter-spacing:.02em;font-weight:700;text-transform:uppercase;color:var(--chrome-muted)}.inspector-grid .num{width:100%;margin:0;padding:6px 8px}.inspector-row{display:flex;gap:6px;margin-bottom:8px}.ins-btn{flex:1;padding:7px 4px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);color:var(--ink);font-size:11.5px;font-weight:600;cursor:pointer;transition:border-color .12s,background .12s}.ins-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.ins-delete{width:100%;padding:8px;border:1px solid transparent;border-radius:var(--radius-sm);background:#d8392b1a;color:var(--bearing);font-weight:700;font-size:12px;cursor:pointer;transition:background .12s,color .12s}.ins-delete:hover{background:var(--bearing);color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:#141e326b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{background:var(--chrome);border:1px solid var(--chrome-border);border-radius:var(--radius);box-shadow:var(--shadow);max-height:88vh;overflow:auto}.tpl-modal{width:min(820px,100%);padding:22px 24px 26px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.modal-head h2{margin:0 0 3px;font-size:17px;font-weight:700;color:var(--ink)}.modal-close{flex:none;width:30px;height:30px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);color:var(--ink-soft);font-size:13px;cursor:pointer;transition:background .12s,color .12s}.modal-close:hover{background:var(--bearing);color:#fff;border-color:var(--bearing)}.tpl-section{margin-bottom:22px}.tpl-cat{margin:0 0 12px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--chrome-muted);border-bottom:1px solid var(--chrome-border);padding-bottom:7px}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.tpl-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);cursor:pointer;text-align:left;transition:border-color .13s,box-shadow .13s,transform 90ms}.tpl-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.tpl-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tpl-thumb{width:100%;height:auto;margin-bottom:6px;background:var(--app-bg);border:1px solid var(--sheet-border);border-radius:6px}.tpl-name{font-size:13px;font-weight:700;color:var(--ink)}.tpl-blurb{font-size:11.5px;line-height:1.35;color:var(--chrome-muted)}.proj-modal{width:min(540px,100%);padding:22px 24px 24px}.auth-modal{width:min(404px,100%);padding:30px 30px 28px;position:relative;text-align:center}.auth-close{position:absolute;top:16px;right:16px}.auth-brand{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px}.auth-brand-mark{width:34px;height:34px;border-radius:9px;background:var(--accent);display:grid;place-items:center;box-shadow:0 4px 12px var(--accent-glow)}.auth-brand-name{font-weight:800;font-size:17px;letter-spacing:-.4px;color:var(--ink)}.auth-brand-name span{color:var(--accent-2)}.auth-title{margin:0 0 6px;font-size:20px;font-weight:800;letter-spacing:-.4px;color:var(--ink)}.auth-reason{margin:0 auto 22px;max-width:30ch}.auth-field{text-align:left;margin-bottom:14px}.auth-submit{width:100%;padding:12px;font-size:14px}.auth-hint{margin:14px 0 0;font-size:12px;color:var(--chrome-muted)}.auth-status{margin-top:14px}.auth-error{padding:10px 12px;border:1px solid #f6cfca;border-radius:var(--radius-sm);background:#fdecea;color:var(--warn);text-align:left}.auth-sent{padding:4px 0 2px}.auth-sent-icon{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:#e7f6ef}.auth-sent h2{margin:0 0 8px;font-size:20px;font-weight:800;letter-spacing:-.4px;color:var(--ink)}.auth-sent .note{margin:0 auto 20px;max-width:34ch}.auth-resend{width:100%;padding:11px}.auth-config{margin-top:12px;padding:12px;border:1px solid #f6cfca;border-radius:var(--radius-sm);background:#fdecea;color:var(--warn);text-align:left}.auth-config strong{display:block;margin-bottom:5px}.proj-save{display:flex;gap:8px;margin-bottom:18px}.proj-save .num{flex:1;margin:0}.proj-save .btn-accent{flex:none;width:auto;margin:0;padding:0 18px}.proj-empty{text-align:center;padding:22px 0 8px}.proj-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:46vh;overflow-y:auto}.proj-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2)}.proj-row.active{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.proj-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.proj-name{font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-date{font-size:10.5px;color:var(--chrome-muted)}.proj-actions{display:flex;gap:6px;flex:none}.btn-outline.sm,.btn-ghost-danger.sm{width:auto;margin:0;padding:5px 12px;font-size:12px}.btn-ghost-danger{border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--bearing);font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.btn-ghost-danger:hover{background:#d8392b1a;border-color:var(--bearing)}.panel{width:320px;flex:none;background:var(--chrome);border-left:1px solid var(--chrome-border);overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:0}.panel>.field{padding:18px 0;gap:9px}.panel>.field+.field{border-top:1px solid var(--chrome-border)}.panel h2{margin:0 0 5px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--chrome-muted);font-weight:700}.field{display:flex;flex-direction:column;gap:6px}.field-row{display:flex;gap:10px}.field-row .field{flex:1}label.lbl{font-size:12px;color:var(--ink-soft);font-weight:600}input.num,select.sel{font:inherit;padding:8px 10px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);color:var(--ink)}input.num:focus,select.sel:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.seg{display:flex;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);overflow:hidden}.seg button{flex:1;font:inherit;font-weight:600;padding:8px 6px;border:0;background:var(--chrome-2);color:var(--ink-soft);cursor:pointer;transition:background .12s,color .12s}.seg button+button{border-left:1px solid var(--chrome-border)}.seg button.active{background:var(--accent);color:var(--on-accent)}.seg button:not(.active):hover{background:var(--chrome-3)}.card{background:var(--chrome-2);border:1px solid var(--chrome-border);border-radius:var(--radius);padding:12px 14px}.stat{display:flex;justify-content:space-between;align-items:baseline;padding:5px 0}.stat+.stat{border-top:1px dashed var(--chrome-border)}.stat .k{color:var(--ink-soft);font-size:12px}.stat .v{font-weight:700;font-size:13px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px}.badge.ok{color:var(--ok);background:#e6f6ee}.badge.warn{color:var(--warn);background:#fdecea}.diag{font-size:12px;line-height:1.45;color:var(--warn);background:#fdecea;border:1px solid #f6cfca;border-radius:var(--radius-sm);padding:9px 11px}.note{font-size:11px;color:var(--chrome-muted);line-height:1.5}.hint{position:absolute;left:16px;bottom:14px;display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--chrome-muted);background:#ffffffd9;border:1px solid var(--chrome-border);border-radius:999px;padding:6px 8px 6px 12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hint-close{display:grid;place-items:center;width:18px;height:18px;border:0;border-radius:50%;background:var(--chrome-3);color:var(--chrome-muted);font-size:10px;line-height:1;cursor:pointer;transition:background .12s,color .12s}.hint-close:hover{background:var(--chrome-ink);color:#fff}.legend{display:flex;gap:14px;flex-wrap:wrap}.legend span{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-soft)}.legend i{width:14px;height:3px;border-radius:2px}.zoombar{position:absolute;right:16px;bottom:100px;display:flex;gap:1px;background:var(--chrome-border);border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-sm)}.zoombar button{font:inherit;font-weight:700;font-size:14px;min-width:34px;height:32px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:0;background:var(--chrome);color:var(--ink);cursor:pointer;transition:background .12s}.zoombar button.fit{font-size:12px;letter-spacing:.02em;color:var(--accent-2);padding:0 11px}.zoombar button:hover{background:var(--chrome-3)}.edge-edit{position:absolute;width:80px;padding:4px 6px;font-size:12px;text-align:center;border:1.5px solid var(--accent);border-radius:5px;background:#fff;color:var(--ink);box-shadow:var(--shadow-sm);z-index:5}.edge-edit:focus{outline:none}.stage-host.crosshair canvas{cursor:crosshair!important}.cal-input{position:absolute;z-index:6;display:flex;align-items:center;gap:4px}.cal-input input{width:92px;padding:4px 6px;font-size:12px;text-align:right;border:1.5px solid var(--warn);border-radius:5px;background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.cal-input input:focus{outline:none}.cal-unit{padding:2px 5px;border:1px solid var(--chrome-border);border-radius:4px;background:#fff;font-size:11px;font-weight:700;color:var(--chrome-muted)}.bg-bar{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:12px;padding:7px 10px 7px 14px;background:#fffffff0;border:1px solid var(--chrome-border);border-radius:999px;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bg-bar-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--ink-soft)}.bg-steps{display:flex;gap:6px}.bg-step{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12px;font-weight:600;padding:6px 11px;border:1px solid var(--chrome-border);border-radius:999px;background:var(--chrome-2);color:var(--ink-soft);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.bg-step:hover:not(:disabled){border-color:var(--accent);color:var(--accent-2)}.bg-step.active{background:var(--accent);border-color:var(--accent-2);color:var(--on-accent)}.bg-step:disabled{opacity:.5;cursor:not-allowed}.bg-step-num{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#00000014;font-size:10px;font-weight:800}.bg-step.active .bg-step-num{background:#1a12052e}.bg-step-done{color:var(--ok);font-weight:800}.bg-step.active .bg-step-done{color:var(--on-accent)}.bg-opacity{display:inline-flex;align-items:center;gap:6px;color:var(--chrome-muted)}.bg-opacity input{width:80px;accent-color:var(--accent)}.bg-remove{display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:12px;font-weight:600;padding:6px 10px;border:1px solid var(--chrome-border);border-radius:999px;background:var(--chrome);color:var(--ink-soft);cursor:pointer}.bg-remove:hover{border-color:var(--warn);color:var(--warn)}.bg-detecting{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--accent-2)}.bg-spinner{width:14px;height:14px;border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:bg-spin .7s linear infinite}@keyframes bg-spin{to{transform:rotate(360deg)}}.tabs{display:flex;gap:4px;background:var(--chrome-3);padding:4px;border-radius:var(--radius);position:sticky;top:-16px;z-index:2}.tabs button{flex:1;font:inherit;font-weight:700;font-size:12px;padding:7px 0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);cursor:pointer;transition:background .12s,color .12s}.tabs button.active{background:var(--chrome);color:var(--accent-2);box-shadow:var(--shadow-sm)}.btn-accent,.btn-outline{font:inherit;font-weight:700;font-size:12.5px;padding:9px 12px;border-radius:var(--radius-sm);cursor:pointer;width:100%;transition:filter .12s,background .12s}.btn-accent{background:var(--accent);color:var(--on-accent);border:1px solid var(--accent-2)}.btn-accent:hover{filter:brightness(1.07)}.btn-outline{background:var(--chrome);color:var(--accent-2);border:1px solid var(--accent);margin-top:8px}.btn-outline:hover{background:var(--accent-soft)}.op-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.op-list li{display:flex;align-items:center;justify-content:space-between;background:var(--chrome-2);border:1px solid var(--chrome-border);border-radius:var(--radius-sm);padding:6px 6px 6px 10px;font-size:12px}.op-list .x{border:0;background:transparent;color:var(--warn);font-size:17px;line-height:1;cursor:pointer;padding:0 6px}.wall-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.toggle{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink);font-weight:600;cursor:pointer}.toggle input{width:15px;height:15px;accent-color:var(--accent)}.table-scroll{overflow-x:auto}.span-table{width:100%;border-collapse:collapse;font-size:11.5px}.span-table th{text-align:center;font-weight:700;color:var(--chrome-muted);padding:4px 2px;border-bottom:1px solid var(--chrome-border)}.span-table th:first-child{text-align:left}.span-table .rowhead{white-space:nowrap;color:var(--ink);font-weight:600;padding-right:8px}.span-table td{padding:3px 2px}.span-table .cell{width:52px;font:inherit;text-align:right;padding:4px 5px;border:1px solid var(--chrome-border);border-radius:5px;background:var(--chrome-2);color:var(--ink)}.span-table .cell:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.landing{min-height:100vh;background:var(--app-bg);color:var(--ink);overflow-x:clip}.landing-nav{position:sticky;top:0;z-index:30;height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(24px,calc((100vw - 1160px)/2));background:#ffffffeb;border-bottom:1px solid var(--chrome-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.landing-brand{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.landing-links{display:flex;align-items:center;gap:22px;font-size:13px;font-weight:700}.landing-links a{color:var(--ink-soft);text-decoration:none}.landing-links a:hover{color:var(--accent-2)}.landing-links .landing-login{padding:9px 14px;border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--accent-2);background:var(--chrome)}.landing-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr);gap:clamp(28px,4vw,56px);align-items:center;max-width:1240px;margin:18px auto 0;padding:clamp(40px,5vw,76px) clamp(28px,4vw,64px);border-radius:var(--radius-xl);background:radial-gradient(680px 360px at 88% 6%,var(--accent-glow),transparent 62%),linear-gradient(155deg,var(--ink-800),var(--ink-900) 62%);box-shadow:var(--shadow-panel);color:var(--on-dark)}.landing-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(120% 120% at 20% 30%,#000 40%,transparent 85%);mask-image:radial-gradient(120% 120% at 20% 30%,#000 40%,transparent 85%)}.landing-hero-copy h1{margin:0;max-width:540px;font-size:clamp(40px,5.4vw,66px);line-height:.98;letter-spacing:-.025em;color:#fff}.landing-hero .landing-kicker{border-color:#e08a1e59;background:#e08a1e24;color:#f4b160}.landing-kicker{display:inline-flex;align-items:center;gap:7px;margin:0 0 16px;padding:6px 12px 6px 11px;border:1px solid var(--accent-soft);border-radius:999px;background:var(--accent-soft);color:var(--accent-2);font-size:11.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.landing-kicker:before{content:"";width:6px;height:6px;border-radius:2px;background:var(--accent)}.landing-kicker:after{content:"↗";font-size:11px;font-weight:700;opacity:.7}.landing-lede{max-width:560px;margin:22px 0 0;font-size:17px;line-height:1.62;color:var(--ink-soft)}.landing-hero .landing-lede{color:var(--on-dark-muted)}.landing-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.landing-primary,.landing-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:var(--radius-sm);font-weight:800;font-size:14px;text-decoration:none;transition:background .18s var(--ease-out),border-color .18s var(--ease-out),transform .18s var(--ease-out),box-shadow .18s var(--ease-out)}.landing-primary{background:var(--accent);color:#1a1205;border:1px solid var(--accent);box-shadow:0 10px 26px var(--accent-glow)}.landing-primary:hover{background:#f0982a;border-color:#f0982a;transform:translateY(-2px);box-shadow:0 16px 34px var(--accent-glow)}.landing-secondary{background:var(--chrome);color:var(--chrome-ink);border:1px solid var(--chrome-border)}.landing-secondary:hover{background:var(--chrome-2);border-color:var(--accent);transform:translateY(-2px)}.landing-hero .landing-secondary{background:#ffffff0f;color:var(--on-dark);border:1px solid rgba(255,255,255,.22)}.landing-hero .landing-secondary:hover{background:#ffffff1f}.landing-proof{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.landing-proof span{padding:7px 12px;border:1px solid var(--chrome-border);border-radius:999px;background:#fff;color:var(--chrome-muted);font-size:12px;font-weight:700}.landing-hero .landing-proof span{border-color:#ffffff24;background:#ffffff0d;color:var(--on-dark-muted)}.product-shot{overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#fff;box-shadow:0 30px 70px #0000006b}.shot-top{height:42px;display:flex;align-items:center;gap:8px;padding:0 14px;border-bottom:1px solid var(--chrome-border);background:var(--chrome-2);color:var(--ink-soft);font-size:12px}.shot-top strong{margin-left:8px;color:var(--ink)}.shot-dot{width:9px;height:9px;border-radius:50%;background:#b8c2d1}.shot-body{display:grid;grid-template-columns:104px minmax(300px,1fr) 140px;min-height:430px}.shot-rail,.shot-panel{padding:16px 12px;background:#fff;border-color:var(--chrome-border)}.shot-rail{border-right:1px solid var(--chrome-border)}.shot-panel{border-left:1px solid var(--chrome-border)}.shot-rail span,.shot-panel span{display:block;margin:0 0 10px;color:var(--chrome-muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.shot-rail i,.shot-rail b{display:flex;align-items:center;height:34px;margin-bottom:8px;padding:0 8px;border:1px solid var(--chrome-border);border-radius:7px;background:var(--chrome-2);color:var(--ink-soft);font-size:10.5px;font-style:normal;font-weight:800}.shot-rail b{height:24px}.shot-panel strong{display:block;margin-bottom:18px;font-size:14px}.shot-panel b,.shot-panel em{display:block;margin:-4px 0 18px;padding:8px 9px;border-radius:7px;background:var(--chrome-2);color:var(--ink);font-style:normal;font-size:12px;font-weight:800}.shot-panel em{color:var(--ok);background:#e6f6ee}.shot-canvas{position:relative;background:linear-gradient(rgba(27,79,216,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(27,79,216,.07) 1px,transparent 1px),#e8ecf2;background-size:38px 38px}.plan-outline{position:absolute;top:54px;right:42px;bottom:54px;left:42px;background:#fff;border:1px solid #dbe2ee;box-shadow:0 14px 30px #141e321f}.wall,.bearing-wall,.joist,.beam,.column,.dimension,.drag-cursor,.snap-guide,.moving-symbol,.plan-label{position:absolute;display:block}.wall{background:var(--wall, #33425e)}.wall-a,.wall-c{left:9%;right:9%;height:4px}.wall-a{top:18%}.wall-c{bottom:18%}.wall-b,.wall-d{top:18%;bottom:18%;width:4px}.wall-b{right:9%}.wall-d{left:9%}.bearing-wall{left:9%;right:9%;top:48%;height:5px;background:var(--bearing)}.joist{top:21%;bottom:21%;width:2px;background:#6f86b8}.j1{left:26%}.j2{left:39%}.j3{left:52%}.j4{left:65%}.beam{left:23%;right:23%;top:58%;height:6px;border-radius:99px;background:var(--beam)}.column{width:12px;height:12px;background:var(--column)}.c1{left:22%;top:55%}.c2{right:22%;top:55%}.dimension{padding:4px 8px;border:1px solid var(--accent);border-radius:5px;background:#fff;color:var(--accent-2);font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700}.dim-a{left:41%;bottom:8%}.dim-b{left:2%;top:46%}.plan-label{z-index:5;padding:3px 6px;border:1px solid var(--chrome-border);border-radius:5px;background:#ffffffeb;color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:9.5px;font-weight:800;white-space:nowrap}.label-opening{left:18%;top:17%}.label-joists{right:14%;top:27%}.label-beam{left:37%;top:61%;color:var(--beam)}.label-snap{right:10%;top:53%;color:#9a6100;border-color:#f59e0b8c;animation:guidePulse 5.2s ease-in-out infinite}.drag-cursor{z-index:6;width:18px;height:18px;left:18%;top:20%;border-left:12px solid var(--ink);border-top:8px solid transparent;border-bottom:8px solid transparent;filter:drop-shadow(0 3px 4px rgba(20,30,50,.22));animation:cursorDrag 5.2s ease-in-out infinite}.moving-symbol{z-index:5;width:18px;height:18px;left:21%;top:26%;border:2px solid var(--accent);border-radius:4px;background:#fff;box-shadow:0 0 0 4px var(--accent-glow);animation:symbolDrag 5.2s ease-in-out infinite}.snap-guide{z-index:4;opacity:0;background:var(--guide, #f59e0b);animation:guidePulse 5.2s ease-in-out infinite}.snap-x{left:10%;right:10%;top:58%;height:1px}.snap-y{top:19%;bottom:19%;left:52%;width:1px}.landing-section,.feature-band{max-width:1160px;margin:0 auto;padding:72px 24px;scroll-margin-top:88px}.section-head{max-width:680px;margin-bottom:26px}.section-head h2,.feature-band h2{margin:0;font-size:clamp(30px,4vw,46px);line-height:1.08;letter-spacing:0}.workflow-grid,.export-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.workflow-grid article,.export-grid div{min-height:190px;padding:22px;border:1px solid var(--chrome-border);border-radius:8px;background:#fff;box-shadow:var(--shadow-sm)}.mini-illo{position:relative;height:118px;margin-bottom:20px;overflow:hidden;border:1px solid var(--chrome-border);border-radius:8px;background:linear-gradient(rgba(27,79,216,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(27,79,216,.07) 1px,transparent 1px),#f4f6fa;background-size:24px 24px}.mini-plan,.mini-edge,.mini-handle,.mini-joist,.mini-beam,.mini-symbol,.mini-dim,.mini-guide,.mini-label{position:absolute;display:block}.mini-plan{top:22px;right:28px;bottom:22px;left:28px;border:3px solid var(--wall, #33425e);background:#fff}.mini-edge{height:3px;background:var(--accent);transform-origin:left center}.mini-edge.e1{left:28px;top:22px;width:42px;animation:edgeGrowA 3.8s ease-in-out infinite}.mini-edge.e2{left:70px;top:22px;width:3px;height:42px;animation:edgeGrowB 3.8s ease-in-out infinite}.mini-handle{width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid #fff;box-shadow:var(--shadow-sm)}.mini-handle.h1{left:64px;top:16px;animation:handleMoveA 3.8s ease-in-out infinite}.mini-handle.h2{left:64px;top:58px;animation:handleMoveB 3.8s ease-in-out infinite}.mini-joist{top:27px;bottom:27px;width:2px;background:#6f86b8;opacity:0}.mj1{left:42%;animation:joistIn 3.9s ease-in-out infinite}.mj2{left:52%;animation:joistIn 3.9s .18s ease-in-out infinite}.mj3{left:62%;animation:joistIn 3.9s .36s ease-in-out infinite}.mini-beam{left:30%;right:30%;top:58%;height:6px;border-radius:99px;background:var(--beam);transform:scaleX(0);transform-origin:left center;animation:beamIn 3.9s .55s ease-in-out infinite}.mini-symbol{width:18px;height:18px;left:28%;top:28%;border:2px solid var(--accent);border-radius:4px;background:#fff;animation:miniSymbolDrag 4s ease-in-out infinite}.mini-dim{left:40%;bottom:17px;padding:3px 7px;border:1px solid var(--accent);border-radius:5px;background:#fff;color:var(--accent-2);font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:700;opacity:0;animation:dimAppear 4s ease-in-out infinite}.mini-guide{left:56%;top:22px;bottom:22px;width:1px;background:#f59e0b;opacity:0;animation:guidePulse 4s ease-in-out infinite}.mini-label{z-index:4;padding:2px 5px;border:1px solid var(--chrome-border);border-radius:4px;background:#fffffff2;color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:800;line-height:1.2;white-space:nowrap}.mini-width{left:41%;bottom:16px}.mini-height{left:8px;top:48%;transform:rotate(-90deg)}.mini-edit{right:14px;top:12px;color:var(--accent-2)}.mini-spacing{right:16px;top:15px}.mini-bearing{left:25%;top:54%;color:var(--bearing)}.mini-member{left:13%;bottom:12px;color:var(--beam)}.mini-symbol-label{left:14%;top:13px;animation:dimAppear 4s ease-in-out infinite}.mini-guide-label{right:15%;top:38px;color:#9a6100;border-color:#f59e0b8c;opacity:0;animation:guidePulse 4s ease-in-out infinite}.step,.export-grid span{display:inline-block;margin-bottom:24px;color:var(--accent-2);font-family:IBM Plex Mono,monospace;font-weight:800}.workflow-grid h3{margin:0 0 10px;font-size:19px}.workflow-grid p,.export-grid p,.feature-list span{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.6}.feature-band{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(28px,4vw,48px);align-items:start;max-width:1240px;padding:clamp(40px,5vw,64px) clamp(28px,4vw,56px);border-radius:var(--radius-xl);background:radial-gradient(620px 320px at 92% 0%,rgba(224,138,30,.1),transparent 60%),linear-gradient(160deg,var(--ink-800),var(--ink-900) 70%);color:var(--on-dark);box-shadow:var(--shadow-panel)}.feature-band:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(120% 120% at 85% 10%,#000 35%,transparent 80%);mask-image:radial-gradient(120% 120% at 85% 10%,#000 35%,transparent 80%)}.feature-band h2{color:#fff}.feature-band .landing-kicker{border-color:#e08a1e59;background:#e08a1e24;color:#f4b160}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.feature-list div{position:relative;overflow:hidden;min-height:142px;padding:18px;border:1px solid var(--ink-line);border-radius:var(--radius);background:#ffffff09;color:var(--on-dark)}.feature-list strong{display:block;margin-bottom:8px;font-size:15px;color:#fff}.feature-band .feature-list span{color:var(--on-dark-muted)}.feature-motion{position:absolute;right:16px;bottom:16px;width:64px;height:34px;border-radius:7px;opacity:.82}.feature-motion em{position:absolute;display:inline-flex;align-items:center;height:16px;padding:0 5px;border-radius:4px;background:#fff;color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:8px;font-style:normal;font-weight:800;box-shadow:var(--shadow-sm);white-space:nowrap}.param-motion{width:92px;height:46px;border:1px solid var(--chrome-border);background:linear-gradient(90deg,rgba(27,79,216,.12),transparent),#fff}.param-motion em:first-child{left:8px;top:7px}.param-motion em:last-child{right:7px;bottom:7px;color:var(--accent-2)}.snap-motion{border:1px dashed #f59e0b;background:linear-gradient(90deg,transparent 48%,#f59e0b 48% 52%,transparent 52%),#fff;animation:featureNudge 3.4s ease-in-out infinite}.snap-motion em{left:13px;top:9px;color:#9a6100}.status-motion{background:linear-gradient(90deg,var(--bearing) 0 20%,#6f86b8 20% 42%,var(--beam) 42% 72%,var(--ok) 72%);animation:statusSweep 3.4s ease-in-out infinite}.status-motion em{right:8px;top:9px;color:var(--ok)}.save-motion{border:1px solid var(--chrome-border);background:#fff}.save-motion em{right:6px;bottom:-22px;color:var(--accent-2)}.save-motion:before,.save-motion:after{content:"";position:absolute;left:13px;right:13px;height:4px;border-radius:99px;background:var(--accent);animation:saveLines 3.4s ease-in-out infinite}.save-motion:before{top:10px}.save-motion:after{top:20px;animation-delay:.16s}.export-grid div{position:relative;overflow:hidden}.export-illo{position:relative;display:block;width:94px;height:70px;margin-bottom:18px;border:1px solid var(--chrome-border);border-radius:7px;background:#fff}.export-illo em,.export-illo b{position:absolute;left:9px;z-index:2;color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:7.5px;font-style:normal;font-weight:800;white-space:nowrap}.export-illo em{top:5px}.export-illo b{bottom:6px;max-width:70px;overflow:hidden;text-overflow:ellipsis}.export-illo:before{content:"";position:absolute;left:16px;top:15px;width:48px;height:34px;border:2px solid var(--wall, #33425e);background:repeating-linear-gradient(90deg,transparent 0 8px,#6f86b8 8px 10px,transparent 10px 16px)}.export-illo:after{position:absolute;right:10px;bottom:9px;padding:3px 5px;border-radius:4px;background:var(--accent);color:var(--on-accent);font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:800;animation:exportPop 3.8s ease-in-out infinite}.png-illo:after{content:"PNG"}.pdf-illo:after{content:"PDF"}.dxf-illo:after{content:"DXF"}.export-section{text-align:left}.bottom-cta{margin-top:22px}.landing-stats{display:grid;grid-template-columns:repeat(3,1fr);max-width:1240px;margin:22px auto 0;border:1px solid var(--chrome-border);border-radius:var(--radius-lg);background:var(--chrome);box-shadow:var(--shadow-sm);overflow:hidden}.landing-stats .stat{padding:clamp(22px,3vw,30px) clamp(22px,3vw,32px)}.landing-stats .stat+.stat{border-left:1px solid var(--chrome-border)}.landing-stats strong{display:block;font-family:var(--font-display);font-size:clamp(36px,4.4vw,52px);line-height:1;letter-spacing:-.03em;color:var(--accent-2)}.landing-stats span{display:block;margin-top:12px;font-size:14px;font-weight:800;color:var(--chrome-ink)}.landing-stats em{display:block;margin-top:3px;font-family:var(--font-mono);font-style:normal;font-size:11.5px;letter-spacing:.02em;color:var(--chrome-muted)}.cta-band{position:relative;isolation:isolate;overflow:hidden;max-width:1240px;margin:80px auto 0;padding:clamp(48px,6vw,88px) clamp(28px,4vw,64px);border-radius:var(--radius-xl);background:radial-gradient(560px 300px at 50% -10%,rgba(224,138,30,.18),transparent 60%),linear-gradient(160deg,var(--ink-800),var(--ink-900) 72%);box-shadow:var(--shadow-panel);text-align:center}.cta-band:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(110% 120% at 50% 0%,#000 30%,transparent 78%);mask-image:radial-gradient(110% 120% at 50% 0%,#000 30%,transparent 78%)}.cta-band-inner{max-width:620px;margin:0 auto}.cta-band .landing-kicker{border-color:#e08a1e59;background:#e08a1e24;color:#f4b160}.cta-band h2{margin:0;font-size:clamp(30px,4vw,46px);line-height:1.06;color:#fff}.cta-band .landing-lede{margin:16px auto 0;color:var(--on-dark-muted)}.cta-band .landing-primary{margin-top:30px}.landing-hero,.landing-stats,.feature-band,.cta-band{width:min(1240px,calc(100% - 36px));max-width:none;margin-inline:auto}.landing-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:64px;padding:40px max(24px,calc((100vw - 1192px)/2));background:var(--ink-900);color:var(--on-dark-muted);font-size:12px;font-weight:700}.landing-footer>span:first-child{font-family:var(--font-display);font-size:17px;font-weight:700;color:#fff;letter-spacing:-.01em}.landing-footer .footer-links a{color:var(--on-dark-muted)}.landing-footer .footer-links a:hover{color:#fff}@media (max-width: 980px){.landing-hero,.feature-band{grid-template-columns:1fr}.landing-hero{padding-top:46px}.product-shot{max-width:760px}}@media (max-width: 760px){.landing-nav{height:auto;padding:14px 18px;align-items:flex-start}.landing-links{justify-content:flex-end;gap:10px;flex-wrap:wrap;font-size:12px}.landing-links a:not(.landing-login){display:none}.landing-hero,.landing-section,.feature-band{padding-left:18px;padding-right:18px}.landing-hero{grid-template-columns:1fr}.shot-body{grid-template-columns:76px minmax(220px,1fr)}.shot-panel{display:none}.workflow-grid,.export-grid,.feature-list,.landing-stats{grid-template-columns:1fr}.landing-stats .stat+.stat{border-left:none;border-top:1px solid var(--chrome-border)}.landing-footer{flex-direction:column;align-items:flex-start;padding-left:18px;padding-right:18px}}@keyframes cursorDrag{0%,12%,to{transform:translate(0)}42%,64%{transform:translate(118px,96px)}78%{transform:translate(172px,96px)}}@keyframes symbolDrag{0%,12%,to{transform:translate(0)}42%,64%{transform:translate(118px,96px)}78%{transform:translate(172px,96px)}}@keyframes guidePulse{0%,34%,76%,to{opacity:0}42%,68%{opacity:1}}@keyframes edgeGrowA{0%,18%,to{transform:scaleX(.2)}45%,72%{transform:scaleX(1.8)}}@keyframes edgeGrowB{0%,30%,to{transform:scaleY(.2)}55%,72%{transform:scaleY(1.3)}}@keyframes handleMoveA{0%,18%,to{transform:translate(0)}45%,72%{transform:translate(52px)}}@keyframes handleMoveB{0%,30%,to{transform:translate(0)}55%,72%{transform:translate(52px,12px)}}@keyframes joistIn{0%,18%,to{opacity:0;transform:scaleY(.2)}34%,78%{opacity:1;transform:scaleY(1)}}@keyframes beamIn{0%,34%,to{transform:scaleX(0)}55%,82%{transform:scaleX(1)}}@keyframes miniSymbolDrag{0%,15%,to{transform:translate(0)}42%,62%{transform:translate(62px,16px)}78%{transform:translate(88px,16px)}}@keyframes dimAppear{0%,46%,to{opacity:0;transform:translateY(5px)}58%,86%{opacity:1;transform:translateY(0)}}@keyframes featureNudge{0%,to{transform:translate(-8px)}50%{transform:translate(8px)}}@keyframes statusSweep{0%,to{clip-path:inset(0 70% 0 0)}55%,82%{clip-path:inset(0)}}@keyframes saveLines{0%,to{transform:scaleX(.35);transform-origin:left center;opacity:.45}55%{transform:scaleX(1);opacity:1}}@keyframes exportPop{0%,42%,to{transform:translateY(8px);opacity:0}58%,82%{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.drag-cursor,.moving-symbol,.snap-guide,.mini-edge,.mini-handle,.mini-joist,.mini-beam,.mini-symbol,.mini-dim,.mini-guide,.feature-motion,.save-motion:before,.save-motion:after,.export-illo:after{animation:none}.snap-guide,.mini-joist,.mini-dim,.mini-guide{opacity:1}.mini-beam{transform:scaleX(1)}}.tool-danger{color:var(--bearing)}.tool-danger:hover{background:#fdecea}.btn-danger{font:inherit;font-weight:700;font-size:12.5px;padding:9px 12px;border-radius:var(--radius-sm);background:var(--bearing);color:#fff;border:1px solid #c22f23;cursor:pointer;transition:filter .12s}.btn-danger:hover{filter:brightness(1.06)}.confirm-modal{width:min(400px,100%);padding:24px 24px 20px}.confirm-title{margin:0 0 8px;font-size:18px;font-weight:800;letter-spacing:-.3px;color:var(--ink)}.confirm-message{margin:0 0 20px;line-height:1.55}.confirm-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.confirm-actions .btn-outline,.confirm-actions .btn-accent,.confirm-actions .btn-danger{margin:0;width:auto;padding:9px 18px;white-space:nowrap}.newproj-modal{width:min(560px,100%);padding:24px 26px 26px}.newproj-choices{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 520px){.newproj-choices{grid-template-columns:1fr}}.newproj-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;padding:20px 18px;border:1px solid var(--chrome-border);border-radius:var(--radius);background:var(--chrome-2);cursor:pointer;transition:border-color .13s,background .13s,transform .13s,box-shadow .13s}.newproj-card:hover{border-color:var(--accent);background:var(--chrome);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.newproj-illo{display:grid;place-items:center;width:56px;height:56px;border-radius:12px;background:var(--accent-soft);color:var(--accent-2);margin-bottom:4px}.newproj-title{font-size:15px;font-weight:700;color:var(--ink)}.newproj-desc{font-size:12.5px;line-height:1.5;color:var(--ink-soft)}.cad-modal{width:min(940px,100%);padding:22px 24px 24px}.cad-body{display:grid;grid-template-columns:1fr 200px;gap:18px}@media (max-width: 680px){.cad-body{grid-template-columns:1fr}}.cad-stage{position:relative;min-height:360px;height:min(60vh,520px);background:linear-gradient(var(--chrome-3) 1px,transparent 1px) 0 0 / 22px 22px,linear-gradient(90deg,var(--chrome-3) 1px,transparent 1px) 0 0 / 22px 22px,var(--chrome);border:1px solid var(--chrome-border);border-radius:var(--radius);overflow:hidden}.cad-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.cad-empty{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;display:grid;place-items:center;text-align:center;padding:24px}.cad-zoom{position:absolute;top:12px;right:12px;display:flex;gap:6px;z-index:2}.cad-zoom button{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:#ffffffeb;color:var(--chrome-ink);font-size:16px;font-weight:700;cursor:pointer}.cad-zoom button:last-child{width:auto;padding:0 10px;font-size:12px}.cad-zoom button:hover{border-color:var(--accent);color:var(--accent-2)}.cad-scalebar{position:absolute;left:16px;bottom:12px;display:flex;align-items:flex-end;gap:8px;pointer-events:none;z-index:2}.cad-scalebar-rule{height:6px;border:1px solid var(--chrome-ink);border-top:0}.cad-scalebar-label{font-size:11px;color:var(--chrome-muted);background:#fffc;padding:0 4px;line-height:1.4}.cad-legend h3{margin:0 0 10px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--chrome-muted)}.cad-legend ul{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:2px}.cad-layer{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;color:var(--ink)}.cad-layer:hover{background:var(--chrome-2)}.cad-layer input{accent-color:var(--accent)}.cad-swatch{width:14px;height:14px;border-radius:4px;flex:none;box-shadow:inset 0 0 0 1px #0000001f}.cad-layer-name{flex:1}.cad-layer-count{font-size:11px;color:var(--chrome-muted)}.cad-export{width:100%}.tool svg{flex:none}.tool-icon{padding:6px 8px}.toolbar-right{margin-left:auto;display:flex;align-items:center;gap:4px}.tool-cmd{gap:8px;color:var(--chrome-muted);border:1px solid var(--chrome-border);background:var(--chrome-2)}.tool-cmd:hover{background:var(--chrome-3)}.cmd-hint{font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--chrome-muted)}.cmd-backdrop{align-items:flex-start;padding-top:12vh}.cmd-palette{width:min(560px,92vw);background:var(--chrome);border:1px solid var(--chrome-border);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.cmd-search{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--chrome-border);color:var(--chrome-muted)}.cmd-input{flex:1;border:none;outline:none;font:inherit;font-size:15px;color:var(--ink);background:transparent}.cmd-list{list-style:none;margin:0;padding:6px;max-height:50vh;overflow-y:auto}.cmd-item{display:flex;align-items:center;gap:12px;width:100%;padding:9px 12px;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;font:inherit;font-size:14px;color:var(--ink);text-align:left}.cmd-item.active{background:var(--accent-soft);color:var(--accent-2)}.cmd-item svg{flex:none;color:var(--chrome-muted)}.cmd-item.active svg{color:var(--accent-2)}.cmd-label{flex:1}.cmd-group{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--chrome-muted)}.cmd-kbd,.shortcut-keys kbd{font-family:var(--mono, ui-monospace, monospace);font-size:11px;font-weight:600;padding:2px 7px;border-radius:5px;background:var(--chrome-3);border:1px solid var(--chrome-border);color:var(--ink-soft)}.cmd-empty{padding:22px;text-align:center}.shortcuts-modal{width:min(640px,100%);padding:22px 24px 24px}.shortcuts-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 32px}@media (max-width: 560px){.shortcuts-grid{grid-template-columns:1fr}}.shortcuts-section h3{margin:0 0 8px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--chrome-muted)}.shortcuts-section ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.shortcuts-section li{display:flex;align-items:center;justify-content:space-between;gap:12px}.shortcut-label{font-size:13.5px;color:var(--ink)}.shortcut-keys{display:flex;gap:4px;flex:none}.library-search{display:flex;align-items:center;gap:8px;padding:7px 10px;margin-bottom:14px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);color:var(--chrome-muted)}.library-search:focus-within{border-color:var(--accent);background:var(--chrome)}.library-search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;font:inherit;font-size:13px;color:var(--ink)}.library-search-input::-webkit-search-cancel-button{-webkit-appearance:none}.page-doc{padding-bottom:56px}.page-head{max-width:820px;margin:0 auto;padding:64px 24px 8px;text-align:center}.page-head h1{margin:8px 0 0;font-size:clamp(32px,4.5vw,48px);line-height:1.05;letter-spacing:-.01em;color:#172033}.page-head .landing-lede{margin:18px auto 0}.landing-links a.active{color:var(--accent-2)}.footer-links{display:flex;gap:22px}.footer-links a{color:var(--chrome-muted);text-decoration:none}.contrib-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;max-width:1000px;margin:40px auto 0;padding:26px 30px;background:linear-gradient(180deg,#fff,var(--chrome-2));border:1px solid var(--chrome-border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.contrib-cta h2{margin:0 0 6px;font-size:20px;color:var(--ink)}.contrib-cta p{margin:0;max-width:560px;color:var(--ink-soft);font-size:15px;line-height:1.6}.contrib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;max-width:1000px;margin:28px auto 0;padding:0 24px}.contrib-card{display:flex;gap:14px;padding:20px;background:#fff;border:1px solid var(--chrome-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .12s,box-shadow .12s,border-color .12s}.contrib-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#c7d5ef}.contrib-avatar{flex:none;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-2);font-weight:800;font-size:15px}.contrib-avatar-img{object-fit:cover;display:block}.contrib-meta h3{margin:0 0 3px;font-size:16px;color:var(--ink)}.contrib-meta h3 a{color:inherit;text-decoration:none}.contrib-meta h3 a:hover{color:var(--accent-2)}.contrib-role{display:inline-block;color:var(--accent-2);font-size:12px;font-weight:700}.contrib-blurb{margin:8px 0 0;color:var(--ink-soft);font-size:13px;line-height:1.55}.contrib-card-empty{border-style:dashed;background:transparent;box-shadow:none}.contrib-card-empty:hover{transform:none;box-shadow:none;border-color:var(--chrome-border)}.contrib-avatar-empty{background:transparent;border:1px dashed #c7d5ef;color:var(--chrome-muted);font-size:22px;font-weight:400}.doc-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:44px;max-width:1000px;margin:32px auto 0;padding:0 24px;align-items:start}.doc-toc{position:sticky;top:92px;display:flex;flex-direction:column;gap:12px}.doc-toc-title{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--chrome-muted)}.doc-toc nav{display:flex;flex-direction:column;border-left:2px solid var(--chrome-border)}.doc-toc nav a{padding:6px 14px;margin-left:-2px;border-left:2px solid transparent;color:var(--ink-soft);text-decoration:none;font-size:14px;font-weight:600}.doc-toc nav a:hover{color:var(--accent-2)}.doc-toc nav a.active{color:var(--accent-2);border-left-color:var(--accent)}.doc-content{min-width:0}.doc-section{padding:22px 0;border-bottom:1px solid var(--chrome-border);scroll-margin-top:92px}.doc-section:first-child{padding-top:0}.doc-section h2{margin:0 0 10px;font-size:22px;color:var(--ink)}.doc-section p{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.7}.doc-section ul,.doc-section ol{margin:10px 0 0;padding-left:20px;color:var(--ink-soft);font-size:15px;line-height:1.7}.doc-section li{margin:4px 0}.doc-section strong{color:var(--ink)}.doc-section code{padding:1px 6px;border:1px solid var(--chrome-border);border-radius:5px;background:var(--chrome-2);font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,monospace;font-size:13px;color:var(--ink)}.doc-cta{margin-top:30px}@media (max-width: 860px){.page-head{padding-top:44px}.doc-layout{grid-template-columns:1fr;gap:18px}.doc-toc{position:static}.doc-toc nav{display:none}.contrib-cta{padding:22px}}select.num,textarea.num{font:inherit;width:100%;padding:8px 10px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);color:var(--ink)}select.num:focus,textarea.num:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.field .lbl{font-size:12px;color:var(--ink-soft);font-weight:600}.lbl-opt{color:var(--chrome-muted);font-weight:500}.feedback-fab{position:fixed;right:22px;bottom:22px;z-index:90;display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border:1px solid var(--accent-2);border-radius:999px;background:var(--accent);color:var(--on-accent);font:inherit;font-weight:700;font-size:14px;cursor:pointer;box-shadow:0 10px 26px var(--accent-glow);transition:transform .12s,background .12s,box-shadow .12s}.feedback-fab:hover{background:#f0982a;transform:translateY(-1px);box-shadow:0 14px 30px var(--accent-glow)}.feedback-fab svg{flex:none}.feedback-modal{position:relative;width:min(560px,100%);padding:24px 26px 26px}.feedback-title{margin:0 4px 4px 0;font-size:20px;font-weight:800;color:var(--ink)}.feedback-sub{margin:0 0 18px}.feedback-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.feedback-modal .field{margin-bottom:14px}.feedback-modal input.num{width:100%}.feedback-textarea{resize:vertical;min-height:96px;line-height:1.5}.feedback-file{font:inherit;font-size:13px;color:var(--ink-soft)}.feedback-error{margin:12px 0 0;color:var(--warn)}.feedback-submit{width:100%;margin-top:16px}.feedback-sent{padding:14px 6px;text-align:center}.feedback-sent-icon{display:inline-grid;place-items:center;width:52px;height:52px;margin-bottom:8px;border-radius:50%;background:#e7f6ef}.feedback-sent h2{margin:0 0 8px;font-size:20px;color:var(--ink)}.feedback-actions{display:flex;gap:10px;justify-content:center;margin-top:18px}.admin{min-height:100vh;background:#f7f7f4;color:var(--ink)}.admin-bar{position:sticky;top:0;z-index:40;height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(24px,calc((100vw - 1280px)/2));background:#fffffff5;border-bottom:1px solid var(--chrome-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.admin-brand-wrap,.admin-bar-right{display:flex;align-items:center}.admin-brand-wrap{gap:13px}.admin-bar-right{gap:10px}.admin-product-divider{width:1px;height:24px;background:var(--chrome-border)}.admin-product-name{color:var(--ink-soft);font-size:13px;font-weight:750;letter-spacing:.02em}.admin-admin-avatar,.admin-avatar{display:inline-grid;flex:none;place-items:center;width:34px;height:34px;border-radius:10px;background:#f1eee7;color:var(--accent-2);font-family:var(--font-mono);font-size:12px;font-weight:800}.admin-admin-avatar{width:30px;height:30px;border-radius:50%}.admin-email{max-width:230px;overflow:hidden;color:var(--ink-soft);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.admin-signout{padding:7px 0 7px 10px;border:0;background:transparent;color:var(--ink-soft);font:inherit;font-size:12px;font-weight:750;cursor:pointer}.admin-signout:hover{color:var(--warn)}.admin-nav{position:sticky;top:64px;z-index:35;background:#fffffff5;border-bottom:1px solid var(--chrome-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.admin-nav>div{display:flex;max-width:1280px;height:52px;margin:0 auto;padding:0 24px}.admin-nav button{position:relative;display:inline-flex;align-items:center;gap:8px;min-width:118px;padding:0 18px;border:0;background:transparent;color:var(--chrome-muted);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.admin-nav button:after{position:absolute;right:16px;bottom:-1px;left:16px;height:2px;background:var(--accent);content:"";opacity:0;transform:scaleX(.6);transition:opacity .14s ease,transform .14s ease}.admin-nav button:hover,.admin-nav button.active{color:var(--ink)}.admin-nav button.active:after{opacity:1;transform:scaleX(1)}.admin-nav svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.btn-sm{min-height:32px;padding:0 12px;font-size:12px}.admin-body{max-width:1280px;margin:0 auto;padding:32px 24px 64px}.admin-body-dashboard{padding-top:36px}.admin-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.admin-section-heading h1{margin:0;color:var(--ink-900);font-family:var(--font-display);font-size:clamp(27px,3vw,36px);font-weight:730;letter-spacing:-.035em}.admin-section-heading p:not(.admin-eyebrow){margin:7px 0 0;color:var(--chrome-muted);font-size:13px}.admin-eyebrow,.admin-panel-kicker{margin:0 0 5px;color:var(--accent-2);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.admin-heading-actions{display:flex;align-items:center;gap:12px}.admin-refreshed{color:var(--chrome-muted);font-size:11px}.admin-panel{min-width:0;background:#fff;border:1px solid var(--chrome-border);border-radius:14px;box-shadow:0 1px 1px #181c2205,0 8px 24px #181c2209}.admin-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px 0}.admin-panel-head h2{margin:0;color:var(--ink-900);font-family:var(--font-display);font-size:18px;font-weight:720;letter-spacing:-.02em}.admin-panel-head p:not(.admin-panel-kicker){margin:5px 0 0;color:var(--chrome-muted);font-size:12px}.admin-panel-head-inline{align-items:center}.admin-panel-head-inline a{color:var(--accent-2);font-size:12px;font-weight:750;text-decoration:none}.admin-panel-head-inline a:hover{text-decoration:underline}.admin-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-metric{position:relative;min-height:132px;overflow:hidden;padding:20px;background:#fff;border:1px solid var(--chrome-border);border-radius:13px}.admin-metric:before{position:absolute;top:0;right:0;left:0;height:3px;background:var(--metric-color, var(--accent));content:""}.admin-metric-amber{--metric-color: var(--accent)}.admin-metric-green{--metric-color: var(--ok)}.admin-metric-blue{--metric-color: var(--grid)}.admin-metric-violet{--metric-color: #7958c9}.admin-metric-slate{--metric-color: #738096}.admin-metric-label,.admin-metric-detail{display:block;color:var(--chrome-muted);font-size:11px;font-weight:650}.admin-metric strong{display:block;margin:11px 0 8px;color:var(--ink-900);font-family:var(--font-display);font-size:31px;font-weight:720;letter-spacing:-.035em;line-height:1}.admin-metric-detail{line-height:1.35}.admin-overview-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(300px,.9fr);gap:16px;margin-bottom:16px}.admin-growth-panel,.admin-health-panel{min-height:430px}.admin-range{display:flex;padding:3px;background:var(--chrome-2);border-radius:8px}.admin-range button{min-width:44px;padding:6px 9px;border:0;border-radius:6px;background:transparent;color:var(--chrome-muted);font:inherit;font-size:11px;font-weight:750;cursor:pointer}.admin-range button.active{background:#fff;box-shadow:var(--shadow-sm);color:var(--ink)}.admin-chart-legend{display:flex;gap:17px;padding:18px 24px 0;color:var(--chrome-muted);font-size:10px;font-weight:650}.admin-chart-legend span{display:inline-flex;align-items:center;gap:6px}.admin-chart-legend i{width:16px;height:3px;border-radius:99px}.admin-legend-user{background:var(--accent)}.admin-legend-subscriber{background:var(--grid)}.admin-chart{margin:4px 16px 0 8px}.admin-chart svg{display:block;width:100%;height:auto;overflow:visible}.admin-chart figcaption{margin:-2px 8px 14px 16px;color:var(--chrome-muted);font-size:10px}.admin-chart-grid{stroke:#ecece8;stroke-width:1}.admin-chart-axis{fill:#8a8a82;font-family:var(--font-mono);font-size:9px}.admin-chart-area{fill:url(#admin-growth-fill)}.admin-chart-user-line,.admin-chart-subscriber-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.25}.admin-chart-user-line{stroke:var(--accent)}.admin-chart-subscriber-line{stroke:var(--grid)}.admin-chart-user-point{fill:#fff;stroke:var(--accent);stroke-width:2}.admin-chart-subscriber-point{fill:#fff;stroke:var(--grid);stroke-width:2}.admin-chart-empty,.admin-muted-block{margin:20px 24px;padding:22px;background:#fafaf8;border:1px dashed var(--chrome-border);border-radius:10px;color:var(--chrome-muted);font-size:12px;line-height:1.55;text-align:center}.admin-chart-empty{margin-top:36px}.admin-plan-breakdown{padding:23px 24px 21px;border-bottom:1px solid #eeeeea}.admin-plan-total{display:flex;align-items:center;gap:17px}.admin-donut{--admin-pro-share: 0deg;position:relative;display:grid;flex:none;place-items:center;width:92px;height:92px;border-radius:50%;background:conic-gradient(var(--accent) 0 var(--admin-pro-share),#edede9 var(--admin-pro-share) 360deg)}.admin-donut:after{position:absolute;width:68px;height:68px;border-radius:50%;background:#fff;content:""}.admin-donut span{position:relative;z-index:1;text-align:center}.admin-donut strong,.admin-donut small{display:block}.admin-donut strong{font-family:var(--font-display);font-size:19px}.admin-donut small{margin-top:1px;color:var(--chrome-muted);font-size:9px;font-weight:700;text-transform:uppercase}.admin-plan-caption{display:block;margin-bottom:5px;color:var(--chrome-muted);font-size:10px}.admin-plan-total>div>strong{font-family:var(--font-display);font-size:21px}.admin-plan-total>div>strong small{color:var(--chrome-muted);font-family:var(--font-sans);font-size:11px;font-weight:600}.admin-plan-bars{display:grid;gap:13px;margin-top:20px}.admin-plan-bars>div>span{display:flex;align-items:center;gap:7px;color:var(--ink-soft);font-size:10px;font-weight:650}.admin-plan-bars>div>span strong{margin-left:auto;color:var(--ink)}.admin-plan-bars>div>span i{width:7px;height:7px;border-radius:2px}.admin-plan-bars b{display:block;height:5px;margin-top:7px;overflow:hidden;background:#edede9;border-radius:99px}.admin-plan-bars b i{display:block;height:100%;border-radius:inherit}.admin-plan-pro{background:var(--accent)}.admin-plan-free{background:#aeb4bc}.admin-status-list{padding:17px 24px 22px}.admin-mini-heading,.admin-status-row{display:flex;align-items:center;justify-content:space-between}.admin-mini-heading{margin-bottom:10px;color:var(--chrome-muted);font-size:9px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.admin-status-row{min-height:27px;color:var(--ink-soft);font-size:11px}.admin-status-row>span{display:inline-flex;align-items:center;gap:8px}.admin-status-row strong{color:var(--ink);font-family:var(--font-mono);font-size:10px}.admin-status-dot{width:7px;height:7px;border-radius:50%;background:#99a0aa}.admin-recents-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-people-list{padding:12px 22px 17px}.admin-person-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto 72px;align-items:center;gap:11px;min-height:58px;border-bottom:1px solid #efefeb}.admin-person-row:last-child{border-bottom:0}.admin-avatar-billing{background:#eaf1ff;color:#2f6df0}.admin-person-main{min-width:0}.admin-person-main strong,.admin-person-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-person-main strong{color:var(--ink);font-size:11px}.admin-person-main small{margin-top:3px;color:var(--chrome-muted);font-size:9px}.admin-person-row time{color:var(--chrome-muted);font-size:9px;text-align:right}.admin-badge,.admin-test-badge{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:3px 8px;border-radius:999px;background:#f0f0ed;color:var(--ink-soft);font-size:9px;font-weight:800;line-height:1;white-space:nowrap}.admin-badge.plan-pro{background:var(--accent-soft);color:var(--accent-2)}.admin-badge.plan-free{background:#f0f1f2;color:#68717d}.admin-badge.status-active,.admin-badge.status-on_trial{background:#e4f5ed;color:#12734b}.admin-badge.status-past_due{background:#fff2d5;color:#8b6200}.admin-badge.status-cancelled,.admin-badge.status-paused{background:#f1edfb;color:#6544a7}.admin-badge.status-expired,.admin-badge.status-unpaid{background:#fae9e7;color:#ad3028}.admin-status-dot.status-active,.admin-status-dot.status-on_trial{background:var(--ok)}.admin-status-dot.status-past_due{background:#d99a10}.admin-status-dot.status-cancelled,.admin-status-dot.status-paused{background:#7958c9}.admin-status-dot.status-expired,.admin-status-dot.status-unpaid{background:var(--warn)}.admin-test-badge{margin-left:5px;background:#e9f0ff;color:#2f5fc3}.admin-alert{margin:0 0 18px;padding:11px 14px;background:#fff2f0;border:1px solid #f1cbc7;border-radius:9px;color:#a62f26;font-size:12px;line-height:1.45}.admin-alert-inset{margin:0 20px 16px}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.admin-panel-toolbar{margin:0;padding:16px 18px;border-bottom:1px solid var(--chrome-border)}.admin-filters{display:flex;gap:9px;flex-wrap:wrap}.admin-filters .num{width:auto;min-width:155px;background-color:#fff}.admin-search{min-width:230px!important}.admin-search-wrap{position:relative}.admin-search-wrap .admin-search{padding-left:31px}.admin-search-icon{position:absolute;top:50%;left:11px;z-index:1;color:var(--chrome-muted);font-size:16px;transform:translateY(-53%);pointer-events:none}.admin-count{color:var(--chrome-muted);font-size:11px;font-weight:650}.admin-data-panel{overflow:hidden}.admin-table-wrap{position:relative;overflow-x:auto}.admin-table{width:100%;min-width:990px;border-collapse:collapse;font-size:11px;text-align:left}.admin-table th{height:40px;padding:0 14px;background:#fafaf8;border-bottom:1px solid var(--chrome-border);color:var(--chrome-muted);font-size:9px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}.admin-table th:first-child,.admin-table td:first-child{padding-left:20px}.admin-table th:last-child,.admin-table td:last-child{padding-right:20px;text-align:right}.admin-table td{height:68px;padding:9px 14px;border-bottom:1px solid #efefeb;color:var(--ink-soft);vertical-align:middle;white-space:nowrap}.admin-table tbody>tr:not(.admin-detail-row):hover td,.admin-table tbody>tr.is-expanded td{background:#fcfcfa}.admin-user-cell{display:flex;align-items:center;gap:10px;min-width:220px}.admin-user-cell>span:last-child{min-width:0}.admin-user-cell strong,.admin-user-cell small{display:block;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-cell strong{color:var(--ink);font-size:11px}.admin-user-cell small{margin-top:3px;color:var(--chrome-muted);font-size:9px}.admin-provider{color:var(--ink-soft);font-weight:650}.admin-table-number{color:var(--ink);font-family:var(--font-mono)}.admin-payment{font-family:var(--font-mono);font-size:10px}.admin-row-toggle{display:inline-grid;place-items:center;width:27px;height:27px;padding:0;border:1px solid var(--chrome-border);border-radius:7px;background:#fff;color:var(--chrome-muted);font-size:15px;cursor:pointer}.admin-row-toggle:hover{border-color:#c8c8c2;color:var(--ink)}.admin-detail-row td{height:auto;padding:0!important;background:#fafaf8;white-space:normal}.admin-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:14px 58px 18px 64px;background:#e9e9e5}.admin-detail-item{min-width:0;padding:13px 15px;background:#fafaf8}.admin-detail-item>span,.admin-detail-item>strong{display:block}.admin-detail-item>span{margin-bottom:6px;color:var(--chrome-muted);font-size:9px;font-weight:700;text-transform:uppercase}.admin-detail-item>strong{overflow:hidden;color:var(--ink);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:10px 18px;color:var(--chrome-muted);font-size:10px}.admin-pagination>div{display:flex;align-items:center;gap:12px}.admin-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px;padding:40px 24px;color:var(--chrome-muted);text-align:center}.admin-empty-state>span{display:grid;place-items:center;width:46px;height:46px;margin-bottom:14px;border-radius:13px;background:var(--chrome-2);color:var(--accent-2);font-size:22px}.admin-empty-state h2{margin:0 0 6px;color:var(--ink);font-size:15px}.admin-empty-state p{max-width:390px;margin:0;font-size:11px;line-height:1.55}.admin-empty-compact{min-height:240px}.admin-skeleton{display:block;width:100%;height:12px;overflow:hidden;background:linear-gradient(90deg,#eeeeea 25%,#f7f7f4,#eeeeea 75%);background-size:200% 100%;border-radius:5px;animation:adminSkeleton 1.35s ease-in-out infinite}.admin-skeleton-number{width:76px;height:30px;margin:12px 0 9px}.admin-skeleton-short{width:120px}.admin-skeleton-medium{width:52%}.admin-skeleton-card{flex-direction:column}.admin-skeleton-card .admin-skeleton{margin:4px 0}.admin-table-skeleton .admin-skeleton{min-width:52px}.admin-chart-skeleton{display:flex;align-items:flex-end;gap:4%;height:250px;margin:18px 28px 24px 48px;border-bottom:1px solid #e9e9e5}.admin-chart-skeleton span{flex:1;height:40%;background:#f0f0ec;border-radius:4px 4px 0 0;animation:adminSkeletonBars 1.4s ease-in-out infinite alternate}.admin-chart-skeleton span:nth-child(2n){height:66%;animation-delay:-.3s}.admin-chart-skeleton span:nth-child(3n){height:28%;animation-delay:-.6s}@keyframes adminSkeleton{to{background-position:-200% 0}}@keyframes adminSkeletonBars{to{opacity:.35;transform:scaleY(.7);transform-origin:bottom}}.admin-signin,.admin-denied{max-width:430px;margin:56px auto;padding:34px;background:#fff;border:1px solid var(--chrome-border);border-radius:15px;box-shadow:var(--shadow-sm);text-align:center}.admin-signin h2,.admin-denied h2{margin:0 0 8px;color:var(--ink);font-family:var(--font-display)}.admin-state-icon{display:inline-grid;place-items:center;width:48px;height:48px;margin-bottom:16px;border-radius:14px;background:var(--accent-soft);color:var(--accent-2);font-size:20px;font-weight:800}.admin-state-success{background:#e4f5ed;color:var(--ok)}.admin-signin .field{margin:20px 0 14px;text-align:left}.admin-signin .num,.admin-signin .btn-accent{width:100%}.admin-signin .btn-outline,.admin-denied .btn-outline{margin-top:17px}.admin-signin .admin-alert{margin-top:14px}.admin-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:320px;color:var(--chrome-muted);font-size:12px}.admin-spinner{width:18px;height:18px;border:2px solid var(--chrome-border);border-top-color:var(--accent);border-radius:50%;animation:adminSpin .7s linear infinite}@keyframes adminSpin{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.admin-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.admin-card{display:flex;gap:18px;justify-content:space-between;padding:18px 20px;background:#fff;border:1px solid var(--chrome-border);border-radius:12px;box-shadow:0 2px 12px #181c2206}.admin-card-main{flex:1;min-width:0}.admin-card-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.fb-cat{padding:3px 8px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.fb-cat-bug{background:#fdecea;color:#c0392b}.fb-cat-feature{background:var(--accent-soft);color:var(--accent-2)}.fb-cat-uiux{background:#f0e9ff;color:#6b3fd8}.fb-cat-general{background:var(--chrome-3);color:var(--ink-soft)}.fb-contrib{padding:2px 8px;border:1px solid var(--chrome-border);border-radius:6px;background:var(--chrome-2);font-size:10px;font-weight:700;color:var(--ink)}.admin-date{margin-left:auto;color:var(--chrome-muted);font-size:10px}.admin-details{margin:0 0 10px;color:var(--ink);font-size:13px;line-height:1.55;white-space:pre-wrap}.admin-meta{display:flex;align-items:center;flex-wrap:wrap;gap:14px;color:var(--ink-soft);font-size:10px}.admin-meta a{color:var(--accent-2);text-decoration:none}.admin-url,.admin-ua{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-card-side{display:flex;flex:none;flex-direction:column;align-items:flex-end;gap:10px}.fb-status-select{width:auto;min-width:132px;font-weight:700}.fb-status-new{border-color:var(--accent);color:var(--accent-2)}.fb-status-in_progress{border-color:#e0a216;color:#946700}.fb-status-planned{border-color:#6b3fd8;color:#6b3fd8}.fb-status-completed{border-color:var(--ok);color:var(--ok)}.fb-status-rejected{border-color:var(--warn);color:var(--warn)}.admin-shot{padding:0;overflow:hidden;background:var(--chrome-2);border:1px solid var(--chrome-border);border-radius:8px;line-height:0;cursor:pointer}.admin-shot img{display:block;width:96px;height:64px;object-fit:cover}.admin-lightbox{z-index:110;cursor:zoom-out}.admin-lightbox img{max-width:92vw;max-height:88vh;border-radius:8px;box-shadow:var(--shadow)}.admin-lightbox-close{position:fixed;top:20px;right:22px;width:38px;height:38px;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:#0000006b;color:#fff;font-size:24px;cursor:pointer}@media (max-width: 1080px){.admin-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-overview-grid{grid-template-columns:1fr}.admin-growth-panel,.admin-health-panel{min-height:auto}.admin-plan-breakdown{display:grid;grid-template-columns:minmax(220px,.8fr) 1fr;gap:28px;align-items:center}.admin-plan-bars{margin-top:0}.admin-status-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}.admin-mini-heading{grid-column:1 / -1}}@media (max-width: 760px){.feedback-grid{grid-template-columns:1fr}.admin-bar{padding:0 16px}.admin-product-divider,.admin-product-name,.admin-email{display:none}.admin-nav{overflow-x:auto}.admin-nav>div{width:max-content;min-width:100%;padding:0 8px}.admin-nav button{min-width:auto;padding:0 14px}.admin-body{padding:26px 16px 48px}.admin-section-heading{align-items:flex-start;flex-direction:column;gap:15px}.admin-heading-actions{width:100%;justify-content:space-between}.admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metric{min-height:124px;padding:17px}.admin-metric strong{font-size:27px}.admin-recents-grid{grid-template-columns:1fr}.admin-plan-breakdown{display:block}.admin-plan-bars{margin-top:20px}.admin-status-list{display:block}.admin-panel-toolbar{align-items:stretch;flex-direction:column}.admin-filters{width:100%}.admin-filters .num,.admin-search-wrap{flex:1 1 180px}.admin-search{width:100%!important;min-width:0!important}.admin-detail-grid{grid-template-columns:1fr;padding:10px}.admin-pagination{align-items:flex-start;flex-direction:column}.admin-pagination>div{width:100%;justify-content:space-between}.admin-card{flex-direction:column}.admin-card-side{flex-direction:row;align-items:center}.feedback-fab span{display:none}}@media (max-width: 480px){.admin-nav button span{display:none}.admin-nav button{min-width:58px;justify-content:center}.admin-nav svg{width:19px;height:19px}.admin-metric-grid{grid-template-columns:1fr 1fr;gap:9px}.admin-metric{min-height:118px;padding:15px}.admin-metric-detail{font-size:9px}.admin-panel-head{padding:18px 18px 0}.admin-chart{margin-right:6px;margin-left:0}.admin-chart-legend{padding-left:18px}.admin-person-row{grid-template-columns:34px minmax(0,1fr) auto}.admin-person-row time{display:none}.admin-signin,.admin-denied{margin:28px auto;padding:26px 21px}}.footer-links{display:flex;flex-wrap:wrap;gap:18px}.footer-links a{color:var(--ink-soft);text-decoration:none;font-size:12px;font-weight:700}.footer-links a:hover{color:var(--accent-2)}.route-loading{min-height:100vh;background:var(--chrome-2, #f4f6fb)}.resources-section .resources-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:22px}.resource-card,.related-card,.article-card{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid var(--chrome-border);border-radius:var(--radius);background:#fff;text-decoration:none;color:var(--ink);box-shadow:var(--shadow-sm);transition:border-color .14s,box-shadow .14s,transform .14s}.resource-card:hover,.related-card:hover,.article-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.resource-kicker{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--accent-2)}.resource-card h3,.related-card h3,.article-card h3{margin:0;font-size:17px;line-height:1.3;color:var(--ink)}.resource-card p,.related-card p,.article-card p{margin:0;font-size:14px;line-height:1.6;color:var(--ink-soft)}.resource-more,.article-card-more{margin-top:auto;font-size:13px;font-weight:700;color:var(--accent-2)}.articles-index .page-head,.article-page .article-head{max-width:760px}.articles-cluster{max-width:1000px;margin:0 auto;padding:0 24px 26px}.cluster-title{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--chrome-muted);margin:24px 0 14px;padding-bottom:8px;border-bottom:1px solid var(--chrome-border)}.articles-grid,.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.articles-empty{max-width:1000px;margin:0 auto;padding:0 24px;color:var(--ink-soft)}.article-wrap{max-width:760px;margin:26px auto 0;padding:0 24px}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--chrome-muted);margin-bottom:16px}.breadcrumb a{color:var(--ink-soft);text-decoration:none}.breadcrumb a:hover{color:var(--accent-2)}.breadcrumb [aria-current=page]{color:var(--ink)}.article-head h1{margin:6px 0 10px;font-size:clamp(1.9rem,1.3rem + 2.4vw,2.9rem);line-height:1.1;letter-spacing:-.02em;color:var(--ink)}.article-meta{margin:0;font-size:13.5px;font-weight:600;color:var(--chrome-muted)}.article-body{margin-top:26px;font-size:16.5px;line-height:1.75;color:var(--ink-soft)}.article-body h2{margin:36px 0 12px;font-size:25px;line-height:1.25;color:var(--ink);letter-spacing:-.01em;scroll-margin-top:92px}.article-body h3{margin:26px 0 8px;font-size:18.5px;color:var(--ink)}.article-body p{margin:0 0 16px}.article-body a{color:var(--accent-2);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}.article-body a:hover{text-decoration-thickness:2px}.article-body strong{color:var(--ink);font-weight:700}.article-body ul,.article-body ol{margin:0 0 18px;padding-left:22px}.article-body li{margin:6px 0}.article-body code{padding:1px 6px;border:1px solid var(--chrome-border);border-radius:5px;background:var(--chrome-2);font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,monospace;font-size:.86em;color:var(--ink)}.article-body blockquote{margin:0 0 18px;padding:4px 18px;border-left:3px solid var(--accent);color:var(--ink-soft)}.article-body table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:15px}.article-body th,.article-body td{border:1px solid var(--chrome-border);padding:9px 12px;text-align:left;vertical-align:top}.article-body th{background:var(--chrome-2);color:var(--ink);font-weight:700}.article-faq{margin-top:40px}.article-faq h2{font-size:23px;color:var(--ink);margin:0 0 14px}.faq-item{padding:16px 0;border-top:1px solid var(--chrome-border)}.faq-item dt{font-weight:700;color:var(--ink);margin-bottom:6px}.faq-item dd{margin:0;color:var(--ink-soft);line-height:1.65}.article-disclaimer{margin:32px 0;padding:16px 18px;border:1px solid #efe1bd;border-radius:var(--radius-sm);background:#fdf6e8;color:#6b5414;font-size:14px;line-height:1.6}.article-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:32px 0;padding:22px 24px;border:1px solid var(--chrome-border);border-radius:var(--radius);background:var(--accent-soft)}.article-cta strong{display:block;font-size:16px;color:var(--ink)}.article-cta p{margin:4px 0 0;font-size:14px;color:var(--ink-soft)}.article-related{margin:44px 0 8px}.article-related h2{font-size:20px;color:var(--ink);margin:0 0 16px}.doc-further{margin-top:16px;font-size:14px;color:var(--ink-soft)}.doc-further a{color:var(--accent-2);font-weight:600}@media (max-width: 860px){.resources-section .resources-grid,.articles-grid,.related-grid{grid-template-columns:1fr}.article-body{font-size:16px}}.article-diagram{display:block;margin:26px 0;padding:14px;border:1px solid var(--chrome-border);border-radius:var(--radius);background:#fff}.article-diagram svg{display:block;width:100%;height:auto}.article-diagram-caption{display:block;margin-top:10px;text-align:center;font-size:13px;color:var(--chrome-muted);font-weight:600}.sheet{--sheet-line: #d7d6d1;--sheet-ink: #1c2128;--sheet-paper: #ffffff;--sheet-figure: #fbfbfa;background:linear-gradient(rgba(28,33,40,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(28,33,40,.025) 1px,transparent 1px),var(--sheet-paper);background-size:24px 24px,24px 24px,auto;color:var(--sheet-ink)}.sheet .landing-nav{background:#ffffffe0;border-bottom:1px solid var(--sheet-ink)}.sheet .landing-links a{color:var(--ink-soft)}.sheet .landing-links a:hover{color:var(--accent-2)}.sheet-hero,.title-block,.sheet-section,.sheet-cta,.sheet-foot{width:min(1180px,calc(100% - 48px));margin-inline:auto}.dwg-tag{display:inline-flex;align-items:center;gap:9px;margin:0 0 22px;font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.dwg-tag span{padding:3px 8px;background:var(--accent);color:var(--on-accent);font-weight:600;border-radius:3px}.sheet-hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(32px,5vw,72px);align-items:center;padding:clamp(48px,7vw,104px) 0 clamp(40px,5vw,72px)}.hero-copy{position:relative;padding-left:26px}.hero-copy:before{content:"";position:absolute;left:0;top:4px;bottom:4px;border-left:1px solid var(--sheet-line)}.hero-copy:after{content:"";position:absolute;left:-3px;top:50%;width:7px;height:7px;border-radius:50%;background:var(--accent);transform:translateY(-50%)}.sheet-hero h1{margin:0;font-family:var(--font-display);font-weight:700;font-size:clamp(48px,7vw,88px);line-height:.9;letter-spacing:-.035em;color:var(--sheet-ink)}.sheet-hero h1 em{font-style:normal;color:var(--accent-2)}.sheet-hero h1 .h1-line1{display:block}.sheet .landing-lede{max-width:460px;margin:26px 0 0;color:var(--ink-soft);font-size:16.5px;line-height:1.6}.sheet .landing-actions{margin-top:30px}.sheet .landing-secondary{background:transparent;color:var(--sheet-ink);border:1px solid var(--sheet-ink)}.sheet .landing-secondary:hover{background:#1c21280f}.hero-spec{display:grid;grid-template-columns:repeat(3,auto);gap:0;margin:38px 0 0;border-top:1px solid var(--sheet-line)}.hero-spec div{padding:14px 22px 0 0;margin-right:22px;border-right:1px solid var(--sheet-line)}.hero-spec div:last-child{border-right:0}.hero-spec dt{font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--chrome-muted)}.hero-spec dd{margin:5px 0 0;font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--sheet-ink)}.plan-figure{margin:0}.plan-stage{position:relative;aspect-ratio:4 / 3;border:1px solid var(--sheet-ink);background:linear-gradient(rgba(47,109,240,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(47,109,240,.05) 1px,transparent 1px),var(--sheet-figure);background-size:26px 26px,26px 26px,auto;box-shadow:0 24px 50px #1c16081f}.plan-stage:before,.plan-stage:after{content:"";position:absolute;width:12px;height:12px;border:1px solid var(--sheet-ink)}.plan-stage:before{top:7px;left:7px;border-right:0;border-bottom:0}.plan-stage:after{right:7px;bottom:7px;border-left:0;border-top:0}.plan-box{position:absolute;top:14%;right:14%;bottom:16%;left:16%}.plan-svg{--ps-ink: #27313f;--ps-soft: #e9edf4;display:block;width:100%;height:100%;overflow:visible}.plan-svg line,.plan-svg rect,.plan-svg circle,.plan-svg path{vector-effect:non-scaling-stroke}.ps-floor{fill:#fff;stroke:none}.ps-joists line{stroke:var(--joist);stroke-width:.8;opacity:.6}.pw-outer{stroke:var(--ps-ink);stroke-width:2.6;stroke-linecap:square}.pw-inner{stroke:var(--ps-ink);stroke-width:1.7;stroke-linecap:round}.pw-win{stroke:var(--ps-ink);stroke-width:1.2;fill:#fff}.pw-swing{fill:none;stroke:var(--ps-ink);stroke-width:1.3}.ps-furniture *{stroke:var(--ps-ink);stroke-width:1.3;stroke-linejoin:round}.ps-furniture .fw{fill:#fff}.ps-furniture .fs{fill:var(--ps-soft)}.ps-furniture .fn{fill:none}.ps-furniture .fk{fill:var(--ps-ink);stroke:none}.ps-labels text{fill:var(--ps-ink);opacity:.5;font-family:var(--font-mono);font-size:230px;font-weight:500;letter-spacing:30px}.ps-sel .sel-frame{fill:none;stroke:var(--beam);stroke-width:1.4;stroke-dasharray:16 12;vector-effect:non-scaling-stroke}.ps-sel .sel-handle{fill:#fff;stroke:var(--beam);stroke-width:1.4;vector-effect:non-scaling-stroke}.ps-cursor path{fill:var(--ps-ink);stroke:#fff;stroke-width:2.4;stroke-linejoin:round;paint-order:stroke;vector-effect:non-scaling-stroke}.grid-ref{position:absolute;display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--sheet-ink);border-radius:50%;background:var(--sheet-figure);font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--sheet-ink)}.grid-ref.ref-a{top:6%;left:calc(18% - 11px)}.grid-ref.ref-b{top:6%;right:calc(16% - 11px)}.grid-ref.ref-1{top:calc(18% - 11px);left:6%}.grid-ref.ref-2{bottom:calc(20% - 11px);left:6%}.dim{position:absolute;display:grid;place-items:center}.dim i{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--dim);background:var(--sheet-figure);padding:0 6px;font-style:normal}.dim-top{top:11%;left:18%;right:16%;border-top:1px solid var(--dim)}.dim-top:before,.dim-top:after{content:"";position:absolute;top:-4px;width:1px;height:9px;background:var(--dim)}.dim-top:before{left:0}.dim-top:after{right:0}.dim-left{top:18%;bottom:20%;left:11%;border-left:1px solid var(--dim)}.dim-left i{transform:rotate(-90deg)}.dim-left:before,.dim-left:after{content:"";position:absolute;left:-4px;width:9px;height:1px;background:var(--dim)}.dim-left:before{top:0}.dim-left:after{bottom:0}.lead{position:absolute;font-family:var(--font-mono);font-size:10.5px;font-weight:600;color:var(--sheet-ink);white-space:nowrap}.lead:before{content:"";position:absolute;background:var(--sheet-ink)}.lead:after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--accent)}.lead-joist{top:46%;right:-2%;padding-right:16px;text-align:right}.lead-joist:before{top:6px;right:0;width:13px;height:1px}.lead-joist:after{top:4px;right:-3px}.lead-bearing{top:49%;left:-2%;padding-left:16px;transform:translateY(-50%)}.lead-bearing:before{top:50%;left:0;width:13px;height:1px}.lead-bearing:after{top:calc(50% - 2px);left:-3px;background:var(--bearing)}.lead-beam{bottom:7%;left:30%;padding-top:14px}.lead-beam:before{top:0;left:7px;width:1px;height:11px}.lead-beam:after{top:-3px;left:5px}.lead-open{top:3%;left:24%;padding-bottom:14px}.lead-open:before{bottom:0;left:7px;width:1px;height:11px}.lead-open:after{bottom:-3px;left:5px}.plan-figure figcaption{margin-top:16px;font-family:var(--font-mono);font-size:11.5px;color:var(--chrome-muted);letter-spacing:.01em}.plan-figure figcaption span{color:var(--sheet-ink);font-weight:600;margin-right:6px}.plan-stage.is-live{--demo-loop: 21s}.plan-stage.is-live .ps-floor{animation:demoFloor var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .ps-walls{animation:demoWalls var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .ps-joists{animation:demoJoists var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .ps-labels{animation:demoLabels var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .grid-ref{animation:demoFade var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .dim,.plan-stage.is-live .lead{animation:demoFadeUp var(--demo-loop) ease-in-out infinite}.demo-readout{position:absolute;top:9%;right:5%;z-index:3;display:grid;gap:3px;padding:8px 11px;background:var(--ink-900);border-radius:var(--radius-sm);box-shadow:0 12px 26px #14181f4d;font-family:var(--font-mono)}.dr-label{font-size:9px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#f3f1ea9e}.dr-values{position:relative;height:18px;min-width:56px}.dr-v{position:absolute;top:0;right:0;bottom:0;left:0;font-style:normal;font-size:15px;font-weight:700;line-height:18px;color:var(--accent)}.dr-v-a{opacity:0}.dr-v-b{opacity:1}.dr-status{font-size:9.5px;letter-spacing:.02em;color:var(--ok)}.plan-stage.is-live .demo-readout{animation:demoChipIn var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .dr-v-a{animation:demoValA var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .dr-v-b{animation:demoValB var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .dr-status{animation:demoStatusIn var(--demo-loop) ease-in-out infinite}.demo-export{position:absolute;right:6%;bottom:8%;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;background:var(--accent);border-radius:999px;box-shadow:0 8px 20px #e08a1e61;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.02em;color:#1c1608}.de-check{display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#1c1608;color:var(--accent);font-size:9px;opacity:0}.plan-stage.is-live .demo-export{animation:demoExportIn var(--demo-loop) ease-in-out infinite}.plan-stage.is-live .de-check{animation:demoCheckIn var(--demo-loop) ease-in-out infinite}@keyframes demoFloor{0%,1%{opacity:0}6%,95%{opacity:1}97%,to{opacity:0}}@keyframes demoWalls{0%,2%{clip-path:inset(0 100% 0 0)}12%,94%{clip-path:inset(0 0 0 0)}97%,to{clip-path:inset(0 0 0 100%)}}@keyframes demoJoists{0%,78%{clip-path:inset(0 100% 0 0);opacity:0}80%{opacity:1}86%,95%{clip-path:inset(0 0 0 0);opacity:1}97%,to{clip-path:inset(0 100% 0 0);opacity:0}}@keyframes demoLabels{0%,80%{opacity:0}88%,95%{opacity:1}97%,to{opacity:0}}@keyframes demoFade{0%,4%{opacity:0}10%,95%{opacity:1}97%,to{opacity:0}}@keyframes demoFadeUp{0%,76%{opacity:0;transform:translateY(4px)}83%,95%{opacity:1;transform:translateY(0)}97%,to{opacity:0;transform:translateY(4px)}}@keyframes demoChipIn{0%,82%{opacity:0;transform:translateY(6px) scale(.96)}88%,95%{opacity:1;transform:translateY(0) scale(1)}97%,to{opacity:0;transform:translateY(6px) scale(.96)}}@keyframes demoValA{0%,86%{opacity:1}90%,to{opacity:0}}@keyframes demoValB{0%,88%{opacity:0}92%,95%{opacity:1}97%,to{opacity:0}}@keyframes demoStatusIn{0%,90%{opacity:0}93%,95%{opacity:1}97%,to{opacity:0}}@keyframes demoExportIn{0%,91%{opacity:0;transform:translateY(6px) scale(1)}94%{opacity:1;transform:translateY(0) scale(1)}95%{transform:translateY(0) scale(1.06)}96%{opacity:1;transform:translateY(0) scale(1)}98%,to{opacity:0;transform:translateY(6px) scale(1)}}@keyframes demoCheckIn{0%,94%{opacity:0;transform:scale(.4)}96%{opacity:1;transform:scale(1)}98%,to{opacity:0;transform:scale(.4)}}@media (prefers-reduced-motion: reduce){.plan-stage.is-live .ps-floor,.plan-stage.is-live .ps-walls,.plan-stage.is-live .ps-furniture,.plan-stage.is-live .ps-joists,.plan-stage.is-live .ps-labels,.plan-stage.is-live .grid-ref,.plan-stage.is-live .dim,.plan-stage.is-live .lead,.plan-stage.is-live .demo-readout,.plan-stage.is-live .dr-v,.plan-stage.is-live .dr-status,.plan-stage.is-live .demo-export,.plan-stage.is-live .de-check{animation:none!important}.plan-stage.is-live .ps-walls,.plan-stage.is-live .ps-joists{clip-path:none}.plan-stage.is-live .ps-floor,.plan-stage.is-live .ps-walls,.plan-stage.is-live .ps-furniture,.plan-stage.is-live .ps-joists,.plan-stage.is-live .ps-labels,.plan-stage.is-live .grid-ref,.plan-stage.is-live .dim,.plan-stage.is-live .lead,.plan-stage.is-live .demo-readout,.plan-stage.is-live .demo-export{opacity:1;transform:none}.plan-stage.is-live .dr-v-a{opacity:0}.plan-stage.is-live .dr-v-b,.plan-stage.is-live .dr-status{opacity:1}.plan-stage.is-live .de-check{opacity:1;transform:none}}.hero-cost{margin:16px 0 0;font-family:var(--font-mono);font-size:12px;letter-spacing:.01em;color:var(--chrome-muted)}.hero-cost span{color:var(--ok);font-weight:700}.export-note{max-width:640px;margin:16px 0 24px;font-family:var(--font-mono);font-size:12.5px;line-height:1.6;color:var(--ink-soft)}.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,1.8vw,24px);margin-top:4px}.note-card{position:relative;margin:0;display:flex;flex-direction:column;gap:18px;padding:30px 26px 24px;background:var(--sheet-figure);border:1px solid var(--sheet-ink);transition:transform var(--duration-normal, .3s) var(--ease-out-expo, ease),box-shadow var(--duration-normal, .3s) var(--ease-out-expo, ease)}.note-card:before{content:"";position:absolute;top:9px;left:9px;width:11px;height:11px;border-left:1px solid var(--sheet-ink);border-top:1px solid var(--sheet-ink)}.note-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px #1c16081c}.note-mark{align-self:flex-start;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.08em;color:#1c1608;background:var(--accent);padding:3px 9px;border-radius:3px}.note-card blockquote{margin:0;font-size:15.5px;line-height:1.62;color:var(--sheet-ink)}.note-card figcaption{display:flex;flex-direction:column;gap:3px;margin-top:auto;padding-top:16px;border-top:1px solid var(--sheet-line);font-family:var(--font-mono)}.note-card figcaption b{font-size:13px;font-weight:700;color:var(--sheet-ink)}.note-card figcaption span{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--chrome-muted)}.title-block{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1.2fr;border:1px solid var(--sheet-ink);background:var(--sheet-figure)}.title-block div{padding:12px 16px;border-right:1px solid var(--sheet-line)}.title-block div:last-child{border-right:0}.title-block span{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--chrome-muted)}.title-block b{display:block;margin-top:4px;font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--sheet-ink)}.sheet-section{padding:clamp(56px,7vw,96px) 0 0;scroll-margin-top:88px}.section-rule{display:flex;align-items:baseline;gap:16px;margin-bottom:36px}.section-rule span{flex:none;font-family:var(--font-mono);font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--sheet-ink)}.section-rule:before{content:"";width:8px;height:8px;align-self:center;background:var(--accent)}.section-rule h2{margin:0;font-family:var(--font-mono);font-size:12px;font-weight:400;letter-spacing:.02em;color:var(--chrome-muted);text-transform:lowercase}.section-rule:after{content:"";flex:1;height:1px;align-self:center;background:var(--sheet-line);order:1}.section-rule h2{order:2}.process{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--sheet-ink)}.process li{position:relative;padding:26px 28px 30px 0;margin-right:28px;border-right:1px solid var(--sheet-line)}.process li:last-child{border-right:0;margin-right:0}.process li:before{content:"";position:absolute;top:-1px;left:0;width:28px;height:3px;background:var(--accent)}.process .pn{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--accent-2)}.process h3{margin:14px 0 8px;font-family:var(--font-display);font-size:clamp(20px,2.4vw,26px);font-weight:600;letter-spacing:-.015em;color:var(--sheet-ink)}.process p{margin:0;font-size:14.5px;line-height:1.6;color:var(--ink-soft)}.bento{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-auto-rows:1fr;gap:14px}.bento article{display:flex;flex-direction:column;padding:24px 24px 26px;border:1px solid var(--sheet-line);background:var(--sheet-figure);transition:border-color .18s var(--ease-out),transform .18s var(--ease-out),box-shadow .18s var(--ease-out)}.bento article:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 14px 30px #1c16081f}.bento-lead{grid-row:span 2}.bento article:nth-child(4){grid-column:span 2}.bento-no{margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--chrome-muted)}.bento h3{margin:14px 0 10px;font-family:var(--font-display);font-size:19px;font-weight:600;letter-spacing:-.01em;color:var(--sheet-ink)}.bento-lead h3{font-size:clamp(24px,3vw,32px);line-height:1.05}.bento-body{margin:0;font-size:14px;line-height:1.6;color:var(--ink-soft)}.bento-lead .bento-body{font-size:15.5px}.bento-tags{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:auto 0 0;padding:18px 0 0}.bento-tags li{padding:5px 11px;border-radius:999px;background:var(--accent-2);color:#fff;font-family:var(--font-mono);font-size:11px;font-weight:600}.legend{border:1px solid var(--sheet-ink);background:var(--sheet-figure)}.legend-row{display:grid;grid-template-columns:120px 1.3fr 1.6fr;align-items:center;border-bottom:1px solid var(--sheet-line)}.legend-row:last-child{border-bottom:0}.legend-row span{padding:16px 20px;font-size:14px;color:var(--ink-soft)}.legend-head span{padding-block:11px;font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--chrome-muted)}.legend-head{background:#1c212808}.legend-fmt{font-family:var(--font-mono)!important;font-size:15px!important;font-weight:700;color:var(--sheet-ink)!important;border-right:1px solid var(--sheet-line)}.sheet-section>.landing-primary{margin-top:28px}.sheet-section>.landing-secondary{margin-top:24px}.sheet-section .resources-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sheet .resource-card{gap:10px;padding:26px 24px;border:1px solid var(--sheet-line);border-radius:0;background:var(--sheet-figure);box-shadow:none;color:var(--sheet-ink);transition:border-color .18s var(--ease-out),transform .18s var(--ease-out),box-shadow .18s var(--ease-out)}.sheet .resource-card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 14px 30px #1c16081f}.sheet .resource-kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--chrome-muted)}.sheet .resource-card h3{font-family:var(--font-display);font-size:18px;font-weight:600;letter-spacing:-.01em;line-height:1.2}.sheet .resource-card p{font-size:14px;line-height:1.6;color:var(--ink-soft)}.sheet .resource-more{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:7px 13px;border-radius:999px;background:var(--accent-2);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:600;transition:background .18s var(--ease-out),gap .18s var(--ease-out)}.sheet .resource-card:hover .resource-more{background:var(--accent);gap:10px}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;border-top:1px solid var(--sheet-ink);padding-top:28px}.price-card{position:relative;display:flex;flex-direction:column;padding:30px 30px 32px;border:1px solid var(--sheet-line);background:var(--sheet-figure);transition:border-color .18s var(--ease-out),transform .18s var(--ease-out),box-shadow .18s var(--ease-out)}.price-card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 14px 30px #1c16081f}.price-card-pro{border-color:var(--ink-900);background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),var(--ink-900);background-size:26px 26px,26px 26px,auto;color:var(--on-dark)}.price-card-pro:hover{border-color:var(--accent)}.price-flag{position:absolute;top:0;right:26px;transform:translateY(-50%);padding:4px 11px;background:var(--accent);color:var(--on-accent);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.04em}.price-no{margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--chrome-muted)}.price-card-pro .price-no{color:var(--on-dark-muted)}.price-card h3{margin:12px 0 16px;font-family:var(--font-display);font-size:clamp(24px,3vw,32px);font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--sheet-ink)}.price-card-pro h3{color:#fff}.price-amount{display:flex;align-items:baseline;gap:7px;margin:0}.price-amount strong{font-family:var(--font-display);font-size:40px;font-weight:800;line-height:1;color:var(--sheet-ink)}.price-card-pro .price-amount strong{color:#fff}.price-amount span{font-size:14px;color:var(--ink-soft)}.price-card-pro .price-amount span{color:var(--on-dark-muted)}.price-sub{margin:12px 0 0;font-size:13.5px;line-height:1.55;color:var(--ink-soft)}.price-card-pro .price-sub{color:var(--on-dark-muted)}.price-plus{margin:24px 0 0;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--on-dark-muted)}.price-feats{list-style:none;margin:22px 0 28px;padding:22px 0 0;border-top:1px solid var(--sheet-line);display:grid;gap:12px}.price-feats-pro{margin-top:12px;padding-top:0;border-top:0}.price-feats li{position:relative;padding-left:27px;font-size:14px;line-height:1.45;color:var(--ink)}.price-card-pro .price-feats li{color:var(--on-dark)}.price-feats li:before{content:"✓";position:absolute;left:0;top:0;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-soft);color:var(--accent-2);font-size:11px;font-weight:800}.price-card-pro .price-feats li:before{background:#e08a1e33;color:var(--accent)}.price-cta{width:100%;margin-top:auto;box-sizing:border-box}.sheet-cta{margin-top:clamp(64px,8vw,104px);padding:clamp(56px,7vw,92px) clamp(28px,4vw,56px);text-align:center;border:1px solid var(--ink-900);background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),var(--ink-900);background-size:30px 30px,30px 30px,auto;color:var(--on-dark)}.dwg-tag-dark{justify-content:center;color:var(--on-dark-muted)}.sheet-cta h2{margin:0;font-family:var(--font-display);font-size:clamp(30px,4.2vw,50px);font-weight:700;letter-spacing:-.025em;color:#fff}.sheet-cta>p{margin:14px auto 30px;max-width:440px;color:var(--on-dark-muted);font-size:16px}.sheet-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:64px;padding:28px 0 56px;border-top:2px solid var(--sheet-ink)}.foot-brand .brand-name{font-family:var(--font-display);font-size:18px}.foot-brand p{margin:8px 0 0;max-width:320px;font-family:var(--font-mono);font-size:11.5px;color:var(--chrome-muted)}.sheet-foot .footer-links a{color:var(--ink-soft)}.sheet-foot .footer-links a:hover{color:var(--accent-2)}@media (max-width: 960px){.sheet-hero{display:flex;flex-direction:column;align-items:stretch;gap:40px}.hero-copy{display:contents}.hero-copy:before,.hero-copy:after{display:none}.dwg-tag{order:1}.sheet-hero h1{order:2;white-space:nowrap}.sheet-hero h1 .h1-line1{display:inline}.sheet .landing-lede{order:3;max-width:none}.plan-figure{order:4}.sheet .landing-actions{order:5}.hero-cost{order:6}.hero-spec{order:7}.sheet-section .resources-grid{grid-template-columns:1fr 1fr}}@media (max-width: 680px){.lead{display:none}.sheet-hero{padding-top:clamp(28px,9vw,44px);padding-bottom:4px;gap:30px}.sheet-section{padding-top:52px}.sheet-cta{margin-top:56px;padding:52px 24px}.sheet-foot{margin-top:48px;padding:28px 0 48px}.sheet-hero h1{font-size:clamp(26px,8.2vw,56px)}.hero-copy{padding-left:22px}.dwg-tag{margin-bottom:16px}.sheet .landing-lede{margin-top:22px}.hero-spec{margin-top:30px}.plan-figure{margin-top:6px}.section-rule{flex-wrap:wrap;gap:8px 14px;margin-bottom:26px}.section-rule:after{order:3;flex-basis:100%}.section-rule h2{order:2}.process,.sheet-section .resources-grid,.notes-grid,.pricing-grid{grid-template-columns:1fr}.price-card:hover{transform:none;box-shadow:none}.process li{border-right:0;border-bottom:1px solid var(--sheet-line);margin-right:0;padding:22px 0}.process li:first-child{padding-top:24px}.process li:last-child{border-bottom:0;padding-bottom:0}.bento{grid-template-columns:1fr;gap:12px}.bento-lead{grid-row:auto}.bento article:nth-child(4){grid-column:auto}.bento article{padding:22px 22px 24px}.bento article:hover{transform:none;box-shadow:none}.bento-lead h3{font-size:20px}.title-block{grid-template-columns:1fr 1fr}.title-block div:nth-child(2n){border-right:0}.title-block div{border-bottom:1px solid var(--sheet-line)}.title-block div:nth-last-child(-n+1){border-bottom:0}.legend-row{grid-template-columns:92px 1fr}.legend-row span{padding:14px 16px}.legend-row span:last-child{display:none}.legend-head span:last-child{display:none}.hero-spec{grid-template-columns:1fr}.hero-spec div{border-right:0;border-bottom:1px solid var(--sheet-line);margin-right:0;padding:13px 0}.hero-spec div:last-child{border-bottom:0}}@media (max-width: 520px){.sheet .landing-actions{flex-direction:column;align-items:stretch}.sheet .landing-actions .landing-primary,.sheet .landing-actions .landing-secondary{width:100%}}.pro-badge{display:inline-flex;align-items:center;gap:4px;margin-left:7px;padding:1px 6px;border-radius:5px;background:var(--accent);color:var(--on-accent);font-family:var(--font-sans);font-size:10px;font-weight:800;letter-spacing:.07em;vertical-align:middle;line-height:1.5}.pro-badge-icon{flex:none}.pro-badge--lg{margin-left:9px;padding:3px 9px;border-radius:6px;font-size:12px;letter-spacing:.08em;box-shadow:0 1px 5px #e08a1e80}.btn-locked{display:inline-flex;align-items:center;justify-content:center}.upgrade-modal{width:min(440px,100%);padding:22px 24px 24px}.upgrade-modal .modal-head h2{display:flex;align-items:center;gap:4px}.upgrade-features{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:10px}.upgrade-features li{position:relative;padding-left:26px;font-size:14px;color:var(--ink)}.upgrade-features li:before{content:"✓";position:absolute;left:0;top:-1px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-soft);color:var(--accent-2);font-size:11px;font-weight:800}.upgrade-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;padding:14px 0;border-top:1px solid var(--chrome-border);margin-bottom:18px}.upgrade-price strong{font-family:var(--font-display);font-size:30px;font-weight:800;color:var(--ink);line-height:1}.upgrade-price>span:first-of-type{color:var(--ink-soft);font-size:14px}.upgrade-annual{margin-left:auto;font-size:12px;color:var(--chrome-muted)}.upgrade-actions{display:flex;gap:10px}.upgrade-actions .btn-accent{flex:1;text-align:center;text-decoration:none}.upgrade-actions .btn-accent[disabled]{opacity:.55;cursor:not-allowed}.upgrade-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.upgrade-plan{position:relative;display:flex;flex-direction:column;gap:3px;padding:14px 14px 13px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:var(--chrome-2);text-decoration:none;cursor:pointer;transition:border-color .13s,box-shadow .13s,transform 90ms}.upgrade-plan:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.upgrade-plan--annual{border-color:var(--accent);background:var(--accent-soft);padding-top:24px}.upgrade-plan[aria-disabled=true]{opacity:.45;pointer-events:none}.upgrade-plan-tag{position:absolute;top:8px;left:14px;display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-2)}.upgrade-plan-tag-icon{flex:none}.upgrade-plan-price{font-size:14px;color:var(--ink-soft)}.upgrade-plan-price strong{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--ink)}.upgrade-plan-sub{font-size:11px;color:var(--chrome-muted)}@media (max-width: 420px){.upgrade-plans{grid-template-columns:1fr}.upgrade-plan--annual{padding-top:24px}}.thankyou{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 24px;background:var(--chrome-2)}.thankyou-card{width:min(560px,100%);background:var(--chrome);border:1px solid var(--chrome-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(28px,4vw,44px);text-align:center}.thankyou-badge{display:inline-block;margin-bottom:18px;padding:5px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent-2);font-size:12px;font-weight:700;letter-spacing:.04em}.thankyou-badge strong{font-weight:800;letter-spacing:.08em}.thankyou-card h1{margin:0 0 12px;font-family:var(--font-display);font-size:clamp(28px,5vw,40px);font-weight:800;color:var(--ink)}.thankyou-lede{margin:0 auto 22px;max-width:42ch;font-size:15px;line-height:1.6;color:var(--ink-soft)}.thankyou-list{list-style:none;margin:0 auto 28px;padding:0;display:inline-grid;gap:10px;text-align:left}.thankyou-list li{position:relative;padding-left:28px;font-size:14px;color:var(--ink)}.thankyou-list li:before{content:"✓";position:absolute;left:0;top:-1px;width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:11px;font-weight:800}.thankyou-card .landing-primary{display:inline-flex}.thankyou-note{margin:20px auto 0;max-width:44ch;font-size:12px;line-height:1.5;color:var(--chrome-muted)}.page-breadcrumb{max-width:1000px;margin:24px auto 0;padding:0 24px}.page-breadcrumb+.page-head{padding-top:32px}.page-answer{max-width:820px;margin:26px auto 8px;padding:22px 24px;border:1px solid #dbe4f4;border-left:4px solid var(--accent);border-radius:var(--radius);background:linear-gradient(135deg,#fff,#f7f9fd);box-shadow:var(--shadow-sm)}.page-answer h2{margin:0 0 8px;color:var(--ink);font-size:18px;letter-spacing:-.01em}.page-answer p{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.7}.page-answer a{color:var(--accent-2);font-weight:700;text-underline-offset:2px}.article-meta{display:flex;flex-wrap:wrap;gap:3px 7px}.article-meta a{color:var(--ink-soft);text-underline-offset:2px}.article-meta a:hover{color:var(--accent-2)}.article-answer{margin:24px 0 0;padding:18px 20px;border-left:4px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#f7f9fd}.article-answer h2,.article-toc h2{margin:0 0 7px;color:var(--ink);font-size:15px;letter-spacing:0}.article-answer p{margin:0;color:var(--ink-soft);font-size:15.5px;line-height:1.65}.article-toc{margin-top:18px;padding:17px 20px;border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:#fff}.article-toc ul{columns:2 250px;gap:28px;margin:0;padding:0;list-style:none}.article-toc li{break-inside:avoid;margin:5px 0;padding-left:2px;color:var(--chrome-muted);font-size:13px;line-height:1.45}.article-toc a{color:var(--ink-soft);font-weight:600;text-decoration:none}.article-toc a:hover{color:var(--accent-2);text-decoration:underline;text-underline-offset:2px}.article-disclaimer h2{margin:0 0 9px;color:#5d4610;font-size:16px}.article-disclaimer p{margin:0}.article-disclaimer p+p{margin-top:8px}.articles-answer{max-width:920px}.topic-nav{max-width:1000px;margin:22px auto 30px;padding:0 24px}.topic-nav h2{margin:0 0 11px;color:var(--ink);font-size:14px}.topic-nav ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.topic-nav a{display:inline-flex;gap:5px;padding:7px 11px;border:1px solid var(--chrome-border);border-radius:999px;background:#fff;color:var(--ink-soft);font-size:12px;font-weight:700;text-decoration:none}.topic-nav a:hover{border-color:var(--accent);color:var(--accent-2)}.topic-nav a span{color:var(--chrome-muted)}.articles-list{margin-top:0;margin-bottom:0;padding:0;list-style:none}.articles-list>li{display:flex;min-width:0}.articles-list .article-card{flex:1}.guide-answer ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 24px;margin:16px 0 0;padding-left:22px;color:var(--chrome-muted);font-size:13px;line-height:1.5}.guide-answer li::marker{color:var(--accent-2);font-weight:800}.doc-section .doc-caution{margin-top:13px;padding:11px 13px;border:1px solid #efe1bd;border-radius:var(--radius-sm);background:#fdf6e8;color:#6b5414;font-size:13px;line-height:1.55}.doc-further{margin-top:28px;padding-top:24px;border-top:1px solid var(--chrome-border)}.doc-further h2{margin:0 0 10px;color:var(--ink);font-size:18px}.doc-further ul{display:grid;gap:7px;margin:0;padding-left:20px;color:var(--chrome-muted);font-size:14px;line-height:1.55}.contrib-meta h2{margin:0 0 3px;color:var(--ink);font-size:16px}.contrib-meta h2 a{color:inherit;text-decoration:none}.contrib-meta h2 a:hover{color:var(--accent-2)}.footer-about{max-width:330px}.footer-brand{color:#fff;font-family:var(--font-display);font-size:18px;font-weight:750;letter-spacing:-.01em;text-decoration:none}.footer-about p{margin:8px 0 0;color:var(--on-dark-muted);font-size:12px;font-weight:600;line-height:1.55}.footer-about .footer-safety{color:#e4cda9}.footer-nav-groups{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:34px}.footer-group h2{margin:0 0 10px;color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.landing-footer .footer-group .footer-links{align-items:flex-start;flex-direction:column;gap:7px}.landing-footer .footer-group .footer-links a{font-size:11.5px;font-weight:650}@media (max-width: 860px){.page-answer{margin-right:24px;margin-left:24px}.guide-answer ol{grid-template-columns:1fr}.footer-nav-groups{gap:24px}}@media (max-width: 760px){.landing-links a[href="/how-to"],.landing-links a[href="/articles"]{display:inline}.page-breadcrumb{margin-top:18px;padding:0 18px}.page-breadcrumb+.page-head{padding-top:24px}.page-answer{margin-right:18px;margin-left:18px;padding:19px 20px}.article-toc ul{columns:1}.footer-nav-groups{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.landing-links a[href="/how-to"]{display:none}.footer-nav-groups{grid-template-columns:1fr}}
