/* TrafoOmega presentation layer. All calculations remain in the published JS bundle. */
body.visual-trafo{--tv-night:#0a2332;--tv-ink:#163745;--tv-cyan:#126e75;--tv-gold:#d9b765;--tv-paper:#f1f3ef;--tv-line:#cedbd9;background:var(--tv-paper)!important;color:var(--tv-ink)!important}
body.visual-trafo *,body.visual-trafo *::before,body.visual-trafo *::after{box-sizing:border-box}
body.visual-trafo .sespin-app-nav{background:#061b28!important;border-bottom:1px solid #ffffff2a!important;color:#fff!important}
body.visual-trafo .sespin-app-nav__inner{max-width:1470px!important;min-height:57px!important}
body.visual-trafo .sespin-app-nav a{color:#e6eff0!important}
body.visual-trafo .sespin-app-nav__current{background:var(--tv-gold)!important;color:#082536!important;border-radius:2px!important;font-weight:850!important}
body.visual-trafo .app-layout{background:var(--tv-paper)!important;min-height:100vh!important}
body.visual-trafo .app-header{background:var(--tv-night)!important;color:#fff!important;border-bottom:1px solid #ffffff2c!important;padding:18px max(4vw,calc((100vw - 1420px)/2))!important;min-height:94px!important}
body.visual-trafo .brand-button{color:#fff!important}
body.visual-trafo .brand-logo-frame{background:transparent!important;border-radius:0!important;padding:0!important;box-shadow:none!important}
body.visual-trafo .brand-logo{max-height:49px!important}
body.visual-trafo .app-identity strong{color:#fff!important;font-size:1.2rem!important;letter-spacing:-.035em!important}
body.visual-trafo .app-identity small{color:#c1d5dc!important}
body.visual-trafo .local-badge{background:#153c4b!important;color:#d9b765!important;border:1px solid #d9b76573!important;border-radius:2px!important;text-transform:uppercase!important;letter-spacing:.11em!important;font-weight:800!important}
body.visual-trafo .app-main{width:min(1420px,calc(100% - 7vw))!important;max-width:none!important;margin:0 auto!important;padding:clamp(50px,5vw,90px) 0 110px!important}
body.visual-trafo :is(.app-main h1,.app-main h2,.app-main h3){font-family:Inter,Manrope,Arial,sans-serif!important;letter-spacing:-.055em!important;text-wrap:balance}
body.visual-trafo .app-main h1{font-size:clamp(2.8rem,5.25vw,6.2rem)!important;line-height:1.02!important;font-weight:800!important}
body.visual-trafo .app-main h2{font-size:clamp(1.7rem,2.4vw,3rem)!important;line-height:1.1!important;font-weight:780!important}
body.visual-trafo .app-main p{line-height:1.65}
body.visual-trafo .eyebrow{color:#b58d36!important;letter-spacing:.18em!important;text-transform:uppercase!important;font-size:.7rem!important;font-weight:900!important}
body.visual-trafo .button{border-radius:2px!important;font-weight:800!important;transition:transform .2s ease,box-shadow .2s ease!important}
body.visual-trafo .button:hover{transform:translateY(-2px)!important}
body.visual-trafo .button.primary{background:var(--tv-gold)!important;border-color:var(--tv-gold)!important;color:#092839!important;box-shadow:0 9px 24px #071e3033!important}
body.visual-trafo .button.secondary{background:#fff!important;border-color:#90aaa9!important;color:var(--tv-ink)!important}
body.visual-trafo :is(a,button,input,select,summary):focus-visible{outline:3px solid var(--tv-gold)!important;outline-offset:3px!important}

/* Home: industrial editorial opening plus a clear local history panel. */
body.visual-trafo .hero-grid{display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr)!important;gap:clamp(22px,3vw,48px)!important;align-items:stretch!important}
body.visual-trafo .hero-card{position:relative!important;isolation:isolate;min-height:clamp(660px,67vh,830px)!important;padding:clamp(48px,6vw,98px)!important;background:radial-gradient(circle at 87% 18%,#226674a6,transparent 35%),linear-gradient(130deg,#082234 7%,#0d3445 65%,#0c2636)!important;color:#fff!important;border:0!important;border-radius:3px!important;box-shadow:0 28px 64px #0b2a3b26!important;overflow:hidden!important}
body.visual-trafo .hero-card::before{content:"Ω";position:absolute;right:-.09em;bottom:-.29em;font-size:clamp(300px,37vw,670px);font-weight:900;line-height:1;color:#ffffff0a;z-index:-1;pointer-events:none}
body.visual-trafo .hero-card::after{content:"";position:absolute;left:0;top:0;width:130px;height:8px;background:var(--tv-gold)}
body.visual-trafo .hero-card h1{color:#fff!important;max-width:13ch!important;margin:32px 0 27px!important}
@media(min-width:1001px){body.visual-trafo .hero-card{padding:clamp(48px,4.7vw,72px)!important}body.visual-trafo .hero-card h1{font-size:clamp(3.55rem,4.2vw,5.2rem)!important;max-width:15ch!important;margin:20px 0 18px!important}body.visual-trafo .hero-card .button.large{margin-top:20px!important}}
body.visual-trafo .hero-card .hero-copy{color:#d4e6e9!important;font-size:clamp(1.05rem,1.35vw,1.32rem)!important;max-width:55ch!important}
body.visual-trafo .hero-card .brand-lockup{background:#fff!important;border-radius:2px!important;padding:9px 13px!important;display:inline-flex!important;max-width:190px!important}
body.visual-trafo .hero-card .brand-lockup img{max-height:51px!important;width:auto!important}
body.visual-trafo .hero-card .button.large{margin-top:30px!important;padding:17px 24px!important;font-size:1rem!important}
body.visual-trafo .hero-trust-row{margin-top:36px!important;border-top:1px solid #ffffff55!important;padding-top:20px!important}
body.visual-trafo .hero-trust-row span{color:#f2e4c7!important;border-color:#ffffff55!important;background:#ffffff12!important;border-radius:2px!important}
body.visual-trafo .privacy-note,body.visual-trafo .engineering-disclaimer{color:#bfd3d8!important;font-size:.85rem!important}
body.visual-trafo .home-panel{background:#fff!important;border:1px solid var(--tv-line)!important;border-top:8px solid var(--tv-gold)!important;border-radius:3px!important;padding:clamp(32px,4vw,65px)!important;box-shadow:0 24px 60px #0d34411b!important}
body.visual-trafo .home-panel h2{font-size:clamp(2rem,2.8vw,3.2rem)!important}
body.visual-trafo .history-count{background:var(--tv-night)!important;color:#fff!important;border-radius:2px!important}
body.visual-trafo .search-field input{border:1px solid #bacdcb!important;border-radius:2px!important;min-height:52px!important}
body.visual-trafo .empty-state{border:1px dashed #acc4c1!important;background:#f4f7f5!important;border-radius:2px!important;padding:45px 25px!important}
body.visual-trafo .install-guide{margin-top:52px!important;background:#e4ebe7!important;border:1px solid var(--tv-line)!important;border-radius:2px!important}
body.visual-trafo .install-guide summary{padding:26px 32px!important}
body.visual-trafo .install-guide-grid article{background:#fff!important;border:1px solid var(--tv-line)!important;border-radius:2px!important}

/* Guided capture: progress, form and diagrams share one visual language. */
body.visual-trafo .progress{width:min(1420px,calc(100% - 7vw))!important;max-width:none!important;margin:0 auto!important;padding:27px 0!important;background:transparent!important;gap:9px!important}
body.visual-trafo .progress-step{border-radius:2px!important;background:#e2e9e5!important;color:#3a5961!important;border:1px solid #c6d6d0!important;min-height:61px!important}
body.visual-trafo .progress-step.current{background:var(--tv-night)!important;color:#fff!important;border-color:var(--tv-night)!important;box-shadow:inset 0 4px 0 var(--tv-gold)!important}
body.visual-trafo .progress-step.completed{background:#d2e7df!important;color:#164d49!important;border-color:#a3ccbd!important}
body.visual-trafo .progress-step b{background:#ffffff28!important;color:inherit!important}
body.visual-trafo .page-card{background:#fff!important;border:1px solid var(--tv-line)!important;border-top:7px solid var(--tv-gold)!important;border-radius:2px!important;padding:clamp(30px,4.2vw,68px)!important;box-shadow:0 20px 55px #0b324015!important}
body.visual-trafo .section-heading{border-bottom:1px solid #bed0cb!important;margin-bottom:40px!important;padding-bottom:30px!important}
body.visual-trafo .section-heading h1{max-width:16ch!important;margin:10px 0 14px!important}
body.visual-trafo .section-heading p:not(.eyebrow){font-size:1.12rem!important;color:#4e6d72!important;max-width:62ch!important}
body.visual-trafo .step-chip{background:#e8efec!important;color:#22505a!important;border-radius:2px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:850!important}
body.visual-trafo .form-grid{gap:24px!important}
body.visual-trafo .field{font-weight:750!important;color:var(--tv-ink)!important}
body.visual-trafo .field input,body.visual-trafo .field select,body.visual-trafo .field textarea,body.visual-trafo .search-field input{background:#f8faf8!important;border:1px solid #b9cfcb!important;border-radius:2px!important;color:#12323b!important;min-height:57px!important;padding:13px 16px!important;font-size:1rem!important}
body.visual-trafo .field input:focus,body.visual-trafo .field select:focus,body.visual-trafo .field textarea:focus{border-color:#167981!important;box-shadow:0 0 0 3px #1679812a!important}
body.visual-trafo .details-card{border:1px solid var(--tv-line)!important;border-radius:2px!important;background:#f6f8f5!important;margin-top:35px!important}
body.visual-trafo .details-card summary{padding:20px 25px!important;color:var(--tv-ink)!important;font-weight:800!important}
body.visual-trafo .action-bar{border-top:1px solid var(--tv-line)!important;padding-top:28px!important;margin-top:38px!important}
body.visual-trafo .representation-card{border:1px solid #bfd1cd!important;border-radius:2px!important;background:#f7f9f7!important;padding:19px!important;scroll-margin-top:125px!important}
body.visual-trafo .representation-card:has(input:checked){background:#e6f0ec!important;border:2px solid #167179!important;box-shadow:inset 5px 0 0 var(--tv-gold)!important}
body.visual-trafo .diagram-card,body.visual-trafo .diagram-panel{background:#eaf0ed!important;border:1px solid var(--tv-line)!important;border-radius:2px!important}
body.visual-trafo .app-main aside{border-radius:2px!important}
body.visual-trafo .app-main fieldset{border-radius:2px!important}

/* Results: keep numbers, chart SVGs and table semantics unchanged. */
body.visual-trafo .results-hero{background:var(--tv-night)!important;color:#fff!important;border-radius:2px!important;border-top:7px solid var(--tv-gold)!important;padding:clamp(37px,4vw,65px)!important}
body.visual-trafo .results-hero :is(h1,p,strong,span){color:inherit}
body.visual-trafo .results-hero h1{color:#fff!important}
body.visual-trafo .result-metrics>*{background:#fff!important;border:1px solid var(--tv-line)!important;border-top:4px solid var(--tv-gold)!important;border-radius:2px!important;box-shadow:0 10px 30px #0d39421a!important}
body.visual-trafo .results-table-card{overflow-x:auto!important}
body.visual-trafo .results-row{border-bottom:1px solid #d1dfdb!important}
body.visual-trafo .results-row:nth-child(even){background:#f0f5f1!important}
body.visual-trafo .results-row.largest{background:#fdf5e2!important}
body.visual-trafo .chart-grid>*{background:#fff!important;border:1px solid var(--tv-line)!important;border-radius:2px!important;padding:20px!important}
body.visual-trafo .trace-grid>*{background:#fff!important;border:1px solid var(--tv-line)!important;border-radius:2px!important}
body.visual-trafo .site-footer{background:#071e2c!important;color:#dce9e8!important;border-top:0!important}
body.visual-trafo .site-footer a{color:#d9b765!important}

@media(max-width:1000px){body.visual-trafo .hero-grid{grid-template-columns:1fr!important}body.visual-trafo .hero-card{min-height:0!important}body.visual-trafo .progress{overflow-x:auto!important;flex-wrap:nowrap!important}body.visual-trafo .progress-step{flex:0 0 auto!important}}
@media(max-width:700px){body.visual-trafo .sespin-app-nav__inner{display:flex!important;flex-wrap:nowrap!important;gap:17px!important;overflow-x:auto!important;white-space:nowrap!important;min-height:49px!important;padding-inline:16px!important}body.visual-trafo .sespin-app-nav__inner>*{flex:0 0 auto!important}body.visual-trafo .app-header{padding:13px 20px!important;min-height:76px!important}body.visual-trafo .brand-logo-frame{display:none!important}body.visual-trafo .local-badge{font-size:.58rem!important;padding:5px 7px!important}body.visual-trafo .app-main,body.visual-trafo .progress{width:calc(100% - 30px)!important}body.visual-trafo .app-main{padding:28px 0 75px!important}body.visual-trafo .app-main h1{font-size:clamp(2.55rem,10vw,4rem)!important}body.visual-trafo .hero-card{padding:36px 27px 42px!important}body.visual-trafo .hero-card h1{font-size:clamp(2.8rem,11vw,4.2rem)!important}body.visual-trafo .home-panel{padding:30px 23px!important}body.visual-trafo .page-card{padding:27px 22px!important}body.visual-trafo .progress{padding:16px 0!important}body.visual-trafo .progress-step{min-height:50px!important;padding:8px 10px!important}body.visual-trafo .results-hero{padding:29px 22px!important}body.visual-trafo .action-bar{gap:12px!important}}
@media(max-width:700px){body.visual-trafo .temperature-page{grid-template-columns:minmax(0,1fr)!important}body.visual-trafo .temperature-page>*{min-width:0!important}body.visual-trafo .temperature-page .action-bar{flex-wrap:wrap!important}body.visual-trafo .temperature-page .action-bar .button{flex:1 1 140px!important;min-width:0!important}}
@media(prefers-reduced-motion:reduce){body.visual-trafo *,body.visual-trafo *::before,body.visual-trafo *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
