:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#000000de;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;background:#f0f2f5;min-width:320px}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem 2rem;text-align:center;box-shadow:0 2px 6px #00000026}.app-header h1{font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.app-header p{opacity:.85;font-size:.9rem}.tab-bar{display:flex;gap:0;padding:0 1.5rem;background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 1px 3px #0000000f}.tab-button{padding:.85rem 1.5rem;font-size:.95rem;font-weight:600;color:#666;background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:color .2s,border-color .2s,background .2s}.tab-button:hover{color:#333;background:#f5f5f5}.tab-button--active{color:#667eea;border-bottom-color:#667eea;background:transparent}.tab-button--active:hover{background:#f8f7ff}.tab-panel-placeholder{background:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 10px #00000014;color:#666;text-align:center}.app-container--single{grid-template-columns:1fr;max-width:none;width:100%}.app-container--single .oplegblokken-table-wrap{min-width:100%}.oplegblokken-table-wrap{background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;width:100%;min-width:0;overflow-x:hidden;display:block;box-sizing:border-box}.oplegblokken-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.9rem}.oplegblokken-table-caption{padding:1rem 1.25rem;background:#5a5d61;color:#fff;font-weight:700;font-size:1rem;text-align:left;caption-side:top;border:1px solid #4a4d52;border-bottom:none}.oplegblokken-table-header-row th{padding:.6rem 1rem;background:#7d8086;color:#fff;font-weight:600;text-align:center;border:1px solid #6b6e74}.oplegblokken-table-header-row th:first-child{text-align:left}.oplegblokken-table-data-row td{padding:.5rem 1rem;background:#4a4d52;color:#fff;border:1px solid #5a5d61}.oplegblokken-table-cell--text{text-align:left;word-break:break-word;overflow-wrap:break-word}.oplegblokken-table-cell--num{text-align:center}.oplegblokken-table-cell--test.oplegblokken-test--pass{color:#34d399;font-weight:600}.oplegblokken-table-cell--test.oplegblokken-test--warn{color:#60a5fa;font-weight:600}.oplegblokken-table-cell--test.oplegblokken-test--fail{color:#f87171;font-weight:600}.oplegblokken-table-cell--clickable{cursor:pointer}.oplegblokken-table-cell--clickable:hover{filter:brightness(1.15)}.app-container{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;padding:1.5rem;max-width:1400px;margin:0 auto;width:100%;align-items:start}.app-container.app-container--single{grid-template-columns:minmax(0,1fr);max-width:none}@media (max-width: 900px){.app-container{grid-template-columns:1fr}}.calculation-form,.results-container{background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;overflow:hidden;min-width:0}.results-container{display:flex;flex-direction:column;gap:0;background:transparent;box-shadow:none}.results,.validation-results{background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;overflow:hidden}.form-section{border-bottom:1px solid #e8eaed}.form-section:last-child{border-bottom:none}.form-section .form-section{border-bottom:1px solid #eef0f2;margin:0}.section-header{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s;background:#f8f9fa}.section-header:hover{background:#eef0f4}.section-header h2{font-size:.95rem;font-weight:600;color:#444;letter-spacing:.2px}.section-header.top-header{background:#eef0f4;border-bottom:2px solid #667eea;padding:1rem 1.25rem}.section-header.top-header h2.top-header-text{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#333}.toggle{font-size:.75rem;color:#888;flex-shrink:0}.section-content{padding:.75rem 1.25rem 1rem}.form-grid{display:flex;flex-direction:column;gap:0}.input-field{display:flex;flex-direction:column}.input-field-row{display:flex;align-items:center;gap:.75rem;width:100%;min-width:0;padding:.55rem 0;border-bottom:1px solid #f3f4f6}.input-field-row:last-child{border-bottom:none}.input-field-label-line{flex:1 1 0;min-width:0;font-size:.8rem;color:#444;line-height:1.45;word-break:break-word}.input-field-label-line .label-text{font-weight:500;color:#222}.input-field-label-line .math-notation{color:#667eea;font-weight:600}.input-field-label-line .value-display{color:#888;font-style:italic}.input-field-label-line .cell-reference{color:#f97316;font-weight:500}.input-field-label-line .unit{color:#777}.input{width:110px;flex:0 0 110px;padding:.4rem .6rem;border:1px solid #d1d5db;border-radius:5px;font-size:.875rem;text-align:right;background:#fdfdfd;color:#111;transition:border-color .15s,box-shadow .15s}.input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.input.error{border-color:#ef4444}select.input{cursor:pointer;width:140px;flex:0 0 140px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23555' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;padding-right:2rem;text-align:left}.error-message{color:#ef4444;font-size:.75rem;padding:.15rem 0}.calculated-field{padding:.55rem 0;border-bottom:1px solid #f3f4f6}.calculated-field:last-child{border-bottom:none}.calculated-value-display{width:110px;flex:0 0 110px;padding:.4rem .6rem;background:#f0f4ff;border:1px solid #c7d2fe;border-radius:5px;font-size:.875rem;font-weight:600;text-align:right;color:#3730a3;flex-shrink:0}.results-empty{text-align:center;padding:3rem 1rem;color:#999;font-size:.9rem}.results-grid{display:flex;flex-direction:column;gap:0}.results-grid.single-column{display:flex;flex-direction:column}.results-grid-multi-line .input-field-label-line{white-space:normal}.result-item{padding:.55rem 0;border-bottom:1px solid #f3f4f6}.result-item:last-child{border-bottom:none}.result-item .input-field-label-line{font-size:.8rem}.result-item .value-display{font-weight:600;color:#374151}.overall-status{padding:.75rem 1.25rem;font-weight:600;font-size:.9rem;text-align:center}.overall-status.passed{background:#d1fae5;color:#065f46}.overall-status.failed{background:#fee2e2;color:#991b1b}.validation-list{display:flex;flex-direction:column}.validation-item{padding:.7rem 1.25rem;border-left:4px solid;border-bottom:1px solid #f3f4f6}.validation-item:last-child{border-bottom:none}.validation-item.passed{background:#f0fdf4;border-color:#10b981}.validation-item.failed{background:#fef2f2;border-color:#ef4444}.validation-header{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.85rem;margin-bottom:.25rem}.status-icon{font-size:1rem}.validation-details{font-size:.8rem;color:#666;margin-left:1.5rem;display:flex;flex-direction:column;gap:.15rem}.validation-message{margin-top:.25rem;font-weight:500;color:#333}.product-selection-section,.product-selection-header,.product-selection-content,.product-selection-left,.product-selection-right,.geometry-diagram,.diagram-svg{all:unset;display:block}.geometry-diagram-wrap{margin-bottom:1rem}.geometry-diagram-img{max-width:100%;height:auto;display:block;border-radius:4px}
