:root{--bg-color: #f5f5f5;--panel-bg: #ffffff;--panel-alt-bg: #f9f9f9;--text-color: #333333;--text-secondary: #666666;--border-color: #e0e0e0;--border-dark: #cccccc;--primary-blue: #0078d4;--accent-green: #107c10;--success-green: #107c10;--accent-red: #d13438;--error-red: #d13438;--cyan-support: #40e0d0;--yellow-angle: #ffeb3b;--green-beam: #90ee90;--support-color: #666666;--diagram-red: #ff4444;--diagram-grid: #e0e0e0;--bolt-color: #8b0000;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--radius-sm: 2px;--radius-md: 4px}body{margin:0;padding:0;font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;font-size:var(--font-size-md)}*{box-sizing:border-box}h1,h2,h3,h4{margin:0;font-weight:600}h1{font-size:var(--font-size-xl)}h2{font-size:var(--font-size-lg)}h3{font-size:var(--font-size-md)}h4{font-size:var(--font-size-sm)}input,select,button,textarea{font-family:inherit;font-size:var(--font-size-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:4px 8px}input[type=number],input[type=text],select{background-color:#fff;color:var(--text-color)}input[type=number]:focus,input[type=text]:focus,select:focus{outline:none;border-color:var(--primary-blue)}input[type=checkbox],input[type=radio]{margin-right:var(--spacing-xs);cursor:pointer}button{background-color:#fff;cursor:pointer;transition:background-color .2s;padding:6px 12px}button:hover{background-color:var(--bg-color)}button.primary{background-color:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}button.primary:hover{background-color:#005a9e}button.success{background-color:var(--success-green);color:#fff;border-color:var(--success-green)}label{font-size:var(--font-size-md);color:var(--text-color);cursor:pointer}.flex-row{display:flex;flex-direction:row}.flex-col{display:flex;flex-direction:column}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.m-0{margin:0}.card{background:var(--panel-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:0 2px 4px #0000000d}.card-header{font-weight:600;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color);color:var(--text-color)}.input-group{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.input-label{min-width:180px;font-size:var(--font-size-md);color:var(--text-secondary)}.input-field{flex:0 0 100px}.input-field-wide{flex:1}.input-unit{font-size:var(--font-size-sm);color:var(--text-secondary);min-width:30px}table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}table th{background-color:var(--bg-color);padding:6px 8px;text-align:left;font-weight:600;border:1px solid var(--border-color)}table td{padding:4px 8px;border:1px solid var(--border-color)}table td input{width:100%;border:none;padding:2px 4px}table td input:focus{outline:1px solid var(--primary-blue)}.text-center{text-align:center}.text-right{text-align:right}.text-success{color:var(--success-green)}.text-error{color:var(--error-red)}.text-muted{color:var(--text-secondary)}.status-pass{color:var(--success-green);font-weight:600}.status-fail{color:var(--error-red);font-weight:600}.checkmark{color:var(--success-green);font-weight:700}.tabs{display:flex;border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-md);background:var(--panel-bg)}.tab{padding:8px 16px;cursor:pointer;border:1px solid transparent;border-bottom:none;background:transparent;transition:all .2s;color:var(--text-secondary);font-weight:500}.tab:hover{background:var(--bg-color);color:var(--text-color)}.tab.active{background:#fff;border-color:var(--border-color);border-bottom-color:#fff;margin-bottom:-1px;color:var(--text-color);font-weight:600}.report-section{margin-bottom:var(--spacing-lg)}.report-section-title{font-size:var(--font-size-md);font-weight:600;color:var(--success-green);margin-bottom:var(--spacing-sm);padding:4px 0;border-bottom:2px solid var(--success-green);text-transform:uppercase}.report-subsection{margin-bottom:var(--spacing-md)}.report-subsection-title{font-size:var(--font-size-md);font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.report-item{display:flex;justify-content:space-between;padding:4px 0;font-size:var(--font-size-sm)}.report-label{color:var(--text-secondary)}.report-value{font-weight:500;color:var(--text-color)}#root{width:100%;height:100vh;margin:0;padding:0;text-align:left;overflow:hidden}.app-layout{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.app-header{background-color:#212529;color:#fff;padding:1rem 2rem;box-shadow:0 2px 4px #0000001a;flex-shrink:0;display:flex;justify-content:space-between;align-items:center}.app-body{display:flex;flex:1;overflow:hidden;flex-direction:row}.sheet-nav{width:250px;background:var(--panel-bg, #f8f9fa);border-right:1px solid var(--border-color, #dee2e6);display:flex;flex-direction:column;overflow-y:auto;flex-shrink:0}.sheet-nav-header{padding:1rem;color:#6c757d;font-weight:600;text-transform:uppercase;font-size:.8rem;border-bottom:1px solid #dee2e6}.sheet-nav-item{text-align:left;padding:.75rem 1rem;border:none;border-bottom:1px solid #dee2e6;background:transparent;width:100%;color:#212529;transition:all .2s;cursor:pointer}.sheet-nav-item:hover{background:#e9ecef;color:#007bff}.sheet-nav-item.active{background:#e9ecef;color:#007bff;font-weight:600;border-left:3px solid #007bff}.main-content{flex:1;padding:1.5rem;overflow-y:auto;background:#f8f9fa;min-width:0}.sheet-content{margin:0 auto;max-width:1200px;background:#fff;padding:2rem;border-radius:4px;box-shadow:0 1px 3px #0000001a}.flex-row{display:flex;gap:1rem}.flex-col{display:flex;flex-direction:column;gap:1rem}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1rem}.layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-header{background-color:#212529;color:#fff;padding:1rem 2rem;box-shadow:0 2px 4px #0000001a}.app-header h1{margin:0;font-size:1.5rem}.app-content{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:1rem 2rem;background-color:#f8f9fa}.search-header{margin-bottom:1rem}.search-bar-container{display:flex;gap:1rem;margin-bottom:.5rem}.search-input{flex:1;padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem}.category-select{padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;min-width:200px}.result-count{font-size:.9rem;color:#6c757d;text-align:right}.app-container{flex:1;overflow-y:auto;background:#fff;border-radius:4px;box-shadow:0 1px 3px #0000001a;padding:1rem}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-md)}.calculator-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);padding:var(--spacing-md);height:100%;overflow-y:auto}@media(max-width:1000px){.calculator-grid{grid-template-columns:1fr}}.sheet-nav{width:250px;background:var(--panel-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column}.sheet-nav-header{padding:var(--spacing-md);color:var(--text-secondary);font-weight:600;text-transform:uppercase;font-size:var(--font-size-sm);border-bottom:1px solid var(--border-color)}.sheet-nav-item{text-align:left;padding:var(--spacing-md);border:none;border-bottom:1px solid var(--border-color);background:transparent;width:100%;color:var(--text-color);transition:all .2s}.sheet-nav-item:hover{background:var(--bg-color);color:var(--primary-blue)}.sheet-nav-item.active{background:var(--bg-color);color:var(--primary-blue);font-weight:600;border-left:3px solid var(--primary-blue)}.main-content{flex:1;padding:var(--spacing-lg);overflow-y:auto;background:var(--bg-color)}.sheet-content{margin:0 auto;max-width:1200px}
