:root{--bg-primary: #0b0f19;--bg-secondary: #111827;--bg-glass: rgba(17, 24, 39, .7);--border-glass: rgba(255, 255, 255, .08);--border-glass-focus: rgba(6, 182, 212, .4);--primary: #06b6d4;--primary-glow: rgba(6, 182, 212, .15);--secondary: #6366f1;--secondary-glow: rgba(99, 102, 241, .15);--accent: #10b981;--accent-glow: rgba(16, 185, 129, .15);--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6;--font-header: "Outfit", sans-serif;--font-body: "Plus Jakarta Sans", sans-serif;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--transition-fast: .15s ease;--transition-normal: .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.12) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(6,182,212,.12) 0px,transparent 50%),radial-gradient(at 50% 50%,rgba(17,24,39,.5) 0px,transparent 100%);background-attachment:fixed;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-header);font-weight:600;letter-spacing:-.02em}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#1f2937;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#374151}.glass-panel{background:var(--bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:24px;box-shadow:0 8px 32px #0000005e;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.glass-panel:hover{border-color:#ffffff1f}.glass-panel-interactive{cursor:pointer}.glass-panel-interactive:hover{border-color:var(--primary);box-shadow:0 8px 32px 0 var(--primary-glow);transform:translateY(-2px)}.text-primary{color:var(--primary)!important}.text-secondary{color:var(--secondary)!important}.text-accent{color:var(--accent)!important}.text-muted{color:var(--text-muted)!important}.text-error{color:var(--color-error)!important}.gradient-text{background:linear-gradient(135deg,#22d3ee,#818cf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.gradient-text-emerald{background:linear-gradient(135deg,#34d399,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.form-label{display:block;font-size:16px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:8px}.form-input{width:100%;background:#11182799;border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:10px 16px;color:var(--text-primary);font-family:var(--font-body);font-size:16px;transition:all var(--transition-fast);outline:none}.form-input:hover{border-color:#fff3}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);background:#111827f2}.form-select{-webkit-appearance:none;-moz-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='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px;padding-right:40px}.form-input::placeholder{color:var(--text-muted)}.input-unit{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:16px;color:var(--text-muted);pointer-events:none}.input-container-with-unit{position:relative;display:flex;align-items:center}.input-container-with-unit .form-input{padding-right:55px}.form-range{-webkit-appearance:none;width:100%;height:6px;border-radius:3px;background:#1f2937;outline:none}.form-range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--primary);cursor:pointer;transition:transform var(--transition-fast);box-shadow:0 0 10px var(--primary-glow)}.form-range::-webkit-slider-thumb:hover{transform:scale(1.2)}.dashboard-grid{display:grid;grid-template-columns:320px 1fr;gap:24px;max-width:1600px;margin:0 auto;padding:0 24px 48px}.main-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sweep-btn-group{display:flex;gap:8px}.sticky-sidebar{position:sticky;top:120px;align-self:start;display:flex;flex-direction:column;gap:24px;max-height:calc(100vh - 160px);overflow-y:auto;padding-right:6px}@media (max-width: 1280px){.dashboard-grid,.main-grid{grid-template-columns:1fr}.sticky-sidebar{position:static!important;max-height:none!important;overflow-y:visible!important;padding-right:0!important}}.report-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;align-items:center}@media (max-width: 580px){.form-grid{grid-template-columns:1fr}.sweep-btn-group{flex-direction:column}.report-grid{grid-template-columns:1fr;align-items:stretch}.report-grid>div:last-child{text-align:left!important;margin-top:8px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;font-family:var(--font-header);font-weight:600;font-size:16px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all var(--transition-normal);text-decoration:none}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:#fff;box-shadow:0 4px 15px #06b6d440}.btn-primary:hover{box-shadow:0 6px 20px #06b6d466;transform:translateY(-1px)}.btn-primary:active{transform:translateY(1px)}.btn-secondary{background:#ffffff0d;border-color:var(--border-glass);color:var(--text-primary)}.btn-secondary:hover{background:#ffffff1a;border-color:#fff3}.btn-accent{background:linear-gradient(135deg,var(--accent) 0%,#06b6d4 100%);color:#fff;box-shadow:0 4px 15px #10b98140}.btn-accent:hover{box-shadow:0 6px 20px #10b98166;transform:translateY(-1px)}.metric-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.metric-card{background:#ffffff05;border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:16px;display:flex;flex-direction:column;justify-content:space-between}.metric-card-label{font-size:16px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);margin-bottom:8px}.metric-card-value{font-family:var(--font-header);font-size:1.6rem;font-weight:700;color:var(--text-primary)}.metric-card-unit{font-size:16px;color:var(--text-muted);margin-top:4px}.tab-container{display:flex;flex-wrap:wrap;gap:8px;background:#11182799;border:1px solid var(--border-glass);padding:6px;border-radius:var(--radius-md);margin-bottom:24px}.tab-btn{flex:1 1 auto;min-width:140px;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;border:none;color:var(--text-secondary);padding:10px 16px;font-family:var(--font-header);font-weight:500;font-size:16px;border-radius:calc(var(--radius-md) - 4px);cursor:pointer;transition:all var(--transition-fast)}.tab-btn:hover{color:var(--text-primary);background:#ffffff08}.tab-btn.active{color:#fff;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);box-shadow:0 4px 12px #06b6d433}.banner{display:flex;gap:16px;border-radius:var(--radius-md);padding:16px;margin-bottom:20px;border:1px solid transparent;line-height:1.5}.banner-success{background:#10b98114;border-color:#10b98133;color:#a7f3d0}.banner-warning{background:#f59e0b14;border-color:#f59e0b33;color:#fde68a}.banner-error{background:#ef444414;border-color:#ef444433;color:#fecaca}.banner-info{background:#3b82f614;border-color:#3b82f633;color:#bfdbfe}.banner-icon{flex-shrink:0;margin-top:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s cubic-bezier(.16,1,.3,1) forwards}.fluid-indicator{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;font-size:16px;font-weight:600}.fluid-hot{background:#ef444426;color:#f87171}.fluid-cold{background:#3b82f626;color:#60a5fa}.tooltip{position:relative;display:inline-block}.tooltip .tooltiptext{visibility:hidden;width:200px;background-color:#1f2937;color:#fff;text-align:center;border-radius:6px;padding:8px 12px;position:absolute;z-index:10;bottom:125%;left:50%;transform:translate(-50%);opacity:0;transition:opacity .2s;box-shadow:0 4px 10px #00000080;border:1px solid rgba(255,255,255,.1);font-size:16px;pointer-events:none}.tooltip:hover .tooltiptext{visibility:visible;opacity:1}.results-table{width:100%;border-collapse:collapse;margin-top:16px;font-size:16px}.results-table th,.results-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-glass);white-space:nowrap}.results-table th{font-family:var(--font-header);font-weight:600;color:var(--text-secondary)}.results-table tr:hover td{background:#ffffff05}.results-table tr.active td{background:#06b6d414;border-color:#06b6d433}.custom-equation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.baffle-indicator{height:4px;background:linear-gradient(to right,var(--primary),var(--secondary));border-radius:2px;margin-top:6px}.layout-split{display:grid;grid-template-columns:1.1fr 1.9fr;align-items:start;gap:24px}.layout-split>*{min-width:0}@media (max-width: 1400px){.layout-split{grid-template-columns:1fr}}.print-only-image{display:none}*,body,div,p,span,label,td,th,h1,h2,h3,h4,h5,h6,strong,em,code,pre,input,select,textarea,button{user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important}canvas,.screen-only-canvas,.screen-only-canvas *,canvas *{user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;touch-action:none!important}@media print{@page{size:landscape;margin:1cm}body{background:#fff!important;color:#111827!important;font-size:11pt!important;line-height:1.5!important;background-image:none!important}header,footer,.tab-container,.no-print,.btn,.info-tooltip-trigger,.sticky-sidebar,.HUD,.screen-only-canvas,iframe{display:none!important}.print-only-image{display:block!important;width:100%!important;height:auto!important;max-height:16cm!important;object-fit:contain!important;page-break-inside:avoid!important;break-inside:avoid!important;margin:0 auto!important}canvas{max-width:100%!important;page-break-inside:avoid!important;break-inside:avoid!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}body>canvas{display:none!important}main{padding:0!important;margin:0!important;width:100%!important}.print-container{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;margin:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;width:100%!important}.print-section{display:flex!important;flex-direction:column!important;color:#1f2937!important;margin-bottom:30px!important;page-break-inside:avoid!important;break-inside:avoid!important}.print-text{color:#374151!important}.print-text-dark{color:#111827!important}.print-icon{display:none!important}.print-page-break{page-break-before:always!important;break-before:page!important}.print-glass-panel{background:#f9fafb!important;border:1px solid #e5e7eb!important;box-shadow:none!important;color:#1f2937!important;padding:15px!important;border-radius:8px!important;break-inside:avoid!important;page-break-inside:avoid!important}.print-glass-panel h4{color:#0891b2!important}.print-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:20px!important}.print-diag-box{background:#f3f4f6!important;border:1px solid #d1d5db!important;color:#374151!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:15px!important;padding:8px 12px!important;border-radius:4px!important}.print-diag-text{color:#111827!important}.print-badge-pass{background:#d1fae5!important;color:#065f46!important;border:1px solid #a7f3d0!important;padding:2px 6px!important;border-radius:4px!important}.print-badge-fail{background:#fee2e2!important;color:#991b1b!important;border:1px solid #fca5a5!important;padding:2px 6px!important;border-radius:4px!important}.print-badge-flat{background:#10b981!important;color:#000!important;border:1px solid #059669!important;padding:2px 6px!important;border-radius:4px!important}.print-compliance-box{background:#ecfdf5!important;border:2px solid #10b981!important;border-radius:8px!important;padding:15px!important;color:#065f46!important;break-inside:avoid!important;page-break-inside:avoid!important}.catalog-table-container{max-height:none!important;overflow-y:visible!important;overflow-x:visible!important;break-inside:auto!important;page-break-inside:auto!important}.main-grid{display:block!important;width:100%!important}.print-header-only{display:block!important}}.print-header-only,.print-only-image{display:none}.light-theme{--bg-primary: #f8fafc;--bg-secondary: #f1f5f9;--bg-glass: rgba(255, 255, 255, .75);--border-glass: rgba(15, 23, 42, .08);--border-glass-focus: rgba(6, 182, 212, .5);--primary: #0891b2;--primary-glow: rgba(8, 145, 178, .15);--secondary: #4f46e5;--secondary-glow: rgba(79, 70, 229, .15);--accent: #059669;--accent-glow: rgba(5, 150, 105, .15);--text-primary: #0f172a;--text-secondary: #334155;--text-muted: #64748b;background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.06) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(6,182,212,.06) 0px,transparent 50%),radial-gradient(at 50% 50%,rgba(241,245,249,.5) 0px,transparent 100%)!important}.light-theme header{background:#fffc!important}.light-theme .form-input{background:#fffffff2;color:#0f172a}.light-theme .form-input:hover{border-color:#0f172a33}.light-theme .form-input:focus{background:#fff}.light-theme .btn-secondary{background:#0f172a0d;color:#0f172a}.light-theme .btn-secondary:hover{background:#0f172a1a;border-color:#0f172a33}.light-theme .tab-container{background:#0f172a0d}.light-theme .tab-btn:hover{color:#0f172a;background:#0f172a08}.light-theme .tab-btn.active{color:#fff}.light-theme .results-table tr:hover td,.light-theme .metric-card{background:#0f172a05}.light-theme ::-webkit-scrollbar-thumb{background:#cbd5e1}.light-theme ::-webkit-scrollbar-thumb:hover{background:#94a3b8}.light-theme .tooltip .tooltiptext{background-color:#f1f5f9;color:#0f172a;border:1px solid rgba(15,23,42,.15);box-shadow:0 4px 10px #0000001a}.light-theme .banner-success{background:#10b9811a;color:#065f46}.light-theme .banner-warning{background:#f59e0b1a;color:#92400e}.light-theme .banner-error{background:#ef44441a;color:#991b1b}.light-theme .banner-info{background:#3b82f61a;color:#1e3a8a}.light-theme .fluid-hot{background:#ef44441a;color:#dc2626}.light-theme .fluid-cold{background:#3b82f61a;color:#2563eb}
