@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap);*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px;scroll-behavior:smooth;scrollbar-gutter:stable}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;text-rendering:optimizeLegibility}code,kbd,pre,samp{font-family:JetBrains Mono,Fira Code,Consolas,Courier New,monospace}img,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}button{cursor:pointer}.unit-selector{align-items:center;background:#ffffff1a;border:1px solid #ffffff26;border-radius:var(--radius-md);display:flex;gap:.375rem;padding:.2rem .4rem}.unit-system-toggle{display:flex;gap:2px}.system-btn{background:#0000;border:none;border-radius:var(--radius-sm);color:#ffffffbf;cursor:pointer;font-family:var(--font-sans);font-size:.75rem;font-weight:700;letter-spacing:.04em;padding:.25rem .55rem;transition:background var(--transition-fast),color var(--transition-fast)}.system-btn:hover{background:#ffffff1a;color:#fff}.system-btn.active{background:var(--primary-600);color:#fff}.settings-toggle{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:#ffffffa6;cursor:pointer;display:flex;justify-content:center;padding:.2rem .3rem;transition:color var(--transition-fast),background var(--transition-fast)}.settings-toggle:hover{background:#ffffff1a;color:#fff}.current-units{background:#0000002e;border-radius:var(--radius-sm);color:#ffffffb3;font-size:.725rem;font-weight:600;letter-spacing:.02em;padding:.2rem .5rem;white-space:nowrap}.us-overlay{align-items:center;animation:us-fadeIn .15s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000;z-index:var(--z-modal,1000)}@keyframes us-fadeIn{0%{opacity:0}to{opacity:1}}.us-modal{animation:us-slideIn .2s ease-out;background:var(--bg-base);border-radius:16px;box-shadow:0 24px 64px #0f172a2e,0 4px 16px #0f172a1a;display:flex;flex-direction:column;max-width:400px;overflow:hidden;width:100%}@keyframes us-slideIn{0%{opacity:0;transform:scale(.96) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.us-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:1.125rem 1.375rem 1rem}.us-title{color:var(--text-primary);font-size:1.0625rem;font-weight:700;letter-spacing:-.01em;margin:0}.us-close{align-items:center;background:var(--bg-muted);border:none;border-radius:8px;color:var(--text-tertiary);cursor:pointer;display:flex;justify-content:center;line-height:0;padding:.375rem;transition:background .15s,color .15s}.us-close:hover{background:var(--border-light);color:var(--text-primary)}.us-body{display:flex;flex-direction:column;gap:1.125rem;overflow-y:auto;padding:1.125rem 1.375rem}.us-section-heading{align-items:center;color:var(--text-primary);display:flex;font-size:.8125rem;font-weight:700;gap:.5rem;letter-spacing:.005em;margin:0 0 .875rem}.us-section-heading:before{background:var(--primary-600);border-radius:2px;content:"";display:inline-block;flex-shrink:0;height:14px;width:3px}.us-preset-grid{grid-gap:.625rem;display:grid;gap:.625rem;grid-template-columns:1fr 1fr}.us-preset-card{align-items:center;background:var(--bg-subtle);border:1.5px solid var(--border-light);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;font-family:sans-serif;font-family:var(--font-sans,sans-serif);gap:.3rem;padding:1rem .75rem;transition:border-color .15s,background .15s,box-shadow .15s}.us-preset-card:hover:not(.active){background:var(--primary-50);border-color:var(--primary-300)}.us-preset-card.active{background:var(--primary-50);border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f}.us-preset-icon{color:var(--text-muted);line-height:0;transition:color .15s}.us-preset-card.active .us-preset-icon{color:var(--primary-600)}.us-preset-name{color:#1e293b;font-size:.9rem;font-weight:700;transition:color .15s}.us-preset-card.active .us-preset-name{color:var(--primary-600)}.us-preset-sub{color:var(--text-muted);font-size:.75rem;font-weight:400}.us-preset-card.active .us-preset-sub{color:var(--primary-400)}.us-divider{background:var(--bg-muted);height:1px;margin:0 -1.375rem}.us-rows{display:flex;flex-direction:column;gap:.5rem}.us-row{align-items:center;display:flex;gap:.625rem}.us-row-icon{color:var(--text-muted);flex-shrink:0;line-height:0}.us-row-label{color:#475569;flex:0 0 90px;font-size:.8375rem;font-weight:500}.us-select-wrap{flex:1 1;position:relative}.us-select{appearance:none;-webkit-appearance:none;background:var(--bg-subtle);border:1.5px solid var(--border-light);border-radius:8px;color:#1e293b;cursor:pointer;font-family:sans-serif;font-family:var(--font-sans,sans-serif);font-size:.875rem;font-weight:500;padding:.45rem 2.25rem .45rem .75rem;transition:border-color .15s,box-shadow .15s;width:100%}.us-select:focus{background:#fff;border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1a;outline:none}.us-select:hover:not(:focus){border-color:var(--primary-300)}.us-chevron{color:var(--text-muted);line-height:0;pointer-events:none;position:absolute;right:.625rem;top:50%;transform:translateY(-50%)}.us-footer{border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end;padding:.875rem 1.375rem 1.125rem}.us-done-btn{background:var(--primary-600);border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:sans-serif;font-family:var(--font-sans,sans-serif);font-size:.9375rem;font-weight:600;letter-spacing:.01em;padding:.6rem 1.75rem;transition:background .15s,box-shadow .15s,transform .1s}.us-done-btn:hover{background:var(--primary-700);box-shadow:0 4px 14px #2563eb4d;transform:translateY(-1px)}.us-done-btn:active{transform:translateY(0)}[data-theme=dark] .us-modal{background:#1e293b;background:var(--bg-card,#1e293b);box-shadow:0 24px 64px #00000080}[data-theme=dark] .us-footer,[data-theme=dark] .us-header{border-color:#ffffff14}[data-theme=dark] .us-divider{background:#ffffff0f}[data-theme=dark] .us-title{color:#f1f5f9}[data-theme=dark] .us-close{background:#ffffff14;color:var(--text-muted)}[data-theme=dark] .us-close:hover{background:#ffffff24;color:#f1f5f9}[data-theme=dark] .us-section-heading{color:#f1f5f9}[data-theme=dark] .us-preset-card{background:#ffffff0a;border-color:#ffffff1a}[data-theme=dark] .us-preset-card:hover:not(.active){background:#2563eb14;border-color:#2563eb59}[data-theme=dark] .us-preset-card.active{background:#2563eb1f;border-color:var(--primary-600)}[data-theme=dark] .us-preset-name{color:var(--border-light)}[data-theme=dark] .us-row-label{color:var(--text-muted)}[data-theme=dark] .us-select{background:#ffffff0d;border-color:#ffffff1f;color:var(--border-light)}[data-theme=dark] .us-select:focus{background:#ffffff14}@media (max-width:768px){.unit-selector{gap:.25rem;padding:.15rem .3rem}.system-btn{font-size:.7rem;padding:.2rem .45rem}.current-units{display:none}.us-modal{border-radius:12px;max-width:95vw}.us-body,.us-header{padding:1rem}.us-footer{padding:.75rem 1rem}.us-preset-grid{gap:.5rem}.us-row{flex-wrap:wrap}.us-row-label{flex:0 0 100%}.us-select-wrap{flex:1 1 100%}}.user-menu-login-link{align-items:center;border-radius:var(--radius-md);color:#fff9;display:inline-flex;font-size:.875rem;font-weight:500;padding:.5rem .875rem;text-decoration:none;transition:background .12s ease,color .12s ease}.user-menu-login-link:hover{background:#ffffff0f;color:#fff;text-decoration:none}.user-menu{display:inline-block;position:relative}.user-menu-trigger{align-items:center;background:#0000;border:1px solid #0000;border-radius:var(--radius-full);color:#ffffffd9;cursor:pointer;display:inline-flex;font-size:.875rem;gap:.5rem;max-width:14rem;padding:.25rem .5rem .25rem .25rem;transition:border-color .12s ease,background .12s ease,color .12s ease}.user-menu-trigger:hover{background:#ffffff0f;border-color:#ffffff2e;color:#fff}.user-menu-avatar{align-items:center;background:var(--primary-600);border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.8125rem;font-weight:600;height:1.75rem;justify-content:center;line-height:1;width:1.75rem}.user-menu-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-caret{font-size:.625rem;line-height:1;opacity:.7}.user-menu-dropdown{background:var(--bg-base);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:12rem;overflow:hidden;position:absolute;right:0;top:calc(100% + .25rem);z-index:100}.user-menu-email{border-bottom:1px solid var(--border-light);color:var(--text-tertiary);font-size:.75rem;overflow:hidden;padding:.625rem 1rem;text-overflow:ellipsis;white-space:nowrap}.user-menu-item{background:#0000;border:none;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:block;font-family:var(--font-sans);font-size:.875rem;padding:.625rem 1rem;text-align:left;text-decoration:none;transition:background .12s ease;width:100%}.user-menu-item:hover{background:var(--primary-50);color:var(--primary-700)}.navigation{background:#0d1117;border-bottom:1px solid #ffffff0f;box-shadow:0 1px 0 #0006;position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.nav-container{gap:1.5rem;height:58px;justify-content:space-between;margin:0 auto;max-width:1440px;padding:0 1.5rem}.nav-brand,.nav-container{align-items:center;display:flex}.nav-brand{flex-shrink:0;gap:.625rem;text-decoration:none;transition:opacity var(--transition-fast)}.nav-brand:hover{opacity:.85}.brand-badge{align-items:center;background:#2563eb;border-radius:6px;display:inline-flex;flex-shrink:0;font-size:.6875rem;font-weight:800;height:28px;justify-content:center;width:28px}.brand-badge,.brand-text{color:#fff;letter-spacing:-.02em}.brand-text{font-size:1rem;font-weight:700}.nav-links{flex:1 1;gap:.125rem;min-width:0;overflow:visible}.nav-link,.nav-links{align-items:center;display:flex}.nav-link{background:none;border:none;border-radius:var(--radius-md);color:#fff9;cursor:pointer;font-family:var(--font-sans);font-size:.875rem;font-weight:500;gap:.375rem;min-height:44px;padding:.625rem .75rem;position:relative;text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap}.nav-link:hover{background:#ffffff0f;color:#fff}.nav-link.active{background:#ffffff14;color:#fff;font-weight:600}.nav-link.disabled{cursor:not-allowed;opacity:.35;pointer-events:none}.nav-links .nav-icon{display:none}.calc-menu{align-items:center;display:flex;position:relative}.calc-menu-trigger{gap:.3rem}.calc-menu-caret{font-size:.7rem;line-height:1;opacity:.7;transition:transform var(--transition-fast)}.calc-menu-trigger.open .calc-menu-caret{transform:rotate(180deg)}.calc-menu-panel{animation:calc-menu-in .12s ease-out;background:#161b22;border:1px solid #ffffff1a;border-radius:var(--radius-lg);box-shadow:0 12px 32px #00000073;left:0;min-width:220px;padding:.5rem;position:absolute;top:calc(100% + 6px);z-index:1000;z-index:var(--z-dropdown,1000)}@keyframes calc-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.calc-menu-group{padding:.25rem 0}.calc-menu-group+.calc-menu-group{border-top:1px solid #ffffff12;margin-top:.25rem}.calc-menu-group-title{color:#ffffff61;font-size:.65rem;font-weight:700;letter-spacing:.08em;padding:.35rem .6rem .3rem;text-transform:uppercase}.calc-menu-item{align-items:center;border-radius:var(--radius-md);color:#ffffffb3;display:flex;font-size:.875rem;font-weight:500;gap:.6rem;padding:.5rem .6rem;text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap}.calc-menu-item:hover{background:#ffffff12;color:#fff}.calc-menu-item.active{background:#2563eb2e;color:#93c5fd;font-weight:600}.calc-menu-item-icon{align-items:center;display:inline-flex;flex-shrink:0;height:16px;justify-content:center;opacity:.85;width:16px}.nav-divider{background:#ffffff1f;flex-shrink:0;height:20px;margin:0 .25rem;width:1px}.nav-link--secondary{color:#ffffff73;font-size:.8rem}.nav-link--secondary:hover{color:#fffc}.mobile-nav-divider{background:#ffffff14;height:1px;margin:.5rem 0}.nav-label{line-height:1}.coming-soon-badge{background:#f59e0bd9;border-radius:var(--radius-full);color:#fff;display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.04em;line-height:1.5;margin-left:.25rem;padding:.15em .45em;text-transform:uppercase;vertical-align:middle}.nav-controls{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.language-switcher{align-items:center;background:#ffffff0f;border:1px solid #ffffff14;border-radius:var(--radius-md);display:flex;gap:2px;padding:2px}.lang-btn{background:#0000;border:none;border-radius:calc(var(--radius-md) - 2px);color:#ffffff8c;cursor:pointer;font-family:var(--font-sans);font-size:.75rem;font-weight:700;letter-spacing:.04em;min-height:36px;padding:.5rem .625rem;transition:background var(--transition-fast),color var(--transition-fast)}.lang-btn:hover{color:#fff}.lang-btn.active{background:#2563eb;color:#fff}.mobile-menu-toggle{align-items:center;background:#ffffff0f;border:1px solid #ffffff14;border-radius:var(--radius-md);cursor:pointer;display:none;flex-direction:column;gap:4px;height:44px;justify-content:center;padding:0;width:44px}.mobile-menu-toggle span{background:#ffffffbf;border-radius:2px;display:block;height:1.5px;transition:.25s;width:16px}.mobile-nav{background:#0d1117;border-top:1px solid #ffffff0f;display:none;flex-direction:column;gap:.25rem;padding:.75rem 1.25rem 1.25rem}.mobile-nav.open{display:flex}.mobile-nav-link{align-items:center;border-radius:var(--radius-md);color:#fff9;display:flex;font-size:.9rem;font-weight:500;gap:.625rem;min-height:44px;padding:.75rem;text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast)}.mobile-nav-group+.mobile-nav-group{margin-top:.5rem}.mobile-nav-group-title{color:#ffffff61;font-size:.65rem;font-weight:700;letter-spacing:.08em;padding:.4rem .75rem .25rem;text-transform:uppercase}.mobile-nav-link:hover{background:#ffffff0f;color:#fff}.mobile-nav-link.active{background:#2563eb26;color:#93c5fd;font-weight:600}.mobile-nav-link.disabled{opacity:.35;pointer-events:none}.unit-selector{background:#ffffff0f!important;border-color:#ffffff14!important}.system-btn{color:#ffffff8c!important}.system-btn.active{background:#ffffff24!important;color:#fff!important}.settings-toggle{color:#ffffff73!important}.settings-toggle:hover{color:#fff!important}.current-units{background:#0003!important;color:#ffffff73!important}@media (max-width:1100px){.nav-links{gap:0}.nav-link{font-size:.8125rem;padding:.625rem .55rem}}@media (max-width:768px){.nav-container{padding:0 1rem}.nav-links{display:none}.mobile-menu-toggle{display:flex}.brand-text{display:none}}@media (max-width:480px){.nav-controls{gap:.375rem}.lang-btn{padding:.2rem .5rem}}.print-header{border-bottom:1.5pt solid #000;color:#000;font-size:9pt;line-height:1.3;margin-bottom:10pt;padding-bottom:6pt}.print-header-grid{display:flex;gap:1.5em;justify-content:space-between}.print-header-left,.print-header-right{flex:1 1}.print-header-right{text-align:right}.print-header-label{color:#555;font-size:7.5pt;letter-spacing:.04em;text-transform:uppercase}.print-header-label-sep{margin-top:3pt}.print-header-value{font-weight:600;margin-top:1pt}.print-header-company{font-weight:500}.print-header-anon{color:#444;font-style:italic;font-weight:500}.print-header-brand{color:#888;font-size:7pt;margin-top:4pt;text-align:right}@media print{.print-watermark{background:#fff8d6;border:1pt solid #b8860b;border-radius:2pt;margin:0 0 10pt;padding:7pt 12pt;-webkit-print-color-adjust:exact;print-color-adjust:exact;text-align:center}.print-watermark-text{color:#6b4a00;font-size:11pt;font-weight:700;letter-spacing:.06em;text-transform:uppercase}}.print-footer{border-top:1pt solid #999;color:#444;font-size:7.5pt;line-height:1.4;margin-top:12pt;padding-top:6pt}.print-footer-disclaimer{font-style:italic}.print-footer-meta{color:#888;font-size:7pt;margin-top:2pt}.print-footer-tier{color:#b8860b;font-weight:600}.beta-banner{align-items:center;background:#fffbeb;border-bottom:1px solid #fde68a;color:#92400e;display:flex;font-size:.78rem;gap:.75rem;line-height:1.4;padding:.45rem 1rem}.beta-banner-text{flex:1 1;text-align:center}.beta-banner-dismiss{align-items:center;background:#0000;border:none;border-radius:4px;color:#92400e;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:1.1rem;height:22px;justify-content:center;line-height:1;width:22px}.beta-banner-dismiss:hover{background:#fde68a}@media (max-width:768px){.beta-banner{font-size:.72rem;padding:.4rem .6rem}}.feedback-button{align-items:center;background:var(--primary-600);border-radius:999px;bottom:1.25rem;box-shadow:0 4px 12px #0000002e;color:#fff;display:inline-flex;font-size:.85rem;font-weight:600;gap:.5rem;padding:.55rem .9rem;position:fixed;right:1.25rem;text-decoration:none;transition:background .15s ease,box-shadow .15s ease,transform .15s ease;z-index:900}.feedback-button:hover{background:var(--primary-700);box-shadow:0 6px 16px #00000038;transform:translateY(-1px)}.feedback-button:focus-visible{outline:2px solid var(--primary-200);outline-offset:2px}.feedback-button-icon{flex-shrink:0}@media (max-width:768px){.feedback-button{bottom:1rem;padding:.55rem .7rem;right:1rem}.feedback-button-label{display:none}}.restored-version-notice{align-items:flex-start;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-md);color:#92400e;display:flex;font-size:var(--text-sm);gap:var(--space-3);line-height:1.4;margin:var(--space-4) auto 0;max-width:1200px;padding:var(--space-3) var(--space-4)}.rvn-text{flex:1 1}.rvn-dismiss{background:#0000;border:none;color:#92400e;cursor:pointer;flex-shrink:0;font-size:1.25rem;line-height:1;opacity:.7;padding:0 var(--space-1)}.rvn-dismiss:hover{opacity:1}.home-page{margin-bottom:-3rem;margin-top:-1.5rem}.hero-section{align-items:center;background:#050d1f;display:flex;min-height:88vh;overflow:hidden;position:relative}.hero-section:before{background:radial-gradient(circle,#2563eb14 0,#0000 70%);content:"";height:600px;left:-100px;pointer-events:none;position:absolute;top:-200px;width:600px}.hero-container{margin:0 auto;max-width:1280px;padding:5rem 2.5rem;position:relative;width:100%;z-index:1}.hero-content{align-items:flex-start;display:flex;flex-direction:column;gap:0;max-width:560px;position:relative;z-index:2}.hero-badge{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;color:#ffffff8c;display:inline-flex;font-size:.7rem;font-weight:700;gap:.5rem;letter-spacing:.1em;margin-bottom:1.75rem;padding:.4em .9em;text-transform:uppercase}.hero-badge-dot{color:#22c55e;font-size:.5em}.hero-title{color:#fff;font-size:clamp(2.75rem,5.5vw,3.75rem);font-weight:800;letter-spacing:-.03em;line-height:1.08;margin-bottom:1.25rem}.hero-title-accent{color:var(--primary-500);display:block}.hero-subtitle{color:#ffffff80;font-size:1rem;line-height:1.7;margin-bottom:2.25rem;max-width:440px}.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.875rem}.hero-btn-primary{align-items:center;background:var(--primary-600);border-radius:var(--radius-md);color:#fff;display:inline-flex;font-size:.9375rem;font-weight:600;gap:.5rem;letter-spacing:-.01em;padding:.75rem 1.625rem;text-decoration:none;transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.hero-btn-primary:hover{background:var(--primary-700);box-shadow:0 4px 20px #2563eb59;transform:translateY(-1px)}.btn-arrow{font-style:normal}.hero-btn-secondary{align-items:center;background:#0000;border:1px solid #ffffff26;border-radius:var(--radius-md);color:#ffffffbf;display:inline-flex;font-size:.9375rem;font-weight:500;letter-spacing:-.01em;padding:.75rem 1.625rem;text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.hero-btn-secondary:hover{background:#ffffff0f;border-color:#ffffff40;color:#fff}.hero-wireframe{height:auto;mix-blend-mode:lighten;opacity:.28;pointer-events:none;position:absolute;right:-6%;top:50%;transform:translateY(-50%);width:80%;z-index:0}.tools-section{background:#f9fafb;padding:5rem 0 4rem}.tools-container{margin:0 auto;max-width:1280px;padding:0 2.5rem}.tools-header{margin-bottom:2.5rem}.tools-title{color:#0f172a;font-size:1.875rem;font-weight:800;letter-spacing:-.03em;margin-bottom:.375rem}.tools-subtitle{color:#64748b;font-size:.9375rem}.tools-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.tool-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;padding:1.5rem;position:relative;transition:box-shadow var(--transition-normal),border-color var(--transition-normal),transform var(--transition-normal)}.tool-card:hover{border-color:#d1d5db;box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}.tool-card--soon{opacity:.65}.tool-card--soon:hover{box-shadow:none;transform:none}.soon-badge{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:var(--radius-full);color:#6b7280;font-size:.625rem;font-weight:700;letter-spacing:.08em;padding:.2em .6em;position:absolute;right:1rem;top:1rem}.tool-icon{align-items:center;background:#3b82f61a;border-radius:10px;color:var(--primary-600);display:flex;font-size:1.25rem;font-style:normal;height:46px;justify-content:center;margin-bottom:1rem;width:46px}.tool-title{color:#111827;font-size:1.0625rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.5rem}.tool-description{color:#6b7280;flex:1 1;font-size:.875rem;line-height:1.6;margin-bottom:1.25rem}.tool-link{align-items:center;align-self:flex-start;color:var(--primary-600);display:inline-flex;font-size:.875rem;font-weight:600;gap:.25rem;text-decoration:none;transition:gap var(--transition-fast),color var(--transition-fast)}.tool-link:hover{color:var(--primary-700);gap:.4rem}.tool-link--disabled{color:#6b7280;cursor:default}.home-footer{background:#fff;border-top:1px solid #f3f4f6;padding:1.5rem 0}.footer-container{flex-direction:column;margin:0 auto;max-width:1280px;padding:0 2.5rem;text-align:center}.footer-brand,.footer-container{align-items:center;display:flex;gap:.5rem}.footer-badge{align-items:center;background:var(--primary-600);border-radius:5px;color:#fff;display:inline-flex;font-size:.6rem;font-weight:800;height:24px;justify-content:center;letter-spacing:-.01em;width:24px}.footer-name{color:#0f172a;font-size:.875rem;font-weight:700;letter-spacing:-.01em}.footer-copy{color:#6b7280;font-size:.8125rem}.footer-disclaimer{color:#9ca3af;font-size:.7rem;line-height:1.5;margin:.75rem auto 0;max-width:600px;text-align:center}.footer-disclaimer a{color:#2563eb;color:var(--primary-600,#2563eb);text-decoration:none}.footer-disclaimer a:hover{text-decoration:underline}.footer-links{color:#9ca3af;font-size:.75rem;margin:.6rem auto 0;text-align:center}.footer-links a{color:#2563eb;color:var(--primary-600,#2563eb);text-decoration:none}.footer-links a:hover{text-decoration:underline}.loading-container{align-items:center;color:var(--text-muted);display:flex;font-size:.9375rem;height:50vh;justify-content:center}@media (max-width:1024px){.tools-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.hero-container{gap:2.5rem;grid-template-columns:1fr;min-height:auto;padding:3rem 1.5rem 2rem}.hero-section{min-height:auto}.hero-title{font-size:2.5rem}.hero-visual{display:none}.tools-section{padding:3rem 0 2.5rem}.tools-container{padding:0 1.5rem}.tools-grid{grid-template-columns:1fr}.footer-container{flex-direction:column;gap:.5rem;text-align:center}}@media (max-width:480px){.hero-title{font-size:2rem}.hero-actions{align-items:stretch;flex-direction:column}.hero-btn-primary,.hero-btn-secondary{justify-content:center}}.gable-roof-diagram{width:100%}.diagram-header{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.75rem;text-transform:uppercase}.diagram-svg{display:block;overflow:visible;width:100%}.wind-line{stroke:var(--primary-500);stroke-width:1.5;fill:none}.arrow-fill,.wind-text{fill:var(--primary-500)}.wind-text{font-family:var(--font-sans);font-size:8px;font-weight:600}.roof-stroke{stroke:var(--text-secondary);stroke-width:1.5;fill:none}.ridge-stroke{stroke:var(--border-medium);stroke-width:1;fill:none}.slope-arc{stroke:var(--text-tertiary);stroke-width:1;fill:none}.slope-text{fill:var(--text-secondary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:8px}.side-label-text{fill:var(--text-tertiary)}.case-label-text,.side-label-text{font-family:var(--font-sans);font-size:8.5px}.case-label-text{fill:var(--text-secondary);font-weight:700}.bar-case-i{fill:#3b82f62e;stroke:#3b82f68c;stroke-width:1}.bar-upwind{fill:#93c5fd40;stroke:#93c5fdb3;stroke-width:1}.bar-downwind{fill:#fbbf2438;stroke:#fbbf24a6;stroke-width:1}.bar-val-i{fill:var(--primary-600);font-weight:700}.bar-val-i,.bar-val-upwind{font-family:var(--font-sans);font-size:9px}.bar-val-upwind{fill:var(--primary-400);font-weight:600}.bar-val-downwind{fill:#d97706;font-family:var(--font-sans);font-size:9px;font-weight:700}.base-line{stroke:var(--border-medium);stroke-width:1}.lgnd-text{fill:var(--text-secondary);font-family:var(--font-sans);font-size:8px}.lgnd-i{fill:#3b82f640;stroke:#3b82f699;stroke-width:1}.lgnd-upwind{fill:#93c5fd4d;stroke:#93c5fdcc;stroke-width:1}.lgnd-downwind{fill:#fbbf2440;stroke:#fbbf24b3;stroke-width:1}.diagram-note{color:var(--text-muted);font-size:.73rem;font-style:italic;line-height:1.5;margin-top:.5rem}.hoverable-label,.tooltip-container{align-items:center;display:inline-flex;position:relative}.hoverable-label{color:var(--text-primary);cursor:default;font-size:.8125rem;font-size:var(--text-sm,.8125rem);font-weight:600;font-weight:var(--font-semibold,600);gap:.5rem;line-height:1;margin-bottom:.5rem;margin-bottom:var(--space-2,.5rem)}.info-icon{align-items:center;color:var(--text-muted);cursor:help;display:inline-flex;flex-shrink:0;height:16px;justify-content:center;transition:color .15s;width:16px}.info-icon svg{height:14px;vertical-align:middle;width:14px}.info-icon:hover{color:var(--primary-600)}.tooltip{word-wrap:break-word;background:var(--bg-base);border:1px solid var(--border-light);border-radius:8px;bottom:calc(100% + 8px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-sizing:border-box;color:var(--text-secondary);display:block;font-size:13px;font-weight:400;left:0;line-height:1.6;max-width:320px;min-height:60px;min-width:200px;overflow-wrap:break-word;padding:16px 20px;position:absolute;white-space:normal;width:280px;z-index:1000}.tooltip:before{border-left:9px solid #0000;border-right:9px solid #0000;border-top:9px solid #e5e7eb;left:20px}.tooltip:after,.tooltip:before{content:"";position:absolute;top:100%}.tooltip:after{border-left:8px solid #0000;border-right:8px solid #0000;border-top:8px solid #fff;left:21px}.tooltip--top{bottom:calc(100% + 8px);top:auto}.tooltip--bottom{bottom:auto;top:calc(100% + 8px)}.tooltip--bottom:before{border:9px solid #0000;border-bottom:9px solid #e5e7eb;border-top:none;bottom:100%;content:"";left:20px;position:absolute}.tooltip--bottom:after{border:8px solid #0000;border-bottom:8px solid #fff;border-top:none;bottom:100%;content:"";left:21px;position:absolute}.tooltip--left{bottom:50%;left:auto;right:calc(100% + 8px);transform:translateY(50%)}.tooltip--left:before{border:9px solid #0000;border-left:9px solid #e5e7eb;border-right:none;top:50%}.tooltip--left:after,.tooltip--left:before{content:"";left:100%;position:absolute;transform:translateY(-50%)}.tooltip--left:after{border:8px solid #0000;border-left:8px solid #fff;border-right:none;top:calc(50% + 1px)}.tooltip--right{bottom:50%;left:calc(100% + 8px);right:auto;transform:translateY(50%)}.tooltip--right:before{border:9px solid #0000;border-left:none;border-right-color:#e5e7eb;top:50%}.tooltip--right:after,.tooltip--right:before{content:"";position:absolute;right:100%;transform:translateY(-50%)}.tooltip--right:after{border:8px solid #0000;border-left:none;border-right-color:#fff;top:calc(50% + 1px)}@media (prefers-contrast:high){.tooltip{border:2px solid var(--text-primary)}}@media (max-width:640px){.tooltip{font-size:12px;max-width:90vw;padding:12px 16px;width:240px}}.version-badge-group{align-items:center;display:inline-flex;gap:.5rem;margin-left:.5rem;vertical-align:middle}.version-badge{border-radius:4px;display:inline-block;font-size:.65rem;font-weight:600;letter-spacing:.02em;padding:.15rem .45rem;text-decoration:none;transition:opacity .15s}.version-badge:hover{opacity:.8}.version-badge--released{background:#eff6ff;background:var(--primary-50,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-200,#bfdbfe);color:#1d4ed8;color:var(--primary-700,#1d4ed8)}.version-badge--beta{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.version-badge--alpha{background:#fce7f3;border:1px solid #f9a8d4;color:#9d174d}.verification-note{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.6rem;font-style:italic;text-decoration:none}.verification-note:hover{color:#2563eb;color:var(--primary-600,#2563eb);text-decoration:underline}.save-calc{align-items:center;display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.save-calc-confirm,.save-calc-trigger{align-items:center;background:var(--primary-600);border:none;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-1);padding:var(--space-2) var(--space-3);transition:background var(--transition-fast)}.save-calc-confirm:hover,.save-calc-trigger:hover{background:var(--primary-700)}.save-calc-confirm:disabled{cursor:default;opacity:.6}.save-calc-form{align-items:center;display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.save-calc-input{background:var(--primary-50);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);min-width:200px;padding:var(--space-2) var(--space-3)}.save-calc-input:focus{background:var(--bg-primary);border-color:var(--border-focus);outline:none}.save-calc-newcopy{background:#0000;border:1px solid var(--primary-200);border-radius:var(--radius-md);color:var(--primary-700);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-2) var(--space-3);transition:background var(--transition-fast)}.save-calc-newcopy:hover{background:var(--primary-50)}.save-calc-newcopy:disabled{cursor:default;opacity:.6}.save-calc-cancel{background:#0000;border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.save-calc-cancel:hover{background:var(--bg-muted)}.save-calc-signin{color:var(--text-link);font-size:var(--text-sm);text-decoration:none}.save-calc-signin:hover{text-decoration:underline}.save-calc-feedback{font-size:var(--text-sm);font-weight:var(--font-medium)}.save-calc-feedback--ok{color:var(--success)}.save-calc-feedback--err{color:var(--error)}.gen-report{flex-wrap:wrap;gap:var(--space-2)}.gen-report,.gen-report-trigger{align-items:center;display:inline-flex}.gen-report-trigger{background:#0000;border:1px solid var(--primary-200);border-radius:var(--radius-md);color:var(--primary-700);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-1);padding:var(--space-2) var(--space-3);transition:background var(--transition-fast)}.gen-report-trigger:hover{background:var(--primary-50)}.gen-report-trigger:disabled{cursor:default;opacity:.6}.gen-report-signin{color:var(--text-link);font-size:var(--text-sm);text-decoration:none}.gen-report-signin:hover{text-decoration:underline}.gen-report-feedback{font-size:var(--text-sm);font-weight:var(--font-medium)}.gen-report-feedback--note{color:var(--text-secondary)}.gen-report-feedback--err{color:var(--error)}.snow-load-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.snow-load-calculator-page{margin-top:-1.5rem}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.section-icon{font-size:.875rem}.hoverable-label sub{text-transform:lowercase}.warning-text{color:#d97706;color:var(--warning,#d97706);font-weight:600}.checkbox-group{align-items:center;display:flex}.checkbox-label{gap:.5rem}.checkbox-text{cursor:help}.case-type-label{align-items:center;display:flex;justify-content:space-between}.factor-symbol{width:24px}.auto-badge{margin-right:.25rem}.factor-val{min-width:36px}.result-reference{border-top:1px solid var(--border-light);color:var(--text-muted);font-size:.71rem;line-height:1.5;margin-top:1rem;padding-top:.75rem}.governs-badge{background:#eff6ff;background:var(--primary-50,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-200,#bfdbfe);border-radius:4px;color:#1d4ed8;color:var(--primary-700,#1d4ed8);font-size:.625rem;font-weight:700;letter-spacing:.06em;padding:.2em .55em;text-transform:uppercase}.case-ii-subtitle{color:var(--text-tertiary);font-size:.75rem;margin-bottom:.875rem}.case-ii-sides{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:1fr 1fr}.side-col-label{color:var(--text-tertiary);font-size:.65rem;font-weight:700;letter-spacing:.06em;margin-bottom:.5rem;text-transform:uppercase}.side-factors .factor-row{padding:.35rem 0}.side-load-row{align-items:baseline;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;margin-top:.625rem;padding-top:.5rem}.side-load-label{color:var(--text-secondary);font-size:.75rem;font-weight:600}.side-load-value{font-feature-settings:"tnum";font-size:1.125rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.02em}.side-load-value.upwind-val{color:var(--primary-600)}.side-load-value.downwind-val{color:#d97706}.field-warning{border-radius:.5rem;border-radius:var(--radius-md,.5rem);font-size:.8125rem;line-height:1.5;margin-bottom:0;margin-top:.5rem;padding:.5rem .75rem}.field-warning+.field-warning{margin-top:.375rem}.field-warning+.form-row{margin-top:.75rem}.field-warning--hard{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.field-warning--soft{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.field-warning--info{background:#eff6ff;background:var(--primary-50,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-200,#bfdbfe);color:#1e40af;color:var(--primary-800,#1e40af);white-space:pre-line}@media (max-width:1024px){.calculator-content,.case-ii-sides,.form-row{grid-template-columns:1fr}}@media (max-width:768px){.calculator-content{padding:0 1rem}.calculator-header{padding:1rem 1.25rem 1.25rem}.header-title-row h1{font-size:1.25rem}.form-card,.result-card{padding:1rem}.load-number{font-size:1.75rem}.input-with-unit{flex-direction:column}.unit-input{border:1.5px solid var(--border-light)!important;border-radius:8px!important}.unit-display{border:1.5px solid var(--border-light);border-radius:8px;justify-content:center;min-height:36px;width:100%}}.snow-drift-diagram{width:100%}.drift-diagram-header{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.75rem;text-transform:uppercase}.drift-diagram-svg{display:block;overflow:visible;width:100%}.sdd-parapet{fill:#1e293b1f}.sdd-parapet,.sdd-roof-line{stroke:var(--text-secondary);stroke-width:1.5}.sdd-snow-outline{fill:none}.sdd-snow-drift,.sdd-snow-outline{stroke:#2563eb;stroke:var(--primary-600,#2563eb);stroke-width:1.5;stroke-linejoin:round}.sdd-snow-drift{fill:#bfdbfe;fill:var(--primary-200,#bfdbfe);opacity:.85}.sdd-snow-base{fill:#dbeafe;fill:var(--primary-100,#dbeafe);stroke:#93c5fd;stroke:var(--primary-300,#93c5fd);stroke-width:1;opacity:.7}.sdd-step-line{stroke:#2563eb;stroke:var(--primary-600,#2563eb);stroke-width:1.5;stroke-dasharray:3 2}.sdd-dim-line{stroke:var(--text-tertiary);stroke-width:1;fill:none}.sdd-tick{stroke:var(--text-tertiary);stroke-width:1.2;stroke-linecap:round}.sdd-arrow-fill{fill:var(--text-tertiary)}.sdd-dim-vert{fill:var(--text-secondary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:9px;font-weight:700}.sdd-drift-label{fill:#2563ebbf;font-size:8px}.sdd-drift-label,.sdd-load-peak{font-family:var(--font-sans);font-weight:700}.sdd-load-peak{fill:var(--primary-600);fill:var(--primary-600,var(--primary-600));font-size:9px}.sdd-load-base{font-weight:600}.sdd-dim-text,.sdd-load-base{fill:var(--text-secondary);font-family:var(--font-sans);font-size:8px}.sdd-cw-label{fill:#94a3b8;font-size:7px}.sdd-cw-label,.sdd-slope-label{font-family:var(--font-sans);font-weight:600}.sdd-slope-label{fill:#6b7280;fill:var(--text-secondary,#6b7280);font-size:9px;font-style:italic}.snow-drift-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.snow-drift-calculator-page{margin-top:-1.5rem}.calculator-header{background:linear-gradient(135deg,#0f1c2e,#0d2654 60%,#1a3a6e);margin-bottom:2rem;width:100%}.calculator-header-inner{margin:0 auto;max-width:1280px;padding:1.25rem 2rem 1.5rem}.back-link{align-items:center;color:#ffffff73;display:inline-flex;font-size:.8125rem;gap:.375rem;margin-bottom:1rem;text-decoration:none;transition:color .15s}.back-link:hover{color:#ffffffbf}.header-title-row{align-items:center;display:flex;gap:1rem}.calc-icon-badge{align-items:center;background:#ffffff26;border-radius:10px;color:#fff;display:flex;flex-shrink:0;height:46px;justify-content:center;width:46px}.header-title-row h1{color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0}.nbc-ref{color:#ffffff73;font-size:.8125rem;margin:.15rem 0 0}.calculator-content{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0 2rem}.form-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012}.form-section{border-bottom:1px solid var(--border-light);padding:1.25rem}.form-section:first-child{border-radius:12px 12px 0 0}.form-section:last-child{border-bottom:none;border-radius:0 0 12px 12px}.section-header{gap:.625rem;margin-bottom:1rem}.section-header,.section-icon{align-items:center;display:flex}.section-icon{background:var(--primary-50);border-radius:7px;color:var(--primary-600);flex-shrink:0;height:28px;justify-content:center;width:28px}.section-title{color:var(--text-primary);font-size:.875rem;font-weight:700;letter-spacing:-.005em}.form-row{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.form-group{margin-bottom:.75rem;position:relative}.form-group:last-child{margin-bottom:0}.form-group .field-label,.form-group label{color:var(--text-tertiary);display:block;font-size:.7rem;font-weight:700;letter-spacing:.05em;margin-bottom:.35rem;text-transform:uppercase}.form-group input,.form-group select{background:#fff;border:1.5px solid var(--border-light);border-radius:8px;color:var(--text-primary);font-family:var(--font-sans);font-size:.875rem;padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s;width:100%}.form-group input:hover,.form-group select:hover{border-color:var(--border-medium)}.form-group input:focus,.form-group select:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f;outline:none}.input-with-unit:focus-within{border-radius:8px;box-shadow:0 0 0 3px #2563eb26}.input-with-unit .unit-input:focus{box-shadow:none}.input-with-unit:focus-within .unit-display{border-color:var(--primary-600);border-left-color:#0000}.form-group input:disabled,.form-group select:disabled{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);color:var(--text-muted);cursor:not-allowed}.form-group small{color:var(--text-muted);display:block;font-size:.7rem;line-height:1.4;margin-top:.3rem}.input-with-unit{align-items:stretch;display:flex}.unit-input{border-bottom-right-radius:0!important;border-right:none!important;border-top-right-radius:0!important;flex:1 1}.unit-container{align-items:stretch;display:flex;overflow:visible;position:relative}.unit-display{align-items:center;background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border:1.5px solid var(--border-light);border-bottom-right-radius:8px;border-left:none;border-top-right-radius:8px;color:var(--text-tertiary);display:flex;font-size:.75rem;font-weight:600;justify-content:center;min-width:52px;padding:0 .625rem;transition:background .15s,color .15s;white-space:nowrap}.unit-display.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.unit-display.clickable:hover{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-600)}.unit-dropdown{background:#fff;border:1px solid var(--border-medium);border-radius:8px;box-shadow:0 8px 24px #0000001f;min-width:110px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.unit-option{border-bottom:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;font-size:.8125rem;padding:.45rem .75rem;transition:background .12s}.unit-option:last-child{border-bottom:none}.unit-option:hover{background:var(--primary-50);color:var(--primary-600)}.unit-option.selected{background:var(--primary-100);color:var(--primary-700);font-weight:600}.source-toggle{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);margin-bottom:.875rem}.source-btn{background:#0000;border:none;color:var(--text-tertiary);cursor:pointer;flex:1 1;font-size:.8rem;font-weight:600;padding:.4rem .75rem;transition:background .15s,color .15s}.source-btn.active{background:var(--primary-600);color:#fff}.source-btn:hover:not(.active){color:var(--text-secondary)}.input-readonly{background:#f9fafb!important;background:var(--bg-subtle,#f9fafb)!important;color:var(--text-secondary)!important;cursor:default!important}.gamma-formula-display{background:#f9fafb;background:var(--bg-subtle,#f9fafb);border-radius:8px;color:var(--text-secondary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:.775rem;margin-top:.75rem;padding:.5rem .875rem}.react-select-container{font-size:.875rem}.react-select__control{background:#fff!important;border:1.5px solid var(--border-light)!important;border-radius:8px!important;box-shadow:none!important;min-height:36px!important}.react-select__control:hover{border-color:var(--border-medium)!important}.react-select__control--is-focused{border-color:var(--primary-600)!important;box-shadow:0 0 0 3px #2563eb1f!important}.react-select__menu{background:#fff!important;border:1px solid var(--border-medium)!important;border-radius:8px!important;box-shadow:0 8px 24px #0000001f!important}.react-select__option{background:#0000!important;color:var(--text-primary)!important;font-size:.875rem!important}.react-select__option--is-focused{background:var(--primary-50)!important;color:var(--primary-700)!important}.react-select__option--is-selected{background:var(--primary-100)!important;color:var(--primary-700)!important;font-weight:600!important}.result-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;padding:1.375rem 1.5rem}.case-type-label{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.5rem;text-transform:uppercase}.load-display{align-items:baseline;display:flex;gap:.375rem;margin-bottom:.875rem}.load-number{font-feature-settings:"tnum";color:var(--primary-600);font-size:2.25rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.03em;line-height:1}.load-unit-label{color:var(--primary-600);font-size:1rem;font-weight:600}.formula-block{background:#f9fafb;background:var(--bg-subtle,#f9fafb);border-radius:8px;color:var(--text-secondary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:.775rem;line-height:1.8;margin-bottom:1rem;padding:.625rem .875rem}.formula-line{display:block}.factors-heading{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.625rem;text-transform:uppercase}.factor-row{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:.5rem;padding:.45rem 0}.factor-row:last-child{border-bottom:none}.factor-symbol{color:var(--primary-600);flex-shrink:0;font-size:.8rem;font-style:italic;font-weight:700;width:32px}.factor-name{color:var(--text-secondary);flex:1 1;font-size:.8125rem}.auto-badge{background:var(--primary-100);border-radius:4px;color:var(--primary-600);flex-shrink:0;font-size:.625rem;font-weight:700;letter-spacing:.04em;padding:.1em .45em;text-align:center;text-transform:uppercase;width:3rem}.factor-badge-spacer{display:inline-block;flex-shrink:0;width:3rem}.factor-val{font-feature-settings:"tnum";color:var(--text-primary);flex-shrink:0;font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:700;min-width:80px;text-align:right}.no-drift-card{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;display:flex;gap:.875rem;padding:1.25rem 1.5rem}.no-drift-icon{flex-shrink:0;font-size:1.375rem;line-height:1}.no-drift-title{color:#166534;font-size:.875rem;font-weight:700;margin-bottom:.25rem}.no-drift-reason{color:#166534;font-size:.8125rem;opacity:.8}.results-empty{border-style:dashed;flex-direction:column;padding:2.5rem 1.5rem;text-align:center}.empty-icon,.results-empty{align-items:center;display:flex}.empty-icon{justify-content:center;margin-bottom:.75rem;opacity:.3}.empty-icon,.empty-title{color:var(--text-secondary)}.empty-title{font-size:.9375rem;font-weight:600;margin-bottom:.375rem}.empty-sub{color:var(--text-muted);font-size:.8rem;line-height:1.5;margin:0 auto;max-width:280px}@media (max-width:1024px){.calculator-content,.form-row{grid-template-columns:1fr}}@media (max-width:768px){.calculator-content{padding:0 1rem}.header-title-row h1{font-size:1.25rem}.load-number{font-size:1.75rem}.input-with-unit{flex-direction:column}.unit-input{border:1.5px solid var(--border-light)!important;border-radius:8px!important}.unit-display{border:1.5px solid var(--border-light);border-radius:8px;justify-content:center;min-height:36px;width:100%}}.slrd-wrapper{width:100%}.slrd-title{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.875rem;text-transform:uppercase}.slrd-svg{display:block;height:auto;overflow:visible;width:100%}.slrd-snow-drift{fill:var(--primary-200);stroke:var(--primary-600);stroke-width:1.5;stroke-linejoin:round;opacity:.85}.slrd-snow-base{fill:var(--primary-100);stroke:var(--primary-300);stroke-width:1;opacity:.7}.slrd-roof{stroke:#1e293b;stroke-width:2.5;stroke-linecap:round}.slrd-wall{stroke:#334155;stroke-width:2;stroke-linecap:round}.slrd-ground{stroke:#475569;stroke-width:2;stroke-linecap:round}.slrd-dim-line{stroke:#64748b;stroke-width:1.2}.slrd-dim-text{fill:#475569;font-family:monospace;font-family:var(--font-mono,monospace);font-size:9px;font-weight:600}.slrd-dim-h{font-size:13px;font-style:italic;font-weight:800}.slrd-dim-h,.slrd-drift-label{fill:var(--primary-700);font-family:sans-serif;font-family:var(--font-sans,sans-serif)}.slrd-drift-label{font-size:10px;font-weight:700;letter-spacing:.08em;opacity:.7}.slrd-load-peak{fill:var(--primary-700);font-size:9.5px;font-weight:700}.slrd-load-base,.slrd-load-peak{font-family:monospace;font-family:var(--font-mono,monospace)}.slrd-load-base{fill:var(--primary-500);font-size:8.5px;font-weight:600}.slrd-wall-inner{stroke:#334155;stroke-width:1.5;stroke-dasharray:4 3;stroke-linecap:round}.slrd-tick{stroke:#64748b;stroke-width:1.2;stroke-linecap:round}.slrd-step-line{stroke:var(--primary-600);stroke-width:1.5;stroke-dasharray:3 2}.slrd-load-line{stroke:var(--primary-700);stroke-width:1.2}.slrd-load-line-base{stroke:var(--primary-500);stroke-width:1}.slrd-roof-label{fill:#64748b;font-family:sans-serif;font-family:var(--font-sans,sans-serif);font-size:9px;font-weight:600}.lrpd-wrapper{width:100%}.lrpd-heading{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.25rem;text-transform:uppercase}.lrpd-subheading{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:.75rem;margin-bottom:1rem}.lrpd-grid{grid-gap:.75rem;align-items:stretch;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}.lrpd-case-card{background:#fff;border:1.5px solid #e5e7eb;border:1.5px solid var(--border-light,#e5e7eb);border-radius:10px;display:flex;flex-direction:column;gap:.375rem;padding:.75rem}.lrpd-case-card--governs{background:var(--primary-50);border-color:var(--primary-600)}.lrpd-case-card--na{opacity:.45}.lrpd-case-header{align-items:center;display:flex;gap:.5rem}.lrpd-case-label{color:#111827;color:var(--text-primary,#111827);font-size:.8125rem;font-weight:700}.lrpd-governs-badge{background:var(--primary-200);border-radius:4px;color:var(--primary-700);font-size:.5625rem;font-weight:800;letter-spacing:.06em;padding:.15em .5em;text-transform:uppercase}.lrpd-case-desc{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:.7rem;margin:0}.lrpd-svg{display:block;flex:1 1;height:auto;margin-top:.25rem;overflow:visible;width:100%}.lrpd-lr-rect,.lrpd-ur-rect{fill:#fff;stroke:#1e293b;stroke-width:1.5}.lrpd-source-rect{fill:#b0b0b0;stroke:none}.lrpd-hatch-rect{opacity:.7}.lrpd-drift-dashed{fill:none;stroke:#444;stroke-width:1;stroke-dasharray:4 2.5}.lrpd-lr-label,.lrpd-roof-label{font-size:9px;font-weight:700}.lrpd-lr-label,.lrpd-roof-label,.lrpd-source-label{fill:#1e293b;font-family:sans-serif;font-family:var(--font-sans,sans-serif)}.lrpd-source-label{font-size:7px}.lrpd-drift-label{fill:#1e293b;font-style:italic}.lrpd-dim-label,.lrpd-drift-label{font-family:sans-serif;font-family:var(--font-sans,sans-serif);font-size:6.5px}.lrpd-dim-label{fill:#333}.lrpd-case-card--clickable{cursor:pointer;transition:box-shadow .15s,border-color .15s,transform .15s}.lrpd-case-card--clickable:hover{box-shadow:0 4px 16px #2563eb26;transform:translateY(-2px)}.lrpd-zoom-hint{align-items:center;color:#9ca3af;color:var(--text-muted,#9ca3af);display:flex;font-size:.65rem;gap:.3rem;justify-content:flex-end;margin-top:.35rem}.lrpd-modal-backdrop{align-items:center;animation:lrpd-fade-in .15s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}@keyframes lrpd-fade-in{0%{opacity:0}to{opacity:1}}.lrpd-modal{animation:lrpd-slide-up .18s ease;background:#fff;background:var(--bg-card,#fff);border-radius:14px;box-shadow:0 20px 60px #0000004d;padding:1.5rem;width:min(520px,90vw)}@keyframes lrpd-slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.lrpd-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.lrpd-modal-title{color:#111827;color:var(--text-primary,#111827);font-size:1rem;font-weight:700}.lrpd-modal-desc{font-size:.8rem}.lrpd-modal-close,.lrpd-modal-desc{color:#6b7280;color:var(--text-muted,#6b7280)}.lrpd-modal-close{align-items:center;background:none;border:none;border-radius:6px;cursor:pointer;display:flex;padding:.25rem;transition:background .12s,color .12s}.lrpd-modal-close:hover{background:var(--bg-muted);color:var(--text-primary)}.lrpd-modal-body{width:100%}.lrpd-modal-body .lrpd-svg{height:auto;max-height:70vh;width:100%}.lrpd-modal-hint{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:.68rem;margin-top:1rem;text-align:center}@media (max-width:640px){.lrpd-grid{grid-template-columns:1fr}}.snow-lower-roof-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.lower-roof-caution{background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #f59e0b;border-left:4px solid var(--warning,#f59e0b);border-radius:8px;color:#92400e;font-size:.8125rem;line-height:1.5;margin:0 auto 1.25rem;max-width:1280px;padding:.75rem 1rem}@media (max-width:768px){.lower-roof-caution{margin-left:1rem;margin-right:1rem}}.snow-lower-roof-page{margin-top:-1.5rem}.snow-lower-roof-page .calculator-header{background:linear-gradient(135deg,#0f1c2e,#0d2654 60%,#1a3a6e);margin-bottom:2rem;width:100%}.snow-lower-roof-page .calculator-header-inner{margin:0 auto;max-width:1280px;padding:1.25rem 2rem 1.5rem}.snow-lower-roof-page .back-link{align-items:center;color:#ffffff73;display:inline-flex;font-size:.8125rem;gap:.375rem;margin-bottom:1rem;text-decoration:none;transition:color .15s}.snow-lower-roof-page .back-link:hover{color:#ffffffbf}.snow-lower-roof-page .header-title-row{align-items:center;display:flex;gap:1rem}.snow-lower-roof-page .calc-icon-badge{align-items:center;background:#ffffff26;border-radius:10px;color:#fff;display:flex;flex-shrink:0;height:46px;justify-content:center;width:46px}.snow-lower-roof-page .header-title-row h1{color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0}.snow-lower-roof-page .nbc-ref{color:#ffffff73;font-size:.8125rem;margin:.15rem 0 0}.snow-lower-roof-calculator .calculator-content{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0 2rem}.snow-lower-roof-calculator .form-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012}.snow-lower-roof-calculator .form-section{border-bottom:1px solid var(--border-light);padding:1.25rem}.snow-lower-roof-calculator .form-section:first-child{border-radius:12px 12px 0 0}.snow-lower-roof-calculator .form-section:last-child{border-bottom:none;border-radius:0 0 12px 12px}.snow-lower-roof-calculator .section-header{align-items:center;display:flex;gap:.625rem;margin-bottom:1rem}.snow-lower-roof-calculator .section-icon{align-items:center;background:var(--primary-50);border-radius:7px;color:var(--primary-600);display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.snow-lower-roof-calculator .section-title{color:var(--text-primary);font-size:.875rem;font-weight:700;letter-spacing:-.005em}.snow-lower-roof-calculator .section-subtitle{color:var(--text-tertiary);font-size:.8rem;font-weight:500}.snow-lower-roof-calculator .section-note{color:var(--text-muted);font-size:.75rem;font-style:italic;margin:-.5rem 0 .875rem}.snow-lower-roof-calculator .form-row{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.snow-lower-roof-calculator .checkboxes-row{margin-top:.5rem}.snow-lower-roof-calculator .form-group{margin-bottom:.75rem;position:relative}.snow-lower-roof-calculator .form-group:last-child{margin-bottom:0}.snow-lower-roof-calculator .form-group .field-label,.snow-lower-roof-calculator .form-group label{color:var(--text-tertiary);display:block;font-size:.7rem;font-weight:700;letter-spacing:.05em;margin-bottom:.35rem;text-transform:uppercase}.snow-lower-roof-calculator .form-group input,.snow-lower-roof-calculator .form-group select{background:#fff;border:1.5px solid var(--border-light);border-radius:8px;color:var(--text-primary);font-family:var(--font-sans);font-size:.875rem;padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s;width:100%}.snow-lower-roof-calculator .form-group input:hover,.snow-lower-roof-calculator .form-group select:hover{border-color:var(--border-medium)}.snow-lower-roof-calculator .form-group input:focus,.snow-lower-roof-calculator .form-group select:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f;outline:none}.snow-lower-roof-calculator .input-with-unit:focus-within{border-radius:8px;box-shadow:0 0 0 3px #2563eb26}.snow-lower-roof-calculator .input-with-unit .unit-input:focus{box-shadow:none}.snow-lower-roof-calculator .input-with-unit:focus-within .unit-display{border-color:var(--primary-600);border-left-color:#0000}.snow-lower-roof-calculator .form-group input:disabled,.snow-lower-roof-calculator .form-group select:disabled{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);color:var(--text-muted);cursor:not-allowed}.snow-lower-roof-calculator .input-with-unit{align-items:stretch;display:flex}.snow-lower-roof-calculator .unit-input{border-bottom-right-radius:0!important;border-right:none!important;border-top-right-radius:0!important;flex:1 1}.snow-lower-roof-calculator .unit-container{align-items:stretch;display:flex;position:relative}.snow-lower-roof-calculator .unit-display{align-items:center;background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border:1.5px solid var(--border-light);border-bottom-right-radius:8px;border-left:none;border-top-right-radius:8px;color:var(--text-tertiary);display:flex;font-size:.75rem;font-weight:600;justify-content:center;min-width:52px;padding:0 .625rem;transition:background .15s,color .15s;white-space:nowrap}.snow-lower-roof-calculator .unit-display.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.snow-lower-roof-calculator .unit-display.clickable:hover{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-600)}.snow-lower-roof-calculator .unit-dropdown{background:#fff;border:1px solid var(--border-medium);border-radius:8px;box-shadow:0 8px 24px #0000001f;min-width:110px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.snow-lower-roof-calculator .unit-option{border-bottom:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;font-size:.8125rem;padding:.45rem .75rem;transition:background .12s}.snow-lower-roof-calculator .unit-option:last-child{border-bottom:none}.snow-lower-roof-calculator .unit-option:hover{background:var(--primary-50);color:var(--primary-600)}.snow-lower-roof-calculator .unit-option.selected{background:var(--primary-100);color:var(--primary-700);font-weight:600}.snow-lower-roof-calculator .source-toggle{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border:1.5px solid var(--border-light);border-radius:8px;display:flex;gap:0;margin-bottom:.875rem;overflow:hidden}.snow-lower-roof-calculator .source-btn{background:#0000;border:none;color:var(--text-tertiary);cursor:pointer;flex:1 1;font-size:.8rem;font-weight:600;padding:.4rem .75rem;transition:background .15s,color .15s}.snow-lower-roof-calculator .source-btn.active{background:var(--primary-600);color:#fff}.snow-lower-roof-calculator .source-btn:hover:not(.active){color:var(--text-secondary)}.snow-lower-roof-calculator .input-readonly{background:#f9fafb!important;background:var(--bg-subtle,#f9fafb)!important;color:var(--text-secondary)!important;cursor:default!important}.snow-lower-roof-calculator .checkbox-label{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem}.snow-lower-roof-calculator .checkbox-label input[type=checkbox]{accent-color:var(--primary-600);cursor:pointer;flex-shrink:0;height:15px;margin-right:.1rem;width:15px}.snow-lower-roof-calculator .gamma-formula-display{background:#f9fafb;background:var(--bg-subtle,#f9fafb);border-radius:8px;color:var(--text-secondary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:.775rem;margin-top:.75rem;padding:.5rem .875rem}.snow-lower-roof-calculator .react-select-container{font-size:.875rem}.snow-lower-roof-calculator .react-select__control{background:#fff!important;border:1.5px solid var(--border-light)!important;border-radius:8px!important;box-shadow:none!important;min-height:36px!important}.snow-lower-roof-calculator .react-select__control:hover{border-color:var(--border-medium)!important}.snow-lower-roof-calculator .react-select__control--is-focused{border-color:var(--primary-600)!important;box-shadow:0 0 0 3px #2563eb1f!important}.snow-lower-roof-calculator .react-select__menu{background:#fff!important;border:1px solid var(--border-medium)!important;border-radius:8px!important;box-shadow:0 8px 24px #0000001f!important}.snow-lower-roof-calculator .react-select__option{background:#0000!important;color:var(--text-primary)!important;font-size:.875rem!important}.snow-lower-roof-calculator .react-select__option--is-focused{background:var(--primary-50)!important;color:var(--primary-700)!important}.snow-lower-roof-calculator .react-select__option--is-selected{background:var(--primary-100)!important;color:var(--primary-700)!important;font-weight:600!important}.snow-lower-roof-calculator .results-section{display:flex;flex-direction:column;gap:1rem}.snow-lower-roof-calculator .result-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;padding:1.375rem 1.5rem}.snow-lower-roof-calculator .case-type-label{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.5rem;text-transform:uppercase}.snow-lower-roof-calculator .load-display{align-items:baseline;display:flex;gap:.375rem;margin-bottom:.35rem}.snow-lower-roof-calculator .load-number{font-feature-settings:"tnum";color:var(--primary-600);font-size:2.25rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.03em;line-height:1}.snow-lower-roof-calculator .load-unit-label{color:var(--primary-600);font-size:1rem;font-weight:600}.snow-lower-roof-calculator .load-subtitle{color:var(--text-tertiary);font-size:.8125rem;margin-bottom:.875rem}.snow-lower-roof-calculator .formula-block{background:#f9fafb;background:var(--bg-subtle,#f9fafb);border-radius:8px;color:var(--text-secondary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:.775rem;line-height:1.8;margin-bottom:1rem;padding:.625rem .875rem}.snow-lower-roof-calculator .formula-line{display:block}.snow-lower-roof-calculator .factors-heading{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.625rem;text-transform:uppercase}.snow-lower-roof-calculator .factor-row{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:.5rem;padding:.45rem 0}.snow-lower-roof-calculator .factor-row:last-child{border-bottom:none}.snow-lower-roof-calculator .factor-symbol{color:var(--primary-600);flex-shrink:0;font-size:.8rem;font-style:italic;font-weight:700;width:32px}.snow-lower-roof-calculator .factor-name{color:var(--text-secondary);flex:1 1;font-size:.8125rem}.snow-lower-roof-calculator .auto-badge{background:var(--primary-100);border-radius:4px;color:var(--primary-600);flex-shrink:0;font-size:.625rem;font-weight:700;letter-spacing:.04em;padding:.1em .45em;text-align:center;text-transform:uppercase;width:3rem}.snow-lower-roof-calculator .factor-badge-spacer{display:inline-block;flex-shrink:0;width:3rem}.snow-lower-roof-calculator .factor-val{font-feature-settings:"tnum";color:var(--text-primary);flex-shrink:0;font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:700;min-width:80px;text-align:right}.snow-lower-roof-calculator .cases-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr);margin-top:.75rem}.slider-result{margin-bottom:.75rem;text-align:center}.slider-value-display{align-items:baseline;display:flex;gap:.35rem;justify-content:center}.slider-value-display .load-number{font-size:2rem}.slider-details{font-feature-settings:"tnum";color:var(--text-secondary);display:flex;font-size:.75rem;font-variant-numeric:tabular-nums;gap:1.25rem;justify-content:center;margin-top:.25rem}.slider-labels{font-size:.65rem}.snow-lower-roof-calculator .case-card{background:#f9fafb;background:var(--bg-subtle,#f9fafb);border:1.5px solid var(--border-light);border-radius:10px;padding:.875rem}.snow-lower-roof-calculator .case-card--governs{background:var(--primary-50);border-color:var(--primary-600)}.snow-lower-roof-calculator .case-card--na{opacity:.55}.snow-lower-roof-calculator .case-card-header{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.75rem}.snow-lower-roof-calculator .case-label{color:var(--text-primary);font-size:.8125rem;font-weight:700}.snow-lower-roof-calculator .governs-badge{align-self:flex-start;background:var(--primary-200);border-radius:4px;color:var(--primary-700);font-size:.5625rem;font-weight:800;letter-spacing:.06em;padding:.15em .5em;text-transform:uppercase}.snow-lower-roof-calculator .case-desc{color:var(--text-muted);font-size:.7rem}.snow-lower-roof-calculator .case-na-text{color:var(--text-muted);font-size:.75rem;font-style:italic}.snow-lower-roof-calculator .case-row{border-bottom:1px solid var(--border-light);display:flex;font-size:.8125rem;justify-content:space-between;padding:.2rem 0}.snow-lower-roof-calculator .case-row:last-child{border-bottom:none}.snow-lower-roof-calculator .case-row span:first-child{color:var(--text-tertiary);font-weight:600}.snow-lower-roof-calculator .case-row span:last-child{font-feature-settings:"tnum";color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:700}.snow-lower-roof-calculator .case-row--load span:last-child{color:var(--primary-600)}.snow-lower-roof-calculator .results-empty{align-items:center;border-style:dashed;display:flex;flex-direction:column;padding:2.5rem 1.5rem;text-align:center}.snow-lower-roof-calculator .empty-icon{align-items:center;color:var(--text-secondary);display:flex;justify-content:center;margin-bottom:.75rem;opacity:.3}.snow-lower-roof-calculator .empty-title{color:var(--text-secondary);font-size:.9375rem;font-weight:600;margin-bottom:.375rem}.snow-lower-roof-calculator .empty-sub{color:var(--text-muted);font-size:.8rem;line-height:1.5;margin:0 auto;max-width:280px}@media (max-width:1200px){.snow-lower-roof-calculator .cases-grid{grid-template-columns:1fr}}@media (max-width:1024px){.snow-lower-roof-calculator .calculator-content,.snow-lower-roof-calculator .form-row{grid-template-columns:1fr}}@media (max-width:768px){.snow-lower-roof-calculator .calculator-content{padding:0 1rem}.snow-lower-roof-page .header-title-row h1{font-size:1.25rem}.snow-lower-roof-calculator .load-number{font-size:1.75rem}.snow-lower-roof-calculator .input-with-unit{flex-direction:column}.snow-lower-roof-calculator .unit-input{border:1.5px solid var(--border-light)!important;border-radius:8px!important}.snow-lower-roof-calculator .unit-display{border:1.5px solid var(--border-light);border-radius:8px;justify-content:center;min-height:36px;width:100%}}.steel-section-selector{position:relative;width:100%}.section-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.filter-group{display:flex;flex-direction:column;gap:.35rem;min-width:150px}.filter-group label{color:#9ca3af;color:var(--text-tertiary,#9ca3af);display:block;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.filter-group select{background:#fff;border:1.5px solid #e5e7eb;border:1.5px solid var(--border-light,#e5e7eb);border-radius:8px;color:#111827;color:var(--text-primary,#111827);font-family:inherit;font-family:var(--font-sans,inherit);font-size:.875rem;padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s;width:100%}.filter-group select:hover{border-color:#d1d5db;border-color:var(--border-medium,#d1d5db)}.filter-group select:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f;outline:none}.selector-input-container{position:relative}.selector-input{background:#fff;border:1.5px solid #e5e7eb;border:1.5px solid var(--border-light,#e5e7eb);border-radius:8px;color:#111827;color:var(--text-primary,#111827);font-family:inherit;font-family:var(--font-sans,inherit);font-size:.875rem;padding:.5rem 2.5rem .5rem .75rem;transition:border-color .15s,box-shadow .15s;width:100%}.selector-input:hover{border-color:#d1d5db;border-color:var(--border-medium,#d1d5db)}.selector-input:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f;outline:none}.selector-input:disabled{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);color:#9ca3af;color:var(--text-muted,#9ca3af);cursor:not-allowed}.clear-button,.dropdown-arrow{background:none;border:none;color:#6c757d;cursor:pointer;font-size:1rem;padding:.5rem;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:color .2s}.clear-button{font-size:1.25rem;font-weight:700;right:2rem}.clear-button:hover{color:#dc3545}.dropdown-arrow:hover{color:#2c3e50}.clear-button:disabled,.dropdown-arrow:disabled{color:#adb5bd;cursor:not-allowed}.dropdown-list{background:#fff;border:1px solid #e1e5e9;border-radius:0 0 4px 4px;border-top:none;box-shadow:0 4px 12px #00000026;left:0;max-height:400px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.dropdown-header{background:#f8f9fa;border-bottom:1px solid #e1e5e9;color:#6c757d;font-size:.8rem;font-weight:500;padding:.375rem .75rem}.dropdown-items{max-height:360px;overflow-x:hidden;overflow-y:auto}.dropdown-item{background:#fff;border-bottom:1px solid #f1f3f4;cursor:pointer;padding:.5rem .75rem;transition:background-color .15s}.dropdown-item:last-child{border-bottom:none}.dropdown-item.highlighted,.dropdown-item:hover{background:#f8f9fa}.section-designation{color:#2c3e50;font-size:.9rem;font-weight:600;line-height:1.2}.section-details{align-items:center;color:#6c757d;display:flex;font-size:.875rem;gap:.5rem}.dimensions{background:#e9ecef;border-radius:12px;color:#495057;font-family:Courier New,monospace;font-size:.8rem;font-weight:500;padding:.125rem .5rem}.more-results,.no-results{background:#fff;color:#6c757d;font-style:italic;padding:1rem;text-align:center}.more-results{background:#f8f9fa;border-top:1px solid #e1e5e9;font-size:.875rem;font-weight:500}.selected-section-details{background:#f8f9fa;border:1px solid #e1e5e9;border-radius:8px;margin-top:.5rem;padding:.75rem}.section-info{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.section-type{background:var(--primary-500);border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.section-name{color:#2c3e50;font-weight:500}.section-dims{background:#fff;border:1px solid #e1e5e9;border-radius:4px;color:#6c757d;font-family:Courier New,monospace;font-size:.875rem;padding:.25rem .5rem}.section-standard{background:#28a745;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.selector-input-container.open .selector-input{border-bottom-color:#0000;border-radius:4px 4px 0 0}@media (max-width:768px){.section-filters{flex-direction:column;gap:.5rem}.filter-group{min-width:auto}.section-info{align-items:flex-start;flex-direction:column;gap:.5rem}.dropdown-list{max-height:200px}}.dropdown-items::-webkit-scrollbar{width:6px}.dropdown-items::-webkit-scrollbar-track{background:#f1f1f1}.dropdown-items::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.dropdown-items::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.bpd-svg{display:block;height:auto;overflow:visible;width:100%}.bpd-plate{fill:#f8fafc;stroke:#1e293b;stroke-width:2}.bpd-hss-outer,.bpd-w-flange,.bpd-w-web{fill:#1e293b;stroke:none}.bpd-hss-hollow{fill:#f8fafc;stroke:none}.bpd-col-fallback{fill:none;stroke:#1e293b;stroke-width:2}.bpd-dim-line{stroke:#555;stroke-width:1}.bpd-ext-line,.bpd-ext-line-dash{stroke:#aaa;stroke-width:.7}.bpd-ext-line-dash{stroke-dasharray:3 2}.bpd-dim-label{fill:#374151;font-family:sans-serif;font-family:var(--font-sans,sans-serif);font-size:9px;font-weight:500}.base-plate-page{margin-bottom:-3rem;margin-top:-1.5rem}.base-plate-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.base-plate-page .result-card{border:1px solid #e5e7eb;border:1px solid var(--border-light,#e5e7eb)}.base-plate-page .results-empty{align-items:center;border-style:dashed;display:flex;flex-direction:column;padding:2.5rem 1.5rem;text-align:center}.base-plate-page .empty-icon{align-items:center;color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;justify-content:center;margin-bottom:.75rem;opacity:.3}.base-plate-page .empty-title{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.9375rem;font-weight:600;margin-bottom:.375rem}.base-plate-page .empty-sub{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:.8rem;line-height:1.5;margin:0 auto;max-width:280px}.base-plate-page .result-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;margin-bottom:.875rem;padding:1.375rem 1.5rem}.base-plate-page .case-type-label{align-items:center;color:var(--text-tertiary);display:flex;font-size:.6875rem;font-weight:700;justify-content:space-between;letter-spacing:.07em;margin-bottom:.5rem;text-transform:uppercase}.base-plate-page .load-display{align-items:baseline;display:flex;gap:.375rem;margin-bottom:.875rem}.base-plate-page .load-number{font-feature-settings:"tnum";color:var(--primary-600);font-size:2.25rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.03em;line-height:1}.base-plate-page .load-unit-label{color:var(--primary-600);font-size:1rem;font-weight:600}.base-plate-page .formula-block{background:#f9fafb;background:var(--bg-subtle,#f9fafb);border-radius:8px;color:var(--text-secondary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:.775rem;line-height:1.8;margin-bottom:1rem;padding:.625rem .875rem}.base-plate-page .formula-line{display:block}.base-plate-page .factors-heading{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.625rem;text-transform:uppercase}.base-plate-page .factor-row{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:.5rem;padding:.45rem 0}.base-plate-page .factor-row:last-child{border-bottom:none}.base-plate-page .factor-symbol{color:var(--primary-600);flex-shrink:0;font-size:.8rem;font-style:italic;font-weight:700;width:24px}.base-plate-page .factor-name{color:var(--text-secondary);flex:1 1;font-size:.8125rem}.base-plate-page .auto-badge{background:#dbeafe;background:var(--primary-100,#dbeafe);border-radius:4px;color:var(--primary-600);font-size:.625rem;font-weight:700;letter-spacing:.04em;margin-right:.25rem;padding:.1em .45em;text-transform:uppercase}.base-plate-page .factor-val{font-feature-settings:"tnum";color:var(--text-primary);font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:700;min-width:36px;text-align:right}.base-plate-page .governs-badge{background:#eff6ff;background:var(--primary-50,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-200,#bfdbfe);border-radius:4px;color:#1d4ed8;color:var(--primary-700,#1d4ed8);font-size:.625rem;font-weight:700;letter-spacing:.06em;padding:.2em .55em;text-transform:uppercase}.bp-plan-card{padding:1rem 1.25rem}.base-plate-page .field-warning{border-radius:6px;font-size:.775rem;line-height:1.4;margin-top:.5rem;padding:.4rem .75rem}.base-plate-page .field-warning--hard{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.base-plate-page .field-warning--soft{background:#fffbeb;border:1px solid #fcd34d;color:#92400e}.base-plate-page .field-warning--info{background:#eff6ff;background:var(--primary-50,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-200,#bfdbfe);color:#1d4ed8;color:var(--primary-700,#1d4ed8);white-space:pre-line}.base-plate-page .field-warning+.field-warning{margin-top:.375rem}.bp-error-card{background:#fef2f2;border:1.5px solid #fca5a5;border-radius:12px;margin-bottom:.875rem;padding:1.25rem}.bp-error-title{color:#dc2626;font-weight:700;margin-bottom:.5rem}.bp-error-msg{color:#7f1d1d;font-size:.875rem}.bp-error-hint{color:#991b1b;font-size:.8rem;margin-top:.5rem}.calculator-actions{border-top:1px solid var(--border-light);display:flex;gap:.75rem;justify-content:flex-start;margin-top:1.25rem;padding-top:1.125rem}.btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:.875rem;font-weight:600;gap:.375rem;justify-content:center;letter-spacing:.01em;padding:.6rem 1.375rem;transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);white-space:nowrap}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-green-md);transform:translateY(-1px)}.btn-primary:disabled{background:var(--gray-400);box-shadow:none;transform:none}.btn-secondary{background:var(--bg-subtle);border:1px solid var(--border-light);color:var(--text-secondary)}.btn-secondary:hover{background:var(--bg-muted);border-color:var(--border-medium)}.dimension-inputs,.material-inputs{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:1fr 1fr}.field-error{color:var(--error)}.section-info small{color:var(--text-tertiary);font-size:.8125rem;font-style:italic}.results-section{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:1.125rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1rem;height:-webkit-fit-content;height:fit-content;padding:1.5rem;position:-webkit-sticky;position:sticky;top:80px}.error-result{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);padding:1rem;text-align:center}.error-result h4{color:#991b1b;font-size:.9rem;margin-bottom:.375rem}.error-result p{color:#991b1b;font-size:.875rem}.key-results{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.result-item{background:var(--bg-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:.875rem 1rem;text-align:center;transition:box-shadow var(--transition-fast)}.result-item:hover{box-shadow:var(--shadow-md)}.result-item.primary{background:var(--primary-600);border-color:#0000}.result-item label{color:var(--text-muted);display:block;font-size:.75rem;font-weight:500;line-height:1.3;margin-bottom:.375rem}.result-item.primary label{color:#ffffffbf}.result-item value{font-feature-settings:"tnum";color:var(--text-primary);display:block;font-family:var(--font-mono);font-size:1.5rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.02em}.result-item.primary value{color:#fff}.panel{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);overflow:hidden}.panel-header{align-items:center;background:var(--bg-gradient);color:#fff;display:flex;gap:.75rem;justify-content:space-between;padding:.875rem 1.125rem}.panel-header h3{font-size:.9375rem;font-weight:700;margin:0}.panel-description{font-size:.8rem;opacity:.8}.panel-status{align-items:center;display:flex;font-size:.8125rem;font-weight:600;gap:.375rem}.status-indicator{font-size:1rem}.panel-body{padding:1.125rem}@media (max-width:1024px){.calculator-content{grid-template-columns:1fr}.results-section{position:static}}@media (max-width:768px){.base-plate-calculator{padding:0 1rem 2rem}.dimension-inputs,.key-results,.material-inputs,.result-comparison{grid-template-columns:1fr}.calculator-actions{align-items:stretch;flex-direction:column}}.iwu-input-row{align-items:stretch;display:flex}.iwu-input{border-bottom-right-radius:0!important;border-right:none!important;border-top-right-radius:0!important;flex:1 1}.iwu-unit-container{align-items:stretch;display:flex;position:relative}.iwu-unit-display{align-items:center;background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border:1.5px solid #d1d5db;border:1.5px solid var(--border-light,#d1d5db);border-bottom-right-radius:8px;border-left:none;border-top-right-radius:8px;color:var(--text-tertiary);cursor:pointer;display:flex;font-family:var(--font-sans);font-size:.75rem;font-weight:600;justify-content:center;min-width:52px;padding:0 .625rem;transition:background .15s,color .15s;-webkit-user-select:none;user-select:none;white-space:nowrap}.iwu-unit-display:hover{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-600)}.iwu-input-row:focus-within{border-radius:8px;box-shadow:0 0 0 3px #2563eb26}.iwu-input-row:focus-within .iwu-input:focus{box-shadow:none}.iwu-input-row:focus-within .iwu-unit-display{border-color:var(--primary-600);border-left-color:#0000}.iwu-unit-dropdown{background:#fff;border:1px solid var(--border-medium);border-radius:8px;box-shadow:0 8px 24px #0000001f;min-width:110px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.iwu-unit-option{background:none;border:none;border-bottom:1px solid #eee;border-bottom:1px solid var(--border-light,#eee);color:var(--text-secondary);cursor:pointer;display:block;font-family:var(--font-sans);font-size:.8125rem;padding:.45rem .75rem;text-align:left;transition:background .12s;width:100%}.iwu-unit-option:last-child{border-bottom:none}.iwu-unit-option:hover{background:var(--primary-50);color:var(--primary-600)}.iwu-unit-option.selected{background:var(--primary-100);color:var(--primary-700);font-weight:600}.owsj-calculator-page{margin-top:-1.5rem}.owsj-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.owsj-calculator .calculator-content{display:block;margin:0 auto;max-width:960px;padding:0 2rem}.owsj-calculator .form-card{max-width:100%;width:100%}.form-top-row{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:1fr 1fr}.form-top-row,.form-top-row>.form-section{margin-bottom:0}.truss-type-selector{border:1.5px solid var(--border-light);border-radius:8px;display:flex;gap:0;overflow:hidden}.truss-type-btn{background:#fff;border:none;border-right:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.8rem;font-weight:600;padding:.5rem .75rem;transition:background .15s,color .15s}.truss-type-btn:last-child{border-right:none}.truss-type-btn:hover{background:#f0f7ff}.truss-type-btn.active{background:var(--primary-600);color:#fff}.computed-value{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border:1.5px solid var(--border-light);border-radius:8px;color:var(--text-secondary);font-size:.875rem;font-weight:500;padding:.5rem .75rem}.input-small{max-width:140px}.calculate-btn{background:var(--primary-600);border:none;border-radius:10px;color:#fff;cursor:pointer;display:block;font-size:.9375rem;font-weight:700;margin:1.25rem;padding:.75rem 1.5rem;transition:background .15s;width:calc(100% - 2.5rem)}.calculate-btn:hover{background:var(--primary-700)}.calculate-btn:disabled{background:var(--primary-300);cursor:not-allowed}.load-table{border:1.5px solid var(--border-light);border-radius:8px;overflow:visible}.load-table-header{align-items:center;background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border-radius:8px 8px 0 0;color:var(--text-tertiary);font-size:.675rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.load-table-header,.load-table-row{border-bottom:1px solid var(--border-light);display:flex;gap:.375rem;padding:.5rem .625rem}.load-table-row{align-items:flex-end}.load-table-row:last-of-type{border-bottom:none}.lt-col{flex-shrink:0}.lt-cat{width:50px}.lt-type{width:180px}.lt-chord{width:70px}.lt-params{display:flex;flex:1 1;flex-wrap:wrap;gap:.375rem;min-width:0}.lt-action{align-items:center;display:flex;justify-content:center;width:28px}.load-table .input{font-size:.8125rem;padding:.45rem .6rem;width:auto}.param-field{display:flex;flex-direction:column;gap:.125rem;min-width:0}.param-label{color:var(--text-tertiary);font-size:.6rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.param-input-row .input{width:80px}.remove-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.25rem;line-height:1;padding:0;transition:color .15s}.remove-btn:hover{color:var(--error)}.add-load-btn{background:none;border:none;border-radius:0 0 8px 8px;border-top:1px solid var(--border-light);color:var(--primary-600);cursor:pointer;display:block;font-size:.8rem;font-weight:600;padding:.5rem;transition:background .15s;width:100%}.add-load-btn:hover{background:#f0f7ff;border-radius:0 0 8px 8px}.defl-input{align-items:center;display:flex;gap:.375rem}.defl-prefix{color:var(--text-secondary);font-size:.9rem;font-weight:600}.defl-input .input-small{max-width:80px}.results-report{margin:1.5rem auto 0;max-width:960px;padding:0 2rem}.diagram-section{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;margin-bottom:0;overflow:hidden;padding:0}.diagram-section svg{display:block;height:auto;width:100%}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.85rem;margin-bottom:1rem;padding:.75rem 1rem}.report-content{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;overflow:hidden;padding:0}.report-header{border-bottom:2px solid var(--border-light);margin-bottom:0;padding:1rem 1.25rem .75rem}.report-header-row{color:var(--text-primary);display:flex;flex-wrap:wrap;font-size:.8rem;gap:1.5rem;margin-bottom:.3rem}.report-header-row strong{color:var(--primary-600);color:var(--primary-600,var(--primary-600))}.report-diagram{border-bottom:1px solid var(--border-light)}.report-diagram svg{display:block;height:auto;width:100%}.report-section{margin-top:0;padding:0}.report-section h3{border-bottom:1px solid var(--border-light);color:var(--text-secondary);font-size:.8rem;font-weight:700;letter-spacing:.04em;margin:0;padding:.75rem 1.25rem .25rem;text-transform:uppercase}.load-summary-row{border-bottom:1px solid #eee;border-bottom:1px solid var(--border-light,#eee);margin-bottom:.75rem;padding-bottom:.75rem}.load-summary-row:last-child{border-bottom:none;margin-bottom:0}.load-diagram-svg{display:block;height:auto;margin-bottom:.25rem;width:100%}.load-info{color:var(--text-primary);font-size:.8rem;padding:0 1.25rem .5rem}.load-converted{color:var(--text-secondary)}.load-reactions{color:var(--text-tertiary);font-size:.75rem;margin-top:.1rem}.deflection-summary{color:var(--text-primary);display:flex;flex-direction:column;font-size:.8rem;gap:.2rem;padding:0 1.25rem .5rem}.deflection-summary .fail{color:#dc2626;font-weight:700}.report-table{font-feature-settings:"tnum";border-collapse:collapse;font-size:.78rem;font-variant-numeric:tabular-nums;margin:0 1.25rem;width:calc(100% - 2.5rem)}.report-table th{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border-bottom:1px solid var(--border-light);color:var(--text-tertiary);font-size:.65rem;font-weight:700;letter-spacing:.03em;padding:.35rem .4rem;text-align:right;text-transform:uppercase}.report-table th:first-child{text-align:left}.report-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);padding:.3rem .4rem;text-align:right}.report-table td:first-child{text-align:left}.report-table tr:last-child td{border-bottom:none}.report-table .row-fail{background:#fef2f2}.report-table .bold{font-weight:800}.report-table .fail{color:#dc2626;font-weight:700}.report-status{align-items:center;border-radius:8px;display:flex;font-size:.8rem;font-weight:600;gap:1.5rem;margin:1rem 0 0;padding:.75rem 1.25rem}.status-pass{background:#f0fdf4;border:1px solid #86efac;color:#166534}.status-fail{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.status-icon{font-size:.9rem;font-weight:800}.expand-arrow{color:#aaa;color:var(--text-tertiary,#aaa);font-size:.75rem;margin-right:.3rem}.clickable-row{cursor:pointer}.clickable-row:hover{background:#3b82f60a}.detail-row td{background:var(--bg-subtle);border-bottom:2px solid var(--border-light)!important;padding:.5rem 1rem!important}.detail-calc{margin-bottom:.6rem}.detail-calc:last-child{margin-bottom:0}.detail-title{color:var(--primary-600);color:var(--primary-600,var(--primary-600));font-size:.72rem;font-weight:700;margin-bottom:.15rem}.detail-line{color:var(--text-primary);font-family:SF Mono,Fira Code,monospace;font-size:.72rem;line-height:1.5;padding-left:1rem}.param-input-row{align-items:stretch;display:flex}.param-input-row .input-xs{flex:1 1}.param-input-row .input-with-unit-xs{border-bottom-right-radius:0!important;border-right:none!important;border-top-right-radius:0!important}.param-input-row:focus-within{border-radius:8px;border-radius:var(--radius-md,8px);box-shadow:0 0 0 3px #3b82f624}.param-input-row .input:focus{border-color:var(--border-focus,var(--primary-600));box-shadow:none!important;outline:none}.param-input-row:focus-within .iwu-unit-display{border-color:var(--border-focus,var(--primary-600));border-left-color:#0000}.unusual-load-warning{background:#fef3c7;border-radius:3px;color:#92400e;font-size:.65rem;padding:.1rem .4rem;white-space:nowrap}.custom-panels{margin-top:.25rem}.panel-validation{border-radius:4px;font-size:.72rem;margin-top:.2rem;padding:.15rem .4rem}.panel-validation.valid{background:#f0fdf4;color:#166534}.panel-validation.invalid{background:#fef2f2;color:#991b1b}.warning-banner{align-items:center;background:#fef3c7;border:1px solid var(--warning);border-radius:6px;color:#92400e;display:flex;flex-wrap:wrap;font-size:.78rem;gap:.5rem;margin-bottom:.75rem;padding:.6rem .75rem}.warning-icon{align-items:center;background:var(--warning);border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:20px;justify-content:center;width:20px}.estimate-sw-btn{background:#fffbeb;border:1px solid #d97706;border-radius:4px;color:#92400e;cursor:pointer;font-size:.72rem;margin-left:auto;padding:.25rem .6rem;white-space:nowrap}.estimate-sw-btn:hover{background:#fef3c7}@media (max-width:900px){.owsj-calculator .calculator-content{padding:0 1rem}.form-top-row{grid-template-columns:1fr}.results-report{padding:0 1rem}.report-table{font-size:.7rem}}.wind-load-calculator-page{margin-top:-1.5rem}.wind-load-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.wind-load-calculator .react-select-container{font-size:.875rem}.wind-load-calculator .react-select__control{background:#fff!important;border:1.5px solid var(--border-light)!important;border-radius:8px!important;box-shadow:none!important;min-height:36px!important}.wind-load-calculator .react-select__control:hover{border-color:var(--border-medium)!important}.wind-load-calculator .react-select__control--is-focused{border-color:var(--primary-600)!important;box-shadow:0 0 0 3px #2563eb1f!important}.wind-load-calculator .react-select__menu{background:#fff!important;border:1px solid var(--border-medium)!important;border-radius:8px!important;box-shadow:0 8px 24px #0000001f!important}.wind-load-calculator .react-select__option{background:#0000!important;color:var(--text-primary)!important;font-size:.875rem!important}.wind-load-calculator .react-select__option--is-focused{background:var(--primary-50)!important;color:var(--primary-700)!important}.wind-load-calculator .react-select__option--is-selected{background:var(--primary-100)!important;color:var(--primary-700)!important;font-weight:600!important}.wind-load-calculator .react-select__placeholder{color:var(--text-muted)!important;font-size:.875rem!important}.wind-load-calculator .react-select__single-value{color:var(--text-primary)!important;font-size:.875rem!important}.terrain-selector{border:1.5px solid var(--border-light);border-radius:8px;display:flex;gap:0;overflow:hidden}.terrain-btn{background:#fff;border:none;border-right:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.8rem;font-weight:600;padding:.5rem .75rem;transition:background .15s,color .15s}.terrain-btn:last-child{border-right:none}.terrain-btn:hover{background:#f0f7ff}.terrain-btn.active{background:var(--primary-600);color:#fff}.slider-container{padding:0 .25rem}.drift-slider{-webkit-appearance:none;appearance:none;background:#e5e7eb;background:var(--border-light,#e5e7eb);border-radius:3px;cursor:pointer;height:6px;outline:none;width:100%}.drift-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#2563eb;background:var(--primary-600,#2563eb);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0003;cursor:pointer;height:18px;width:18px}.drift-slider::-moz-range-thumb{background:#2563eb;background:var(--primary-600,#2563eb);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0003;cursor:pointer;height:18px;width:18px}.slider-labels{color:var(--text-tertiary);display:flex;font-size:.7rem;font-weight:600;justify-content:space-between;margin-top:.35rem}.slider-labels span:nth-child(2){color:var(--primary-700)}.intermediate-hint{background:#eff6ff;background:var(--primary-50,#eff6ff);border-left:3px solid #60a5fa;border-left:3px solid var(--primary-400,#60a5fa);border-radius:4px;color:var(--text-secondary);font-size:.72rem;line-height:1.5;margin:.6rem 0 0;padding:.55rem .75rem}.intermediate-hint strong{color:var(--primary-700)}.source-toggle{border:1.5px solid var(--border-light);border-radius:8px;display:flex;gap:0;margin-bottom:.75rem;overflow:hidden}.wind-load-calculator .source-btn{background:#fff;border:none;border-right:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.75rem;font-weight:600;padding:.4rem .75rem;transition:background .15s,color .15s}.wind-load-calculator .source-btn:last-child{border-right:none}.wind-load-calculator .source-btn:hover{background:#f0f7ff}.wind-load-calculator .source-btn.active{background:var(--primary-600);color:#fff}.topo-fields{padding-left:.25rem}.checkbox-label{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem}.checkbox-label input[type=checkbox]{accent-color:var(--primary-600);cursor:pointer;flex-shrink:0;height:15px;margin-right:.1rem;width:15px}.checkbox-text{margin-left:.4rem}.wind-load-calculator .results-section{display:flex;flex-direction:column;gap:1rem}.wind-load-calculator .result-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;padding:1.375rem 1.5rem}.wind-load-calculator .results-empty{align-items:center;border-style:dashed;display:flex;flex-direction:column;padding:2.5rem 1.5rem;text-align:center}.wind-load-calculator .empty-icon{align-items:center;color:var(--text-secondary);display:flex;justify-content:center;margin-bottom:1rem;opacity:.3}.wind-load-calculator .empty-title{color:var(--text-secondary);font-size:.9375rem;font-weight:600;margin-bottom:.375rem}.wind-load-calculator .empty-sub{color:var(--text-muted);font-size:.8rem;line-height:1.5;max-width:300px}.wind-results{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;overflow:hidden}.results-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:.75rem;padding:1rem 1.25rem}.results-header h2{color:var(--text-primary);font-size:1rem;font-weight:700;margin:0}.factor-summary{background:#f8fafc;background:var(--bg-muted,#f8fafc);border-bottom:1px solid var(--border-light);display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1.25rem}.factor-chip{align-items:center;background:#fff;border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);display:inline-flex;font-size:.75rem;gap:.25rem;padding:.25rem .6rem}.factor-chip .factor-label{color:var(--text-secondary);font-weight:600}.factor-chip .factor-value{color:var(--primary-600);font-weight:700}.factor-chip .factor-clause{color:var(--text-tertiary);font-size:.65rem;margin-left:.15rem}.pressure-table-section{border-bottom:1px solid var(--border-light);padding:1rem 1.25rem}.pressure-table-section:last-child{border-bottom:none}.pressure-table-section h3{color:var(--text-primary);font-size:.85rem;font-weight:700;margin:0 0 .75rem}.pressure-table-section .case-subtitle{color:var(--text-secondary);font-size:.75rem;font-weight:400;margin-left:.5rem}.pressure-table{font-feature-settings:"tnum";border-collapse:collapse;font-size:.8rem;font-variant-numeric:tabular-nums;width:100%}.pressure-table th{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border-bottom:1px solid var(--border-light);color:var(--text-tertiary);font-size:.7rem;font-weight:700;letter-spacing:.03em;padding:.4rem .6rem;text-align:right;text-transform:uppercase}.pressure-table th:first-child{text-align:left}.pressure-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);padding:.35rem .6rem;text-align:right}.pressure-table td:first-child{font-weight:600;text-align:left}.pressure-table tr:last-child td{border-bottom:none}.pressure-table .zone-end{background:#3b82f60a}.wind-diagram-section{border-bottom:1px solid var(--border-light);padding:0}.wind-diagram-section svg{display:block;height:auto;width:100%}.wind-load-calculator .calculate-btn{background:var(--primary-600);border:none;border-radius:10px;color:#fff;cursor:pointer;display:block;font-size:.9375rem;font-weight:700;margin:1.25rem;padding:.75rem 1.5rem;transition:background .15s;width:calc(100% - 2.5rem)}.wind-load-calculator .calculate-btn:hover{background:var(--primary-700)}.wind-load-calculator .calculate-btn:disabled{background:var(--primary-300);cursor:not-allowed}.wind-load-calculator .error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.85rem;margin:1rem 0;padding:.75rem 1rem}@media (max-width:900px){.wind-load-calculator .calculator-content{grid-template-columns:1fr;padding:0 1rem}}.wind-cladding-calculator-page{margin-top:-1.5rem}.wind-cladding-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.wind-cladding-calculator .react-select-container{font-size:.875rem}.wind-cladding-calculator .react-select__control{background:#fff!important;border:1.5px solid var(--border-light)!important;border-radius:8px!important;box-shadow:none!important;min-height:36px!important}.wind-cladding-calculator .react-select__control:hover{border-color:var(--border-medium)!important}.wind-cladding-calculator .react-select__control--is-focused{border-color:var(--primary-600)!important;box-shadow:0 0 0 3px #2563eb1f!important}.wind-cladding-calculator .react-select__menu{background:#fff!important;border:1px solid var(--border-medium)!important;border-radius:8px!important;box-shadow:0 8px 24px #0000001f!important}.wind-cladding-calculator .react-select__option{background:#0000!important;color:var(--text-primary)!important;font-size:.875rem!important}.wind-cladding-calculator .react-select__option--is-focused{background:var(--primary-50)!important;color:var(--primary-700)!important}.wind-cladding-calculator .react-select__option--is-selected{background:var(--primary-100)!important;color:var(--primary-700)!important;font-weight:600!important}.wind-cladding-calculator .react-select__placeholder{color:var(--text-muted)!important;font-size:.875rem!important}.wind-cladding-calculator .react-select__single-value{color:var(--text-primary)!important;font-size:.875rem!important}.component-selector{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);margin-bottom:.75rem}.component-btn{background:#fff;border:1.5px solid var(--border-light);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:.72rem;font-weight:600;line-height:1.3;padding:.5rem;text-align:center;transition:all .15s}.component-btn:hover{background:#f0f7ff;border-color:var(--primary-200)}.component-btn.active{background:var(--primary-600);border-color:var(--primary-600);color:#fff}.component-btn--unverified{background:#f5f5f5;color:#999;color:var(--text-muted,#999);cursor:not-allowed;opacity:.5;position:relative}.component-btn--unverified:hover{background:#f5f5f5;border-color:var(--border-light)}.component-btn__badge{background:#fef3c7;border-radius:4px;color:#92400e;display:inline-block;font-size:.6rem;font-weight:700;margin-left:.25rem;padding:.05rem .3rem;text-transform:uppercase;vertical-align:middle}.component-note{background:#eff6ff;background:var(--primary-50,#eff6ff);border-left:3px solid #60a5fa;border-left:3px solid var(--primary-400,#60a5fa);border-radius:4px;color:var(--text-secondary);font-size:.72rem;line-height:1.4;margin:.6rem 0 0;padding:.55rem .75rem}.wind-cladding-calculator .results-section{display:flex;flex-direction:column;gap:1rem}.wind-cladding-calculator .result-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;padding:1.375rem 1.5rem}.wind-cladding-calculator .results-empty{align-items:center;border-style:dashed;display:flex;flex-direction:column;padding:2.5rem 1.5rem;text-align:center}.wind-cladding-calculator .empty-icon{align-items:center;color:var(--text-secondary);display:flex;justify-content:center;margin-bottom:1rem;opacity:.3}.wind-cladding-calculator .empty-title{color:var(--text-secondary);font-size:.9375rem;font-weight:600;margin-bottom:.375rem}.wind-cladding-calculator .empty-sub{color:var(--text-muted);font-size:.8rem;line-height:1.5;max-width:300px}.zone-results{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;overflow:hidden}.zone-results-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:.75rem;padding:1rem 1.25rem}.zone-results-header h2{color:var(--text-primary);font-size:1rem;font-weight:700;margin:0}.zone-results-header .figure-ref{background:var(--bg-muted);border-radius:4px;color:var(--text-secondary);font-size:.75rem;margin-left:auto;padding:.15rem .5rem}.wind-cladding-calculator .calculate-btn{background:var(--primary-600);border:none;border-radius:10px;color:#fff;cursor:pointer;display:block;font-size:.9375rem;font-weight:700;margin:1.25rem;padding:.75rem 1.5rem;transition:background .15s;width:calc(100% - 2.5rem)}.wind-cladding-calculator .calculate-btn:hover{background:var(--primary-700)}.wind-cladding-calculator .calculate-btn:disabled{background:var(--primary-300);cursor:not-allowed}.wind-cladding-calculator .error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.85rem;margin:1rem 0;padding:.75rem 1rem}.wind-cladding-calculator .terrain-selector{border:1.5px solid var(--border-light);border-radius:8px;display:flex;gap:0;overflow:hidden}.wind-cladding-calculator .terrain-btn{background:#fff;border:none;border-right:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.8rem;font-weight:600;padding:.5rem .75rem;transition:background .15s,color .15s}.wind-cladding-calculator .terrain-btn:last-child{border-right:none}.wind-cladding-calculator .terrain-btn:hover{background:#f0f7ff}.wind-cladding-calculator .terrain-btn.active{background:var(--primary-600);color:#fff}.wind-cladding-calculator .slider-container{padding:0 .25rem}.wind-cladding-calculator .drift-slider{-webkit-appearance:none;appearance:none;background:#e5e7eb;background:var(--border-light,#e5e7eb);border-radius:3px;cursor:pointer;height:6px;outline:none;width:100%}.wind-cladding-calculator .drift-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#2563eb;background:var(--primary-600,#2563eb);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0003;cursor:pointer;height:18px;width:18px}.wind-cladding-calculator .drift-slider::-moz-range-thumb{background:#2563eb;background:var(--primary-600,#2563eb);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0003;cursor:pointer;height:18px;width:18px}.wind-cladding-calculator .slider-labels{color:var(--text-tertiary);display:flex;font-size:.7rem;font-weight:600;justify-content:space-between;margin-top:.35rem}.wind-cladding-calculator .slider-labels span:nth-child(2){color:var(--primary-700)}.wind-cladding-calculator .intermediate-hint{background:#eff6ff;background:var(--primary-50,#eff6ff);border-left:3px solid #60a5fa;border-left:3px solid var(--primary-400,#60a5fa);border-radius:4px;color:var(--text-secondary);font-size:.72rem;line-height:1.5;margin:.6rem 0 0;padding:.55rem .75rem;white-space:pre-line}.wind-cladding-calculator .intermediate-hint strong{color:var(--primary-700)}@media (max-width:900px){.wind-cladding-calculator .calculator-content{grid-template-columns:1fr;padding:0 1rem}.component-selector{grid-template-columns:repeat(2,1fr)}}.parapet-diagram{width:100%}.pc-base{stroke:var(--border-medium);stroke-width:1}.pc-wall{fill:#94a3b82e;stroke:var(--text-secondary);stroke-width:1.5}.pc-coping{stroke:var(--text-secondary);stroke-width:2;fill:none}.pc-cleat{stroke:var(--primary-500);stroke-width:1.5;fill:none}.pc-flashing{stroke:var(--text-tertiary);stroke-width:1.25;fill:none;stroke-dasharray:3,2}.pc-layer{stroke-width:2}.pc-layer-mem{stroke:#d97706}.pc-layer-ins{stroke:#3b82f680;stroke-width:3}.pc-layer-vb{stroke:var(--text-tertiary)}.pc-layer-support{stroke:var(--border-medium)}.pc-layer-deck{stroke:var(--text-secondary)}.pc-wind-line{stroke:var(--primary-500);stroke-width:1.5;fill:none}.pc-arrow-fill{fill:var(--primary-600)}.pc-wind-text{fill:var(--primary-500);font-family:var(--font-sans);font-size:9px;font-weight:600}.pc-pressure-line{stroke:var(--primary-600);stroke-width:2;fill:none}.pc-pressure-text{fill:var(--primary-700);font-family:var(--font-sans);font-size:11px;font-weight:700}.pc-sub{font-size:8px}.pc-pressure-sub-text{fill:var(--text-tertiary);font-family:var(--font-sans);font-size:8px;font-style:italic}.pc-leader{stroke:var(--border-medium);stroke-width:.75}.pc-label{fill:var(--text-secondary);font-family:var(--font-sans);font-size:8.5px}.parapet-cladding-calculator-page{margin-top:-1.5rem}.parapet-cladding-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.parapet-cladding-calculator .react-select-container{font-size:.875rem}.parapet-cladding-calculator .react-select__control{background:#fff!important;border:1.5px solid var(--border-light)!important;border-radius:8px!important;box-shadow:none!important;min-height:36px!important}.parapet-cladding-calculator .react-select__control:hover{border-color:var(--border-medium)!important}.parapet-cladding-calculator .react-select__control--is-focused{border-color:var(--primary-600)!important;box-shadow:0 0 0 3px #2563eb1f!important}.parapet-cladding-calculator .react-select__menu{background:#fff!important;border:1px solid var(--border-medium)!important;border-radius:8px!important;box-shadow:0 8px 24px #0000001f!important}.parapet-cladding-calculator .react-select__option{background:#0000!important;color:var(--text-primary)!important;font-size:.875rem!important}.parapet-cladding-calculator .react-select__option--is-focused{background:var(--primary-50)!important;color:var(--primary-700)!important}.parapet-cladding-calculator .react-select__option--is-selected{background:var(--primary-100)!important;color:var(--primary-700)!important;font-weight:600!important}.parapet-cladding-calculator .react-select__placeholder{color:var(--text-muted)!important;font-size:.875rem!important}.parapet-cladding-calculator .react-select__single-value{color:var(--text-primary)!important;font-size:.875rem!important}.parapet-cladding-calculator .results-section{display:flex;flex-direction:column;gap:1rem}.parapet-cladding-calculator .result-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;padding:1.375rem 1.5rem}.parapet-cladding-calculator .results-empty{align-items:center;border-style:dashed;display:flex;flex-direction:column;padding:2.5rem 1.5rem;text-align:center}.parapet-cladding-calculator .empty-icon{align-items:center;color:var(--text-secondary);display:flex;justify-content:center;margin-bottom:1rem;opacity:.3}.parapet-cladding-calculator .empty-title{color:var(--text-secondary);font-size:.9375rem;font-weight:600;margin-bottom:.375rem}.parapet-cladding-calculator .empty-sub{color:var(--text-muted);font-size:.8rem;line-height:1.5;max-width:300px}.parapet-cladding-calculator .error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.85rem;margin:1rem 0;padding:.75rem 1rem}.parapet-cladding-calculator .terrain-selector{border:1.5px solid var(--border-light);border-radius:8px;display:flex;gap:0;overflow:hidden}.parapet-cladding-calculator .terrain-btn{background:#fff;border:none;border-right:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.8rem;font-weight:600;padding:.5rem .75rem;transition:background .15s,color .15s}.parapet-cladding-calculator .terrain-btn:last-child{border-right:none}.parapet-cladding-calculator .terrain-btn:hover{background:#f0f7ff}.parapet-cladding-calculator .terrain-btn.active{background:var(--primary-600);color:#fff}.parapet-cladding-calculator .slider-container{padding:0 .25rem}.parapet-cladding-calculator .drift-slider{-webkit-appearance:none;appearance:none;background:#e5e7eb;background:var(--border-light,#e5e7eb);border-radius:3px;cursor:pointer;height:6px;outline:none;width:100%}.parapet-cladding-calculator .drift-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#2563eb;background:var(--primary-600,#2563eb);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0003;cursor:pointer;height:18px;width:18px}.parapet-cladding-calculator .drift-slider::-moz-range-thumb{background:#2563eb;background:var(--primary-600,#2563eb);border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0003;cursor:pointer;height:18px;width:18px}.parapet-cladding-calculator .slider-labels{color:var(--text-tertiary);display:flex;font-size:.7rem;font-weight:600;justify-content:space-between;margin-top:.35rem}.parapet-cladding-calculator .slider-labels span:nth-child(2){color:var(--primary-700)}@media (max-width:900px){.parapet-cladding-calculator .calculator-content{grid-template-columns:1fr;padding:0 1rem}}.seismic-comp-diagram{width:100%}.seismic-comp-diagram .diagram-svg{display:block;max-height:340px}.scd-ground{stroke:var(--gray-700);stroke-width:2}.scd-hatch{stroke:var(--gray-400);stroke-width:1}.scd-wave{fill:none;stroke:var(--primary-500);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.scd-building{fill:var(--primary-50);stroke:var(--gray-700);stroke-width:2}.scd-floor{stroke:var(--gray-300);stroke-width:1;stroke-dasharray:4 3}.scd-component{fill:var(--primary-200);stroke:var(--primary-700);stroke-width:1.5}.scd-vp-arrow{stroke:var(--primary-600);stroke-width:2.5}.scd-arrow-fill{fill:var(--primary-600)}.scd-vp-label{fill:var(--primary-700);font-size:13px;font-weight:700}.scd-dim-line{stroke:var(--gray-500);stroke-width:1}.scd-ext-line{stroke:var(--gray-400);stroke-width:1;stroke-dasharray:3 3}.scd-dim-fill{fill:var(--gray-500)}.scd-dim-label{fill:var(--gray-600);font-size:11px}.scd-comp-label{fill:var(--gray-600);font-size:10px}.scd-ground-label{fill:var(--gray-500);font-size:10px}.seismic-component-calculator-page{margin-top:-1.5rem}.seismic-component-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.seismic-component-calculator .react-select-container{font-size:.875rem}.seismic-component-calculator .react-select__control{background:#fff!important;border:1.5px solid var(--border-light)!important;border-radius:8px!important;box-shadow:none!important;min-height:36px!important}.seismic-component-calculator .react-select__control:hover{border-color:var(--border-medium)!important}.seismic-component-calculator .react-select__control--is-focused{border-color:var(--primary-600)!important;box-shadow:0 0 0 3px #2563eb1f!important}.seismic-component-calculator .react-select__menu{background:#fff!important;border:1px solid var(--border-medium)!important;border-radius:8px!important;box-shadow:0 8px 24px #0000001f!important}.seismic-component-calculator .react-select__option{background:#0000!important;color:var(--text-primary)!important;font-size:.875rem!important}.seismic-component-calculator .react-select__option--is-focused{background:var(--primary-50)!important;color:var(--primary-700)!important}.seismic-component-calculator .react-select__option--is-selected{background:var(--primary-100)!important;color:var(--primary-700)!important;font-weight:600!important}.seismic-component-calculator .react-select__placeholder{color:var(--text-muted)!important;font-size:.875rem!important}.seismic-component-calculator .react-select__single-value{color:var(--text-primary)!important;font-size:.875rem!important}.seismic-component-calculator .react-select__group-heading{color:var(--text-muted)!important;font-size:.6875rem!important;font-weight:700!important;letter-spacing:.05em!important}.seismic-component-calculator .results-section{display:flex;flex-direction:column;gap:1rem}.seismic-component-calculator .result-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;padding:1.375rem 1.5rem}.seismic-component-calculator .results-empty{align-items:center;border-style:dashed;display:flex;flex-direction:column;padding:2.5rem 1.5rem;text-align:center}.seismic-component-calculator .empty-icon{align-items:center;color:var(--text-secondary);display:flex;justify-content:center;margin-bottom:1rem;opacity:.3}.seismic-component-calculator .empty-title{color:var(--text-secondary);font-size:.9375rem;font-weight:600;margin-bottom:.375rem}.seismic-component-calculator .empty-sub{color:var(--text-muted);font-size:.8rem;line-height:1.5;max-width:300px}.seismic-component-calculator .error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.85rem;margin:1rem 0;padding:.75rem 1rem}.seismic-component-calculator .vp-ratio{color:var(--text-secondary);font-size:.9375rem;margin:.25rem 0 1rem;text-align:center}.seismic-component-calculator .hazard-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);margin-top:.75rem}.seismic-component-calculator .hazard-cell{background:var(--primary-50);border:1px solid var(--primary-100);border-radius:8px;display:flex;flex-direction:column;gap:.125rem;padding:.5rem .625rem}.seismic-component-calculator .hazard-label{color:var(--primary-700);font-size:.6875rem;font-weight:700;letter-spacing:.03em}.seismic-component-calculator .hazard-value{font-feature-settings:"tnum";color:var(--text-primary);font-size:.8125rem;font-variant-numeric:tabular-nums;font-weight:600}.seismic-component-calculator .form-label sub,.seismic-component-calculator .hoverable-label sub{text-transform:lowercase}.seismic-component-calculator .form-row-3{grid-template-columns:1fr 1fr 1fr}@media (max-width:900px){.seismic-component-calculator .hazard-grid{grid-template-columns:repeat(2,1fr)}}.input-field{margin-bottom:1rem}.field-label{color:var(--text-primary);display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.required-indicator{color:var(--error-color);margin-left:.125rem}.unit-label{color:var(--text-secondary);font-weight:400;margin-left:.25rem}.input-wrapper{align-items:center;display:flex;position:relative}.field-input{background:var(--background-color);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:1rem;padding:.75rem;transition:border-color .2s,box-shadow .2s;width:100%}.field-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f61a;box-shadow:0 0 0 2px var(--primary-color-alpha,#3b82f61a);outline:none}.field-input:disabled{background:#f9fafb;background:var(--disabled-background,#f9fafb);color:#6b7280;color:var(--disabled-text,#6b7280);cursor:not-allowed}.field-input::placeholder{color:#9ca3af;color:var(--text-tertiary,#9ca3af)}.unit-suffix{background:var(--background-color);color:var(--text-secondary);font-size:.875rem;padding-left:.25rem;pointer-events:none;position:absolute;right:.75rem}.calculation-indicator{animation:fadeInCalc .3s ease-in-out;cursor:help;font-size:14px;opacity:.7;pointer-events:all;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);z-index:1}.input-wrapper .calculation-indicator.with-unit{right:2.5rem}.input-wrapper:has(.unit-suffix) .calculation-indicator{right:2.5rem}.input-field.calculated .field-input{background-color:#10b9810d;border-color:#10b9814d}.input-field.calculated .field-input:focus{background-color:var(--background-color);border-color:var(--primary-color)}.calculation-help{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-style:italic}@keyframes fadeInCalc{0%{opacity:0;transform:translateY(-50%) scale(.8)}to{opacity:.7;transform:translateY(-50%) scale(1)}}.field-help{color:var(--text-secondary)}.field-error,.field-help{font-size:.75rem;line-height:1.4;margin-top:.25rem}.field-error{color:var(--error-color)}.input-field.has-error .field-input{border-color:var(--error-color)}.input-field.has-error .field-input:focus{border-color:var(--error-color);box-shadow:0 0 0 2px #ef44441a;box-shadow:0 0 0 2px var(--error-color-alpha,#ef44441a)}.input-field.disabled{opacity:.6}input[type=number].field-input{padding-right:3rem;text-align:right}input[type=number].field-input::-webkit-inner-spin-button,input[type=number].field-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number].field-input{-moz-appearance:textfield}@media (max-width:768px){.field-input{font-size:16px;padding:.625rem}.unit-suffix{right:.625rem}input[type=number].field-input{padding-right:2.5rem}}@media (prefers-color-scheme:dark){.field-input{background:#1f2937;background:var(--background-secondary,#1f2937);border-color:#374151;border-color:var(--border-color,#374151)}.field-input:disabled{background:#111827;background:var(--disabled-background,#111827);color:#6b7280;color:var(--disabled-text,#6b7280)}}.cp-overlay{align-items:center;animation:cp-fadeIn .15s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000;z-index:var(--z-modal,1000)}@keyframes cp-fadeIn{0%{opacity:0}to{opacity:1}}.cp-modal{animation:cp-slideIn .2s ease-out;background:#fff;background:var(--bg-base,#fff);border-radius:16px;box-shadow:0 24px 64px #0f172a2e,0 4px 16px #0f172a1a;display:flex;flex-direction:column;max-height:90vh;max-width:560px;overflow:hidden;width:100%}@keyframes cp-slideIn{0%{opacity:0;transform:scale(.96) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.cp-header{align-items:center;border-bottom:1px solid #f1f5f9;border-bottom:1px solid var(--border-light,#f1f5f9);display:flex;justify-content:space-between;padding:1.125rem 1.375rem 1rem}.cp-title{color:var(--gray-900);color:var(--text-primary,var(--gray-900));font-size:1.0625rem;font-weight:700;letter-spacing:-.01em;margin:0}.cp-close{align-items:center;background:var(--gray-100);background:var(--bg-muted,var(--gray-100));border:none;border-radius:8px;color:var(--gray-500);color:var(--text-tertiary,var(--gray-500));cursor:pointer;display:flex;justify-content:center;line-height:0;padding:.375rem;transition:background .15s,color .15s}.cp-close:hover{background:var(--gray-200);background:var(--border-light,var(--gray-200));color:var(--gray-900);color:var(--text-primary,var(--gray-900))}.cp-tabs{border-bottom:1px solid #f1f5f9;border-bottom:1px solid var(--border-light,#f1f5f9);display:flex;gap:.25rem;padding:.5rem 1.375rem 0}.cp-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--gray-500);cursor:pointer;font-size:.875rem;font-weight:500;margin-bottom:-1px;padding:.625rem .875rem}.cp-tab:hover{color:var(--gray-900)}.cp-tab.active{border-bottom-color:var(--primary-600);color:var(--primary-700);font-weight:600}.cp-body{gap:1.25rem;overflow-y:auto;padding:1.125rem 1.375rem}.cp-body,.cp-section{display:flex;flex-direction:column}.cp-section{gap:.5rem}.cp-section-title{align-items:center;color:var(--gray-500);display:flex;font-size:.75rem;font-weight:700;gap:.5rem;letter-spacing:.05em;margin:0 0 .25rem;text-transform:uppercase}.cp-section-title:before{background:var(--primary-600);border-radius:2px;content:"";display:inline-block;height:12px;width:3px}.cp-preset-list{display:flex;flex-direction:column;gap:.5rem}.cp-preset{background:#fff;border:1.5px solid var(--gray-200);border-radius:.5rem;cursor:pointer;display:block;font-family:inherit;padding:.75rem .875rem;text-align:left;transition:border-color .12s,background .12s}.cp-preset:hover:not(:disabled):not(.active){background:#eff6ff;background:var(--primary-50,#eff6ff);border-color:#93c5fd;border-color:var(--primary-300,#93c5fd)}.cp-preset.active{background:#eff6ff;background:var(--primary-50,#eff6ff);border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1a}.cp-preset:disabled{cursor:default;opacity:.6}.cp-preset.active:disabled{opacity:1}.cp-preset-label{color:var(--gray-900);font-size:.875rem;font-weight:600;margin-bottom:.125rem}.cp-preset.active .cp-preset-label{color:var(--primary-700)}.cp-preset-sub{color:var(--gray-500);font-size:.75rem;line-height:1.4}.cp-grid-2{grid-gap:.75rem;grid-template-columns:1fr 1fr}.cp-grid-2,.cp-grid-3{display:grid;gap:.75rem}.cp-grid-3{grid-gap:.75rem;grid-template-columns:repeat(3,1fr)}.cp-modal .input-field .field-input{background:#eff6ff;background:var(--primary-50,#eff6ff);border-color:#bfdbfe;border-color:var(--primary-200,#bfdbfe);color:var(--gray-900);font-weight:500}.cp-modal .input-field .field-input:hover{background:#dbeafe;background:var(--primary-100,#dbeafe);border-color:#93c5fd;border-color:var(--primary-300,#93c5fd)}.cp-modal .input-field .field-input:focus{background:#fff;border-color:var(--primary-500);box-shadow:0 0 0 3px #dbeafe;box-shadow:0 0 0 3px var(--primary-100,#dbeafe)}.cp-modal .input-field .field-label{color:var(--gray-600);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.cp-modal .input-field .field-label .unit-label{color:var(--gray-400);font-weight:400;letter-spacing:0;margin-left:.25rem;text-transform:none}.cp-hint{color:var(--gray-500);font-size:.75rem;line-height:1.4;margin:.25rem 0 0}.cp-flange-list{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:.5rem;display:flex;flex-direction:column;gap:.375rem;padding:.75rem 1rem}.cp-flange-row{grid-gap:.75rem;align-items:center;background:#fff;border:1px solid var(--gray-200);border-radius:.375rem;cursor:pointer;display:grid;gap:.75rem;grid-template-columns:1.25rem 2rem 1fr auto;padding:.5rem .625rem;transition:border-color .12s,background .12s}.cp-flange-row.enabled:hover{border-color:#93c5fd;border-color:var(--primary-300,#93c5fd)}.cp-flange-row.disabled{background:var(--gray-50);opacity:.7}.cp-flange-row input[type=checkbox]{accent-color:var(--primary-600);height:1rem;margin:0;width:1rem}.cp-flange-order{color:var(--primary-700);font-family:ui-monospace,monospace;font-family:var(--font-mono,ui-monospace,monospace);font-size:.75rem;font-weight:700;text-align:center}.cp-flange-row.disabled .cp-flange-order{color:var(--gray-300)}.cp-flange-label{color:var(--gray-900);font-size:.875rem;font-weight:500}.cp-flange-note{color:var(--primary-600);font-size:.6875rem;font-style:italic;font-weight:500}.cp-jamb-opt-list{display:flex;flex-direction:column;gap:.5rem}.cp-jamb-opt-row{grid-gap:.75rem;align-items:start;background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;cursor:pointer;display:grid;gap:.75rem;grid-template-columns:1.25rem 1fr;padding:.625rem .75rem;transition:border-color .12s,background .12s}.cp-jamb-opt-row:hover{background:#eff6ff;background:var(--primary-50,#eff6ff);border-color:#93c5fd;border-color:var(--primary-300,#93c5fd)}.cp-jamb-opt-row input[type=checkbox]{accent-color:var(--primary-600);height:1rem;margin:.125rem 0 0;width:1rem}.cp-jamb-opt-text{display:flex;flex-direction:column;gap:.125rem}.cp-jamb-opt-label{color:var(--gray-900);font-size:.875rem;font-weight:600;line-height:1.3}.cp-jamb-opt-sub{color:var(--gray-500);font-size:.75rem;line-height:1.4}.cp-footer{align-items:center;background:var(--gray-50);border-top:1px solid #f1f5f9;border-top:1px solid var(--border-light,#f1f5f9);display:flex;gap:.5rem;justify-content:space-between;padding:1rem 1.375rem}.cfs-params-button{align-items:center;background:#fff;border:1px solid var(--gray-200);border-radius:.375rem;color:var(--gray-600);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:500;gap:.375rem;padding:.375rem .625rem;position:relative;transition:background .12s,border-color .12s,color .12s}.cfs-params-button.has-custom,.cfs-params-button:hover{border-color:#93c5fd;border-color:var(--primary-300,#93c5fd);color:var(--primary-700)}.cfs-params-button.has-custom{background:#eff6ff;background:var(--primary-50,#eff6ff)}.cfs-params-button.has-custom:after{background:var(--primary-600);border-radius:50%;box-shadow:0 0 0 2px #fff;content:"";height:7px;position:absolute;right:4px;top:4px;width:7px}@media (max-width:640px){.cp-modal{border-radius:12px;max-width:95vw}.cp-grid-3{grid-template-columns:1fr 1fr}}.cfs-stud-calculator-page{margin-top:-1.5rem;min-height:100vh}.cfs-stud-calculator{margin:0 auto;max-width:1600px;padding:1.5rem}.cfs-subtitle{gap:.75rem}.cfs-subtitle,.cfs-toolbar{align-items:center;display:flex;flex-wrap:wrap}.cfs-toolbar{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;box-shadow:0 1px 2px #0000000a;box-shadow:var(--shadow-xs,0 1px 2px #0000000a);gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.625rem .875rem}.cfs-toolbar-left{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.cfs-keyboard-hint{color:var(--gray-500);font-size:.75rem;font-style:italic;margin-left:.25rem}.cfs-segmented{background:var(--gray-100);border-radius:.5rem;display:inline-flex;margin-right:.25rem;padding:.1875rem}.cfs-segmented-btn{align-items:center;background:#0000;border:none;border-radius:.375rem;color:var(--gray-600);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:500;gap:.375rem;padding:.375rem .75rem;transition:background .12s,color .12s}.cfs-segmented-btn:hover{color:var(--gray-900)}.cfs-segmented-btn.active{background:#fff;box-shadow:0 1px 2px #00000014;color:var(--primary-700)}.cfs-segmented-icon{color:var(--gray-400);font-size:.875rem}.cfs-segmented-btn.active .cfs-segmented-icon{color:var(--primary-600)}.cfs-summary-stats{align-items:center;display:flex;flex-wrap:wrap;gap:1.25rem}.cfs-summary-stat{align-items:flex-start;display:flex;flex-direction:column;line-height:1.1}.cfs-summary-label{color:var(--gray-500);font-size:.625rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.cfs-summary-value{font-feature-settings:"tnum";color:var(--gray-800);font-size:.9375rem;font-variant-numeric:tabular-nums;font-weight:600;margin-top:.125rem}.cfs-summary-unit{color:var(--gray-500);font-size:.6875rem;font-weight:500;margin-left:.25rem}.cfs-summary-stat.accent .cfs-summary-value{color:var(--primary-700)}.alpha-banner{background:#fef3c7;background:var(--warning-50,#fef3c7);border:1px solid #fcd34d;border:1px solid var(--warning-300,#fcd34d);border-radius:.5rem;color:#78350f;color:var(--warning-900,#78350f);font-size:.875rem;line-height:1.4;padding:.75rem 1rem}.alpha-banner,.gaps-box{margin-bottom:.75rem}.gaps-toggle{background:#0000;border:none;color:var(--gray-700);cursor:pointer;font-size:.8125rem;font-weight:600;padding:.25rem 0}.gaps-toggle:hover{color:var(--primary-700)}.gaps-list{color:var(--gray-600);font-size:.8125rem;line-height:1.5;margin:.25rem 0 0 1.25rem;padding:0}.units-note{color:var(--gray-500);font-size:.8125rem;font-style:italic;margin-bottom:1rem}.btn-ghost,.btn-primary,.btn-secondary{border:none;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem .875rem;transition:background .12s}.btn-primary:hover:not(:disabled){background:var(--primary-700)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:#fff;border:1px solid #93c5fd;border:1px solid var(--primary-300,#93c5fd);color:var(--primary-700)}.btn-secondary:hover{background:#eff6ff;background:var(--primary-50,#eff6ff)}.btn-ghost{background:#0000;color:var(--gray-600)}.btn-ghost:hover{background:var(--gray-100);color:var(--gray-900)}.btn-sm{font-size:.8125rem;padding:.375rem .75rem}.btn-xs{font-size:.75rem;padding:.125rem .375rem}.empty-state{background:var(--gray-50);border:1px dashed var(--gray-300);border-radius:.5rem;color:var(--gray-500);padding:3rem;text-align:center}.empty-state p{margin-bottom:1rem}.sol-badge{font-feature-settings:"tnum";border:1px solid #0000;border-radius:999px;display:inline-block;font-size:.75rem;font-variant-numeric:tabular-nums;font-weight:600;min-width:2.5rem;padding:.125rem .5rem;text-align:center}.sol-badge--empty{background:var(--gray-100);color:var(--gray-400)}.sol-badge--good{background:#dcfce7;border-color:#86efac;color:#166534}.sol-badge--ok{background:#eff6ff;background:var(--primary-50,#eff6ff);border-color:#bfdbfe;border-color:var(--primary-200,#bfdbfe);color:var(--primary-700)}.sol-badge--warn{background:#fef3c7;border-color:#fcd34d;color:#92400e}.sol-badge--fail{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.sol-badge--clickable{cursor:pointer}.sol-badge--clickable:hover{filter:brightness(.95)}.sol-badge--stale{background:var(--gray-100);border-color:var(--gray-300);color:var(--gray-500);font-style:italic;font-weight:500;letter-spacing:.02em}.bulk-grid.excel .bg-accum-cell.stale,.bulk-grid.excel .bg-stud-cell.stale,.fc-header-chips.stale{filter:grayscale(.3);opacity:.55}.bulk-view-controls{align-items:center;display:flex;justify-content:flex-end;margin-bottom:.5rem}.bulk-optional-toggle{align-items:center;background:none;background:#fff;border:1px solid var(--gray-200);border-radius:.375rem;color:var(--gray-600);cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:500;gap:.375rem;padding:.375rem .75rem}.bulk-optional-toggle:hover{border-color:#93c5fd;border-color:var(--primary-300,#93c5fd);color:var(--primary-700)}.bulk-scroll{background:#fff;border:1px solid var(--gray-300);border-radius:.375rem;overflow-x:auto}.bulk-grid.excel{font-feature-settings:"tnum";border-collapse:collapse;font-size:.8125rem;font-variant-numeric:tabular-nums;width:100%}.bulk-grid.excel td,.bulk-grid.excel th{border:1px solid var(--gray-200);padding:0;vertical-align:middle}.bulk-grid.excel thead th{padding:.25rem .375rem;position:-webkit-sticky;position:sticky;text-align:center;top:0;white-space:nowrap;z-index:1}.bulk-grid.excel .bg-group-hdr,.bulk-grid.excel thead th{background:var(--gray-100);color:var(--gray-700);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.bulk-grid.excel .bg-group-hdr{padding:.375rem .5rem}.bulk-grid.excel .bg-group-hdr--accum{background:#eff6ff;background:var(--primary-50,#eff6ff);color:var(--primary-700)}.bulk-grid.excel .bg-group-unit{color:var(--primary-600);font-size:.6875rem;font-weight:500;letter-spacing:0;margin-left:.25rem;text-transform:none}.bulk-grid.excel .bg-group-hdr .hoverable-label{align-items:center;color:inherit;cursor:default;display:inline-flex;font-weight:600;gap:.375rem}.bulk-grid.excel .bg-group-hdr .info-icon{color:var(--gray-400);height:12px;width:12px}.bulk-grid.excel .bg-col-hdr{font-weight:500;padding:.125rem .375rem}.bulk-grid.excel .bg-col-label{color:var(--gray-700);font-weight:600;margin-right:.125rem}.bulk-grid.excel .bg-col-unit{color:var(--gray-400);font-size:.6875rem;font-weight:400}.bulk-grid.excel .bg-col-hdr.accum .bg-col-label{color:var(--primary-700)}.bulk-grid.excel .bg-wall-strip>td{background:var(--gray-50);border:none;border-top:2px solid var(--gray-300);padding:0}.bulk-grid.excel .bg-wall-strip:first-child>td{border-top:none}.bg-wall-strip-inner{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;padding:.625rem .875rem}.bulk-grid.excel .bg-wall-input{background:#fff;border:1px solid var(--gray-200);border-radius:.375rem;color:var(--gray-900);flex:0 1 auto;font-size:.9375rem;font-weight:600;min-width:14rem;padding:.375rem .625rem}.bulk-grid.excel .bg-wall-input:hover{border-color:var(--gray-300)}.bulk-grid.excel .bg-wall-input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #dbeafe;box-shadow:0 0 0 3px var(--primary-100,#dbeafe);outline:none}.bg-wall-category{align-items:center;color:var(--gray-500);display:inline-flex;font-size:.75rem;font-weight:600;gap:.5rem;letter-spacing:.05em;text-transform:uppercase}.bg-wall-category select{background:#fff;border:1px solid var(--gray-200);border-radius:.375rem;color:var(--gray-800);font-size:.875rem;font-weight:500;letter-spacing:0;padding:.375rem .5rem;text-transform:none}.bg-wall-remove{color:var(--gray-400);line-height:0;margin-left:auto;padding:.375rem}.bg-wall-remove:hover{background:var(--gray-100);color:#dc2626;color:var(--error-600,#dc2626)}.bulk-grid.excel .bg-floor-cell{background:#fff;border-left:3px solid #0000;color:var(--gray-700);font-weight:500;min-width:5.5rem;padding:.375rem .75rem;white-space:nowrap}.bulk-grid.excel .bg-data-row:first-of-type .bg-floor-cell{color:var(--gray-900);font-weight:600}.bulk-grid.excel .bg-input{font-feature-settings:"tnum";background:#0000;border:none;font-family:inherit;font-size:.8125rem;font-variant-numeric:tabular-nums;padding:.375rem;text-align:right;width:100%}.bulk-grid.excel .bg-input:focus{background:#eff6ff;background:var(--primary-50,#eff6ff);box-shadow:inset 0 0 0 2px var(--primary-500);outline:none}.bulk-grid.excel .bg-input::placeholder{color:var(--gray-300)}.bulk-grid.excel .bg-check-cell{padding:.25rem;text-align:center}.bulk-grid.excel .bg-accum-cell{font-feature-settings:"tnum";background:#eff6ff;background:var(--primary-50,#eff6ff);color:var(--primary-700);font-size:.8125rem;font-variant-numeric:tabular-nums;font-weight:600;padding:.375rem .625rem;text-align:right}.bulk-grid.excel .bg-accum-cell:first-of-type{border-left:1px solid #bfdbfe;border-left:1px solid var(--primary-200,#bfdbfe)}.bulk-grid.excel .bg-stud-cell{background:var(--gray-50);color:var(--gray-800);font-family:ui-monospace,monospace;font-family:var(--font-mono,ui-monospace,monospace);font-size:.75rem;padding:.375rem .5rem;white-space:nowrap}.bulk-grid.excel .bg-stud-select-cell{min-width:13.5rem;padding:.125rem .25rem;width:13.5rem}.bulk-grid.excel .bg-stud-select-cell .stud-select__menu,.bulk-grid.excel .bg-stud-select-cell .stud-select__menu-portal{z-index:30}.linteau-select__menu-portal,.stud-select__menu-portal{z-index:1200!important}.fc-stud-picker{margin-right:.75rem;max-width:12rem;min-width:10.5rem}.bulk-grid.excel .bg-sol-cell{background:var(--gray-50);padding:.375rem .5rem;text-align:center}.bulk-grid.excel td.bg-cell{padding:0;position:relative}.bulk-grid.excel td.bg-cell.drag-range{background:#eff6ff;background:var(--primary-50,#eff6ff);box-shadow:inset 0 0 0 1px var(--primary-500)}.bg-fill-handle{background:var(--primary-600);bottom:0;cursor:crosshair;height:7px;opacity:0;position:absolute;right:0;transition:opacity 80ms;width:7px}.bulk-grid.excel td.bg-cell:focus-within .bg-fill-handle,.bulk-grid.excel td.bg-cell:hover .bg-fill-handle{opacity:1}.bulk-grid.excel .bg-add-floor-row td{background:var(--gray-50);border-bottom:2px solid var(--gray-300);border-top:1px solid var(--gray-200);padding:.25rem .5rem;text-align:left}.bulk-grid.excel .bg-add-floor-row button{color:var(--primary-700)}.wall-label-input{background:#0000;border:1px solid #0000;border-radius:.25rem;font-size:1rem;font-weight:600;min-width:12rem;padding:.25rem .5rem}.wall-label-input:focus,.wall-label-input:hover{background:#fff;border-color:var(--gray-300);outline:none}.wall-label-input--lg{font-size:1.25rem}.per-wall-view{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:240px 1fr}.wall-sidebar{display:flex;flex-direction:column;gap:.25rem}.wall-sidebar-title{color:var(--gray-500);font-size:.6875rem;font-weight:700;letter-spacing:.05em;padding:.25rem .5rem .5rem;text-transform:uppercase}.wall-sidebar-item{align-items:center;background:#fff;border:1px solid var(--gray-200);border-left:3px solid #0000;border-radius:.375rem;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;justify-content:space-between;padding:.625rem .75rem;text-align:left;transition:background .12s,border-color .12s}.wall-sidebar-item:hover{background:var(--gray-50);border-color:var(--gray-300)}.wall-sidebar-item.active{background:#eff6ff;background:var(--primary-50,#eff6ff);border-color:#bfdbfe;border-color:var(--primary-200,#bfdbfe);border-left-color:var(--primary-600)}.wall-sidebar-main{display:flex;flex:1 1;flex-direction:column;gap:.125rem;min-width:0}.wall-sidebar-label{color:var(--gray-900);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wall-sidebar-item.active .wall-sidebar-label{color:var(--primary-800)}.wall-sidebar-meta{align-items:center;color:var(--gray-500);display:flex;font-size:.75rem;font-weight:400;gap:.375rem}.wall-sidebar-dot{color:var(--gray-300)}.wall-detail{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem}.wall-detail-header{align-items:center;border-bottom:1px solid var(--gray-200);display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem}.inline-field{align-items:center;color:var(--gray-500);display:inline-flex;font-size:.75rem;font-weight:600;gap:.5rem;letter-spacing:.05em;text-transform:uppercase}.inline-field select{border:1px solid var(--gray-300);border-radius:.25rem;padding:.25rem .5rem}.pending-chip{background:#eff6ff;background:var(--primary-50,#eff6ff);border-radius:.25rem;color:var(--primary-700);font-size:.75rem;padding:.25rem .5rem}.sidebar-add{margin-top:.5rem;width:100%}.wall-detail-actions{margin-left:auto}.floor-cards{display:flex;flex-direction:column;gap:.75rem}.floor-card{background:#fff;border:1px solid var(--gray-200);border-left:4px solid var(--gray-300);border-radius:.375rem;overflow:hidden}.floor-card.sol-ok{border-left-color:var(--primary-500)}.floor-card.sol-warn{border-left-color:#f59e0b}.floor-card.sol-fail{border-left-color:#dc2626}.fc-header{align-items:center;background:var(--gray-50);border-bottom:1px solid var(--gray-200);cursor:pointer;display:flex;gap:.75rem;padding:.625rem .875rem;-webkit-user-select:none;user-select:none}.fc-header[role=button]:hover{background:var(--gray-100)}.fc-floor-label{align-items:center;display:flex;gap:.5rem}.fc-level{color:var(--gray-800);font-size:.9375rem;font-weight:600}.fc-tag{background:#eff6ff;background:var(--primary-50,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-200,#bfdbfe);border-radius:999px;color:var(--primary-700);font-size:.6875rem;font-weight:500;padding:.125rem .5rem}.fc-stud-name{color:var(--gray-700);font-family:ui-monospace,monospace;font-family:var(--font-mono,ui-monospace,monospace);font-size:.8125rem}.fc-header-chips{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-left:auto}.fc-chip{font-feature-settings:"tnum";color:var(--primary-700);font-size:.8125rem;font-variant-numeric:tabular-nums;font-weight:600}.fc-chip-k{color:var(--gray-400);font-size:.75rem;font-weight:600;margin-right:.25rem}.fc-chip-unit{color:var(--gray-500);font-size:.6875rem;font-weight:500;margin-left:.125rem}.fc-header-right{align-items:center;display:flex;gap:.5rem}.fc-expand-icon{color:var(--gray-500);font-size:.625rem}.fc-inputs{display:flex;flex-direction:column;gap:.875rem;padding:1rem 1.125rem}.fc-grid{grid-gap:.875rem 1rem;display:grid;gap:.875rem 1rem;grid-template-columns:repeat(4,minmax(0,1fr))}.fc-grid--sub{grid-template-columns:repeat(4,minmax(0,1fr))}.fc-field{display:flex;flex-direction:column;gap:.375rem;min-width:0}.fc-field-label{color:var(--gray-500);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.fc-field-input{align-items:center;display:flex;position:relative}.fc-field-input input[type=text]{font-feature-settings:"tnum";background:#fff;border:1px solid var(--gray-200);border-radius:.375rem;color:var(--gray-900);font-size:.9375rem;font-variant-numeric:tabular-nums;padding:.5rem 2.25rem .5rem .75rem;text-align:left;width:100%}.fc-field-input input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #dbeafe;box-shadow:0 0 0 3px var(--primary-100,#dbeafe);outline:none}.fc-field-input input::placeholder{color:var(--gray-300)}.fc-field-unit{color:var(--primary-600);font-size:.75rem;font-weight:500;pointer-events:none;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.fc-field--checkbox{align-items:center;flex-direction:row;gap:.5rem;min-width:0;padding-top:1.25rem}.fc-field-check-label{color:var(--gray-700);font-size:.875rem;font-weight:500}.fc-field--checkbox input[type=checkbox]{accent-color:var(--primary-600);height:1rem;width:1rem}.fc-optional-toggle{align-items:center;align-self:flex-start;background:none;border:none;color:var(--gray-500);cursor:pointer;display:inline-flex;font-size:.6875rem;font-weight:600;gap:.375rem;letter-spacing:.05em;padding:.375rem 0;text-transform:uppercase}.fc-optional-toggle:hover{color:var(--primary-700)}.fc-group-chevron{color:var(--gray-400);font-size:.625rem}.fc-group-hint{color:var(--gray-400);font-style:italic;font-weight:400;letter-spacing:0;margin-left:.25rem;text-transform:none}.fc-optional{border-top:1px dashed var(--gray-200);margin-top:-.25rem;padding:.75rem 0}@media (max-width:900px){.fc-grid,.fc-grid--sub{grid-template-columns:repeat(2,minmax(0,1fr))}}.fc-detail{background:var(--gray-50);border-top:1px dashed var(--gray-200);display:flex;flex-direction:column;gap:.875rem;padding:.75rem .875rem}.fc-detail-section h4{color:var(--gray-600);font-size:.75rem;font-weight:600;letter-spacing:.05em;margin:0 0 .375rem;text-transform:uppercase}.fc-pills{display:flex;flex-wrap:wrap;gap:.375rem}.pill{font-feature-settings:"tnum";background:#fff;border:1px solid var(--gray-200);border-radius:999px;color:var(--gray-800);font-size:.8125rem;font-variant-numeric:tabular-nums;padding:.25rem .625rem}.pill-k{color:var(--gray-500);font-weight:600;margin-right:.375rem}.fc-buckling{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.bc-chip{background:#fff;border:1px solid var(--gray-200);border-radius:.375rem;display:flex;flex-direction:column;gap:.125rem;min-width:5.5rem;padding:.375rem .625rem}.bc-chip.ctrl{background:#eff6ff;background:var(--primary-50,#eff6ff);border-color:var(--primary-500);box-shadow:0 0 0 1px var(--primary-500)}.bc-label{color:var(--gray-500);font-size:.6875rem;letter-spacing:.03em;text-transform:uppercase}.bc-chip.ctrl .bc-label{color:var(--primary-700);font-weight:600}.bc-val{color:var(--gray-800);font-family:ui-monospace,monospace;font-family:var(--font-mono,ui-monospace,monospace);font-size:.875rem;font-weight:600}.fc-resistance{font-feature-settings:"tnum";color:var(--gray-700);display:flex;font-size:.8125rem;font-variant-numeric:tabular-nums;gap:1rem}.wind-cases{display:flex;flex-direction:column;gap:.375rem}.wc-row{grid-gap:.5rem;font-feature-settings:"tnum";align-items:center;display:grid;font-size:.75rem;font-variant-numeric:tabular-nums;gap:.5rem;grid-template-columns:3rem 11rem 1fr 3.5rem}.wc-row.ctrl .wc-label{color:var(--primary-700);font-weight:700}.wc-label{color:var(--gray-700);font-weight:600}.wc-pfmf{color:var(--gray-500);font-family:ui-monospace,monospace;font-family:var(--font-mono,ui-monospace,monospace)}.wc-bar{background:var(--gray-200);border-radius:999px;height:.5rem;overflow:hidden}.wc-bar-fill{height:100%;transition:width .2s}.wc-pct{color:var(--gray-700);font-weight:600;text-align:right}.fc-fail{color:#991b1b;font-size:.875rem;font-weight:500;padding:.5rem 0}@media (max-width:640px){.wc-row{grid-template-columns:3rem 1fr 3rem}.wc-pfmf{display:none}}.openings-view{display:flex;flex-direction:column;gap:1rem}.opening-wall-group{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem}.opening-wall-strip{align-items:center;background:var(--gray-50);border-bottom:1px solid var(--gray-200);display:flex;flex-wrap:wrap;gap:.75rem;padding:.625rem .875rem}.opening-wall-name{color:var(--gray-900);font-size:.9375rem;font-weight:600}.opening-wall-meta{color:var(--gray-500);font-size:.75rem}.opening-wall-actions{display:inline-flex;gap:.375rem;margin-left:auto}.opening-empty-row{color:var(--gray-500);font-size:.8125rem;font-style:italic;padding:.875rem 1rem}.openings-grid{font-feature-settings:"tnum";border-collapse:collapse;font-size:.8125rem;font-variant-numeric:tabular-nums;width:100%}.openings-grid th{background:var(--gray-100);border-bottom:1px solid var(--gray-200);color:var(--gray-700);font-size:.6875rem;font-weight:600;letter-spacing:.05em;padding:.375rem .5rem;text-align:left;text-transform:uppercase}.openings-grid td{border-bottom:1px solid var(--gray-100);padding:.375rem .5rem;vertical-align:middle}.opening-row:last-child td{border-bottom:none}.opening-floor-cell select{background:#fff;font-size:.75rem}.opening-floor-cell select,.opening-x-input{border:1px solid var(--gray-200);border-radius:.25rem;padding:.25rem .5rem}.opening-x-input{font-size:.8125rem;text-align:right;width:5rem}.opening-span-cell,.opening-x-input{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.opening-span-cell{color:var(--gray-600);white-space:nowrap}.opening-span-cell.invalid{color:#dc2626;color:var(--error-600,#dc2626)}.opening-stud-cell{min-width:12rem;width:12.5rem}.opening-sol-cell{min-width:17rem;white-space:nowrap}.opening-sol-cell.stale{filter:grayscale(.3);opacity:.55}.opening-sol-trio{flex-wrap:nowrap;gap:.5rem}.opening-sol-tag,.opening-sol-trio{align-items:center;display:inline-flex}.opening-sol-tag{gap:.25rem}.opening-sol-tag-label{color:var(--gray-500);font-size:.625rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.opening-stack-cell{min-width:10rem}.opening-stack-name{color:var(--gray-900);font-size:.8125rem;font-weight:600}.opening-stack-alignedflag{color:var(--primary-600);cursor:help;display:inline-block;font-size:.75rem;margin-left:.375rem}.opening-x-input.aligned{background:#eff6ff;background:var(--primary-50,#eff6ff);border-color:#bfdbfe;border-color:var(--primary-200,#bfdbfe)}.stack-view{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:260px 1fr}.stack-sidebar{display:flex;flex-direction:column;gap:.25rem}.stack-detail{background:#fff;border:1px solid var(--gray-200);border-radius:.5rem;padding:1rem}.stack-empty-detail{color:var(--gray-500);font-style:italic;padding:2rem 1rem;text-align:center}.stack-geometry{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.stack-geom-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem}.stack-geom-field{display:flex;flex-direction:column;gap:.25rem;min-width:5rem}.stack-geom-field span{color:var(--gray-500);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.stack-geom-field input{font-feature-settings:"tnum";border:1px solid var(--gray-200);border-radius:.25rem;font-size:.875rem;font-variant-numeric:tabular-nums;min-width:4.5rem;padding:.375rem .5rem;text-align:right}.stack-geom-align{align-items:center;color:var(--gray-700);display:inline-flex;font-size:.8125rem;font-weight:600;gap:.5rem;padding-bottom:.375rem}.stack-geom-align input[type=checkbox]{accent-color:var(--primary-600);height:1rem;width:1rem}.opening-row.inherited input[disabled]{background:var(--gray-100);border-color:var(--gray-300);border-style:dashed;color:var(--gray-400);cursor:not-allowed;font-style:italic}.opening-jamb-input{font-feature-settings:"tnum";border:1px solid var(--gray-200);border-radius:.25rem;font-size:.8125rem;font-variant-numeric:tabular-nums;padding:.25rem .375rem;text-align:center;width:3rem}.opening-floor-label{align-items:center;color:var(--gray-800);display:inline-flex;font-size:.875rem;font-weight:500;gap:.375rem;white-space:nowrap}.opening-floor-tag{background:var(--gray-100);border-radius:.25rem;color:var(--gray-500);font-size:.625rem;font-weight:600;letter-spacing:.05em;padding:.0625rem .375rem;text-transform:uppercase}@media (max-width:768px){.per-wall-view{grid-template-columns:1fr}}.loading-details{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:6px;font-size:.875rem;margin-top:1rem;padding:.75rem 1rem}.loading-details summary{color:var(--primary-700);cursor:pointer;font-weight:600;padding:.25rem 0}.loading-details-table{border-collapse:collapse;margin-top:.5rem;width:100%}.loading-details-table td,.loading-details-table th{border-bottom:1px solid var(--gray-200);padding:.375rem .5rem;text-align:left;vertical-align:top}.loading-details-table th{color:var(--gray-700);font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.udl-seg-row{align-items:center;display:flex;flex-wrap:wrap;gap:.375rem;margin-bottom:.25rem}.udl-seg-row:last-child{margin-bottom:0}.udl-seg-label{color:var(--primary-700);font-style:italic;font-weight:600;min-width:1.5rem}.udl-seg-pill{font-feature-settings:"tnum";background:var(--primary-50);border:1px solid var(--primary-200);border-radius:4px;color:var(--primary-800);display:inline-block;font-size:.8125rem;font-variant-numeric:tabular-nums;padding:.125rem .5rem}.cascading-list{list-style:none;margin:0;padding:0}.cascading-list li{font-feature-settings:"tnum";font-size:.8125rem;font-variant-numeric:tabular-nums;margin-bottom:.125rem}.cascading-list li:last-child{margin-bottom:0}.loading-details .muted{color:var(--gray-500)}.lintel-diagram{background:#fff;border:1px solid var(--gray-200);border-radius:4px;box-sizing:initial;display:block;padding:4px}.lintel-diagram .udl-D{fill:var(--primary-400)}.lintel-diagram .udl-L{fill:var(--primary-200)}.lintel-diagram .udl-S{fill:var(--primary-100)}.lintel-diagram .beam{stroke:var(--gray-800);stroke-width:3;stroke-linecap:square}.lintel-diagram .support{fill:var(--gray-700)}.lintel-diagram .point-arrow line{stroke:var(--gray-900);stroke-width:1.5}.lintel-diagram .point-arrow polygon{fill:var(--gray-900)}.lintel-diagram .legend text,.lintel-diagram .point-label,.lintel-diagram .span-label,.lintel-diagram .udl-label{font-feature-settings:"tnum";fill:var(--gray-700);font-family:monospace;font-family:var(--font-mono,monospace);font-size:10px;font-variant-numeric:tabular-nums}.lintel-diagram .udl-label{fill:var(--primary-800);font-weight:600}.lintel-diagram .point-label{fill:var(--gray-900);font-weight:600}.lintel-diagram .span-label{fill:var(--gray-600)}.lintel-diagram .legend-note{fill:var(--gray-500)}.lintel-diagram .seg-tick{stroke:var(--gray-600);stroke-width:1}.lintel-diagram .seg-tick-label{font-feature-settings:"tnum";fill:var(--gray-600);font-family:monospace;font-family:var(--font-mono,monospace);font-size:9px;font-variant-numeric:tabular-nums}.stack-elevation-panel{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:6px;font-size:.875rem;margin-top:1rem;padding:.75rem 1rem}.stack-elevation-panel summary{color:var(--primary-700);cursor:pointer;font-weight:600;padding:.25rem 0}.stack-elevation{background:#fff;border:1px solid var(--gray-200);border-radius:4px;display:block;margin-top:.5rem}.stack-elevation .wall-outline{fill:var(--gray-50);stroke:var(--gray-400);stroke-width:1}.stack-elevation .floor-divider{stroke:var(--gray-300);stroke-width:1;stroke-dasharray:2 3}.stack-elevation .floor-label{font-feature-settings:"tnum";fill:var(--gray-700);font-family:monospace;font-family:var(--font-mono,monospace);font-size:10px;font-variant-numeric:tabular-nums}.stack-elevation .jamb,.stack-elevation .lintel{stroke:var(--primary-700);stroke-width:3;stroke-linecap:square}.stack-elevation .ground-line{stroke:var(--gray-800);stroke-width:2.5}.stack-elevation .extent-label{font-feature-settings:"tnum";fill:var(--gray-600);font-family:monospace;font-family:var(--font-mono,monospace);font-size:10px;font-variant-numeric:tabular-nums}.assembly-stack-diagram .dl-band{stroke:#d1d5db;stroke:var(--border-medium,#d1d5db);stroke-width:1}.assembly-stack-diagram .dl-band--metals,.assembly-stack-diagram .dl-band--steelDeck{fill:#d1d5db;fill:var(--gray-300,#d1d5db)}.assembly-stack-diagram .dl-band--concreteSlabs,.assembly-stack-diagram .dl-band--deckSlabs,.assembly-stack-diagram .dl-band--floorFill{fill:#e5e7eb;fill:var(--gray-200,#e5e7eb)}.assembly-stack-diagram .dl-band--masonry{fill:#f3f4f6;fill:var(--gray-100,#f3f4f6)}.assembly-stack-diagram .dl-band--framing,.assembly-stack-diagram .dl-band--sheathing,.assembly-stack-diagram .dl-band--timber{fill:#fffbeb;fill:var(--warning-50,#fffbeb)}.assembly-stack-diagram .dl-band--ceilings,.assembly-stack-diagram .dl-band--floorFinishes,.assembly-stack-diagram .dl-band--framePartitions,.assembly-stack-diagram .dl-band--frameWalls,.assembly-stack-diagram .dl-band--roofing,.assembly-stack-diagram .dl-band--wallsCladding{fill:#dbeafe;fill:var(--primary-100,#dbeafe)}.assembly-stack-diagram .dl-band--insulation{fill:#eff6ff;fill:var(--primary-50,#eff6ff)}.assembly-stack-diagram .dl-band--buildingMaterials,.assembly-stack-diagram .dl-band--earth,.assembly-stack-diagram .dl-band--iceSnow,.assembly-stack-diagram .dl-band--liquids,.assembly-stack-diagram .dl-band--miscellaneous,.assembly-stack-diagram .dl-band--solidFuels{fill:#f9fafb;fill:var(--bg-subtle,#f9fafb)}.assembly-stack-diagram .dl-band--custom{fill:#f3f4f6;fill:var(--gray-100,#f3f4f6);stroke-dasharray:4 3}.assembly-stack-diagram .dl-band-pattern{pointer-events:none}.assembly-stack-diagram .dl-pattern-stroke{stroke:#9ca3af;stroke:var(--gray-400,#9ca3af);stroke-width:.75}.assembly-stack-diagram .dl-pattern-fill{fill:#9ca3af;fill:var(--gray-400,#9ca3af)}.assembly-stack-diagram .dl-batt-stroke{stroke:#6b7280;stroke:var(--text-tertiary,#6b7280);stroke-width:.8;fill:none}.assembly-stack-diagram .dl-framing-member rect{fill:#4b5563;fill:var(--text-secondary,#4b5563);stroke:none}.assembly-stack-diagram .dl-cavity-bg{fill:#eff6ff;fill:var(--primary-50,#eff6ff);stroke:#d1d5db;stroke:var(--border-medium,#d1d5db);stroke-width:1}.assembly-stack-diagram .dl-leader{fill:none;stroke:#d1d5db;stroke:var(--border-medium,#d1d5db);stroke-width:1}.assembly-stack-diagram .dl-label-name{fill:#4b5563;fill:var(--text-secondary,#4b5563);font-size:10px;font-weight:600}.assembly-stack-diagram .dl-label-pressure{fill:#2563eb;fill:var(--primary-600,#2563eb);font-feature-settings:"tnum";font-size:10px;font-variant-numeric:tabular-nums;font-weight:700}.assembly-stack-diagram .dl-annotation{fill:#6b7280;fill:var(--text-tertiary,#6b7280);font-size:9.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.assembly-stack-diagram .dl-annotation-arrow{stroke:#6b7280;stroke:var(--text-tertiary,#6b7280);stroke-width:1}.assembly-stack-diagram .dl-bracket{stroke:#6b7280;stroke:var(--text-tertiary,#6b7280);stroke-width:1.25}.assembly-stack-diagram .dl-total-label{fill:#111827;fill:var(--text-primary,#111827);font-size:10px;font-weight:700}.assembly-stack-diagram .dl-empty-rect{fill:#f9fafb;fill:var(--bg-subtle,#f9fafb);stroke:#d1d5db;stroke:var(--border-medium,#d1d5db);stroke-dasharray:6 4}.assembly-stack-diagram .dl-empty-text{fill:#9ca3af;fill:var(--text-muted,#9ca3af);font-size:11px}.dead-load-calculator{margin:0 auto;max-width:1280px;padding:0 0 3rem}.dead-load-calculator-page{margin-top:-1.5rem}.dead-load-calculator-page .calculator-header{background:linear-gradient(135deg,#0f1c2e,#0d2654 60%,#1a3a6e);margin-bottom:2rem;width:100%}.dead-load-calculator-page .calculator-header-inner{margin:0 auto;max-width:1280px;padding:1.25rem 2rem 1.5rem}.dead-load-calculator-page .back-link{align-items:center;color:#ffffff73;display:inline-flex;font-size:.8125rem;gap:.375rem;margin-bottom:1rem;text-decoration:none;transition:color .15s}.dead-load-calculator-page .back-link:hover{color:#ffffffbf}.dead-load-calculator-page .header-title-row{align-items:center;display:flex;gap:1rem}.dead-load-calculator-page .header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.dead-load-calculator-page .calc-icon-badge{align-items:center;background:#ffffff26;border-radius:10px;color:#fff;display:flex;flex-shrink:0;height:46px;justify-content:center;width:46px}.dead-load-calculator-page .header-title-row h1{color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0}.dead-load-calculator-page .nbc-ref{color:#ffffff73;font-size:.8125rem;margin:.15rem 0 0}.dead-load-calculator .calculator-content{display:flex;flex-direction:column;gap:1.5rem;padding:0 2rem}.dead-load-calculator .form-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012}.dead-load-calculator .form-section{border-bottom:1px solid var(--border-light);padding:1.25rem}.dead-load-calculator .form-section:first-child{border-radius:12px 12px 0 0}.dead-load-calculator .form-section:last-child{border-bottom:none;border-radius:0 0 12px 12px}.dead-load-calculator .section-header{align-items:center;display:flex;gap:.625rem;margin-bottom:1rem}.dead-load-calculator .section-icon{align-items:center;background:var(--primary-50);border-radius:7px;color:var(--primary-600);display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.dead-load-calculator .section-title{color:var(--text-primary);font-size:.875rem;font-weight:700;letter-spacing:-.005em}.dead-load-calculator .form-row{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.dead-load-calculator .form-group{margin-bottom:0;position:relative}.dead-load-calculator .dl-field-hint{color:var(--text-muted);display:block;font-size:.7rem;line-height:1.4;margin-top:.4rem}.dead-load-calculator .form-group label{color:var(--text-tertiary);display:block;font-size:.7rem;font-weight:700;letter-spacing:.05em;margin-bottom:.35rem;text-transform:uppercase}.dead-load-calculator .dl-cell input,.dead-load-calculator .dl-cell select,.dead-load-calculator .form-group select{background:#fff;border:1.5px solid var(--border-light);border-radius:8px;color:var(--text-primary);font-family:var(--font-sans);font-size:.875rem;padding:.5rem .75rem;transition:border-color .15s,box-shadow .15s;width:100%}.dead-load-calculator .dl-cell input:hover,.dead-load-calculator .dl-cell select:hover,.dead-load-calculator .form-group select:hover{border-color:var(--border-medium)}.dead-load-calculator .dl-cell input:focus,.dead-load-calculator .dl-cell select:focus,.dead-load-calculator .form-group select:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f;outline:none}.dead-load-calculator .dl-cell input:disabled,.dead-load-calculator .dl-cell select:disabled{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);color:var(--text-muted);cursor:not-allowed}.dead-load-calculator .react-select-container{font-size:.875rem}.dead-load-calculator .react-select__control{background:#fff!important;border:1.5px solid var(--border-light)!important;border-radius:8px!important;box-shadow:none!important;min-height:36px!important}.dead-load-calculator .react-select__control:hover{border-color:var(--border-medium)!important}.dead-load-calculator .react-select__control--is-focused{border-color:var(--primary-600)!important;box-shadow:0 0 0 3px #2563eb1f!important}.dead-load-calculator .react-select__menu{background:#fff!important;border:1px solid var(--border-medium)!important;border-radius:8px!important;box-shadow:0 8px 24px #0000001f!important;z-index:20!important}.dead-load-calculator .react-select__option{background:#0000!important;color:var(--text-primary)!important;font-size:.8425rem!important}.dead-load-calculator .react-select__option--is-focused{background:var(--primary-50)!important;color:var(--primary-700)!important}.dead-load-calculator .react-select__option--is-selected{background:var(--primary-100)!important;color:var(--primary-700)!important;font-weight:600!important}.dead-load-calculator .react-select__group-heading{font-size:.65rem!important;font-weight:700!important;letter-spacing:.05em!important}.dl-quick-search{border-bottom:1px dashed var(--border-light);margin-bottom:1rem;padding-bottom:1rem}.dl-quick-search label{color:var(--text-tertiary);display:block;font-size:.7rem;font-weight:700;letter-spacing:.05em;margin-bottom:.35rem;text-transform:uppercase}.dl-rows{display:flex;flex-direction:column;gap:.875rem}.dl-row{background:#f9fafb;background:var(--bg-subtle,#f9fafb);border:1px solid var(--border-light);border-radius:10px;padding:.75rem}.dl-row-line{grid-gap:.5rem;grid-template-columns:minmax(0,1.1fr) minmax(0,1.9fr) minmax(0,.9fr) minmax(0,.9fr) minmax(0,.75fr) auto}.dl-row-line,.dl-row-values{align-items:end;display:grid;gap:.5rem}.dl-row-values{grid-gap:.5rem;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) auto}.dl-row-values--custom{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) auto}.dl-row-values--cmu{grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,.8fr) auto}.dl-cell{min-width:0;position:relative}.dl-cell-label{color:var(--text-tertiary);display:block;font-size:.625rem;font-weight:700;letter-spacing:.05em;margin-bottom:.3rem;text-transform:uppercase}.dl-input-chip{align-items:stretch;display:flex}.dl-input-chip input{border-bottom-right-radius:0!important;border-right:none!important;border-top-right-radius:0!important;flex:1 1;min-width:0}.dl-chip{align-items:center;background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border:1.5px solid var(--border-light);border-bottom-right-radius:8px;border-left:none;border-top-right-radius:8px;color:var(--text-tertiary);display:flex;font-size:.7rem;font-weight:600;justify-content:center;min-width:44px;padding:0 .5rem;white-space:nowrap}.dl-input-chip input[type=number]{-webkit-appearance:textfield;appearance:textfield}.dl-input-chip input::-webkit-inner-spin-button,.dl-input-chip input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.dl-unit-chip{display:flex;position:relative}.dl-chip--clickable{cursor:pointer;font-family:var(--font-sans);transition:background .12s,color .12s,border-color .12s}.dl-chip--clickable:hover{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-600)}.dl-unit-menu{background:#fff;border:1px solid var(--border-medium);border-radius:8px;box-shadow:0 8px 24px #0000001f;min-width:64px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.dl-unit-opt{background:#0000;border:none;color:var(--text-secondary);cursor:pointer;display:block;font-size:.78rem;padding:.4rem .7rem;text-align:left;white-space:nowrap;width:100%}.dl-unit-opt:hover{background:var(--primary-50);color:var(--primary-600)}.dl-unit-opt.selected{background:var(--primary-100);color:var(--primary-700);font-weight:600}.dl-row-pressure{font-feature-settings:"tnum";align-items:center;color:var(--primary-600);display:flex;font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:700;min-height:36px;white-space:nowrap}.dl-row-actions{gap:.25rem;padding-bottom:.25rem}.dl-icon-btn,.dl-row-actions{align-items:center;display:flex}.dl-icon-btn{background:#fff;border:1px solid var(--border-light);border-radius:6px;color:var(--text-tertiary);cursor:pointer;height:26px;justify-content:center;transition:color .12s,border-color .12s,background .12s;width:26px}.dl-icon-btn:hover:not(:disabled){background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-600)}.dl-icon-btn:disabled{cursor:not-allowed;opacity:.35}.dl-icon-btn--danger:hover:not(:disabled){background:#fef2f2;border-color:#fecaca;color:#991b1b}.dl-reset-btn{height:22px;position:absolute;right:0;top:-.2rem;width:22px}.dl-row-note--modified{color:#d97706;color:var(--warning,#d97706);font-size:.7rem;font-weight:600;margin-top:.4rem}.dl-row-note--source{color:var(--text-muted);font-size:.7rem;margin-top:.4rem}.dl-row .field-warning{margin-top:.5rem}.dl-add-buttons{display:flex;gap:.5rem;margin-top:.875rem}.dl-add-btn{background:var(--primary-50);border:1px solid var(--primary-200);border-radius:8px;color:var(--primary-700);cursor:pointer;font-size:.8125rem;font-weight:600;padding:.45rem .875rem;transition:background .15s,border-color .15s}.dl-add-btn:hover{background:var(--primary-100)}.dl-add-btn--secondary{background:#f3f4f6;background:var(--bg-muted,#f3f4f6);border-color:var(--border-light);color:var(--text-secondary)}.dl-add-btn--secondary:hover{background:#e5e7eb;background:var(--gray-200,#e5e7eb)}.dead-load-calculator .results-section{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dead-load-calculator .results-empty{grid-column:1/-1}.dead-load-calculator .result-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;padding:1.375rem 1.5rem}.dead-load-calculator .case-type-label{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.5rem;text-transform:uppercase}.dead-load-calculator .load-display{align-items:baseline;display:flex;gap:.375rem;margin-bottom:.875rem}.dead-load-calculator .load-number{font-feature-settings:"tnum";color:var(--primary-600);font-size:2.25rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.03em;line-height:1}.dead-load-calculator .load-unit-label{color:var(--primary-600);font-size:1rem;font-weight:600}.dead-load-calculator .factors-heading{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;letter-spacing:.07em;margin-bottom:.625rem;text-transform:uppercase}.dead-load-calculator .factor-row{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:.5rem;padding:.45rem 0}.dead-load-calculator .factor-row:last-child{border-bottom:none}.dead-load-calculator .factor-name{color:var(--text-secondary);flex:1 1;font-size:.8125rem;min-width:0}.dead-load-calculator .factor-val{font-feature-settings:"tnum";color:var(--text-primary);font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:700;text-align:right}.dl-breakdown-col{min-width:72px}.dl-breakdown-header .factor-val{color:var(--text-tertiary);font-size:.625rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.dl-cumulative{color:var(--text-tertiary)}.dl-total-row{border-top:2px solid var(--border-medium);margin-top:.25rem}.dl-total-row .factor-name{color:var(--text-primary);font-weight:700}.dl-total-row .factor-val{color:var(--primary-600)}.dead-load-calculator .results-empty{align-items:center;border-style:dashed;display:flex;flex-direction:column;padding:2.5rem 1.5rem;text-align:center}.dead-load-calculator .empty-icon{align-items:center;color:var(--text-secondary);display:flex;justify-content:center;margin-bottom:.75rem;opacity:.3}.dead-load-calculator .empty-title{color:var(--text-secondary);font-size:.9375rem;font-weight:600;margin-bottom:.375rem}.dead-load-calculator .empty-sub{color:var(--text-muted);font-size:.8rem;line-height:1.5;margin:0 auto;max-width:280px}.dead-load-calculator .field-warning{border-radius:.5rem;border-radius:var(--radius-md,.5rem);font-size:.8125rem;line-height:1.5;margin-top:.5rem;padding:.5rem .75rem}.dead-load-calculator .field-warning+.field-warning{margin-top:.375rem}.dead-load-calculator .field-warning--soft{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.dead-load-calculator .field-warning--info{background:#eff6ff;background:var(--primary-50,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-200,#bfdbfe);color:#1e40af;color:var(--primary-800,#1e40af);white-space:pre-line}@media (max-width:1024px){.dead-load-calculator .form-row,.dead-load-calculator .results-section{grid-template-columns:1fr}}@media (max-width:768px){.dead-load-calculator .calculator-content{padding:0 1rem}.dead-load-calculator-page .calculator-header-inner{padding:1rem 1.25rem 1.25rem}.dead-load-calculator-page .header-title-row h1{font-size:1.25rem}.dead-load-calculator .result-card{padding:1rem}.dead-load-calculator .load-number{font-size:1.75rem}.dl-row-line,.dl-row-values,.dl-row-values--cmu,.dl-row-values--custom{grid-template-columns:1fr 1fr}.dl-row-line .dl-cell--select{grid-column:1/-1}.dl-row-actions{justify-content:flex-end}}.about-page{margin:0 auto;max-width:1200px;padding:var(--space-8)}.about-header{margin-bottom:var(--space-10);text-align:center}.about-header h1{color:var(--text-primary);font-size:var(--font-4xl);font-weight:var(--font-bold);margin-bottom:var(--space-4)}.about-header p{color:var(--text-secondary);font-size:var(--font-lg);line-height:var(--leading-relaxed);margin:0 auto;max-width:800px}.about-content{margin:0 auto;max-width:1000px}.about-section{margin-bottom:var(--space-12)}.about-section h2{color:var(--text-primary);font-size:var(--font-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-6);text-align:center}.about-section p{color:var(--text-secondary);font-size:var(--font-base);line-height:var(--leading-relaxed);margin:0 auto;max-width:800px;text-align:center}.features-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:var(--space-8)}.feature-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-6);text-align:center;transition:all var(--transition-normal)}.feature-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.feature-icon{font-size:var(--font-5xl);margin-bottom:var(--space-4)}.feature-card h3{color:var(--text-primary);font-size:var(--font-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-4)}.feature-card p{color:var(--text-secondary);font-size:var(--font-sm);line-height:var(--leading-relaxed)}@media (max-width:768px){.about-page{padding:var(--space-4)}.about-header h1{font-size:var(--font-3xl)}.about-header p{font-size:var(--font-base)}.about-section h2{font-size:var(--font-xl)}.features-grid{gap:var(--space-5);grid-template-columns:1fr}.feature-card{padding:var(--space-5)}}.releases-page{margin:0 auto;max-width:900px;padding:2rem 1.5rem}.releases-header{margin-bottom:2rem}.releases-header h1{color:#111827;color:var(--text-primary,#111827);font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.releases-subtitle{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.9rem;margin:0}.releases-grid{display:flex;flex-direction:column;gap:1.25rem}.release-card{background:#fff;border:1.5px solid #e5e7eb;border:1.5px solid var(--border-light,#e5e7eb);border-radius:10px;padding:1.25rem 1.5rem;transition:border-color .15s}.release-card:hover{border-color:#d1d5db;border-color:var(--border-medium,#d1d5db)}.release-card--released{border-left:3px solid #2563eb;border-left:3px solid var(--primary-600,#2563eb)}.release-card--beta{border-left:3px solid #f59e0b}.release-card--alpha{border-left:3px solid #ec4899}.release-card-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.release-card-icon{color:#2563eb;color:var(--primary-600,#2563eb);flex-shrink:0}.release-card-info{flex:1 1}.release-card-info h2{font-size:1rem;font-weight:600;margin:0}.release-card-info h2 a{color:#111827;color:var(--text-primary,#111827);text-decoration:none}.release-card-info h2 a:hover{color:#2563eb;color:var(--primary-600,#2563eb)}.release-card-ref{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;margin:.15rem 0 0}.release-status{border-radius:4px;flex-shrink:0;font-size:.7rem;font-weight:600;letter-spacing:.03em;padding:.2rem .6rem;text-transform:uppercase}.release-status--released{background:#eff6ff;background:var(--primary-50,#eff6ff);color:#1d4ed8;color:var(--primary-700,#1d4ed8)}.release-status--beta{background:#fef3c7;color:#92400e}.release-status--alpha{background:#fce7f3;color:#9d174d}.release-card-version{color:#111827;color:var(--text-primary,#111827);font-size:.85rem;font-weight:600;margin-bottom:.75rem}.test-coverage{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.7rem;font-weight:400;margin-left:.75rem}.release-entry{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-light,#e5e7eb);margin-top:.5rem;padding-top:.75rem}.release-entry-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.release-version{color:#111827;color:var(--text-primary,#111827);font-size:.8rem;font-weight:600}.release-date{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem}.release-changes{list-style:none;margin:0;padding:0}.release-changes li{align-items:baseline;color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;font-size:.8rem;gap:.5rem;padding:.2rem 0}.change-type{border-radius:3px;flex-shrink:0;font-size:.65rem;font-weight:700;min-width:4.5rem;padding:.1rem .35rem;text-align:center;text-transform:uppercase}.change--added .change-type{background:#d1fae5;color:#065f46}.change--fixed .change-type{background:#dbeafe;color:#1e40af}.change--changed .change-type{background:#fef3c7;color:#92400e}.change--removed .change-type{background:#fee2e2;color:#991b1b}.change--verified .change-type{background:#eff6ff;background:var(--primary-50,#eff6ff);color:#1d4ed8;color:var(--primary-700,#1d4ed8)}[data-theme=dark] .release-card{background:#1e293b;background:var(--bg-card,#1e293b)}[data-theme=dark] .release-card-info h2 a{color:var(--text-primary)}.disclaimer-page{margin:0 auto;max-width:780px;padding:2rem 1.5rem 4rem}.disclaimer-container h1{color:#111827;color:var(--text-primary,#111827);font-size:1.75rem;font-weight:700;margin:0 0 .25rem}.disclaimer-updated{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.8rem;margin:0 0 2rem}.disclaimer-section{margin-bottom:2rem}.disclaimer-section h2{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light,#e5e7eb);color:#111827;color:var(--text-primary,#111827);font-size:1.1rem;font-weight:700;margin:0 0 .75rem;padding-bottom:.5rem}.disclaimer-section p{color:#4b5563;color:var(--text-secondary,#4b5563);font-size:.9rem;line-height:1.7;margin:0 0 .75rem}.disclaimer-section ul{margin:0;padding-left:1.25rem}.disclaimer-section li{color:#4b5563;color:var(--text-secondary,#4b5563);font-size:.9rem;line-height:1.7;margin-bottom:.5rem}@media print{.disclaimer-page{max-width:100%;padding:1rem}}.legal-page{background:#f6f8fb;background:var(--bg-secondary,#f6f8fb);min-height:100vh;padding:2.5rem 1.25rem 4rem}.legal-container{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e6ebf2;border:1px solid var(--border-light,#e6ebf2);border-radius:12px;border-radius:var(--radius-lg,12px);margin:0 auto;max-width:820px;padding:2.5rem 2.75rem}.legal-container h1{color:#14305a;color:var(--primary-800,#14305a);font-size:1.75rem;margin:0 0 .25rem}.legal-updated{color:#64748b;color:var(--text-tertiary,#64748b);font-size:.8125rem;margin:0 0 1.5rem}.legal-placeholder-note{background:#fff3cd;border:1px solid #e0a800;border-radius:8px;border-radius:var(--radius-md,8px);color:#5c4500;font-size:.85rem;margin-bottom:1.5rem;padding:.75rem 1rem}.legal-placeholder-note ul{margin:.4rem 0 0;padding-left:1.25rem}.legal-placeholder-note li{margin:.15rem 0}.legal-intro{color:#475569;color:var(--text-secondary,#475569);font-size:.95rem;line-height:1.65}.legal-intro,.legal-section{margin-bottom:1.5rem}.legal-section h2{color:#1d3f73;color:var(--primary-700,#1d3f73);font-size:1.0625rem;margin:0 0 .5rem}.legal-section p{color:#475569;color:var(--text-secondary,#475569);font-size:.9rem;line-height:1.65;margin:0 0 .6rem}.legal-section ul{margin:.3rem 0 .6rem;padding-left:1.35rem}.legal-section li{color:#475569;color:var(--text-secondary,#475569);font-size:.9rem;line-height:1.6;margin:.2rem 0}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_AMS-Regular.73ea273a72f4aca30ca5.woff2) format("woff2"),url(/static/media/KaTeX_AMS-Regular.d562e886c52f12660a41.woff) format("woff"),url(/static/media/KaTeX_AMS-Regular.853be92419a6c3766b9a.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Caligraphic-Bold.a1abf90dfd72792a577a.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Bold.d757c535a2e5902f1325.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Bold.7489a2fbfb9bfe704420.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Caligraphic-Regular.d6484fce1ef428d5bd94.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Regular.db074fa22cf224af93d7.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Regular.7e873d3833eb108a0758.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Fraktur-Bold.931d67ea207ab37ee693.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Bold.354501bac435c3264834.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Bold.4c761b3711973ab04edf.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Fraktur-Regular.172d3529b26f8cedef6b.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Regular.6fdf0ac577be0ba82a4c.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Regular.ed305b5434865e06ffde.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Main-Bold.39890742bc957b368704.woff2) format("woff2"),url(/static/media/KaTeX_Main-Bold.0c3b8929d377c0e9b2f3.woff) format("woff"),url(/static/media/KaTeX_Main-Bold.8169508bf58f8bd92ad8.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Main-BoldItalic.20f389c4120be058d80a.woff2) format("woff2"),url(/static/media/KaTeX_Main-BoldItalic.428978dc7837d46de091.woff) format("woff"),url(/static/media/KaTeX_Main-BoldItalic.828abcb200061cffbaae.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Main-Italic.fe2176f79edaa716e621.woff2) format("woff2"),url(/static/media/KaTeX_Main-Italic.fd947498bc16392e76c2.woff) format("woff"),url(/static/media/KaTeX_Main-Italic.fa675e5e4bec9eb250b6.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Main-Regular.f650f111a3b890d116f1.woff2) format("woff2"),url(/static/media/KaTeX_Main-Regular.4f35fbcc9ee8614c2bcc.woff) format("woff"),url(/static/media/KaTeX_Main-Regular.9eba1d77abcf2aa6e94e.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Math-BoldItalic.dcbcbd93bac0470b462d.woff2) format("woff2"),url(/static/media/KaTeX_Math-BoldItalic.3f07ed67f06c720120ce.woff) format("woff"),url(/static/media/KaTeX_Math-BoldItalic.bf2d440b3a42ea78a998.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Math-Italic.6d3d25f4820d0da8f01f.woff2) format("woff2"),url(/static/media/KaTeX_Math-Italic.96759856b4e70f3a8338.woff) format("woff"),url(/static/media/KaTeX_Math-Italic.8a5f936332e8028c7278.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(/static/media/KaTeX_SansSerif-Bold.95591a929f0d32aa282a.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Bold.b9cd458ac6d5889ff9c3.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Bold.5b49f4993ae22d7975b4.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Italic.7d393d382f3e7fb1c637.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Italic.8d593cfaa96238d5e2f8.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Italic.b257a18c016f37ee4543.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Regular.cd5e231e0cc53b2cb2c0.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Regular.02271ec5cb9f5b4588ac.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Regular.2f7bc363fc5424ebda59.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Script-Regular.c81d1b2a4b75d3eded60.woff2) format("woff2"),url(/static/media/KaTeX_Script-Regular.073b3402d036714b4370.woff) format("woff"),url(/static/media/KaTeX_Script-Regular.fc9ba5249878cd8f8d88.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size1-Regular.6eec866c69313624be60.woff2) format("woff2"),url(/static/media/KaTeX_Size1-Regular.0108e89c9003e8c14ea3.woff) format("woff"),url(/static/media/KaTeX_Size1-Regular.6de7d4b539221a49e9e2.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size2-Regular.2960900c4f271311eb36.woff2) format("woff2"),url(/static/media/KaTeX_Size2-Regular.3a99e70aee4076660d38.woff) format("woff"),url(/static/media/KaTeX_Size2-Regular.57f5c1837853986ea1db.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size3-Regular.e1951519f6f0596f7356.woff2) format("woff2"),url(/static/media/KaTeX_Size3-Regular.7947224e8a9914fa332b.woff) format("woff"),url(/static/media/KaTeX_Size3-Regular.8d6b6822586eea3d3b20.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size4-Regular.e418bf257af1052628d8.woff2) format("woff2"),url(/static/media/KaTeX_Size4-Regular.aeffd8025cba3647f1a6.woff) format("woff"),url(/static/media/KaTeX_Size4-Regular.4ad7c7e8bb8d10a34bb7.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Typewriter-Regular.c295e7f71970f03c0549.woff2) format("woff2"),url(/static/media/KaTeX_Typewriter-Regular.4c6b94fd1d07f8beff7c.woff) format("woff"),url(/static/media/KaTeX_Typewriter-Regular.c5c02d763c89380dcb4e.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.benchmarks-page{margin:0 auto;max-width:900px;padding:2rem 1.5rem}.benchmarks-header{margin-bottom:2.5rem}.benchmarks-header h1{color:#111827;color:var(--text-primary,#111827);font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.benchmarks-subtitle{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.95rem;margin:0 0 .5rem}.benchmarks-note{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.8rem;font-style:italic;margin:0}.benchmarks-list{display:flex;flex-direction:column;gap:2rem}.bm-card{background:#fff;border:1.5px solid #e5e7eb;border-left:3px solid #2563eb;border:1.5px solid var(--border-light,#e5e7eb);border-left:3px solid var(--primary-600,#2563eb);border-radius:10px;padding:1.5rem}.bm-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.bm-card-title h2{color:#111827;color:var(--text-primary,#111827);font-size:1.1rem;font-weight:700;margin:0}.bm-card-ref{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;margin:.2rem 0 0}.bm-card-desc{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.85rem;line-height:1.5;margin:0 0 1.25rem}.bm-card-result{flex-shrink:0;text-align:right}.bm-card-result-val{color:#1d4ed8;color:var(--primary-700,#1d4ed8);display:block;font-size:1.5rem;font-weight:700}.bm-card-result-label{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.7rem;letter-spacing:.03em;text-transform:uppercase}.bm-inputs{margin-bottom:1.25rem}.bm-inputs h3{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-weight:700;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.bm-inputs-grid{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}.bm-input-item{align-items:center;display:flex;font-size:.85rem;gap:.4rem}.bm-input-key{color:#2563eb;color:var(--primary-600,#2563eb);font-weight:600}.bm-input-val{color:#111827;color:var(--text-primary,#111827)}.bm-cases{margin-bottom:1.25rem}.bm-cases h3{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-weight:700;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.bm-cases-table{border-collapse:collapse;font-size:.85rem;width:100%}.bm-cases-table th{border-bottom:1.5px solid #e5e7eb;border-bottom:1.5px solid var(--border-light,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.8rem;font-weight:600;padding:.4rem .75rem;text-align:left}.bm-cases-table td{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light,#e5e7eb);color:#111827;color:var(--text-primary,#111827);padding:.35rem .75rem}.bm-zones{margin-bottom:1.25rem}.bm-zones h3{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-weight:700;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.bm-zones-table{border-collapse:collapse;font-size:.85rem;width:100%}.bm-zones-table th{border-bottom:1.5px solid #e5e7eb;border-bottom:1.5px solid var(--border-light,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.8rem;font-weight:600;padding:.4rem .75rem;text-align:left}.bm-zones-table td{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light,#e5e7eb);color:#111827;color:var(--text-primary,#111827);padding:.4rem .75rem}.bm-zones-table td:nth-child(2),.bm-zones-table td:nth-child(3){font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.bm-zones-table td:last-child{text-align:center;width:2rem}.bm-zone-row--governs td{background:#eff6ff;background:var(--primary-50,#eff6ff)}.bm-zone-label{font-weight:500}.bm-zones-note{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-style:italic;margin:.5rem 0 0}.bm-toggle{align-items:center;background:none;border:1px solid #e5e7eb;border:1px solid var(--border-light,#e5e7eb);border-radius:6px;color:#2563eb;color:var(--primary-600,#2563eb);cursor:pointer;display:flex;font-size:.8rem;font-weight:600;gap:.4rem;margin-bottom:1rem;padding:.5rem 1rem;transition:background .15s}.bm-toggle:hover{background:#eff6ff;background:var(--primary-50,#eff6ff)}.bm-toggle-arrow{font-size:.7rem;transition:transform .2s}.bm-toggle-arrow--open{transform:rotate(180deg)}.bm-steps{margin-bottom:1.5rem}.bm-steps h3{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-weight:700;letter-spacing:.05em;margin:0 0 1rem;text-transform:uppercase}.bm-step{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light,#e5e7eb);display:flex;gap:.75rem;padding:.75rem 0}.bm-step:last-child{border-bottom:none}.bm-step--governs{background:#eff6ff;background:var(--primary-50,#eff6ff);border-radius:6px;margin:.25rem -.75rem;padding:.75rem}.bm-step-num{align-items:center;background:#2563eb;background:var(--primary-600,#2563eb);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.7rem;font-weight:700;height:24px;justify-content:center;margin-top:.1rem;width:24px}.bm-step-body{flex:1 1;min-width:0}.bm-step-label{color:#111827;color:var(--text-primary,#111827);font-size:.8rem;font-weight:600;margin-bottom:.25rem}.bm-step-calc{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.bm-result-inline{align-items:center;color:#111827;color:var(--text-primary,#111827);display:inline-flex;font-size:.9rem;gap:.4rem;white-space:nowrap}.bm-step-calc .katex{font-size:.95em}.bm-substep-master-formula{color:#111827;color:var(--text-primary,#111827);font-size:1rem;padding:.5rem 0 .75rem}.bm-substep{border-left:2px solid #e5e7eb;border-left:2px solid var(--border-light,#e5e7eb);margin:.25rem 0;padding:.4rem 0 .4rem .75rem}.bm-substep--governs{background:#eff6ff;background:var(--primary-50,#eff6ff);border-left-color:#2563eb;border-left-color:var(--primary-600,#2563eb);border-radius:0 6px 6px 0;padding:.5rem .75rem}.bm-substep-case{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.bm-substep-calc{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.15rem}.bm-substep-calc .katex{font-size:.9em}.bm-governs-badge{background:#eff6ff;background:var(--primary-50,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-200,#bfdbfe);border-radius:3px;color:#1d4ed8;color:var(--primary-700,#1d4ed8);font-size:.6rem;font-weight:700;letter-spacing:.04em;padding:.1rem .4rem;text-transform:uppercase}.bm-additional{border-top:1px dashed #e5e7eb;border-top:1px dashed var(--border-light,#e5e7eb);margin-top:1rem;padding-top:.75rem}.bm-additional h4{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-weight:700;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.bm-comparison{border:1px solid #e5e7eb;border:1px solid var(--border-light,#e5e7eb);border-radius:8px;margin:1rem 0;overflow:hidden}.bm-comparison-row{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light,#e5e7eb);display:grid;font-size:.8rem;grid-template-columns:2fr 1fr 1fr 40px;padding:.5rem .75rem}.bm-comparison-row:last-child{border-bottom:none}.bm-comparison-row--header{background:#f9fafb;background:var(--bg-subtle,#f9fafb);color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.bm-comparison-label{color:#111827;color:var(--text-primary,#111827);font-weight:600}.bm-comparison-val{color:#6b7280;color:var(--text-secondary,#6b7280);text-align:center}.bm-comparison-check{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:1rem;text-align:center}.bm-comparison-check--pass{color:#059669;font-weight:700}.bm-try{margin-top:1rem;text-align:center}.bm-try-btn{background:#2563eb;background:var(--primary-600,#2563eb);border-radius:6px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;padding:.6rem 1.5rem;text-decoration:none;transition:background .15s}.bm-try-btn:hover{background:#1d4ed8;background:var(--primary-700,#1d4ed8)}.benchmarks-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-light,#e5e7eb);margin-top:2.5rem;padding-top:1.5rem;text-align:center}.benchmarks-footer p{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.8rem;margin:0 0 .5rem}.benchmarks-footer a{color:#2563eb;color:var(--primary-600,#2563eb);font-size:.8rem;text-decoration:none}.benchmarks-footer a:hover{text-decoration:underline}[data-theme=dark] .bm-card{background:#1e293b;background:var(--bg-card,#1e293b)}[data-theme=dark] .bm-cases-table th{color:var(--text-secondary)}[data-theme=dark] .bm-cases-table td{color:var(--text-primary)}[data-theme=dark] .bm-comparison-row--header{background:#1e293b;background:var(--bg-card,#1e293b)}@media (max-width:640px){.bm-card-header{flex-direction:column}.bm-card-result{text-align:left}.bm-comparison-row{font-size:.75rem;grid-template-columns:1.5fr 1fr 1fr 32px}.bm-inputs-grid{gap:.4rem .75rem}}@media print{.bm-toggle{display:none}.bm-steps{display:block!important}.bm-try{display:none}}.auth-form-card{background:var(--bg-base);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:4rem auto;max-width:28rem;padding:2.5rem 2rem}.auth-form-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;text-align:center}.auth-form-fields{display:flex;flex-direction:column;gap:1rem}.auth-form-card .input-field input{background-color:var(--primary-50);border-color:var(--primary-200)}.auth-form-card .input-field input:focus{background-color:var(--bg-base);border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100)}.auth-form-error{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);color:#b91c1c;font-size:.875rem;margin-top:1rem;padding:.75rem 1rem}.auth-form-submit{background:var(--primary-600);border:none;border-radius:var(--radius-md);color:var(--bg-base);cursor:pointer;font-size:1rem;font-weight:500;margin-top:1.5rem;padding:.75rem 1rem;transition:background .12s ease;width:100%}.auth-form-submit:hover:not(:disabled){background:var(--primary-700)}.auth-form-submit:disabled{cursor:not-allowed;opacity:.6}.auth-form-footer{color:var(--text-secondary);font-size:.875rem;margin-top:1.5rem;text-align:center}.auth-form-footer a{color:var(--primary-600);text-decoration:none}.auth-form-footer a:hover{text-decoration:underline}.auth-form-success-content{color:var(--text-secondary);line-height:1.5;text-align:center}@media (max-width:640px){.auth-form-card{margin:2rem 1rem;padding:2rem 1.25rem}}.auth-confirm-card{background:var(--bg-base);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:4rem auto;max-width:28rem;padding:2.5rem 2rem;text-align:center}.auth-confirm-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 1rem}.auth-confirm-body{color:var(--text-secondary);line-height:1.5;margin:0 0 1.5rem}.auth-confirm-cta{background:var(--primary-600);border-radius:var(--radius-md);color:var(--bg-base);display:inline-block;font-weight:500;padding:.75rem 1.5rem;text-decoration:none;transition:background .12s ease}.auth-confirm-cta:hover{background:var(--primary-700);text-decoration:none}@media (max-width:640px){.auth-confirm-card{margin:2rem 1rem;padding:2rem 1.25rem}}.account-page{margin:0 auto;max-width:820px;padding:var(--space-8) var(--space-4) var(--space-16)}.account-back{color:var(--text-link);display:inline-block;font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-4);text-decoration:none}.account-back:hover{text-decoration:underline}.account-title{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--font-extrabold);margin:0}.account-email{color:var(--text-secondary);font-size:var(--text-sm);margin:var(--space-1) 0 var(--space-6)}.account-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--space-5);padding:var(--space-6)}.account-card-title{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-bold);margin:0 0 var(--space-4)}.account-card .input-field .field-input{background:var(--bg-base);border:1.5px solid var(--border-light);color:var(--text-primary)}.account-card .input-field .field-input:hover{border-color:var(--border-medium)}.account-card .input-field .field-input:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f}.account-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:1fr 1fr}@media (max-width:600px){.account-grid{grid-template-columns:1fr}}.account-actions{align-items:center;display:flex;gap:var(--space-3);margin-top:var(--space-4)}.account-btn{background:var(--primary-600);border:none;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-2) var(--space-4);transition:background var(--transition-fast)}.account-btn:hover{background:var(--primary-700)}.account-btn:disabled{cursor:default;opacity:.6}.account-btn--sm{font-size:var(--text-xs);padding:var(--space-1) var(--space-3)}.account-btn--ghost{background:#0000;border:1px solid var(--border-light);color:var(--error)}.account-btn--ghost:hover{background:var(--bg-muted)}.account-feedback{font-size:var(--text-sm);font-weight:var(--font-medium)}.account-feedback--ok{color:var(--success)}.account-feedback--err{color:var(--error)}.account-pref-row{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:var(--space-3) 0}.account-pref-row:last-of-type{border-bottom:none}.account-pref-label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}.account-toggle{background:var(--bg-muted);border:1px solid var(--border-light);border-radius:var(--radius-md);display:inline-flex;gap:2px;padding:2px}.account-toggle-btn{background:#0000;border:none;border-radius:calc(var(--radius-md) - 2px);color:var(--text-secondary);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-2) var(--space-4);transition:background var(--transition-fast),color var(--transition-fast)}.account-toggle-btn.active{background:var(--primary-600);color:var(--text-inverse)}.account-saved-controls{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-4)}.account-saved-filter,.account-saved-search{background:var(--bg-base);border:1.5px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.account-saved-search{flex:1 1 220px;min-width:0}.account-saved-filter{cursor:pointer;flex:0 0 auto}.account-saved-filter:hover,.account-saved-search:hover{border-color:var(--border-medium)}.account-saved-filter:focus,.account-saved-search:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f;outline:none}@media (max-width:600px){.account-saved-filter,.account-saved-search{flex:1 1 100%}}.account-empty{color:var(--text-tertiary);font-size:var(--text-sm);margin:0}.account-saved-list{list-style:none;margin:0;padding:0}.account-saved-item{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-3) 0}.account-saved-item:last-child{border-bottom:none}.account-saved-info{display:flex;flex-direction:column;gap:2px;min-width:0}.account-saved-name{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold)}.account-saved-meta{color:var(--text-tertiary);font-size:var(--text-xs)}.account-saved-actions{display:flex;flex-shrink:0;gap:var(--space-2)}.admin-page{margin:0 auto;max-width:1000px;padding:var(--space-8) var(--space-4) var(--space-16)}.admin-access-select{background:#fff;border:1.5px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-xs);margin-right:var(--space-2);padding:var(--space-1) var(--space-2)}.admin-access-select:focus{border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f;outline:none}.admin-access-select:disabled{cursor:default;opacity:.6}.admin-back{color:var(--text-link);display:inline-block;font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-4);text-decoration:none}.admin-back:hover{text-decoration:underline}.admin-title{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--font-extrabold);margin:0}.admin-subtitle{font-size:var(--text-sm);margin:var(--space-1) 0 var(--space-6)}.admin-denied,.admin-subtitle{color:var(--text-secondary)}.admin-error{background:color-mix(in srgb,var(--error) 8%,#0000);border:1px solid color-mix(in srgb,var(--error) 30%,#0000);border-radius:var(--radius-md);color:var(--error);font-size:var(--text-sm);padding:var(--space-3) var(--space-4)}.admin-empty{color:var(--text-tertiary);font-size:var(--text-sm)}.admin-table-wrap{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto}.admin-table{border-collapse:collapse;font-size:var(--text-sm);width:100%}.admin-table th{background:var(--bg-muted);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap}.admin-table td,.admin-table th{border-bottom:1px solid var(--border-light);padding:var(--space-3) var(--space-4)}.admin-table td{color:var(--text-primary)}.admin-table tr:last-child td{border-bottom:none}.admin-td-email{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2)}.admin-badge{border-radius:var(--radius-full);display:inline-block;font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:.03em;padding:2px 8px;text-transform:uppercase}.admin-badge--pro{background:var(--primary-100);border:1px solid var(--primary-200);color:var(--primary-700)}.admin-badge--free{background:var(--gray-100);border:1px solid var(--gray-200);color:var(--gray-600)}.admin-badge--warn{background:color-mix(in srgb,var(--warning) 18%,#0000);color:var(--warning)}.admin-btn{background:var(--primary-600);border:none;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-3);transition:background var(--transition-fast);white-space:nowrap}.admin-btn:hover{background:var(--primary-700)}.admin-btn:disabled{cursor:default;opacity:.6}.access-pending-page{display:flex;justify-content:center;padding:3rem 1.5rem}.access-pending-card{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #00000012;max-width:520px;padding:2rem;text-align:center;width:100%}.access-pending-title{color:var(--text-primary);font-size:1.375rem;font-weight:800;letter-spacing:-.02em;margin:0 0 .75rem}.access-pending-body{color:var(--text-secondary);font-size:.9375rem;line-height:1.6;margin:0 0 1.5rem}.access-pending-btn{background:var(--primary-600);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-block;font-size:.875rem;font-weight:600;padding:.6rem 1.25rem;transition:background .15s}.access-pending-btn:hover:not(:disabled){background:var(--primary-700)}.access-pending-btn:disabled{cursor:not-allowed;opacity:.6}.access-pending-link{color:var(--text-tertiary);display:block;font-size:.8125rem;margin-top:1.25rem;text-decoration:none}.access-pending-link:hover{color:var(--text-secondary)}:root{--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-300:#93c5fd;--primary-400:#60a5fa;--primary-500:#3b82f6;--primary-600:#2563eb;--primary-700:#1d4ed8;--primary-800:#1e40af;--primary-900:#1e3a8a;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--success:#17b37a;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6;--bg-base:#fff;--bg-subtle:#f8fafc;--bg-muted:#f1f5f9;--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--bg-gradient:linear-gradient(135deg,#2563eb,#1d4ed8);--bg-gradient-subtle:linear-gradient(160deg,#f8fafc,#f1f5f9);--bg-gradient-hero:linear-gradient(135deg,#1e3a8a,#1e40af 40%,#050d1f);--text-primary:#0f172a;--text-secondary:#334155;--text-tertiary:#64748b;--text-muted:#94a3b8;--text-inverse:#fff;--text-link:#2563eb;--border-light:#e2e8f0;--border-medium:#cbd5e1;--border-dark:#94a3b8;--border-focus:#3b82f6;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f,0 1px 2px #0000000a;--shadow-md:0 4px 8px -2px #00000014,0 2px 4px -2px #0000000a;--shadow-lg:0 12px 24px -4px #0000001a,0 4px 8px -4px #0000000a;--shadow-xl:0 24px 48px -8px #0000001f,0 8px 16px -8px #0000000f;--shadow-blue-sm:0 2px 8px #2563eb2e;--shadow-blue-md:0 4px 16px #2563eb38;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","Fira Code",Consolas,monospace;--text-xs:0.6875rem;--text-sm:0.8125rem;--text-base:0.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.5;--leading-relaxed:1.65;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--ease-out:cubic-bezier(0.0,0,0.2,1);--ease-in:cubic-bezier(0.4,0,1,1);--ease-inout:cubic-bezier(0.4,0,0.2,1);--duration-fast:100ms;--duration-normal:200ms;--duration-slow:350ms;--transition-fast:var(--duration-fast) var(--ease-inout);--transition-normal:var(--duration-normal) var(--ease-inout);--transition-slow:var(--duration-slow) var(--ease-out);--z-base:0;--z-raised:10;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal:1040;--z-tooltip:1070}.input,.input-base{background:#fff;background:var(--bg-base);border:1.5px solid #e2e8f0;border:1.5px solid var(--border-light);border-radius:.5rem;border-radius:var(--radius-md);color:#0f172a;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-sans);font-size:.9375rem;font-size:var(--text-base);padding:.625rem .875rem;transition:border-color .1s cubic-bezier(.4,0,.2,1),box-shadow .1s cubic-bezier(.4,0,.2,1),background .1s cubic-bezier(.4,0,.2,1);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);width:100%}.input-base::placeholder,.input::placeholder{color:#94a3b8;color:var(--text-muted)}.input-base:hover,.input:hover{border-color:#cbd5e1;border-color:var(--border-medium)}.input-base:focus,.input:focus{border-color:#2563eb;border-color:var(--primary-600);box-shadow:0 0 0 3px #2563eb1f;outline:none}.input-base:focus-visible,.input:focus-visible{outline:2px solid #3b82f6;outline:2px solid var(--primary-500);outline-offset:2px}select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;padding-right:36px}.card-base{background:#fff;background:var(--bg-primary);border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:1rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);transition:box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.card-base:hover{box-shadow:0 12px 24px -4px #0000001a,0 4px 8px -4px #0000000a;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-primary{align-items:center;background:#2563eb;background:var(--primary-600);border:none;border-radius:.5rem;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-sans);font-size:.9375rem;font-size:var(--text-base);font-weight:600;font-weight:var(--font-semibold);gap:.5rem;justify-content:center;padding:.625rem 1.25rem;transition:background .1s cubic-bezier(.4,0,.2,1),box-shadow .1s cubic-bezier(.4,0,.2,1),transform .1s cubic-bezier(.4,0,.2,1);transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.btn-primary:hover{background:#1d4ed8;background:var(--primary-700);box-shadow:0 4px 16px #2563eb38;box-shadow:var(--shadow-blue-md);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}@media screen{.print-only{display:none!important}}@media print{@page{margin:.5in .5in .6in .5in}.screen-only{display:none!important}.print-only{display:block!important}*,:after,:before{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.app-footer,.back-link,.calculator-header,.language-switcher,.mobile-menu-toggle,.mobile-nav,.navigation,.tooltip-arrow,.tooltip-bubble,.unit-menu,.unit-selector,.units-modal,.user-menu,.user-menu-login-link,button:not(.print-keep){display:none!important}#root,.App,body,html{background:#fff!important;color:#000!important;height:auto!important;min-height:0!important}.App{display:block!important}.main-content{flex:none!important}body{font-size:10pt;line-height:1.35}.calc-grid,.calculator-content,.calculator-layout,.main-content{margin:0!important;max-width:none!important;padding:0!important}.calc-grid,.calculator-content,.calculator-layout{grid-gap:.4rem!important;align-items:start!important;display:grid!important;gap:.4rem!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.case-ii-sides,.form-row,.results-grid{display:block!important;grid-template-columns:none!important}.calc-card,.form-card,.form-section,.result-card,.results-section{box-sizing:border-box!important;margin-bottom:8pt!important;max-width:100%!important}.factor-row,.form-group,.result-card{break-inside:avoid;page-break-inside:avoid}.calc-card,.form-card,.form-section,.result-card,.results-section{border:.75pt solid #ccc!important;box-shadow:none!important;padding:6pt 8pt!important}body{font-size:9pt}.diagram,.diagram-container,.svg-container,figure{margin-left:0!important;margin-right:0!important;max-width:100%!important;width:100%!important}h1,h2,h3,h4{break-after:avoid;margin-bottom:.25em!important;margin-top:.5em!important;page-break-after:avoid}input,select,textarea{-webkit-appearance:none!important;appearance:none!important;background:#fff!important;border:1px solid #999!important;box-shadow:none!important;color:#000!important}.iwu-input-row{align-items:stretch!important;display:flex!important;flex-wrap:nowrap!important}.iwu-input{flex:1 1 auto!important;min-width:0!important}.iwu-unit-container,.iwu-unit-display{background:#f5f5f5!important;color:#000!important;flex:0 0 auto!important}.iwu-unit-dropdown{display:none!important}svg{break-inside:avoid;height:auto!important;max-width:100%!important;page-break-inside:avoid}table{page-break-inside:auto}td,th,tr{break-inside:avoid;page-break-inside:avoid}thead{display:table-header-group}a{color:#000!important;text-decoration:none!important}a[href]:after{content:none!important}.page-break-before{break-before:page;page-break-before:always}.page-break-after{break-after:page;page-break-after:always}.keep-together,.page-break-avoid{break-inside:avoid;page-break-inside:avoid}}#root,body,html{height:100%}body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);line-height:var(--leading-normal)}.App,body{min-height:100vh}.App{display:flex;flex-direction:column}.main-content{flex:1 1;padding-bottom:3rem;padding-top:1.5rem}.app-footer{background:#f9fafb;background:var(--bg-subtle,#f9fafb);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-light,#e5e7eb);padding:1.5rem 1rem;text-align:center}.app-footer p{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.7rem;line-height:1.5;margin:0}.app-footer a{color:#2563eb;color:var(--primary-600,#2563eb);text-decoration:none}.app-footer a:hover{text-decoration:underline}.app-version{font-size:.6rem;margin-top:.25rem;opacity:.5}@media print{.app-footer{display:none}}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}::selection{background:#3b82f633;color:var(--text-primary)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--bg-subtle)}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-dark)}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.mb-1{margin-bottom:var(--space-2)}.mb-2{margin-bottom:var(--space-4)}.mb-3{margin-bottom:var(--space-6)}.mb-4{margin-bottom:var(--space-8)}.mt-1{margin-top:var(--space-2)}.mt-2{margin-top:var(--space-4)}.mt-3{margin-top:var(--space-6)}.mt-4{margin-top:var(--space-8)}.section-heading{align-items:center;border-bottom:1px solid var(--border-light);color:var(--text-primary);display:flex;font-size:var(--text-base);font-weight:var(--font-semibold);gap:var(--space-2);letter-spacing:-.01em;margin-bottom:var(--space-4);padding-bottom:var(--space-3)}.section-heading:before{background:var(--primary-500);border-radius:2px;content:"";display:inline-block;flex-shrink:0;height:1em;width:3px}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.03em;line-height:1;padding:.2em .55em}.badge-blue,.badge-green{background:#3b82f61a;border:1px solid #3b82f633;color:var(--primary-700)}.badge-amber{background:#f59e0b1a;border:1px solid #f59e0b33;color:#b45309}.alert{border:1px solid #0000;border-radius:var(--radius-md);display:flex;font-size:var(--text-sm);gap:var(--space-3);line-height:var(--leading-relaxed);padding:var(--space-3) var(--space-4)}.alert-info,.alert-success{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-700)}.alert-warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.alert-error{background:#fef2f2;border-color:#fecaca;color:#991b1b}@media (max-width:768px){.main-content{padding-bottom:2rem;padding-top:1rem}}
/*# sourceMappingURL=main.9d994ffe.css.map*/