html{background:var(--color-background)}body,main{min-width:0}body *{scrollbar-color:var(--color-border-strong) transparent}body ::-webkit-scrollbar{width:10px;height:10px}body ::-webkit-scrollbar-thumb{background:var(--color-border-strong);background-clip:padding-box;border:3px solid #0000;border-radius:999px}body ::-webkit-scrollbar-track{background:0 0}h1,h2,h3,strong,b{color:var(--color-text)}h1{font-weight:720}p,small{color:var(--color-text-secondary)}.topbar{border-color:var(--color-border);background:var(--color-topbar);height:64px;box-shadow:var(--shadow-xs);padding:0 max(24px,3vw)}.brand{color:var(--color-text);letter-spacing:-.015em;font-size:15px}.brand-mark{border-radius:var(--radius-sm);color:#fff;background:var(--color-primary);width:32px;height:32px;font-family:inherit;font-size:15px;font-style:normal;font-weight:800}.topbar nav>a,.nav-menu>summary{color:var(--color-text-secondary);transition:color var(--transition-fast), background var(--transition-fast)}.nav-menu>summary>svg{width:14px;height:14px;transition:transform var(--transition-fast)}.nav-menu:hover>summary>svg,.nav-menu[open]>summary>svg{transform:rotate(180deg)}.topbar nav>a:hover,.nav-menu>summary:hover{color:var(--color-text);background:var(--color-surface-secondary)}.nav-menu-panel{border-color:var(--color-border);background:var(--color-surface-elevated);box-shadow:var(--shadow-md);transition:opacity var(--transition-fast), transform var(--transition-fast), visibility var(--transition-fast)}.nav-menu-panel a{transition:background var(--transition-fast)}.nav-menu-panel a:hover{background:var(--color-surface-secondary)}.theme-manager{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary);align-items:center;gap:2px;margin-left:8px;padding:3px;display:flex}.theme-manager button{width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.theme-manager button:hover{color:var(--color-text)}.theme-manager button.active{color:var(--color-primary);background:var(--color-surface);box-shadow:var(--shadow-xs)}.theme-manager svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.theme-manager span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.workflow-nav{min-width:0}.app-nav-links{align-items:center;gap:3px;display:flex}.app-nav-links>a,.app-nav-disabled{border-radius:var(--radius-sm);color:var(--color-text-secondary);white-space:nowrap;transition:color var(--transition-fast), background var(--transition-fast);align-items:center;gap:7px;padding:8px 10px;font-size:12px;font-weight:650;display:flex}.app-nav-links>a>svg,.app-nav-disabled>svg{stroke-width:1.8px;width:15px;height:15px}.app-nav-links>a:hover{color:var(--color-text);background:var(--color-surface-secondary)}.app-nav-links>a.active{color:var(--color-primary);background:var(--color-primary-soft)}.app-nav-disabled{cursor:not-allowed;opacity:.48}.page{width:min(1240px,100vw - 48px);padding:44px 0 64px}.page-heading{margin-bottom:28px}.page-heading h1{font-size:clamp(30px,4vw,42px)}.eyebrow,.tool-section-label,.cad-panel-kicker,.cad-group-label{color:var(--color-text-secondary);letter-spacing:.11em}.back-link{color:var(--color-primary)}.product-list-skeleton{gap:10px;display:grid}.product-list-skeleton span{border:1px solid var(--color-border);border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-surface-secondary), var(--color-surface), var(--color-surface-secondary));background-size:220% 100%;height:72px;animation:1.2s ease-in-out infinite product-skeleton;display:block}@keyframes product-skeleton{to{background-position:-220% 0}}.public-navigation{align-items:center;gap:24px;display:flex}.public-navigation>div{align-items:center;gap:4px;display:flex}.public-navigation>div>a{border-radius:var(--radius-sm);color:var(--color-text-secondary);transition:color var(--transition-fast), background var(--transition-fast);padding:8px 11px;font-size:12px;font-weight:650}.public-navigation>div>a:hover{color:var(--color-text);background:var(--color-surface-secondary)}.topbar .public-navigation>.public-nav-button{color:#fff;background:var(--color-primary);gap:8px;padding:9px 14px;display:inline-flex}.topbar .public-navigation>.public-nav-button:hover{color:#fff;background:var(--color-primary-hover)}.public-nav-button svg,.public-button svg{width:15px;height:15px}.public-home{overflow:clip}.public-hero,.public-section,.public-product-tour,.public-workflow-section,.public-replace-section,.public-difference-section,.public-final-cta,.public-footer,.public-proof-strip{width:min(1320px,100vw - 64px);margin-inline:auto}.public-hero{min-height:calc(100dvh - var(--topbar-height));grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr);align-items:center;gap:clamp(48px,7vw,104px);padding:72px 0 88px;display:grid}.public-hero-copy{z-index:1;position:relative}.public-kicker{color:var(--color-primary);letter-spacing:.14em;margin-bottom:18px;font-size:10px;font-weight:800;display:block}.public-hero h1{letter-spacing:-.055em;text-wrap:balance;max-width:670px;margin-bottom:22px;font-size:clamp(48px,5.5vw,76px);line-height:.99}.public-hero-copy>p{max-width:610px;margin-bottom:28px;font-size:17px;line-height:1.7}.public-audience{max-width:590px;color:var(--color-text);margin:-12px 0 26px;font-size:12px;line-height:1.6;display:block}.public-hero-actions{flex-wrap:wrap;gap:10px;display:flex}.public-button{min-height:44px;padding-inline:18px}.public-access-note{color:var(--color-text-secondary);flex-wrap:wrap;gap:20px;margin-top:22px;font-size:10px;font-weight:650;display:flex}.public-access-note span{align-items:center;gap:6px;display:flex}.public-access-note svg{width:13px;height:13px;color:var(--color-success);stroke-width:2.4px}.public-product-stage{border:1px solid var(--color-border);background:var(--color-editor);min-width:0;box-shadow:var(--shadow-md);border-radius:18px;position:relative;overflow:hidden}.public-product-stage:before{z-index:-1;background:color-mix(in srgb, var(--color-primary) 12%, transparent);content:"";filter:blur(80px);border-radius:50%;width:430px;height:430px;position:absolute;inset:-130px -150px auto auto}.public-stage-toolbar,.public-stage-footer{border-bottom:1px solid var(--color-border);height:48px;color:var(--color-text-secondary);background:var(--color-surface);justify-content:space-between;align-items:center;padding:0 18px;font-size:10px;font-weight:700;display:flex}.public-stage-toolbar>span:first-child{align-items:center;gap:8px;display:flex}.public-stage-toolbar i{background:var(--color-success);width:7px;height:7px;box-shadow:0 0 0 3px var(--color-success-soft);border-radius:50%}.public-stage-status{color:var(--color-success);background:var(--color-success-soft);border-radius:999px;padding:4px 8px}.public-product-stage>svg{width:100%;height:auto;display:block}.public-stage-background{fill:var(--color-editor)}.public-grid-dot{fill:var(--color-grid)}.public-drawing-geometry{fill:none;stroke:var(--color-geometry);stroke-width:3px;vector-effect:non-scaling-stroke}.public-drawing-dimensions{fill:none;stroke:var(--color-dimension);stroke-width:1.25px;vector-effect:non-scaling-stroke}.public-drawing-dimensions text{fill:var(--color-dimension);stroke:none;text-anchor:middle;font-size:14px;font-weight:720}.public-stage-footer{border-top:1px solid var(--color-border);border-bottom:0;height:42px}.public-stage-footer span{align-items:center;gap:7px;display:flex}.public-stage-footer svg{width:13px;height:13px;color:var(--color-primary)}.public-stage-footer strong{color:var(--color-text-secondary);font-size:10px}.public-proof-strip{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);min-height:72px;color:var(--color-text-secondary);letter-spacing:.035em;justify-content:center;align-items:center;gap:clamp(18px,3vw,44px);font-size:10px;font-weight:750;display:flex}.public-proof-strip i{background:var(--color-border-strong);border-radius:50%;width:3px;height:3px}.public-section{padding:120px 0}.public-definition-section{grid-template-columns:minmax(300px,.82fr) minmax(520px,1.18fr);align-items:end;gap:clamp(50px,8vw,130px);display:grid}.public-definition-section .public-section-heading{margin-bottom:0}.public-section-heading{max-width:720px;margin-bottom:46px}.public-section-heading h2,.public-workflow-section h2,.public-final-cta h2{letter-spacing:-.045em;text-wrap:balance;margin-bottom:14px;font-size:clamp(34px,4vw,50px);line-height:1.06}.public-section-heading p{max-width:650px;margin:0;font-size:15px}.public-definition-grid{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.public-definition-grid span{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);min-height:60px;color:var(--color-text);align-items:center;gap:10px;padding:15px 18px;font-size:11px;font-weight:700;display:flex}.public-definition-grid span:nth-child(2n){border-right:0}.public-definition-grid span:nth-last-child(-n+2){border-bottom:0}.public-definition-grid svg{width:14px;height:14px;color:var(--color-success);stroke-width:2.4px;flex:none}.public-product-tour{padding:36px 0 64px}.public-tour-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;display:grid}.public-tour-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-sm);overflow:hidden}.public-tour-card.dashboard{grid-column:1/7}.public-tour-card.product{grid-column:7/-1}.public-tour-card.variant{grid-column:3/11;margin-top:2px}.public-tour-card>div{border-bottom:1px solid var(--color-border);grid-template-columns:auto auto 1fr;align-items:center;gap:10px;padding:15px 17px;display:grid}.public-tour-card>div>span{color:var(--color-primary);letter-spacing:.08em;font-size:9px;font-weight:800}.public-tour-card>div>strong{font-size:12px}.public-tour-card>div>small{justify-self:end;font-size:9px}.public-tour-card img{background:#111318;width:100%;height:auto;display:block}.public-capabilities-section{padding-top:64px}.public-capability-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.public-capability-grid article{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);min-height:230px;box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-panel), transform var(--transition-panel);padding:24px}.public-capability-grid article:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.public-capability-grid h3{letter-spacing:-.02em;margin:36px 0 8px;font-size:16px}.public-capability-grid p{margin:0;font-size:12px;line-height:1.65}.public-capability-icon{border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.public-capability-icon.rule{color:var(--color-rule);background:var(--color-rule-soft)}.public-capability-icon.success{color:var(--color-success);background:var(--color-success-soft)}.public-capability-icon.neutral{color:var(--color-text-secondary);background:var(--color-surface-secondary)}.public-capability-icon svg{stroke-width:1.8px;width:19px;height:19px}.public-workflow-section{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-xs);border-radius:22px;grid-template-columns:minmax(280px,.7fr) minmax(520px,1.3fr);gap:clamp(48px,8vw,120px);padding:112px clamp(30px,5vw,72px);display:grid}.public-section-heading.compact{margin:0}.public-workflow-list{margin:0;padding:0;list-style:none;display:grid}.public-workflow-list li{border-bottom:1px solid var(--color-border);grid-template-columns:46px 1fr;gap:18px;padding:23px 0;display:grid}.public-workflow-list li:first-child{padding-top:0}.public-workflow-list li:last-child{border-bottom:0;padding-bottom:0}.public-workflow-list li>span{color:var(--color-primary);letter-spacing:.08em;font-size:10px;font-weight:800}.public-workflow-list strong{margin-bottom:5px;font-size:14px;display:block}.public-workflow-list p{margin:0;font-size:11px}.public-replace-section{grid-template-columns:minmax(320px,.9fr) minmax(500px,1.1fr);align-items:center;gap:clamp(50px,8vw,130px);padding:124px 0;display:grid}.public-replace-section h2{letter-spacing:-.045em;max-width:660px;margin-bottom:14px;font-size:clamp(34px,4vw,50px);line-height:1.06}.public-replace-section p{max-width:560px;margin:0;font-size:14px}.public-replace-list{border-top:1px solid var(--color-border);display:grid}.public-replace-list>span{border-bottom:1px solid var(--color-border);min-height:68px;color:var(--color-text);grid-template-columns:90px 1fr;align-items:center;gap:18px;font-size:12px;font-weight:650;display:grid}.public-replace-list i{color:var(--color-text-tertiary);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-style:normal;font-weight:800}.public-difference-section{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.public-difference-section>article{border:1px solid var(--color-border);background:var(--color-surface);min-height:430px;box-shadow:var(--shadow-xs);border-radius:22px;padding:clamp(30px,4vw,54px)}.public-difference-section h2{letter-spacing:-.04em;max-width:550px;margin-bottom:34px;font-size:clamp(31px,3.2vw,44px);line-height:1.06}.public-no-cad>div{border-top:1px solid var(--color-border);gap:0;display:grid}.public-no-cad>div span{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:17px 0;font-size:12px;font-weight:700}.public-outputs>div{border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.public-outputs>div>span{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-content:center;column-gap:11px;min-height:108px;padding:17px;display:grid}.public-outputs>div>span:nth-child(2n){border-right:0}.public-outputs>div>span:nth-last-child(-n+2){border-bottom:0}.public-outputs svg{width:18px;height:18px;color:var(--color-primary);stroke-width:1.8px;grid-row:1/3;align-self:center}.public-outputs strong{font-size:12px}.public-outputs small{font-size:9px}.public-final-cta{justify-content:space-between;align-items:flex-end;gap:40px;padding:120px 0;display:flex}.public-final-cta>div{max-width:760px}.public-final-cta p{margin:0;font-size:14px}.public-final-cta .public-button{flex:none;margin-bottom:4px}.public-footer{border-top:1px solid var(--color-border);color:var(--color-text-secondary);justify-content:space-between;align-items:center;padding:26px 0 38px;font-size:10px;display:flex}.public-footer strong{margin-right:8px}.dashboard-page{gap:32px;display:grid}.dashboard-welcome{justify-content:space-between;align-items:flex-end;gap:24px;padding-top:6px;display:flex}.dashboard-welcome h1{margin-bottom:7px;font-size:clamp(28px,3vw,38px)}.dashboard-welcome p{margin:0;font-size:15px}.dashboard-local-status{border:1px solid var(--color-border);color:var(--color-text-secondary);background:var(--color-surface);border-radius:999px;align-items:center;gap:8px;padding:7px 10px;font-size:11px;font-weight:650;display:flex}.dashboard-local-status>span{background:var(--color-success);width:7px;height:7px;box-shadow:0 0 0 3px var(--color-success-soft);border-radius:50%}.dashboard-primary-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.dashboard-primary-actions article{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);min-height:190px;box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-panel), transform var(--transition-panel);grid-template-columns:auto 1fr;align-items:start;gap:16px;padding:24px;display:grid}.dashboard-primary-actions article:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.dashboard-primary-actions article>div{min-width:0}.dashboard-primary-actions article h2{margin:2px 0 6px;font-size:21px}.dashboard-primary-actions article p{max-width:380px;margin:0;font-size:13px}.dashboard-primary-actions article .button{grid-column:2;place-self:end start}.dashboard-primary-actions article .button svg{width:16px;height:16px}.dashboard-action-icon{border-radius:var(--radius-md);width:42px;height:42px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.dashboard-action-icon.rule{color:var(--color-rule);background:var(--color-rule-soft)}.dashboard-action-icon svg{width:20px;height:20px}.dashboard-section{gap:14px;display:grid}.dashboard-section-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.dashboard-section-heading h2{margin:0 0 3px;font-size:16px}.dashboard-section-heading p{margin:0;font-size:11px}.dashboard-section-heading>a{color:var(--color-primary);font-size:11px;font-weight:700}.dashboard-section-heading>svg{width:16px;height:16px;color:var(--color-text-tertiary)}.dashboard-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.dashboard-quick-actions>a,.dashboard-quick-actions>span{border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);align-items:center;gap:12px;padding:14px;display:flex}.dashboard-quick-actions>a:hover{border-color:var(--color-primary);background:var(--color-primary-soft);transform:translateY(-1px)}.dashboard-quick-actions>.disabled{cursor:not-allowed;opacity:.55}.dashboard-quick-actions>a>svg,.dashboard-quick-actions>span>svg{width:18px;height:18px;color:var(--color-primary);flex:none}.dashboard-quick-actions>*>span{gap:2px;min-width:0;display:grid}.dashboard-quick-actions strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.dashboard-quick-actions small{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.dashboard-stats article{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);align-items:center;gap:13px;padding:17px;display:flex}.dashboard-stats article>svg{width:18px;height:18px;color:var(--color-text-tertiary)}.dashboard-stats article>span{gap:2px;display:grid}.dashboard-stats small{font-size:10px;font-weight:650}.dashboard-stats strong{letter-spacing:-.02em;font-size:21px}.dashboard-stats .stat-date{font-size:14px}.dashboard-data-grid{grid-template-columns:minmax(0,1.7fr) minmax(260px,.7fr);align-items:stretch;gap:16px;display:grid}.dashboard-table-card,.dashboard-pinned-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-xs);padding:20px}.dashboard-table-card{gap:16px;display:grid}.dashboard-table-scroll{min-width:0;overflow-x:auto}.dashboard-table-card table{border-collapse:collapse;border:0;width:100%}.dashboard-table-card th,.dashboard-table-card td{border-right:0;border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap;padding:12px 10px;font-size:11px}.dashboard-table-card th{color:var(--color-text-secondary);letter-spacing:.06em;text-transform:uppercase;background:0 0;font-size:9px}.dashboard-table-card tbody tr:last-child td{border-bottom:0}.dashboard-product-link{align-items:center;gap:10px;display:flex}.dashboard-product-link>span:first-child,.dashboard-pinned-list>a>span:first-child{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--color-primary);background:var(--color-primary-soft);flex:none;place-items:center;font-size:11px;font-weight:800;display:grid}.dashboard-product-link>span:last-child,.dashboard-pinned-list>a>span:nth-child(2){gap:2px;display:grid}.dashboard-product-link small,.dashboard-pinned-list small{font-size:9px}.dashboard-status{border-radius:999px;align-items:center;padding:4px 7px;font-size:9px;font-weight:750;display:inline-flex}.dashboard-status.ready{color:var(--color-success);background:var(--color-success-soft)}.dashboard-status.draft{color:var(--color-warning);background:var(--color-warning-soft)}.dashboard-empty-cell{color:var(--color-text-secondary);text-align:center!important;padding-block:28px!important}.dashboard-empty-cell a{color:var(--color-primary)}.dashboard-row-actions{width:42px;text-align:right!important}.dashboard-row-actions .resource-delete.compact{border-color:color-mix(in srgb, var(--color-danger) 28%, var(--color-border));width:28px;height:28px;color:var(--color-danger);background:var(--color-danger-soft);margin-left:auto;position:static;transform:none}.dashboard-row-actions .resource-delete.compact:hover{background:color-mix(in srgb, var(--color-danger) 15%, var(--color-surface))}.dashboard-pinned-card{flex-direction:column;gap:14px;display:flex}.dashboard-pinned-list{gap:7px;display:grid}.dashboard-pinned-list>a{border-radius:var(--radius-md);transition:background var(--transition-fast);align-items:center;gap:10px;padding:9px;display:flex}.dashboard-pinned-list>a:hover{background:var(--color-surface-secondary)}.dashboard-pinned-list>a>svg{width:15px;height:15px;color:var(--color-text-tertiary);margin-left:auto}.dashboard-pinned-empty{color:var(--color-text-secondary);text-align:center;padding:24px 10px;font-size:11px}.dashboard-workflow{border-top:1px solid var(--color-border);color:var(--color-text-secondary);justify-content:center;align-items:center;gap:14px;padding:18px;font-size:10px;font-weight:700;display:flex}.dashboard-workflow svg{width:13px;height:13px;color:var(--color-text-tertiary)}.configurator-library-grid{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.cpq-create-card,.cpq-section,.cpq-editor-sidebar,.cpq-model-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-xs)}.cpq-create-card{gap:16px;padding:24px;display:grid}.cpq-create-card h2,.cpq-create-card p{margin:0}.cpq-create-card label,.cpq-editor-sidebar label,.cpq-definition-row label,.cpq-formula-meta label,.cpq-output-row label,.cpq-test-inputs label{color:var(--color-text-secondary);gap:6px;font-size:11px;font-weight:700;display:grid}.cpq-icon{border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.cpq-icon svg{width:19px;height:19px}.cpq-model-list{gap:10px;display:grid}.cpq-model-card{align-items:stretch;display:flex;overflow:hidden}.cpq-model-card>a{flex:1;align-items:center;gap:14px;min-width:0;padding:17px;display:flex}.cpq-model-card>a>span:nth-child(2){flex:1;gap:4px;min-width:0;display:grid}.cpq-model-card strong,.cpq-model-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cpq-model-card>button{border:0;border-left:1px solid var(--color-border);width:52px;color:var(--color-danger);background:0 0;border-radius:0}.cpq-model-card>button:hover{background:var(--color-danger-soft)}.cpq-model-card>button svg{width:16px}.cpq-delete-confirm{border-left:1px solid var(--color-border);align-content:center;gap:4px;width:92px;padding:6px;display:grid}.cpq-delete-confirm button{border:0;border-radius:5px;min-height:25px;padding:3px 7px;font-size:9px}.cpq-delete-confirm button:first-child{color:var(--color-danger);background:var(--color-danger-soft)}.page.cpq-editor-page{width:min(1480px,100vw - 40px);overflow:clip}.cpq-editor-heading{z-index:20;top:calc(var(--topbar-height) + 8px);box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:color-mix(in srgb, var(--color-background) 96%, transparent);width:100%;box-shadow:var(--shadow-sm);isolation:isolate;flex-wrap:wrap;gap:16px;margin-bottom:18px;padding:16px 18px;position:sticky}.cpq-editor-heading .back-link{margin-bottom:8px;display:block}.cpq-title-input{width:min(560px,70vw);box-shadow:none;letter-spacing:-.035em;background:0 0;border:0;border-radius:0;padding:0;font-size:clamp(28px,4vw,42px);font-weight:760}.cpq-title-input:focus{box-shadow:0 2px 0 var(--color-primary)}.cpq-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.cpq-heading-actions svg,.cpq-section-heading .button svg{width:15px;height:15px}.save-status,.save-success{min-width:110px;color:var(--color-warning);text-align:right;font-size:11px;font-weight:700}.save-success{color:var(--color-success)}.cpq-editor-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:22px;display:grid}.cpq-editor-sidebar{top:calc(var(--topbar-height) + 122px);gap:20px;padding:16px;display:grid;position:sticky}.cpq-editor-sidebar nav{gap:3px;display:grid}.cpq-editor-sidebar nav a{border-radius:var(--radius-sm);color:var(--color-text-secondary);padding:9px 10px;font-size:11px;font-weight:700}.cpq-editor-sidebar nav a:hover{color:var(--color-primary);background:var(--color-primary-soft)}.cpq-editor-sidebar section{border-top:1px solid var(--color-border);gap:12px;padding-top:16px;display:grid}.cpq-editor-sidebar textarea{resize:vertical;min-height:90px}.cpq-editor-content{gap:18px;min-width:0;display:grid}.cpq-section{scroll-margin-top:calc(var(--topbar-height) + 140px);padding:22px}.cpq-section-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.cpq-section-heading>div{grid-template-columns:28px 1fr;column-gap:10px;display:grid}.cpq-section-heading>div>span{color:#fff;background:var(--color-primary);border-radius:50%;grid-row:span 2;place-items:center;width:26px;height:26px;font-size:11px;font-weight:800;display:grid}.cpq-section-heading h2{margin:2px 0 3px;font-size:18px}.cpq-section-heading p{grid-column:2;margin:0;font-size:11px}.cpq-product-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cpq-product-options>label{border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:11px;padding:13px;display:flex}.cpq-product-options>label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.cpq-product-options>label>span{gap:3px;display:grid}.cpq-product-options small{font-size:9px}.cpq-variable-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cpq-variable-catalog article{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary);justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:12px;display:flex}.cpq-variable-catalog article>span{gap:3px;min-width:0;display:grid}.cpq-variable-catalog code{color:var(--color-rule);text-overflow:ellipsis;font-size:9px;overflow:hidden}.cpq-variable-catalog article>span:last-child{color:var(--color-text-secondary);justify-items:end;font-size:9px}.cpq-definition-list{gap:10px;display:grid}.cpq-definition-row,.cpq-output-row{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);grid-template-columns:1.4fr 1fr .8fr .7fr 1fr auto;align-items:end;gap:10px;padding:14px;display:grid}.cpq-definition-row input,.cpq-definition-row select,.cpq-output-row input,.cpq-output-row select,.cpq-formula-meta input,.cpq-formula-meta select{width:100%;min-width:0}.cpq-check{align-items:center;min-height:38px;color:var(--color-text)!important;gap:7px!important;display:flex!important}.icon-button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);place-items:center;width:38px;height:38px;padding:0;display:grid}.icon-button svg{width:15px;height:15px}.icon-button.danger{color:var(--color-danger)}.cpq-formula-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);overflow:visible}.cpq-formula-card>header{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:13px;display:flex}.cpq-formula-card>header>span:first-child{flex:1;grid-template-columns:auto 1fr;column-gap:9px;min-width:0;display:grid}.cpq-formula-card>header>span:first-child svg{width:17px;height:17px;color:var(--color-rule);grid-row:span 2}.cpq-formula-card>header small{font-family:var(--font-mono);font-size:9px}.cpq-mode-switch{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:3px;display:flex}.cpq-mode-switch button{min-height:27px;color:var(--color-text-secondary);background:0 0;border:0;align-items:center;gap:5px;padding:5px 9px;font-size:9px;display:flex}.cpq-mode-switch button.active{color:var(--color-primary);background:var(--color-primary-soft)}.cpq-mode-switch svg{width:12px;height:12px}.cpq-formula-meta{grid-template-columns:1.4fr 1fr .8fr .7fr;gap:10px;padding:13px;display:grid}.cpq-visual-builder,.cpq-code-editor{margin:0 13px 13px}.cpq-visual-builder{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:visible}.cpq-token-row{border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:5px;padding:8px;display:flex}.cpq-token-row>button,.cpq-token-row summary,.cpq-token-row select{border:1px solid var(--color-border);min-height:28px;color:var(--color-text-secondary);background:var(--color-surface-secondary);border-radius:6px;padding:5px 8px;font-size:9px;font-weight:700}.cpq-token-row details{position:relative}.cpq-token-row summary{cursor:pointer;align-items:center;gap:5px;list-style:none;display:flex}.cpq-token-row summary svg{width:11px}.cpq-token-row details>div{z-index:10;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-elevated);width:180px;box-shadow:var(--shadow-md);grid-template-columns:repeat(2,1fr);gap:4px;padding:7px;display:grid;position:absolute;top:calc(100% + 5px);right:0}.cpq-token-row details button{background:var(--color-surface-secondary);border:0;border-radius:5px;min-height:28px;font-size:9px}.cpq-visual-builder textarea,.cpq-code-editor{resize:vertical;width:100%;min-height:96px;font-family:var(--font-mono);font-size:12px;line-height:1.6}.cpq-visual-builder textarea{border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:none;border:0}.cpq-code-editor{width:calc(100% - 26px);color:var(--color-rule);background:var(--color-editor)}.cpq-output-row{grid-template-columns:1.4fr 1.2fr auto auto auto}.cpq-group-row{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);grid-template-columns:1fr 1fr minmax(240px,2fr) auto;align-items:start;gap:10px;padding:14px;display:grid}.cpq-group-row>label{color:var(--color-text-secondary);gap:6px;font-size:11px;font-weight:700;display:grid}.cpq-group-row fieldset{border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-wrap:wrap;gap:5px 12px;padding:8px 10px;display:flex}.cpq-group-row legend{color:var(--color-text-secondary);padding:0 5px;font-size:9px;font-weight:700}.cpq-test-grid{grid-template-columns:minmax(240px,.8fr) minmax(280px,1.2fr);gap:16px;display:grid}.cpq-test-inputs{gap:10px;display:grid}.cpq-result-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);align-content:start;gap:8px;padding:16px;display:grid}.cpq-result-panel>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:20px;padding:10px 0;display:flex}.cpq-result-panel strong{font-size:18px}.cpq-editor-mode-switch{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary);padding:3px;display:inline-flex}.cpq-editor-mode-switch button{border-radius:var(--radius-sm);min-height:32px;color:var(--color-text-secondary);background:0 0;border:0;align-items:center;gap:6px;padding:6px 11px;font-size:10px;font-weight:750;display:flex}.cpq-editor-mode-switch button.active{color:var(--color-primary);background:var(--color-surface);box-shadow:var(--shadow-xs)}.cpq-editor-mode-switch svg{width:13px;height:13px}.cpq-simple-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:22px;display:grid}.cpq-simple-layout>*{min-width:0}.cpq-simple-content{gap:16px;min-width:0;display:grid}.cpq-simple-intro,.cpq-simple-step,.cpq-simple-preview{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-xs)}.cpq-simple-intro{justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.cpq-simple-intro h2{margin:6px 0;font-size:22px}.cpq-simple-intro p{max-width:640px;margin:0;font-size:12px;line-height:1.55}.cpq-advanced-notice{border:1px solid color-mix(in srgb, var(--color-rule) 28%, var(--color-border));border-radius:var(--radius-md);max-width:310px;color:var(--color-rule);background:var(--color-rule-soft);text-align:left;flex:none;align-items:center;gap:11px;padding:11px 13px;display:flex}.cpq-advanced-notice>svg{flex:none;width:17px;height:17px}.cpq-advanced-notice>span{gap:2px;display:grid}.cpq-advanced-notice strong{font-size:10px}.cpq-advanced-notice small{font-size:9px;line-height:1.35}.cpq-simple-step{padding:22px}.cpq-simple-step>header{align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.cpq-simple-step>header>span{color:#fff;background:var(--color-primary);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:11px;font-weight:800;display:grid}.cpq-simple-step h2{margin:1px 0 3px;font-size:17px}.cpq-simple-step header p{margin:0;font-size:11px}.cpq-simple-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.cpq-simple-cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.cpq-simple-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);align-content:start;gap:14px;padding:16px;display:grid}.cpq-simple-card>header{align-items:center;gap:9px;display:flex}.cpq-simple-card>header>span{border-radius:var(--radius-sm);width:31px;height:31px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.cpq-simple-card>header svg{width:16px;height:16px}.cpq-simple-card h3{margin:0;font-size:13px}.cpq-simple-field{color:var(--color-text-secondary);gap:6px;font-size:10px;font-weight:700;display:grid}.cpq-simple-field>span:last-child{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.cpq-simple-field input{text-align:right;width:100%;min-width:0;font-size:14px;font-weight:750}.cpq-simple-field b{min-width:30px;color:var(--color-text-secondary);font-size:9px;font-weight:650}.cpq-simple-help{margin:0;font-size:10px;line-height:1.5}.cpq-simple-preview{top:calc(var(--topbar-height) + 130px);gap:14px;padding:22px;display:grid;position:sticky}.cpq-simple-preview h2{margin:-4px 0;font-size:21px}.cpq-simple-preview>p{margin:0 0 4px;font-size:11px;line-height:1.5}.cpq-simple-preview>label{color:var(--color-text-secondary);gap:6px;font-size:10px;font-weight:700;display:grid}.cpq-simple-preview .button{width:100%}.cpq-simple-result{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);display:grid;overflow:hidden}.cpq-simple-result>p{text-align:center;margin:0;padding:20px;font-size:10px}.cpq-simple-result>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding:10px 13px;display:flex}.cpq-simple-result>div:last-child{border-bottom:0}.cpq-simple-result span{color:var(--color-text-secondary);font-size:10px}.cpq-simple-result strong{font-size:13px}.cpq-simple-result>.primary{color:#fff;background:var(--color-primary);padding-block:15px}.cpq-simple-result>.primary span,.cpq-simple-result>.primary strong{color:#fff}.cpq-simple-result>.primary strong{font-size:20px}.cpq-simple-preview>small{text-align:center;font-size:9px;line-height:1.45}.cpq-block-layout{grid-template-columns:minmax(0,1fr) 350px}.cpq-scope-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.cpq-scope-options button{border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:56px;color:var(--color-text-secondary);background:var(--color-surface-secondary);text-align:left;align-items:center;gap:9px;padding:10px 12px;font-size:10px;font-weight:700;display:flex}.cpq-scope-options button svg{flex:none;width:15px;height:15px}.cpq-scope-options button.active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.cpq-simple-select{max-width:420px;color:var(--color-text-secondary);gap:7px;font-size:10px;font-weight:700;display:grid}.cpq-block-heading{position:relative}.cpq-block-heading>div:nth-child(2){flex:1}.cpq-add-block{margin-left:auto;position:relative}.cpq-add-block>.button{white-space:nowrap}.cpq-add-block>.button svg{width:14px;height:14px}.cpq-add-block>div{z-index:30;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-elevated);width:300px;box-shadow:var(--shadow-md);padding:7px;display:grid;position:absolute;top:calc(100% + 7px);right:0}.cpq-add-block>div>button{border-radius:var(--radius-sm);color:var(--color-text);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:10px;display:flex}.cpq-add-block>div>button:hover{background:var(--color-surface-secondary)}.cpq-add-block>div>button>svg{width:17px;height:17px;color:var(--color-primary)}.cpq-add-block>div>button>span{gap:2px;display:grid}.cpq-add-block>div strong{font-size:10px}.cpq-add-block>div small{font-size:9px}.cpq-block-empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);min-height:170px;color:var(--color-text-secondary);background:var(--color-surface-secondary);text-align:center;align-content:center;place-items:center;gap:7px;display:grid}.cpq-block-empty svg{width:24px;height:24px;color:var(--color-text-tertiary)}.cpq-block-empty p{margin:0;font-size:10px}.cpq-cost-block-list{gap:10px;display:grid}.cpq-cost-block{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);overflow:hidden}.cpq-cost-block>header{border-bottom:1px solid var(--color-border);background:var(--color-surface);align-items:center;gap:11px;padding:13px 14px;display:flex}.cpq-cost-icon{border-radius:var(--radius-sm);width:33px;height:33px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.cpq-cost-icon svg{width:16px;height:16px}.cpq-cost-block>header>span:nth-child(2){flex:1;gap:2px;display:grid}.cpq-cost-block>header small{text-transform:uppercase;letter-spacing:.08em;font-size:8px}.cpq-cost-block>header strong{font-size:12px}.cpq-cost-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;display:grid}.cpq-material-library-choice{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-column:1/-1;justify-content:space-between;align-items:center;gap:18px;padding:13px 14px;display:flex}.cpq-material-library-choice.active{border-color:color-mix(in srgb, var(--color-success) 45%, var(--color-border));background:color-mix(in srgb, var(--color-success) 8%, var(--color-surface))}.cpq-material-library-choice>span{align-items:center;gap:11px;min-width:0;display:flex}.cpq-material-library-choice>span>svg{width:20px;color:var(--color-primary);flex:none}.cpq-material-library-choice>span>span{gap:3px;min-width:0;display:grid}.cpq-material-library-choice small{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cpq-material-library-choice .button{flex:none}.cpq-cost-fields>label,.cpq-commercial-grid>label{color:var(--color-text-secondary);align-content:start;gap:6px;font-size:10px;font-weight:700;display:grid}.cpq-cost-fields input,.cpq-cost-fields select{width:100%;min-width:0}.cpq-commercial-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.cpq-simple-result>.subtotal{border-top:1px solid var(--color-border-strong);background:var(--color-surface)}.cpq-simple-preview>label{position:relative}.cpq-simple-preview>label>small{pointer-events:none;font-size:8px;position:absolute;bottom:12px;right:10px}.button,button{transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-base), transform var(--transition-base)}.button{border-radius:var(--radius-sm);min-height:40px;font-weight:680}.button:hover:not(:disabled){transform:none}.button.primary,.cad-save{color:#fff;background:var(--color-primary);box-shadow:var(--shadow-xs)}.button.primary:hover:not(:disabled),.cad-save:hover:not(:disabled){background:var(--color-primary-hover)}.button.secondary{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}.button.secondary:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-secondary)}.button.danger,.danger-button{border-color:color-mix(in srgb, var(--color-danger) 30%, var(--color-border));color:var(--color-danger);background:var(--color-danger-soft)}input,select,textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:40px;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast)}input:hover,select:hover,textarea:hover{border-color:var(--color-border-strong)}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 15%, transparent);outline:0}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}.product-create-card,.product-editor-sketch,.product-parameters-panel,.drawing-card,.template-card,.run-card,.form-card,.variant-preview-card,.variant-dimensions-panel,.stat-card,.upload-card,.feature-card,.annotation-card,.inspector-card,.sketch-inspector,.list-card,.workflow-card{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-xs)}.app-dialog-backdrop{background:var(--color-overlay)}.app-dialog,.cad-context-menu,.add-view-menu{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface-elevated);box-shadow:var(--shadow-md)}.app-dialog{border-radius:var(--radius-xl)}.company-settings-page{max-width:1180px}.company-settings-card{grid-template-columns:64px minmax(0,1fr);gap:22px 26px;max-width:760px;padding:28px;display:grid}.settings-card-icon{border-radius:var(--radius-lg);width:52px;height:52px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.settings-card-icon svg{width:25px}.company-settings-card>label,.company-settings-card>button,.company-settings-card>.variant-success,.company-settings-card>.form-error,.company-logo-preview,.company-logo-placeholder{grid-column:2}.company-settings-card label{gap:8px;font-weight:650;display:grid}.company-settings-card label small{color:var(--color-text-secondary);font-weight:450}.company-logo-preview,.company-logo-placeholder{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);place-items:center;width:100%;min-height:128px;display:grid}.company-logo-preview img{object-fit:contain;max-width:280px;max-height:96px;display:block}.company-logo-placeholder{color:var(--color-text-secondary)}.company-logo-placeholder svg{width:26px;margin-bottom:6px}.variant-export-actions{align-items:center;gap:10px;display:flex}.variant-export-actions .button svg{width:17px}.material-area-dialog{width:min(640px,100vw - 40px);padding:30px}.material-area-dialog h2{margin-top:8px;font-size:26px}.material-area-dialog>p{max-width:520px;margin-bottom:24px;font-size:13px;line-height:1.6}.material-area-dialog>label{color:var(--color-text);gap:8px;margin-top:16px;font-size:13px;font-weight:700;display:grid}.material-area-dialog>label input,.material-area-dialog>label select{width:100%;min-height:46px}.material-area-dialog .input-with-unit{width:100%}.material-area-dialog .input-with-unit input{min-width:0}.material-area-dialog .app-dialog-actions{border-top:1px solid var(--color-border);gap:12px;margin-top:28px;padding-top:20px}.material-area-dialog .app-dialog-actions .button{min-width:120px;min-height:44px}@media (max-width:620px){.material-area-dialog{padding:22px}.material-area-dialog .app-dialog-actions{grid-template-columns:1fr 1fr;display:grid}.material-area-dialog .app-dialog-actions .danger{grid-column:1/-1}}.cad-context-menu button:hover,.add-view-menu button:hover{background:var(--color-surface-secondary)}table{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}th{color:var(--color-text-secondary);background:var(--color-surface-secondary)}td,th{border-color:var(--color-border)}tr:hover td{background:color-mix(in srgb, var(--color-primary) 4%, var(--color-surface))}.tabs,.viewer-tabs,.geometry-tabs{border-color:var(--color-border);background:var(--color-surface-secondary)}.tabs button,.viewer-tabs button,.geometry-tabs button{color:var(--color-text-secondary)}.tabs button.active,.viewer-tabs button.active,.geometry-tabs button.active{color:var(--color-primary);background:var(--color-surface);box-shadow:var(--shadow-xs)}.form-error,.cad-error,.validation-error{border-color:color-mix(in srgb, var(--color-danger) 28%, var(--color-border));color:var(--color-danger);background:var(--color-danger-soft)}.cad-warning,.warning,.variant-field-warning{color:var(--color-warning);background:var(--color-warning-soft)}.success-message,.variant-success{color:var(--color-success);background:var(--color-success-soft)}.cad-editor-shell{border-color:var(--color-border);min-height:0;color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-sm);flex-direction:column;flex:1;display:flex}.page.cad-product-page{flex-direction:column;width:calc(100vw - 24px);max-width:none;height:calc(100dvh - 64px);padding-top:14px;padding-bottom:12px;display:flex;overflow:hidden}.cad-product-page .cad-product-heading{margin-bottom:10px}.product-editor-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.product-editor-tabs{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary);flex:none;gap:3px;padding:4px;display:inline-flex}.product-editor-tabs button{border-radius:var(--radius-sm);min-height:36px;color:var(--color-text-secondary);background:0 0;border:0;padding:7px 16px;font-weight:700}.product-editor-tabs button.active{color:var(--color-primary);background:var(--color-surface);box-shadow:var(--shadow-xs)}.page.product-views-page{width:calc(100vw - 32px);max-width:none;padding-top:22px}.product-views-workspace{grid-template-columns:minmax(330px,420px) minmax(0,1fr);gap:18px;min-height:calc(100dvh - 220px);display:grid}.view-question-panel,.view-preview-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-xs)}.view-question-panel{align-content:start;gap:18px;padding:22px;display:grid}.view-question-panel>h2,.view-preview-panel h2{margin:-10px 0 0}.view-question-panel>p,.view-preview-panel p{color:var(--color-text-secondary);margin:-10px 0 0;line-height:1.5}.view-question-panel>section{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary);gap:12px;padding:16px;display:grid;position:relative}.view-question-panel>section>div:nth-child(2){gap:3px;padding-left:32px;display:grid}.view-question-panel section small{color:var(--color-text-secondary);line-height:1.4}.view-step{color:#fff;background:var(--color-primary);border-radius:50%;place-items:center;width:23px;height:23px;font-size:11px;font-weight:800;display:grid;position:absolute;top:14px;left:14px}.view-choice-grid{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.view-choice-grid button,.view-boolean-choice button{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:36px;color:var(--color-text-secondary);background:var(--color-surface);padding:7px 9px}.view-choice-grid button.active,.view-boolean-choice button.active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.view-boolean-choice button.warning.active{border-color:var(--color-warning);color:var(--color-warning);background:var(--color-warning-soft)}.view-generated-questions{gap:14px;display:grid}.view-generated-questions>label,.view-generated-questions fieldset{border:0;gap:6px;margin:0;padding:0;font-size:12px;font-weight:700;display:grid}.view-generated-questions fieldset{gap:9px}.view-generated-questions legend{margin-bottom:4px}.view-boolean-choice{grid-template-columns:1fr 1fr;gap:7px;display:grid}.view-number-input{position:relative}.view-number-input input{width:100%;padding-right:40px}.view-number-input b{color:var(--color-text-secondary);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.view-feature-check{border-radius:var(--radius-sm);background:var(--color-surface);grid-template-columns:none;align-items:center;padding:8px;gap:8px!important;display:flex!important}.view-feature-check input{width:auto}.view-manual-warning{border-radius:var(--radius-sm);background:var(--color-warning-soft);padding:12px;color:var(--color-warning)!important;margin:0!important}.view-preview-panel{grid-template-rows:auto minmax(0,1fr) auto;gap:16px;min-width:0;min-height:0;padding:22px;display:grid}.view-preview-panel>div{gap:9px;display:grid}.view-preview-grid{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-border);height:calc(100dvh - 210px);min-height:620px;overflow:hidden;gap:1px!important;display:grid!important}.view-preview-grid.view-count-1{grid-template-columns:1fr}.view-preview-grid.view-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.view-preview-grid.view-count-3,.view-preview-grid.view-count-4{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr))}.view-preview-grid.view-count-3 .view-preview-cell:first-child{grid-column:1/-1}.view-preview-cell{background-color:var(--color-editor);background-image:radial-gradient(var(--color-grid) 1.2px, transparent 1.2px);background-size:16px 16px;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.view-preview-cell header{z-index:1;border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 92%, transparent);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.view-preview-cell header strong{gap:2px;font-size:13px;display:grid}.view-preview-cell header strong small{color:var(--color-text-secondary);font-size:10px;font-weight:600}.view-preview-cell header span{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.view-preview-cell svg{width:100%;height:100%;min-height:0}.view-preview-cell svg line,.view-preview-cell svg circle{fill:none;stroke:var(--color-geometry);stroke-width:2px;vector-effect:non-scaling-stroke}.view-preview-cell svg .generated-view-entity{stroke:var(--color-primary)}.view-preview-cell svg .view-preview-dimensions line{stroke:var(--color-dimension);stroke-width:1.25px;vector-effect:non-scaling-stroke}.view-preview-cell svg .view-preview-dimensions .extension{opacity:.72}.view-preview-cell svg .view-preview-dimensions text{fill:var(--color-dimension);text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:var(--color-editor);stroke-width:4px;stroke-linejoin:round;font-weight:750}.cad-editor-header,.cad-command-area{border-color:var(--color-border);background:var(--color-surface)}.cad-editor-header{min-height:78px}.cad-tool-group{border-color:var(--color-border);align-items:center;padding-bottom:17px;position:relative}.cad-group-label{width:max-content;color:var(--color-text-secondary);text-align:center;writing-mode:horizontal-tb;margin:0;line-height:1;position:absolute;bottom:3px;left:50%;right:auto;transform:translate(-50%)}.cad-tool-group>button{color:var(--color-text-secondary);border-radius:var(--radius-sm);background:0 0}.cad-tool-group>button>svg{stroke-width:1.7px;width:19px;height:19px}.cad-tool-group>button:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-secondary)}.cad-tool-group>button.active{color:var(--color-primary);background:var(--color-primary-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 35%, transparent)}.surface-texture-tools{min-width:150px}.surface-texture-tools>button{min-width:76px}.surface-texture-count{color:var(--color-text-secondary);white-space:nowrap;background:var(--color-surface-secondary);border-radius:999px;align-self:center;padding:5px 8px;font-size:10px;font-weight:700;line-height:1}.cad-save{border-radius:var(--radius-sm);border:0}.cad-save.dirty{background:var(--color-warning)}.cad-save:disabled{cursor:not-allowed;opacity:.45}.cad-save-wrap{min-width:340px}.cad-save-actions{justify-content:center;align-items:center;gap:8px;display:flex}.cad-parametric-action{border:1px solid var(--color-rule);border-radius:var(--radius-sm);color:#fff;background:var(--color-rule);min-height:42px;box-shadow:var(--shadow-xs);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:750;display:inline-flex}.cad-parametric-action svg{width:17px;height:17px}.cad-parametric-action:hover:not(:disabled){filter:brightness(1.08)}.cad-parametric-action.complete{border-color:color-mix(in srgb, var(--color-success) 55%, var(--color-border));color:var(--color-success);background:var(--color-success-soft)}.cad-parametric-action:disabled{cursor:not-allowed;opacity:.45}.cad-save-feedback.dirty{color:var(--color-warning)}.cad-save-feedback.saved{color:var(--color-success)}.cad-save-feedback.error{color:var(--color-danger)}.cad-workspace,.cad-canvas-wrap{background:var(--color-editor)}.cad-canvas.pan-ready{cursor:grab}.cad-canvas.panning{cursor:grabbing}.cad-canvas-bg{stroke:none}.cad-canvas pattern path{stroke:var(--color-grid)}.cad-entity{stroke:var(--color-geometry);stroke-width:2px;transition:stroke var(--transition-fast), stroke-width var(--transition-fast), opacity var(--transition-fast)}.cad-entity-hit{fill:none;stroke:#0000;stroke-width:16px;vector-effect:non-scaling-stroke;pointer-events:stroke;cursor:pointer}.cad-entity-hit:hover+.cad-entity,.cad-entity:hover{stroke:var(--color-selection);stroke-width:3px}.cad-entity.selected{stroke:var(--color-selection);stroke-width:4px}.cad-entity.sketch-object{stroke:var(--color-primary)}.cad-entity.sketch-cutout{stroke:var(--color-danger)}.cad-entity.sketch-reference{stroke:var(--color-construction);stroke-dasharray:8 5;opacity:.72}.sketch-object-label{fill:var(--color-primary);text-anchor:middle;paint-order:stroke fill;stroke:var(--color-editor);stroke-width:4px;vector-effect:non-scaling-stroke;font-size:13px;font-weight:700}.sketch-object-label.reference{fill:var(--color-text-secondary)}.contained-shape-dialog{width:min(560px,100vw - 32px)}.contained-shape-dialog>label{color:var(--color-text-secondary);gap:8px;margin-top:18px;font-size:13px;font-weight:650;display:grid}.contained-shape-dialog input{min-height:44px}.contained-shape-options{gap:10px;margin-top:18px;display:grid}.contained-shape-options button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);text-align:left;gap:4px;padding:14px 16px;display:grid}.contained-shape-options button:hover{border-color:var(--color-primary);background:var(--color-surface-secondary)}.contained-shape-options small{color:var(--color-text-secondary);line-height:1.45}.sketch-object-list{gap:8px;margin:16px 0;display:grid}.sketch-object-list>strong{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:12px}.sketch-object-list button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);text-align:left;gap:8px;padding:12px;display:grid}.sketch-object-list button:hover{border-color:var(--color-primary);background:var(--color-surface-secondary)}.sketch-object-list button span{justify-content:space-between;gap:10px;display:flex}.sketch-object-list small{color:var(--color-text-secondary);font-weight:500}.cad-preview{stroke:var(--color-selection)}.cad-crosshair{stroke:var(--color-construction);opacity:.62}.cad-grip{fill:var(--color-surface);stroke:var(--color-selection);stroke-width:2px}.cad-grip:hover,.cad-grip.point-selected{fill:var(--color-selection);stroke:var(--color-surface)}.snap-symbol{pointer-events:none}.snap-symbol .snap-halo{fill:color-mix(in srgb, var(--color-success) 12%, transparent);stroke:none}.snap-symbol>rect,.snap-symbol>circle:not(.snap-halo),.snap-symbol>path{fill:var(--color-editor);stroke:var(--color-success);stroke-width:2.2px;vector-effect:non-scaling-stroke}.snap-symbol.intersection>path,.snap-symbol.horizontal>path,.snap-symbol.vertical>path{fill:none;stroke-linecap:round}.snap-symbol .snap-grid-point{fill:var(--color-construction);stroke:var(--color-editor);stroke-width:1.5px}.snap-symbol text{fill:var(--color-success);stroke:var(--color-editor);stroke-width:3px;paint-order:stroke;letter-spacing:.02em;text-transform:uppercase;font-weight:750}.smart-dimension line,.smart-dimension text{stroke:var(--color-dimension)}.smart-dimension text{fill:var(--color-dimension);stroke:var(--color-editor);stroke-width:6px;stroke-linejoin:round;paint-order:stroke fill;vector-effect:non-scaling-stroke}.smart-dimension .dimension-extension{opacity:.55;stroke-width:.9px}.smart-dimension{cursor:grab}.smart-dimension:active{cursor:grabbing}.smart-dimension.selected line{stroke:var(--color-selection);stroke-width:1.8px}.smart-dimension.selected text{fill:var(--color-selection);stroke:var(--color-editor)}.smart-measures button.selected{border-color:var(--color-selection);background:color-mix(in srgb, var(--color-selection) 10%, var(--color-surface))}.selected-dimension-actions{border:1px solid color-mix(in srgb, var(--color-selection) 35%, var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-selection) 7%, var(--color-surface));gap:8px;margin-top:10px;padding:12px;display:grid}.selected-dimension-actions span{color:var(--color-text);font-weight:700}.selected-dimension-actions small{color:var(--color-text-secondary);line-height:1.45}.relationship-marker circle{fill:var(--color-rule);stroke:var(--color-surface)}.relationship-marker text{fill:#fff}.cad-selection-window{fill:color-mix(in srgb, var(--color-selection) 12%, transparent);stroke:var(--color-selection)}.cad-selection-window.crossing{fill:color-mix(in srgb, var(--color-success) 12%, transparent);stroke:var(--color-success)}.cad-workspace{flex:1;grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:0;max-height:none}.cad-smart-panel{resize:horizontal;border-color:var(--color-border);background:var(--color-surface);width:300px;min-width:240px;max-width:min(440px,42vw)}.smart-measures button{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface-secondary);box-shadow:none}.smart-measures button:hover{border-color:var(--color-rule);background:var(--color-rule-soft);box-shadow:none}.smart-measures button span{color:var(--color-text-secondary)}.smart-connect-card{border-color:color-mix(in srgb, var(--color-success) 25%, var(--color-border));background:var(--color-success-soft)}.smart-connect-card.complete{border-color:var(--color-border);background:var(--color-surface-secondary)}.smart-connect-card>button{color:#fff;background:var(--color-success)}.smart-connect-card>button:disabled{color:var(--color-text-secondary);background:var(--color-border)}.relationship-actions>button{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}.relationship-actions>button:hover:not(:disabled){border-color:var(--color-rule);background:var(--color-rule-soft)}.relationship-list{border-color:var(--color-border)}.relationship-list>div{background:var(--color-surface-secondary)}.relationship-list>div button{color:var(--color-danger);background:var(--color-danger-soft)}.cad-command-area{color:var(--color-text-secondary)}.cad-command-line input{color:var(--color-text);box-shadow:none;background:0 0;border:0}.cad-statusbar button{color:var(--color-text-secondary);border-color:var(--color-border);background:0 0}.cad-statusbar button.active{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft)}.cad-coordinates,.dynamic-input,.dimension-editor{border-color:var(--color-border);color:var(--color-text);background:color-mix(in srgb, var(--color-surface) 94%, transparent);box-shadow:var(--shadow-sm)}.variant-configurator{border-color:var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.page.variant-create-page{width:calc(100vw - 32px);max-width:none;height:calc(100dvh - var(--topbar-height));grid-template-rows:auto minmax(0,1fr);gap:12px;min-height:0;padding-top:14px;padding-bottom:14px;display:grid;overflow:hidden}.variant-create-page>.page-heading{align-items:center;min-height:0;margin-bottom:0}.variant-create-page>.page-heading .back-link{margin-bottom:2px;font-size:10px}.variant-create-page>.page-heading .eyebrow{display:none}.variant-create-page>.page-heading h1{margin:0 0 3px;font-size:28px}.variant-create-page>.page-heading p{margin:0;font-size:12px;line-height:1.35}.variant-create-page>.page-heading .button{min-height:38px}.variant-create-page .variant-configurator{grid-template-columns:minmax(0,1fr) clamp(290px,18vw,340px) clamp(370px,23vw,440px);height:100%;min-height:0;overflow:hidden}.variant-preview-card{background:var(--color-editor);flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.variant-view-grid{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-border);flex:1;gap:1px;height:auto;min-height:0;margin-top:14px;display:grid;overflow:hidden}.variant-view-grid.view-count-1{grid-template-columns:1fr}.variant-view-grid.view-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.variant-view-grid.view-count-3,.variant-view-grid.view-count-4{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr))}.variant-view-cell{background-color:var(--color-editor);background-image:radial-gradient(var(--color-grid) 1.3px, transparent 1.3px);background-size:16px 16px;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.variant-view-cell>header{border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 93%, transparent);justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;display:flex}.variant-view-cell>header strong{font-size:13px}.variant-view-cell>header small{color:var(--color-text-secondary);font-size:10px}.variant-view-cell>svg{width:100%;height:100%;min-height:0}.variant-sketch-preview{border:0;border-color:var(--color-border);background-color:var(--color-editor);background-image:radial-gradient(var(--color-grid) 1.3px, transparent 1.3px);border-radius:0;min-height:0;margin-top:0}.variant-pricing-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;height:100%;max-height:none;box-shadow:var(--shadow-sm);align-content:start;gap:14px;padding:18px;display:grid;overflow-y:auto}.variant-create-page .variant-dimensions-panel{flex-direction:column;height:100%;min-height:0;max-height:none;display:flex;overflow:hidden}.variant-create-page .variant-dimensions-panel>p{margin-bottom:4px;font-size:11px;line-height:1.4}.variant-create-page .variant-line-fields{overscroll-behavior:contain;flex:1;min-height:0;margin-top:10px;padding-right:4px;overflow-y:auto}.variant-create-page .variant-line-fields>label{cursor:pointer;flex:none;gap:8px;padding:7px 8px}.variant-create-page .variant-line-fields>label.expanded{border-color:var(--color-primary);background:var(--color-primary-soft)}.variant-create-page .variant-line-fields>label>span:first-child{font-size:11px}.variant-create-page .variant-line-fields>label b{width:19px;height:19px;font-size:9px}.variant-create-page .variant-value-input{margin-left:auto}.variant-create-page .variant-value-input input{width:78px;min-height:30px;padding:5px 7px}.variant-create-page .variant-resize-origin{border-top:1px solid var(--color-border);width:100%;padding-top:7px}.variant-create-page .variant-preview-summary{flex-wrap:nowrap;min-height:30px;padding-top:8px;overflow-x:auto}.variant-create-page .variant-preview-summary span{flex:none;padding:4px 7px;font-size:9px}.variant-pricing-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.variant-pricing-heading>span{gap:5px;display:grid}.variant-pricing-heading h2{margin:0}.variant-pricing-heading>small{color:var(--color-primary);font-weight:700}.variant-price-empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-secondary);gap:12px;padding:15px;display:grid}.variant-price-empty p{margin:0}.variant-price-model,.variant-price-input{color:var(--color-text-secondary);gap:7px;font-size:11px;font-weight:700;display:grid}.variant-price-meta{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary);gap:14px;padding:15px;display:grid}.variant-price-model-name{border-bottom:1px solid var(--color-border);gap:4px;min-width:0;padding-bottom:12px;display:grid}.variant-price-model-name small{color:var(--color-text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.variant-price-model-name strong{overflow-wrap:anywhere;min-width:0;font-size:14px;line-height:1.4}.variant-price-meta-fields{grid-template-columns:minmax(0,1fr) 88px;align-items:end;gap:12px;display:grid}.variant-price-meta-fields>label{min-width:0;color:var(--color-text-secondary);gap:6px;font-size:10px;font-weight:700;display:grid}.variant-price-meta-fields input{width:100%;min-width:0;min-height:38px}.variant-price-input>span:last-child{align-items:center;gap:8px;display:flex}.variant-price-input input{flex:1;min-width:0}.variant-price-input small{min-width:32px}.variant-price-breakdown{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow:hidden}.variant-price-breakdown>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:18px;padding:10px 13px;font-size:11px;display:flex}.variant-price-breakdown>.variant-cost-item{padding:0;display:block}.variant-cost-summary{width:100%;min-height:48px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:18px;padding:10px 13px;display:flex}.variant-cost-summary:hover{background:var(--color-surface-secondary)}.variant-cost-summary>span{align-items:center;gap:8px;display:flex}.variant-cost-summary>span:first-child{flex-direction:column;align-items:flex-start;gap:1px;min-width:0}.variant-cost-summary small{color:var(--color-text-secondary);font-size:9px;font-weight:500}.variant-cost-summary b[aria-hidden]{color:var(--color-text-secondary);transition:transform var(--duration-fast) var(--ease-standard);font-size:15px;display:inline-block;transform:rotate(0)}.variant-cost-item.expanded .variant-cost-summary b[aria-hidden]{transform:rotate(180deg)}.variant-cost-equation{border-top:1px solid var(--color-border);background:var(--color-surface-secondary);flex-wrap:wrap;align-items:flex-end;gap:10px 18px;padding:13px;display:flex}.variant-equation-term{gap:2px;padding-right:18px;display:grid;position:relative}.variant-equation-term small{color:var(--color-text-secondary);font-size:9px;font-weight:600}.variant-equation-term strong{color:var(--color-text);white-space:nowrap;font-size:12px}.variant-equation-term.result strong{color:var(--color-primary)}.variant-equation-operator{color:var(--color-text-secondary);font-size:13px;position:absolute;bottom:0;right:-2px}.variant-equation-note{color:var(--color-warning-text,var(--color-warning));flex-basis:100%;padding-top:3px;font-size:9px}.variant-material-cost-line{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:5px 9px;padding:9px 10px;font-size:10px;display:flex}.variant-material-cost-line>span:first-child{min-width:130px;margin-right:auto;display:grid}.variant-material-cost-line>span:first-child small,.variant-material-cost-line>small{color:var(--color-text-secondary)}.variant-material-cost-line>small{flex-basis:100%}.variant-price-breakdown>div:last-child{border-bottom:0}.variant-price-breakdown span{color:var(--color-text-secondary)}.variant-price-breakdown .subtotal{border-top:1px solid var(--color-border-strong);font-weight:750}.variant-price-breakdown .total{color:#fff;background:var(--color-primary);padding-block:14px}.variant-price-breakdown .total span,.variant-price-breakdown .total strong{color:#fff}.variant-price-breakdown .total strong{font-size:17px}.variant-preview-entity{stroke:var(--color-geometry)}.variant-preview-entity.active{stroke:var(--color-selection)}.variant-preview-entity.generated-view{stroke:var(--color-primary)}.variant-view-cell svg .view-preview-dimensions line{stroke:var(--color-dimension);stroke-width:1.25px;vector-effect:non-scaling-stroke}.variant-view-cell svg .view-preview-dimensions .extension{opacity:.72}.variant-view-cell svg .draggable-generated-dimension{pointer-events:all}.variant-view-cell svg .draggable-generated-dimension.horizontal{cursor:ns-resize}.variant-view-cell svg .draggable-generated-dimension.vertical{cursor:ew-resize}.variant-view-cell svg .view-preview-dimensions .dimension-drag-hit{stroke:#0000;stroke-width:16px;pointer-events:stroke;vector-effect:non-scaling-stroke}.variant-view-cell svg .view-preview-dimensions text{fill:var(--color-dimension);text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:var(--color-editor);stroke-width:4px;stroke-linejoin:round;font-weight:750}.variant-generated-view-label{fill:var(--color-text);paint-order:stroke;stroke:var(--color-editor-background);stroke-width:4px;vector-effect:non-scaling-stroke;font-size:16px;font-weight:700}.variant-object-drag-area{fill:#0000;stroke:#0000;stroke-width:2px;vector-effect:non-scaling-stroke;cursor:grab;pointer-events:all}.variant-object-drag-area:hover{fill:color-mix(in srgb, var(--color-primary) 9%, transparent);stroke:color-mix(in srgb, var(--color-primary) 65%, transparent)}.variant-object-drag-area.selected{fill:color-mix(in srgb, var(--color-primary) 12%, transparent);stroke:var(--color-primary);stroke-dasharray:7 4}.variant-object-drag-area:active{cursor:grabbing}.variant-object-placement{align-items:center;gap:var(--space-3);height:62px;min-height:62px;margin-top:var(--space-3);padding:var(--space-3);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-secondary);background:var(--color-surface-secondary);flex:0 0 62px;display:flex;overflow:hidden}.variant-object-placement.idle{visibility:hidden;pointer-events:none}.variant-object-placement.active{border-style:solid;border-color:color-mix(in srgb, var(--color-primary) 45%, var(--color-border));color:var(--color-text);background:var(--color-primary-soft)}.variant-object-placement-placeholder{opacity:0}.variant-object-placement>span:first-child{gap:2px;margin-right:auto;display:grid}.variant-object-placement small{color:var(--color-text-secondary)}.variant-object-distances{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.variant-object-distances small{background:var(--color-surface);white-space:nowrap;border-radius:999px;padding:4px 6px}.cad-hatch-line{stroke:var(--color-construction);stroke-width:1px;opacity:.62;pointer-events:none;vector-effect:non-scaling-stroke}.cad-hatch-tools{flex:none;align-items:center}.cad-toolbar-field{gap:var(--space-1);min-width:142px;color:var(--color-text-secondary);font-size:10px;font-weight:700;display:grid}.cad-toolbar-field>span:first-child{line-height:1}.cad-toolbar-field select,.cad-toolbar-field input{border-color:var(--color-border);border-radius:var(--radius-sm);height:32px;color:var(--color-text);background:var(--color-surface);box-shadow:none;margin:0}.cad-toolbar-field select{min-width:142px;padding:0 28px 0 9px}.cad-toolbar-spacing{min-width:84px}.cad-toolbar-number{display:block;position:relative}.cad-toolbar-number input{width:84px;padding-right:28px}.cad-toolbar-number small{color:var(--color-text-secondary);pointer-events:none;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.material-hit-area{fill:color-mix(in srgb, var(--color-primary) 8%, transparent);stroke:color-mix(in srgb, var(--color-primary) 42%, transparent);stroke-width:1px;vector-effect:non-scaling-stroke;cursor:pointer}.material-hit-area:hover{fill:color-mix(in srgb, var(--color-primary) 18%, transparent);stroke:var(--color-primary)}.texture-library-layout{grid-template-columns:minmax(320px,380px) minmax(0,1fr);align-items:start;gap:40px;display:grid}.texture-library-page .page-heading{margin-bottom:32px}.texture-library-page .page-heading p{max-width:640px;line-height:1.6}.texture-upload-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);gap:18px;padding:24px;display:grid;position:sticky;top:82px}.texture-upload-card h2{margin:-4px 0 -10px;font-size:21px}.texture-upload-card label{color:var(--color-text);gap:7px;font-size:13px;font-weight:700;display:grid}.texture-upload-card input{width:100%}.texture-upload-card input[type=file]{min-height:48px;color:var(--color-text-secondary);padding:6px;font-size:13px}.texture-upload-card input[type=file]::file-selector-button{border:1px solid var(--color-border);border-radius:var(--radius-sm);height:34px;color:var(--color-text);background:var(--color-surface-secondary);cursor:pointer;margin-right:10px;padding:0 12px}.texture-upload-card>small,.texture-upload-card>p{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.55}.texture-upload-card .button{width:100%;min-height:44px;margin-top:2px}.texture-upload-icon{border-radius:var(--radius-md);width:48px;height:48px;color:var(--color-primary);background:var(--color-primary-soft);place-items:center;display:grid}.texture-upload-icon svg{width:22px;height:22px}.texture-grid-section{min-width:0}.texture-grid-section .section-heading{margin-bottom:24px}.texture-grid-section .section-heading h2{margin-bottom:5px;font-size:22px}.texture-grid-section .section-heading p{color:var(--color-text-secondary);margin:0;font-size:14px}.texture-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;display:grid}.texture-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);position:relative;overflow:hidden}.texture-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.texture-card>img{aspect-ratio:1;object-fit:cover;background:var(--color-surface-secondary);width:100%;display:block}.texture-card>div{gap:6px;padding:16px;display:grid}.texture-card>div strong{font-size:16px;line-height:1.3}.texture-card>div span{color:var(--color-text-secondary);font-size:13px;line-height:1.35}.texture-card>div span+span{border-top:1px solid var(--color-border);padding-top:6px}.texture-card>button{border:1px solid color-mix(in srgb, var(--color-border) 65%, transparent);background:color-mix(in srgb, var(--color-surface) 90%, transparent);width:38px;height:38px;box-shadow:var(--shadow-xs);position:absolute;top:10px;right:10px}.material-library-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:32px;display:grid}.material-create-card{top:calc(var(--topbar-height) + 24px);gap:14px;padding:24px;display:grid;position:sticky}.material-create-card h2{margin:-4px 0 2px}.material-create-card label{gap:6px;font-size:12px;font-weight:700;display:grid}.material-card-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;display:grid}.material-library-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-xs);overflow:hidden}.material-library-card header{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:16px;display:flex}.material-library-card header>span:nth-child(2){flex:1;gap:2px;min-width:0;display:grid}.material-library-card header small{color:var(--color-text-secondary)}.material-swatch{border-radius:var(--radius-sm);width:38px;height:38px;color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));place-items:center;display:grid}.material-swatch svg{width:19px}.material-library-card dl{gap:0;margin:0;padding:8px 16px 14px;display:grid}.material-library-card dl>div{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:16px;padding:8px 0;display:flex}.material-library-card dl>div:last-child{border-bottom:0}.material-library-card dt{color:var(--color-text-secondary);font-size:11px}.material-library-card dd{text-align:right;margin:0;font-size:11px;font-weight:700}@media (max-width:900px){.material-library-layout{grid-template-columns:1fr}.material-create-card{position:static}}.variant-texture-fill{opacity:.94;pointer-events:none}.variant-texture-cutout{fill:var(--color-editor);stroke:none;pointer-events:none}.variant-texture-edit-area{fill:color-mix(in srgb, var(--color-primary) 7%, transparent);stroke:var(--color-primary);stroke-width:2px;stroke-dasharray:8 5;vector-effect:non-scaling-stroke;cursor:grab;pointer-events:all}.variant-texture-edit-area:active{cursor:grabbing}.variant-preview-controls{align-items:center;gap:var(--space-4);display:flex}.variant-preview-controls>span{color:var(--color-text-secondary);font-size:12px}.toggle-control{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;display:inline-flex}.toggle-control>b{margin-left:2px}.toggle-control>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.toggle-control>b{color:var(--color-text);font-size:12px;font-weight:700}.toggle-track{border:1px solid var(--color-border-strong);background:var(--color-surface-secondary);width:38px;height:22px;transition:border-color var(--transition-fast), background var(--transition-fast);border-radius:999px;display:block;position:relative}.toggle-track i{background:var(--color-text-secondary);width:14px;height:14px;transition:transform var(--transition-fast), background var(--transition-fast);border-radius:50%;position:absolute;top:3px;left:3px}.toggle-control>input:checked+.toggle-track{border-color:var(--color-primary);background:var(--color-primary)}.toggle-control>input:checked+.toggle-track i{background:#fff;transform:translate(16px)}.toggle-control>input:focus-visible+.toggle-track{outline:2px solid var(--color-primary);outline-offset:2px}.variant-materials{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-xs);gap:0;margin-top:28px;padding:20px;display:grid}.variant-materials>.eyebrow{margin:0 0 9px;line-height:1}.variant-materials>h2{margin:0 0 6px;font-size:21px;line-height:1.25}.variant-materials>p{color:var(--color-text-secondary);margin:0 0 18px;font-size:13px;line-height:1.55}.variant-material-area{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary);gap:14px;padding:16px;display:grid}.variant-material-area+.variant-material-area{margin-top:12px}.variant-materials>.cad-warning{margin-top:14px}.variant-material-area.editing{border-color:color-mix(in srgb, var(--color-primary) 45%, var(--color-border));background:var(--color-primary-soft)}.variant-material-area label{color:var(--color-text);gap:7px;font-size:13px;font-weight:700;display:grid}.variant-material-area select{background:var(--color-surface);min-height:44px}.variant-texture-options{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.texture-edit-toggle{width:100%;min-height:44px;margin-top:2px}.texture-positioner-controls{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:grid}.texture-positioner-controls>p{color:var(--color-text-secondary);margin:0;font-size:12px;line-height:1.45}.texture-positioner-controls>label{align-items:center;gap:var(--space-2);grid-template-columns:auto minmax(80px,1fr) auto}.texture-positioner-controls>label input{min-width:0;padding:0}.texture-positioner-controls>label b{text-align:right;min-width:44px}.texture-positioner-controls>div{gap:var(--space-2);grid-template-columns:repeat(2,1fr);display:grid}.texture-positioner-controls>div button{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:34px;color:var(--color-text-secondary);background:var(--color-surface)}.texture-positioner-controls>div button:hover,.texture-positioner-controls>div button.active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}@media (max-width:820px){.texture-library-layout{grid-template-columns:1fr}.texture-upload-card{position:static}.variant-texture-options{grid-template-columns:1fr}}.variant-preview-summary span{color:var(--color-text-secondary);background:var(--color-surface-secondary)}.variant-line-fields>label{border-color:var(--color-border);background:var(--color-surface)}.variant-line-fields>label:hover,.variant-line-fields>label:focus-within{border-color:var(--color-primary);background:var(--color-primary-soft)}.variant-line-fields>label.has-conflict{border-color:var(--color-warning);background:var(--color-warning-soft)}.variant-line-fields>label b{color:#fff;background:var(--color-primary)}.variant-field-derived{color:var(--color-success)}.variant-resize-origin{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;width:100%;padding-top:8px;display:flex}.variant-resize-origin>small{color:var(--color-text-secondary);white-space:nowrap;font-size:10px;font-weight:700}.variant-resize-origin>span{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-secondary);padding:2px;display:inline-flex}.variant-resize-origin button{min-height:27px;color:var(--color-text-secondary);background:0 0;border:0;border-radius:5px;padding:4px 8px;font-size:10px;font-weight:700}.variant-resize-origin button:hover{color:var(--color-text)}.variant-resize-origin button.active{color:var(--color-primary);background:var(--color-surface);box-shadow:var(--shadow-xs)}.drawing-viewer,.sheet-viewer,.viewer-canvas,.sheet-canvas,.geometry-canvas,.viewer-shell{border-color:var(--color-border);background-color:var(--color-editor);background-image:radial-gradient(var(--color-grid) 1.1px, transparent 1.1px)}.canvas-panel{background:var(--color-background)}.entity-visible,.sheet-geometry,.generated-geometry{stroke:var(--color-geometry)}.entity.selected .entity-visible,.selected-entity,.active-segment{stroke:var(--color-selection)}.dimension,.annotation-dimension{color:var(--color-dimension);stroke:var(--color-dimension)}.construction-geometry{stroke:var(--color-construction)}.pill,.mapping-chip,.mapping-summary strong{color:var(--color-text-secondary);background:var(--color-surface-secondary)}.file-icon,.template-icon{color:var(--color-primary);background:var(--color-primary-soft)}.list-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:none}.upload-box,.empty-state,.drawing-empty-state{border-color:var(--color-border-strong);color:var(--color-text-secondary);background:var(--color-surface)}.parameters-panel,.mapping-panel,.entity-panel,.generator-controls{border-color:var(--color-border);background:var(--color-surface)}.mapping-canvas,.generator-preview{background:var(--color-background)}.mapping-selection-bar,.mapping-mode-toggle,.mapping-annotation-toggle{border-color:var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-xs)}.mapping-mode-toggle button{color:var(--color-text-secondary);background:0 0}.mapping-mode-toggle button.active{border-color:var(--color-rule);color:var(--color-rule);background:var(--color-rule-soft)}.generator-fields label>span{color:var(--color-text-secondary)}.generator-fields em{color:var(--color-text-tertiary)}@media (max-width:980px){.topbar{padding:0 16px}.brand small{display:none}.theme-manager{margin-left:2px}.page{width:min(100% - 28px,1240px);padding-top:28px}.app-nav-links>a,.app-nav-disabled{padding-inline:8px}.app-nav-links>a>span,.app-nav-disabled>span{display:none}.dashboard-quick-actions,.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-data-grid{grid-template-columns:1fr}.public-hero{grid-template-columns:1fr;min-height:auto;padding-top:64px}.public-hero-copy{max-width:760px}.public-product-stage{max-width:820px}.public-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-definition-section,.public-workflow-section,.public-replace-section{grid-template-columns:1fr}.public-tour-card.dashboard,.public-tour-card.product,.public-tour-card.variant{grid-column:span 6;margin-top:0}.public-tour-card.variant{grid-column:3/11}}@media (max-width:1180px){.cpq-block-layout{grid-template-columns:1fr}.cpq-block-layout .cpq-simple-preview{width:100%;position:static}.variant-create-page .variant-configurator{grid-template-columns:minmax(0,1fr) minmax(280px,340px)}.variant-create-page .variant-pricing-panel{grid-column:2}}@media (max-width:900px){.configurator-library-grid,.cpq-editor-layout,.cpq-simple-layout{grid-template-columns:1fr}.cpq-editor-sidebar,.cpq-simple-preview{position:static}.cpq-simple-cards{grid-template-columns:1fr}.cpq-scope-options,.cpq-commercial-grid,.cpq-cost-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.cpq-editor-sidebar nav{grid-template-columns:repeat(3,1fr)}.cpq-definition-row,.cpq-output-row,.cpq-formula-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.cpq-test-grid,.variant-create-page .variant-configurator{grid-template-columns:1fr}.variant-create-page .variant-pricing-panel{grid-column:auto}.page.variant-create-page{height:auto;min-height:calc(100dvh - var(--topbar-height));overflow:visible}.variant-create-page .variant-configurator{height:auto;overflow:visible}.variant-create-page .variant-dimensions-panel,.variant-create-page .variant-pricing-panel{max-height:none;overflow:visible}.page.cad-product-page{width:calc(100vw - 16px);height:auto;min-height:calc(100dvh - 64px);overflow:visible}.cad-editor-shell{display:block}.cad-workspace{grid-template-columns:1fr;height:auto;min-height:0}.cad-canvas-wrap{height:62dvh;min-height:440px}.cad-smart-panel{resize:none;width:auto;min-width:0;max-width:none}}@media (max-width:720px){.topbar{flex-wrap:wrap;gap:8px;height:auto;min-height:60px;padding-block:10px}.workflow-nav{justify-content:space-between;width:100%;overflow-x:auto}.app-nav-links{min-width:max-content}.theme-manager{margin-left:auto}.page-heading{align-items:flex-start;gap:18px}.cad-smart-panel{resize:none;width:auto;min-width:0;max-width:none}.dashboard-page{gap:24px}.dashboard-welcome{flex-direction:column;align-items:flex-start}.dashboard-primary-actions{grid-template-columns:1fr}.dashboard-primary-actions article{min-height:170px}.dashboard-local-status,.public-navigation>div{display:none}.public-hero,.public-section,.public-product-tour,.public-workflow-section,.public-replace-section,.public-difference-section,.public-final-cta,.public-footer,.public-proof-strip{width:min(100% - 28px,1320px)}.public-hero{gap:38px;padding:52px 0 60px}.public-hero h1{font-size:clamp(42px,13vw,60px)}.public-hero-copy>p{font-size:15px}.public-proof-strip{flex-wrap:wrap;gap:10px 18px;padding:18px 0}.public-section{padding:82px 0}.public-workflow-section{padding:42px 24px}.public-product-tour{padding-bottom:82px}.public-tour-grid{grid-template-columns:1fr}.public-tour-card.dashboard,.public-tour-card.product,.public-tour-card.variant{grid-column:1}.public-tour-card>div{grid-template-columns:auto 1fr}.public-tour-card>div>small{display:none}.public-replace-section{padding:82px 0}.public-difference-section{grid-template-columns:1fr}.public-difference-section>article{min-height:0}.public-final-cta{flex-direction:column;align-items:flex-start;padding:82px 0}.public-footer{flex-direction:column;align-items:flex-start;gap:8px}}.pricing-page{width:min(1440px,100% - 48px);margin:0 auto;padding:72px 0 80px}.pricing-hero{text-align:center;max-width:760px;margin:0 auto 48px}.pricing-hero h1{letter-spacing:-.05em;margin:10px 0 14px;font-size:clamp(36px,5vw,58px);line-height:1.02}.pricing-hero p{color:var(--color-text-secondary);margin:0;font-size:16px;line-height:1.65}.pricing-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.pricing-card{background:var(--color-surface);border:1px solid var(--color-border);min-height:490px;box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;padding:26px;display:flex}.pricing-card.featured{border-color:color-mix(in srgb, var(--color-primary) 55%, var(--color-border));box-shadow:0 12px 35px color-mix(in srgb, var(--color-primary) 12%, transparent)}.pricing-card.unavailable{background:color-mix(in srgb, var(--color-surface-secondary) 55%, var(--color-surface))}.pricing-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pricing-card-head h2{letter-spacing:-.03em;margin:6px 0 0;font-size:24px}.pricing-plan-label{color:var(--color-text-secondary);letter-spacing:.14em;font-size:9px;font-weight:800}.pricing-card.featured .pricing-plan-label{color:var(--color-primary)}.pricing-beta-badge{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-radius:999px;padding:5px 9px;font-size:10px;font-weight:750}.pricing-description{min-height:66px;color:var(--color-text-secondary);margin:18px 0 22px;font-size:13px;line-height:1.55}.pricing-amount{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);align-content:start;min-height:108px;padding:18px 0;display:grid}.pricing-amount strong{letter-spacing:-.04em;font-size:30px}.pricing-amount span{color:var(--color-text-secondary);margin-top:2px;font-size:12px}.pricing-amount small{color:var(--color-text-secondary);margin-top:8px;font-size:10px;line-height:1.4}.pricing-card ul{gap:12px;margin:22px 0 26px;padding:0;list-style:none;display:grid}.pricing-card li{color:var(--color-text-secondary);align-items:flex-start;gap:8px;font-size:12px;line-height:1.4;display:flex}.pricing-card li svg{width:15px;color:var(--color-success);flex:none}.pricing-button{justify-content:center;width:100%;min-height:44px;margin-top:auto}.pricing-button svg{width:16px}.pricing-error{max-width:560px;margin:22px auto 0}.pricing-footer{color:var(--color-text-secondary);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:28px;font-size:11px;display:flex}.pricing-footer svg{width:14px;color:var(--color-success)}.pricing-footer a{color:var(--color-primary);font-weight:700;text-decoration:none}.payment-return-page{background:var(--color-background);place-items:center;min-height:calc(100vh - 72px);padding:40px 24px;display:grid}.payment-return-card{text-align:center;background:var(--color-surface);border:1px solid var(--color-border);width:min(100%,520px);box-shadow:var(--shadow-lg);border-radius:16px;padding:42px}.payment-return-icon{width:58px;height:58px;color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.payment-return-card.paid .payment-return-icon{color:var(--color-success);background:color-mix(in srgb, var(--color-success) 10%, transparent)}.payment-return-card.failed .payment-return-icon{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.payment-return-icon svg{width:28px;height:28px}.payment-return-card h1{letter-spacing:-.04em;margin:8px 0 10px;font-size:32px}.payment-return-card p{color:var(--color-text-secondary);margin:0 0 26px;line-height:1.55}.payment-return-card .button{justify-content:center;min-width:180px}@media (max-width:1100px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.pricing-page{width:min(100% - 28px,480px);padding-top:46px}.pricing-grid{grid-template-columns:1fr}.pricing-card{min-height:auto}}@media (max-width:520px){.dashboard-quick-actions,.dashboard-stats,.dashboard-primary-actions article{grid-template-columns:1fr}.dashboard-primary-actions article .button{grid-column:1}.dashboard-action-icon{width:38px;height:38px}.dashboard-workflow{flex-direction:column;align-items:flex-start}.dashboard-workflow svg{transform:rotate(90deg)}.public-capability-grid{grid-template-columns:1fr}.public-capability-grid article{min-height:190px}.public-stage-toolbar{height:42px}.public-stage-footer{display:none}.public-access-note{flex-direction:column;align-items:flex-start;gap:8px}}.auth-page{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--color-primary) 8%, transparent), transparent 38%), var(--color-background);place-items:center;min-height:calc(100vh - 72px);padding:48px 24px;display:grid}.auth-card{border:1px solid var(--color-border);background:var(--color-surface);width:min(100%,480px);box-shadow:var(--shadow-lg);border-radius:16px;padding:36px}.auth-card-heading{margin-bottom:28px}.auth-card-heading h1{letter-spacing:-.035em;margin:8px 0;font-size:32px}.auth-card-heading p{color:var(--color-text-secondary);margin:0;line-height:1.55}.auth-form{gap:18px;display:grid}.auth-form label{color:var(--color-text);gap:8px;font-size:13px;font-weight:650;display:grid}.auth-form input{width:100%;height:46px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);font:inherit;border-radius:9px;padding:0 13px;transition:border-color .12s,box-shadow .12s}.auth-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 16%, transparent);outline:none}.auth-submit{justify-content:center;width:100%;min-height:46px;margin-top:4px}.auth-card-footer{color:var(--color-text-secondary);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:24px;font-size:13px;display:flex}.auth-card-footer a,.auth-development-link{color:var(--color-primary);font-weight:650;text-decoration:none}.auth-development-link{align-items:center;gap:6px;display:inline-flex}.auth-development-link svg{width:15px}.app-message{border-radius:9px;padding:12px 14px;font-size:13px;line-height:1.45}.app-message.error{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 9%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-danger) 26%, var(--color-border))}.app-message.success{color:var(--color-success);background:color-mix(in srgb, var(--color-success) 9%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-success) 26%, var(--color-border));align-items:flex-start;gap:8px;display:flex}.app-message svg{flex:none;width:17px}.account-menu{border-left:1px solid var(--color-border);align-items:center;gap:9px;min-width:0;padding-left:10px;display:flex}.account-avatar{width:32px;height:32px;color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));border-radius:50%;place-items:center;display:grid}.account-avatar svg{width:16px}.account-identity{max-width:125px;line-height:1.2;display:grid}.account-identity strong,.account-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-identity strong{font-size:12px}.account-identity small{color:var(--color-text-secondary);font-size:10px}.account-menu button{width:30px;height:30px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;display:grid}.account-menu button:hover{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 8%, transparent)}.account-menu button svg{width:15px}.verification-banner{min-height:38px;color:var(--color-warning);background:color-mix(in srgb, var(--color-warning) 9%, var(--color-surface));border-bottom:1px solid color-mix(in srgb, var(--color-warning) 22%, var(--color-border));justify-content:center;align-items:center;gap:12px;padding:7px 20px;font-size:12px;display:flex}.verification-banner button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}.verification-banner small{color:var(--color-text-secondary)}@media (max-width:720px){.auth-card{padding:26px 22px}.account-identity{display:none}}
