:root{color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;color:#f5f8ff;background:#07101f;--accent: #65d9ff;--accent-strong: #2bbcf1;--text-primary: #f5f8ff;--text-secondary: rgba(222, 232, 249, .68);--glass: rgba(19, 37, 62, .54);--glass-strong: rgba(25, 47, 76, .72);--glass-border: rgba(255, 255, 255, .13);--success: #7ce7bd;--error: #ff9ba8;--radius-card: 1.75rem;--radius-control: .875rem}*{box-sizing:border-box}html{min-width:20rem;min-height:100%;background:#07101f}body{min-width:20rem;min-height:100vh;min-height:100dvh;margin:0;font-size:1rem;line-height:1.5;background:radial-gradient(circle at 14% 8%,rgba(41,151,212,.28),transparent 34rem),radial-gradient(circle at 88% 82%,rgba(75,82,191,.24),transparent 38rem),linear-gradient(145deg,#07101f,#0d1b31 46%,#091426);background-attachment:fixed}body:before{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;content:"";pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:3rem 3rem;-webkit-mask-image:linear-gradient(to bottom,black,transparent 76%);mask-image:linear-gradient(to bottom,black,transparent 76%)}button,input,select{font:inherit}.app-shell{width:min(92rem,calc(100% - 2rem));margin:0 auto;padding:clamp(2rem,6vw,5.5rem) 0}.app-header{max-width:48rem;margin-bottom:clamp(1.75rem,4vw,3rem)}.factory-brand{display:inline-flex;gap:.7rem;align-items:center;margin-bottom:1rem}.factory-logo,.factory-logo-fallback{width:2.25rem;height:2.25rem;flex:0 0 auto;border:1px solid rgba(101,217,255,.3);border-radius:.75rem;box-shadow:0 .55rem 1.35rem #00081842,inset 0 1px #ffffff2e}.factory-logo{display:block;object-fit:contain;background:#ffffffeb}.factory-logo-fallback{display:grid;place-items:center;color:#061525;background:linear-gradient(145deg,#a3edff,var(--accent-strong));font-size:.92rem;font-weight:780}.app-kicker{margin:0;color:var(--accent);font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{max-width:44rem;margin-bottom:.75rem;font-size:clamp(2.25rem,5vw,4.5rem);font-weight:660;letter-spacing:-.055em;line-height:.98}.app-intro{margin-bottom:0;color:var(--text-secondary);font-size:clamp(1rem,2vw,1.18rem)}.calculator-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;align-items:stretch}.glass-card{position:relative;overflow:hidden;border:1px solid var(--glass-border);border-radius:var(--radius-card);background:linear-gradient(145deg,rgba(255,255,255,.08),transparent 35%),var(--glass);box-shadow:0 2rem 5rem #0005125c,inset 0 1px #ffffff1f;backdrop-filter:blur(1.5rem) saturate(135%);-webkit-backdrop-filter:blur(1.5rem) saturate(135%)}.glass-card:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";pointer-events:none;border-radius:inherit;box-shadow:inset 0 -1px #ffffff0a}.form-card,.result-card,.preview-card,.hangar-card{min-height:32rem;padding:clamp(1.5rem,3.5vw,2.5rem)}fieldset{min-width:0;margin:0;padding:0;border:0}legend,.result-heading{display:flex;align-items:center;gap:.75rem;width:100%;margin-bottom:2rem;padding:0;color:var(--text-primary);font-size:1.22rem;font-weight:640;letter-spacing:-.02em}.section-index{display:inline-grid;width:2rem;height:2rem;flex:0 0 auto;place-items:center;border:1px solid rgba(101,217,255,.28);border-radius:50%;color:var(--accent);background:#65d9ff14;font-size:.72rem;font-weight:750;letter-spacing:.04em}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}.field-group{display:grid;gap:.5rem}.field-group-wide{grid-column:1 / -1}.field-group label,.checkbox-field{color:#ebf1fcc7;font-size:.9rem;font-weight:540}.field-group input{width:100%;min-height:3.25rem;padding:.82rem 1rem;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-control);outline:none;color:var(--text-primary);background:#050e1d75;box-shadow:inset 0 1px #ffffff09;transition:border-color .24s ease,background .24s ease,box-shadow .24s ease,transform .24s ease}.field-group input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.field-group input[type=number]::-webkit-inner-spin-button,.field-group input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.field-group select{width:100%;min-height:3.25rem;padding:.82rem 2.75rem .82rem 1rem;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-control);outline:none;color:var(--text-primary);background:linear-gradient(45deg,transparent 50%,var(--accent) 50%) calc(100% - 1.15rem) 50% / .42rem .42rem no-repeat,linear-gradient(135deg,var(--accent) 50%,transparent 50%) calc(100% - .85rem) 50% / .42rem .42rem no-repeat,#050e1da8;box-shadow:inset 0 1px #ffffff09;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .24s ease,background-color .24s ease,box-shadow .24s ease}.field-group input::placeholder{color:#cfdcf15c}.field-hint{color:var(--text-secondary);font-size:.78rem;line-height:1.4}.field-group input:hover,.field-group select:hover{border-color:#ffffff3d;background-color:#0712249e}.field-group input:focus-visible,.field-group select:focus-visible{border-color:#65d9ffb8;background-color:#071224c2;box-shadow:0 0 0 4px #65d9ff1f}.load-reference{color:var(--accent);font-size:.82rem;font-weight:650}.load-warning{margin:0;padding:.85rem 1rem;border:1px solid rgba(101,217,255,.16);border-radius:var(--radius-control);color:var(--text-secondary);background:#65d9ff0e;font-size:.82rem;line-height:1.45}.catalog-selector{display:grid;gap:1rem;margin-top:1.15rem}.catalog-group{display:grid;gap:.85rem;padding:1rem;border:1px solid rgba(255,255,255,.09);border-radius:1.15rem;background:#050e1d3d}.catalog-group-heading{display:flex;gap:1rem;align-items:center;justify-content:space-between}.catalog-group-heading h3{margin:0;font-size:1rem}.catalog-add,.catalog-remove{min-height:2.65rem;border-color:#65d9ff3d;color:var(--accent);background:#65d9ff14;box-shadow:inset 0 1px #ffffff14;font-size:.84rem}.catalog-add{gap:.75rem;padding:.6rem .8rem .6rem 1rem}.catalog-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(5.5rem,.28fr) auto;gap:.75rem;align-items:end}.catalog-row .field-group>span{color:#ebf1fcc7;font-size:.82rem}.catalog-remove{width:3.25rem;min-height:3.25rem;padding:0;justify-content:center;color:var(--error);font-size:1.25rem}.form-actions{display:flex;gap:1rem;align-items:center;justify-content:space-between;margin-top:2rem}.checkbox-field{display:inline-flex;gap:.65rem;align-items:center;cursor:pointer}.checkbox-field input{width:1.15rem;height:1.15rem;margin:0;accent-color:var(--accent-strong)}button{display:inline-flex;min-height:3.25rem;gap:1.75rem;align-items:center;justify-content:space-between;padding:.82rem 1.15rem .82rem 1.35rem;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-control);color:#05111f;background:linear-gradient(135deg,#90e8ff,var(--accent-strong));box-shadow:0 .8rem 2rem #2bbcf133,inset 0 1px #ffffffad;font-weight:720;cursor:pointer;transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease,filter .24s ease}button:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 1rem 2.5rem #2bbcf147,inset 0 1px #ffffffbf}button:active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.48;filter:saturate(.55);box-shadow:inset 0 1px #ffffff57}button:disabled:hover{transform:none;filter:saturate(.55)}button:focus-visible,.checkbox-field input:focus-visible{outline:3px solid rgba(101,217,255,.55);outline-offset:3px}.result-card,.preview-card,.hangar-card{display:flex;flex-direction:column;transition:border-color .26s ease,background .26s ease}.lead-card{display:flex;grid-column:1 / -1;min-height:25rem;flex-direction:column;padding:clamp(1.5rem,3.5vw,2.5rem);animation:preview-in .42s both cubic-bezier(.2,.8,.2,1)}.price-card{display:flex;grid-column:1 / -1;min-height:25rem;flex-direction:column;padding:clamp(1.5rem,3.5vw,2.5rem);background:radial-gradient(circle at 84% 16%,rgba(101,217,255,.13),transparent 24rem),linear-gradient(145deg,rgba(124,231,189,.08),transparent 38%),var(--glass);animation:preview-in .42s both cubic-bezier(.2,.8,.2,1)}.price-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0}.price-line{display:flex;min-width:0;min-height:9rem;flex-direction:column;justify-content:space-between;padding:1.15rem;border:1px solid rgba(255,255,255,.09);border-radius:1.2rem;background:#050e1d4d;box-shadow:inset 0 1px #ffffff09;animation:metric-in .32s both cubic-bezier(.2,.8,.2,1)}.price-line:nth-child(2){animation-delay:45ms}.price-line:nth-child(3){animation-delay:90ms}.price-line:nth-child(4){animation-delay:135ms}.price-line:nth-child(5){animation-delay:.18s}.price-line-featured{border-color:#7ce7bd33;background:linear-gradient(145deg,#7ce7bd1a,#050e1d4d)}.price-line dt{display:grid;gap:.25rem}.price-line dt strong{font-size:.95rem}.price-line dt span{color:var(--text-secondary);font-size:.74rem}.price-line dd{margin:1.5rem 0 0;color:var(--text-primary);font-size:clamp(1rem,2vw,1.3rem);font-weight:650;letter-spacing:-.025em;line-height:1.25}.price-line-featured dd{color:var(--success);font-size:clamp(1.65rem,3vw,2.3rem)}.price-note{max-width:48rem;margin:auto 0 0;padding-top:1.75rem;color:var(--text-secondary);font-size:.84rem}.lead-form-fields{display:flex;flex:1;flex-direction:column}.lead-intro{max-width:42rem;margin-bottom:1.5rem;color:var(--text-secondary)}.lead-channel-field{max-width:calc(50% - .575rem)}.lead-questionnaire{margin-top:1.35rem;border:1px solid rgba(101,217,255,.16);border-radius:1.2rem;background:#050e1d47;overflow:hidden}.lead-questionnaire>summary,.questionnaire-section>summary{cursor:pointer;color:var(--text-primary);font-weight:650;list-style-position:inside}.lead-questionnaire>summary{padding:1rem 1.15rem}.lead-questionnaire[open]>summary{border-bottom:1px solid rgba(255,255,255,.08);background:#65d9ff0b}.lead-questionnaire-content{padding:1rem 1.15rem 1.2rem}.lead-questionnaire-content>p{max-width:48rem;margin:0 0 1rem;color:var(--text-secondary);font-size:.86rem;line-height:1.5}.questionnaire-fields{display:grid;gap:.65rem}.questionnaire-section{border-left:2px solid rgba(101,217,255,.22);border-radius:0 .75rem .75rem 0;background:#ffffff06}.questionnaire-section>summary{padding:.8rem .9rem;font-size:.92rem}.questionnaire-section[open]>summary{color:var(--accent)}.questionnaire-section-content{display:grid;gap:0;padding:0 .9rem .8rem}.questionnaire-text-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;padding:.35rem 0 .75rem}.questionnaire-text-field,.questionnaire-number-field,.questionnaire-comments,.questionnaire-note{display:grid;gap:.4rem;color:#ebf1fcc7;font-size:.84rem;font-weight:540}.questionnaire-number-field{grid-template-columns:minmax(0,1fr) minmax(7rem,12rem);align-items:center;padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.065)}.questionnaire-text-field input,.questionnaire-number-field input,.questionnaire-note input,.questionnaire-comments textarea{width:100%;min-height:2.65rem;padding:.65rem .8rem;border:1px solid rgba(255,255,255,.12);border-radius:.75rem;outline:none;color:var(--text-primary);background:#050e1d7a;font:inherit;transition:border-color .18s ease,box-shadow .18s ease}.questionnaire-comments textarea{resize:vertical}.questionnaire-text-field input:focus-visible,.questionnaire-number-field input:focus-visible,.questionnaire-note input:focus-visible,.questionnaire-comments textarea:focus-visible{border-color:#65d9ffb8;box-shadow:0 0 0 3px #65d9ff1c}.questionnaire-question{display:grid;gap:.55rem;margin:0;padding:.75rem 0;border:0;border-bottom:1px solid rgba(255,255,255,.065)}.questionnaire-question legend{padding:0;color:#ebf1fcd1;font-size:.86rem;font-weight:560}.questionnaire-answer-row,.questionnaire-options{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}.questionnaire-answer-row{justify-content:space-between}.questionnaire-options label{display:inline-flex;gap:.35rem;align-items:center;padding:.38rem .62rem;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:var(--text-secondary);background:#ffffff06;cursor:pointer;font-size:.78rem}.questionnaire-options label:has(input:checked){border-color:#65d9ff73;color:var(--text-primary);background:#65d9ff1c}.questionnaire-options input{accent-color:var(--accent)}button.questionnaire-clear{min-height:auto;padding:.3rem .15rem;border:0;border-radius:0;color:#cfdcf194;background:transparent;box-shadow:none;font-size:.74rem;font-weight:560}button.questionnaire-clear:hover{color:var(--accent);background:transparent;box-shadow:none;transform:none}.questionnaire-note{max-width:32rem}.questionnaire-comments{margin-top:.4rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lead-actions{display:flex;gap:1.5rem;align-items:center;justify-content:space-between;margin-top:auto;padding-top:2rem}.lead-actions>p{max-width:30rem;margin:0;color:var(--text-secondary);font-size:.86rem}.lead-error{margin:1rem 0 0;padding:.85rem 1rem;border:1px solid rgba(255,155,168,.24);border-radius:var(--radius-control);color:#ffd2d9eb;background:#ff9ba814}.lead-success{display:flex;flex:1;gap:1.2rem;align-items:center;justify-content:center;padding:2rem;text-align:left}.lead-success-mark{display:grid;width:4rem;height:4rem;flex:0 0 auto;place-items:center;border:1px solid rgba(124,231,189,.34);border-radius:50%;color:#071d19;background:linear-gradient(145deg,#b1f5d7,var(--success));box-shadow:0 1rem 2.5rem #37c49338;font-size:1.45rem;font-weight:800}.lead-success strong{display:block;margin-bottom:.35rem;font-size:clamp(1.35rem,3vw,2rem);letter-spacing:-.035em}.lead-success p{margin:0;color:var(--text-secondary)}.result-heading{flex:0 0 auto}.result-heading h2{margin:0;font:inherit}.status-indicator{width:.55rem;height:.55rem;margin-left:auto;border-radius:50%;background:#d6e1f352;box-shadow:0 0 0 .35rem #d6e1f30d;transition:background .26s ease,box-shadow .26s ease}.glass-card[data-state=success]{border-color:#7ce7bd3d;background:linear-gradient(145deg,rgba(124,231,189,.09),transparent 38%),var(--glass)}.glass-card[data-state=success] .status-indicator{background:var(--success);box-shadow:0 0 0 .35rem #7ce7bd17,0 0 1.25rem var(--success)}.glass-card[data-state=error]{border-color:#ff9ba847;background:linear-gradient(145deg,rgba(255,155,168,.1),transparent 38%),var(--glass)}.glass-card[data-state=error] .status-indicator{background:var(--error);box-shadow:0 0 0 .35rem #ff9ba817,0 0 1.25rem var(--error)}.empty-state,.error-state{display:grid;flex:1;place-content:center;justify-items:center;text-align:center}.empty-state p{max-width:16rem;margin:1rem 0 0;color:var(--text-secondary)}.empty-mark,.error-mark{display:grid;width:3.5rem;height:3.5rem;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:50%;color:#e2ecfc75;background:#ffffff09;font-size:1.35rem}.error-state{grid-template-columns:auto minmax(0,22rem);gap:1rem;align-content:center;justify-items:start;text-align:left}.error-mark{border-color:#ff9ba847;color:var(--error);background:#ff9ba814;font-weight:750}.error-state strong{display:block;margin-bottom:.35rem;color:var(--error);font-size:1.08rem}.error-state p{margin-bottom:0;color:#f7dbe1c2}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0}.metric{min-width:0;padding:1rem;border:1px solid rgba(255,255,255,.08);border-radius:1.15rem;background:#050e1d42;animation:metric-in .32s both cubic-bezier(.2,.8,.2,1)}.metric:nth-child(2){animation-delay:40ms}.metric:nth-child(3){animation-delay:80ms}.metric:nth-child(4){animation-delay:.12s}.metric:nth-child(5){animation-delay:.16s}.metric dt{margin-bottom:.4rem;color:var(--text-secondary);font-size:.78rem;font-weight:560;line-height:1.3}.metric dd{margin:0;color:var(--text-primary);font-size:clamp(1.2rem,2vw,1.55rem);font-weight:680;letter-spacing:-.035em;line-height:1.15}.metric dd span{color:var(--text-secondary);font-size:.82rem;font-weight:520;letter-spacing:0}.metric-featured{display:flex;grid-column:1 / -1;align-items:center;justify-content:space-between;min-height:6.4rem;padding:1.2rem 1.25rem;border-color:#7ce7bd2e;background:linear-gradient(135deg,#7ce7bd1a,#050e1d47)}.metric-featured dt{max-width:8rem;margin:0}.metric-featured dd{color:var(--success);font-size:clamp(1.7rem,3vw,2.35rem)}.arch-preview-frame{display:grid;flex:1;min-height:15rem;place-items:center;padding:1rem .25rem 0;border:1px solid rgba(255,255,255,.07);border-radius:1.25rem;background:radial-gradient(circle at 50% 40%,rgba(101,217,255,.1),transparent 62%),#050e1d38;animation:preview-in .42s both cubic-bezier(.2,.8,.2,1)}.arch-preview{display:block;width:100%;height:auto;overflow:visible}.arch-preview-fill{fill:#65d9ff12}.arch-preview-curve,.arch-preview-ground,.arch-preview-dimension,.arch-preview-extension,.arch-preview-tick{vector-effect:non-scaling-stroke}.arch-preview-curve{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-width:2.5;filter:drop-shadow(0 0 .5rem rgba(101,217,255,.42))}.arch-preview-ground{stroke:#f5f8ffb8;stroke-linecap:round;stroke-width:1.5}.arch-preview-dimension,.arch-preview-extension,.arch-preview-tick{stroke:#dee8f961;stroke-width:1}.arch-preview-dimension{stroke-dasharray:4 4}.arch-preview-label{fill:var(--text-secondary);font-family:inherit;font-weight:560;letter-spacing:.01em}.arch-preview-rise-label{dominant-baseline:middle}.hangar-preview-frame{position:relative;flex:1;min-height:24rem;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:1.25rem;background:radial-gradient(circle at 38% 28%,rgba(101,217,255,.16),transparent 46%),radial-gradient(circle at 82% 76%,rgba(79,89,197,.13),transparent 52%),#050e1d47;box-shadow:inset 0 1px #ffffff0e,inset 0 -3rem 6rem #00051233;animation:preview-in .42s both cubic-bezier(.2,.8,.2,1)}.hangar-preview-frame canvas{display:block;width:100%!important;height:100%!important;touch-action:none;cursor:grab}.hangar-preview-frame canvas:active{cursor:grabbing}.hangar-preview-hints{position:absolute;right:.8rem;bottom:.8rem;left:.8rem;display:grid;gap:.4rem;justify-items:center;pointer-events:none}.hangar-preview-hint{display:flex;width:fit-content;max-width:calc(100% - 1.6rem);gap:.5rem;align-items:center;margin:0 auto;padding:.52rem .78rem;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:#dee8f9a8;background:#050e1d94;box-shadow:0 .65rem 1.6rem #00051240;backdrop-filter:blur(.8rem) saturate(130%);-webkit-backdrop-filter:blur(.8rem) saturate(130%);font-size:.72rem;line-height:1.2}.hangar-preview-hint-icon{color:var(--accent);font-size:.95rem}.hangar-preview-scale-hint{max-width:min(100%,34rem);margin:0;color:#dee8f994;font-size:.65rem;line-height:1.35;text-align:center}@keyframes preview-in{0%{opacity:0;transform:translateY(.4rem) scale(.985)}}@keyframes metric-in{0%{opacity:0;transform:translateY(.4rem)}}@media (max-width: 74rem){.form-card,.result-card,.preview-card,.hangar-card,.price-card,.lead-card{min-height:auto}}@media (max-width: 54rem){.calculator-layout{grid-template-columns:1fr}.form-card,.result-card,.preview-card,.hangar-card,.price-card,.lead-card{min-height:auto}.result-card{min-height:26rem}.preview-card{min-height:24rem}.hangar-card{min-height:28rem}}@media (max-width: 36rem){.app-shell{width:min(100% - 1rem,34rem);padding:1.5rem 0 2.5rem}.form-card,.result-card,.preview-card,.hangar-card,.price-card,.lead-card{padding:1.25rem;border-radius:1.35rem}.form-grid,.result-grid,.price-breakdown{grid-template-columns:1fr}.field-group-wide,.metric-featured{grid-column:auto}.catalog-row{grid-template-columns:1fr}.catalog-remove{width:100%}.form-actions{align-items:stretch;flex-direction:column}.lead-channel-field{max-width:none}.questionnaire-text-grid,.questionnaire-number-field{grid-template-columns:1fr}button.questionnaire-clear{width:auto}.lead-actions{align-items:stretch;flex-direction:column}.lead-success{align-items:center;flex-direction:column;text-align:center}button{width:100%}.error-state{grid-template-columns:1fr;justify-items:center;text-align:center}.hangar-preview-frame{min-height:21rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
