*{box-sizing:border-box;margin:0;padding:0}body{background:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;padding:20px}.rio-systems-configurator-wrapper{margin:0 auto;max-width:1400px}.system-shape-selector,.z-shape-configurator{background:#fff;border:1px solid #e5e5e5;border-radius:0;box-shadow:none;padding:40px}.config-layout{display:flex;flex-direction:column;gap:24px}.config-inputs{display:block;width:100%}.shape-selector-header{margin-bottom:40px;text-align:center}.shape-selector-header h2{color:#000;font-size:28px;font-weight:400;margin-bottom:12px}.shape-selector-header p{color:#666;font-size:14px}.shape-options{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.shape-options-compact{display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:0 auto;max-width:1100px}.shape-card{background:#fff;border:1px solid #ccc;border-radius:0;cursor:pointer;padding:24px;text-align:center;transition:all .3s ease}.shape-card:hover{border-color:#00bfa5;transform:translateY(-2px)}.shape-icon{align-items:center;display:flex;height:120px;justify-content:center;margin-bottom:16px}.shape-card h3{color:#000;font-size:16px;font-weight:600;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.shape-card p{color:#666;font-size:14px;margin-bottom:16px}.shape-card-compact{align-items:center;background:#fff;border:1px solid #ccc;border-radius:0;cursor:pointer;display:flex;flex-direction:column;padding:15px;text-align:center;transition:all .3s ease}.shape-card-compact:hover{border-color:#00bfa5;box-shadow:0 2px 8px rgba(0,191,165,.15);transform:translateY(-2px)}.shape-icon-compact{align-items:center;display:flex;height:60px;justify-content:center;margin-bottom:10px;width:80px}.shape-icon-compact svg{height:100%;width:100%}.shape-card-compact h4{color:#000;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.shape-card-compact p{color:#666;font-size:11px;line-height:1.4;margin-bottom:12px;min-height:32px}.select-shape-btn{background:#00bfa5;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:14px;font-weight:400;padding:12px 24px;transition:background .3s ease;width:100%}.select-shape-btn:hover{background:#00a693}.select-shape-btn-compact{background:#00bfa5;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:12px;font-weight:400;letter-spacing:.5px;padding:8px 16px;text-transform:uppercase;transition:background .3s ease;width:100%}.select-shape-btn-compact:hover{background:#00a693}.config-header{align-items:center;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:20px}.config-header h2{color:#000;font-size:28px;font-weight:400}.header-actions{display:flex;gap:12px}.back-btn,.change-shape-btn,.reset-btn{align-items:center;background:#fff;border:2px solid #000;border-radius:0;color:#000;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .3s ease}.back-btn:hover,.change-shape-btn:hover,.reset-btn:hover{background:#000;color:#fff}.advanced-toggle{display:flex;justify-content:center;margin:30px 0;text-align:center}#advancedToggleBtn,.advanced-options-btn,.advanced-toggle-btn,button#advancedToggleBtn{align-items:center;background:#fff!important;border:2px solid #00bfa5!important;border-radius:0;color:#00bfa5!important;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:12px 30px!important;transition:all .3s ease}#advancedToggleBtn:hover,.advanced-options-btn:hover,.advanced-toggle-btn:hover,button#advancedToggleBtn:hover{background:#00bfa5!important;color:#fff!important}.input-section{background:#fff;border:1px solid #e5e5e5;border-radius:0;margin-bottom:20px;padding:24px}.input-section h3{border-bottom:1px solid #e5e5e5;color:#000;font-size:16px;font-weight:600;letter-spacing:1px;margin-bottom:20px;padding-bottom:12px;text-transform:uppercase}.advanced-options-section{background:#fff;border:1px solid #e5e5e5;border-radius:0;margin-top:20px;padding:24px}.advanced-options-section h3{border-bottom:1px solid #e5e5e5;color:#000;font-size:16px;font-weight:600;letter-spacing:1px;margin-bottom:20px;padding-bottom:12px;text-transform:uppercase}.advanced-options-section.collapsed{display:none}.advanced-options-note{background:#f5f5f5;border-left:3px solid #00bfa5;color:#666;font-size:12px;margin-top:15px;padding:10px 12px}.advanced-options-note strong{color:#333}.config-grid{display:grid;gap:20px 15px;grid-template-columns:repeat(5,1fr)}.form-group{margin-bottom:0}.form-group label{color:#000;display:block;font-size:12px;font-weight:600;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.form-group input,.form-group select{background:#fff;border:1px solid #ccc;border-radius:0;color:#000;font-size:14px;padding:10px 12px;transition:all .3s ease;width:100%}.form-group input:hover,.form-group select:hover{border-color:#000}.form-group input:focus,.form-group select:focus{background:#e6f9f5!important;border-color:#00bfa5;box-shadow:0 0 0 3px rgba(0,191,165,.1);outline:none}.form-group:focus-within{background:rgba(0,191,165,.02);transition:background .2s ease}.dimension-group{margin-bottom:0;padding-left:3px;position:relative;transition:border-left .3s ease}.dimension-group input{font-size:16px;padding:14px 50px 14px 14px}.dimension-group input:focus{background:#e6f9f5!important;border-color:#00bfa5;box-shadow:0 0 0 3px rgba(0,191,165,.1)}.dimension-unit{color:#999;font-size:14px;pointer-events:none;position:absolute;right:14px;top:38px;user-select:none}.dimension-group:focus-within{background:rgba(0,191,165,.02);border-left:3px solid #00bfa5;margin-left:-3px;padding-left:8px;transition:all .2s ease}.dimension-group:hover{background:rgba(0,191,165,.02)}#lshape-module input[type=number],#rectangular-module input[type=number],#sshape-module input[type=number],#straight-module input[type=number],#ushape-module input[type=number],#zshape-module input[type=number]{padding-right:45px}#lshape-module .config-grid>.dimension-group:first-child:after,#rectangular-module .config-grid>.dimension-group:first-child:after{background:linear-gradient(180deg,transparent,#e5e5e5 20%,#e5e5e5 80%,transparent);content:"";height:60%;position:absolute;right:-10px;top:50%;transform:translateY(-50%);width:1px}.generate-btn{align-items:center;background:#00bfa5;border:none;border-radius:0;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:400;gap:10px;justify-content:center;letter-spacing:1px;padding:16px 32px;text-transform:uppercase;transition:background .3s ease;width:100%}.generate-btn:hover{background:#00a693}.system-description-preview{background:#fff;border:1px solid #e5e5e5;border-left:4px solid #00bfa5;margin-bottom:0;margin-top:20px;padding:20px 24px}.system-description-preview h4{color:#666;font-size:11px;font-weight:600;letter-spacing:1px;margin:0 0 12px;text-transform:uppercase}.system-description-preview p{color:#333;font-size:13px;font-weight:400;line-height:1.7;margin:0}.config-preview{display:flex;flex-direction:column;gap:24px}.preview-section{border-radius:0;padding:24px}.drawing-container,.preview-section{background:#fff;border:1px solid #e5e5e5}.drawing-container{border-radius:0;min-height:500px;padding:20px;width:100%}.technical-drawing-section{background:#fff;border:1px solid #e5e5e5;border-radius:0;margin-top:24px;padding:24px}.technical-drawing-section h3{border-bottom:1px solid #e5e5e5;display:flex;font-size:16px;font-weight:600;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.download-drawing-btn,.technical-drawing-section h3{align-items:center;color:#000;letter-spacing:1px;text-transform:uppercase}.download-drawing-btn{background:#fff;border:1px solid #000;border-radius:0;cursor:pointer;display:none;font-size:12px;font-weight:400;gap:6px;padding:8px 16px;transition:all .3s ease}.download-drawing-btn:hover{background:#000;color:#fff}.system-stats{display:grid;gap:16px;grid-template-columns:1fr 1fr}.stat-item{display:flex;flex-direction:column;gap:6px}.stat-label{color:#999;font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase}.stat-value{color:#00bfa5;font-size:20px;font-weight:600}.system-output-module{background:#fff;border:1px solid #e5e5e5;border-radius:0;box-shadow:none;margin-top:40px;padding:40px}.bom-table{border-collapse:collapse;margin:20px 0;width:100%}.bom-table th{background:#f8f8f8;border-bottom:1px solid #e5e5e5;color:#000;font-size:12px;font-weight:600;letter-spacing:1px;padding:12px;text-align:left;text-transform:uppercase}.bom-table td{border-bottom:1px solid #f0f0f0;color:#333;font-size:14px;padding:12px}.bom-table tr:hover{background:rgba(0,191,165,.05)}.bom-table td.selected,.bom-table td:focus{background:#e6f9f5;border:2px solid #00bfa5;outline:none}.product-code-cell{color:#00bfa5;font-family:Monaco,Courier New,monospace;font-weight:600}#emergencySectionList{margin-top:15px}.emergency-section-item{align-items:center;background:#fff;border:1px solid #e5e5e5;border-radius:0;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px;transition:all .3s ease}.emergency-section-item label{align-items:center;color:#000;cursor:pointer;display:flex;font-size:14px;gap:8px}.emergency-section-item input[type=checkbox]{cursor:pointer;width:auto}.emergency-section-item select{border:1px solid #ccc;border-radius:0;font-size:13px;padding:6px 10px;width:auto}.emergency-section-item select:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.5}#emergencySectionList input[type=checkbox]{accent-color:#00bfa5;cursor:pointer;height:18px;width:18px}#emergencySectionList input[type=checkbox]:checked{transform:scale(1.1)}#emergencySectionList select{transition:all .2s ease}#emergencySectionList select:disabled{cursor:not-allowed;opacity:.6}#emergencySectionList select:not(:disabled):hover{border-color:#00bfa5}#emergencySectionList select:focus{background:#e6f9f5!important;border-color:#00bfa5;box-shadow:0 0 0 3px rgba(0,191,165,.1);outline:none}#emergencySectionList div:has(input:checked){background:#d4f4ee!important;border:2px solid #00bfa5!important;box-shadow:0 2px 4px rgba(0,191,165,.1)}#emergencySectionList>div>div{transition:all .3s ease}.validation-message{border-left:3px solid transparent;border-radius:0;font-size:12px;line-height:1.5;margin-bottom:6px;margin-top:8px;padding:10px 12px;transition:all .2s ease}.validation-message.info{background:#f0f9ff;border-left:3px solid #0284c7;color:#0c4a6e}.validation-message.warning{background:#fff7ed;border-left:3px solid #f57c00;color:#7c2d12}.validation-message.error{background:#fef2f2;border-left:3px solid #dc2626;color:#7f1d1d}.validation-message[onclick]{cursor:pointer;padding-right:30px;position:relative}.validation-message[onclick]:hover{box-shadow:-3px 0 8px rgba(0,0,0,.08);transform:translateX(2px)}.validation-message[onclick]:after{content:"→";font-size:16px;opacity:0;position:absolute;right:10px;top:50%;transform:translateY(-50%);transition:opacity .2s ease}.validation-message[onclick]:hover:after{opacity:1}.validation-message small{display:block;margin-top:4px;opacity:.8}.validation-message span[style*=color]{font-weight:700;padding:0 2px}#lshapeValidation,#rectangularValidation,#sshapeValidation,#straightValidation,#ushapeValidation,#zshapeValidation{margin-top:12px}.config-group.incomplete{border-left:3px solid transparent}.config-group.complete{border-left:3px solid #00bfa5}.required-indicator{color:#00bfa5;font-weight:700}.rio-action-buttons{display:flex;gap:15px;margin-top:20px}.rio-action-buttons .generate-btn{flex:1}.request-price-btn{align-items:center;background:#fff;border:2px solid #000;border-radius:0;color:#000;cursor:pointer;display:flex;flex:1;font-size:14px;font-weight:500;gap:10px;justify-content:center;letter-spacing:1px;padding:16px 32px;text-transform:uppercase;transition:all .3s ease}.request-price-btn:hover{background:#000;color:#fff}.request-price-btn svg{height:20px;width:20px}.rio-modal-overlay{align-items:flex-start;background:rgba(0,0,0,.6);display:flex;height:100%;justify-content:center;left:0;overflow-y:auto;padding:40px 20px;position:fixed;top:0;width:100%;z-index:10000}.rio-modal-container{background:#fff;border-radius:0;box-shadow:0 20px 60px rgba(0,0,0,.3);margin:auto;max-width:950px;width:100%}.rio-modal-header{align-items:center;background:#fafafa;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;padding:24px 30px}.rio-modal-header h3{color:#000;font-size:18px;font-weight:600;letter-spacing:1px;margin:0;text-transform:uppercase}.rio-modal-close{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:28px;height:36px;justify-content:center;line-height:1;padding:0;transition:color .3s ease;width:36px}.rio-modal-close:hover{color:#000}.rio-modal-body{max-height:80vh;overflow-y:auto;padding:30px}.rio-config-summary{border-top:1px solid #e5e5e5;margin-top:30px;padding-top:25px}.rio-config-summary h4,.rio-contact-form h4{border-bottom:2px solid #00bfa5;color:#000;display:inline-block;font-size:14px;font-weight:600;letter-spacing:1px;margin-bottom:20px;padding-bottom:10px;text-transform:uppercase}.rio-system-description-wrapper{background:#f8f8f8;border-left:4px solid #00bfa5;margin-bottom:20px;padding:15px 18px}.rio-system-description{color:#333;font-size:13px;font-weight:400;line-height:1.6;margin:0}.rio-contact-form{margin-bottom:0}.summary-section{margin-bottom:20px}.summary-section:last-child{margin-bottom:0}.summary-section h5{color:#666;font-size:11px;font-weight:600;letter-spacing:1px;margin-bottom:10px;text-transform:uppercase}.summary-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.summary-item{background:#f8f8f8;border-left:3px solid #e5e5e5;display:flex;flex-direction:column;padding:10px 12px}.summary-item .item-label{color:#999;font-size:9px;font-weight:600;letter-spacing:.5px;margin-bottom:3px;text-transform:uppercase}.summary-item .item-value{color:#000;font-size:13px;font-weight:500}.summary-item.highlight{background:#f0f9f7;border-left-color:#00bfa5}.totals-grid{display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.total-item{background:#f8f8f8;border:1px solid #e5e5e5;padding:12px;text-align:center}.total-item .total-label{color:#999;display:block;font-size:9px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.total-item .total-value{color:#00bfa5;display:block;font-size:16px;font-weight:600}.bom-preview-section{margin-top:15px}.bom-preview-container{border:1px solid #e5e5e5;max-height:180px;overflow-y:auto}.bom-preview-table{border-collapse:collapse;font-size:11px;width:100%}.bom-preview-table th{background:#f8f8f8;border-bottom:1px solid #e5e5e5;color:#666;font-size:9px;font-weight:600;letter-spacing:.5px;padding:8px 6px;position:sticky;text-align:left;text-transform:uppercase;top:0}.bom-preview-table td{border-bottom:1px solid #f0f0f0;color:#333;padding:6px}.bom-preview-table tbody tr:last-child td{border-bottom:none}.bom-preview-table tbody tr:hover{background:rgba(0,191,165,.05)}.bom-preview-table tfoot{background:#f0f9f7;font-weight:600}.bom-preview-table tfoot td{border-top:2px solid #00bfa5;color:#00796b;padding:8px 6px}.bom-preview-table .emergency-badge{background:#00bfa5;color:#fff;display:inline-block;font-size:9px;font-weight:600;padding:2px 6px;text-transform:uppercase}.bom-preview-table .no-emergency{color:#999;font-size:10px}.rio-contact-form .form-row{display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:15px}.rio-contact-form .form-group{margin-bottom:15px}.rio-contact-form .form-row .form-group{margin-bottom:0}.rio-contact-form .form-label{color:#000;display:block;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.rio-contact-form .form-input{background:#fff;border:1px solid #ccc;border-radius:0;color:#000;font-size:14px;padding:10px 12px;transition:all .3s ease;width:100%}.rio-contact-form .form-input:hover{border-color:#000}.rio-contact-form .form-input:focus{background:#e6f9f5;border-color:#00bfa5;box-shadow:0 0 0 3px rgba(0,191,165,.1);outline:none}.rio-contact-form textarea.form-input{min-height:80px;resize:vertical}.rio-submit-btn{background:#00bfa5;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:14px;font-weight:500;letter-spacing:1px;margin-top:10px;padding:16px 32px;text-transform:uppercase;transition:background .3s ease;width:100%}.rio-submit-btn:hover{background:#00a693}.rio-submit-btn:disabled{background:#ccc;cursor:not-allowed}.rio-form-message{border-radius:0;font-size:14px;margin-top:20px;padding:15px;text-align:center}.rio-form-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.rio-form-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.rio-form-message.loading{background:#fff3cd;border:1px solid #ffc107;color:#856404}@media (max-width:968px){.config-grid{grid-template-columns:repeat(3,1fr)}.header-actions{flex-direction:column}.back-btn,.reset-btn{width:100%}.shape-options-compact{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){#lshape-module .config-grid,#rectangular-module .config-grid,#sshape-module .config-grid,#straight-module .config-grid,#ushape-module .config-grid,#zshape-module .config-grid{gap:15px!important;grid-template-columns:1fr!important}#lshape-module .config-grid>.dimension-group:first-child:after,#rectangular-module .config-grid>.dimension-group:first-child:after{display:none}.dimension-unit{font-size:13px;right:12px;top:36px}#emergencySectionList>div{gap:10px!important;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important}.rio-action-buttons{flex-direction:column}.rio-modal-overlay{padding:20px 15px}.rio-modal-body{padding:20px}.summary-grid,.totals-grid{grid-template-columns:repeat(2,1fr)}.rio-contact-form .form-row{grid-template-columns:1fr}.bom-preview-container{max-height:150px}}@media (max-width:480px){.config-grid{grid-template-columns:repeat(2,1fr)}.shape-options-compact{grid-template-columns:1fr}#emergencySectionList>div{grid-template-columns:1fr!important}.dimension-group{padding-left:0}.validation-message{font-size:11px;padding:8px 10px}.summary-grid{grid-template-columns:1fr}.totals-grid{grid-template-columns:1fr 1fr}.rio-modal-header{padding:16px 20px}.rio-modal-header h3{font-size:14px}}@media print{.dimension-group{border-left:none!important}#emergencySectionList input[type=checkbox],#emergencySectionList select,#lshapeValidation,#rectangularValidation,#sshapeValidation,#straightValidation,#ushapeValidation,#zshapeValidation{display:none}#emergencySectionList div:not(:has(input:checked)){display:none}#emergencySectionList div:has(input:checked){background:#fff!important;border:1px solid #000!important}.rio-modal-overlay{display:none!important}}button:focus-visible,input:focus-visible,select:focus-visible{box-shadow:0 0 0 6px rgba(0,191,165,.15)!important;outline:3px solid #00bfa5!important;outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}@media (prefers-contrast:high){.dimension-group,.validation-message{border-left-width:4px}#emergencySectionList div:has(input:checked){border-width:3px!important}}#lshapeValidation:empty:after,#rectangularValidation:empty:after,#sshapeValidation:empty:after,#straightValidation:empty:after,#ushapeValidation:empty:after,#zshapeValidation:empty:after{content:"";display:block;height:40px}#emergencySectionList:empty{align-items:center;display:flex;justify-content:center;min-height:80px}