.thermalmass-card{gap:0;min-height:0;overflow-y:auto}.thermalmass-card .mb-6{margin-bottom:18px}.thermalmass-card .console-header{gap:14px}.thermalmass-rail .control-scroll{max-height:calc(100vh - 96px)}.thermalmass-view-shell{flex:1;min-height:0;overflow:visible}.thermal-plot-view{flex-direction:column;gap:16px;height:auto;min-height:100%;display:flex;overflow:visible}.thermal-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.thermal-metric-card{background:linear-gradient(145deg,#040c14e0,#08121cb8);border:1px solid #67e8f921;border-radius:14px;min-width:0;padding:14px;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.thermal-metric-card span{color:#8298a9;letter-spacing:.13em;text-transform:uppercase;overflow-wrap:anywhere;font-size:9px;line-height:1.5;display:block}.thermal-metric-card strong{color:#cffafe;overflow-wrap:anywhere;margin-top:8px;font-family:monospace;font-size:20px;line-height:1.2;display:block}.thermal-metric-card.amber strong{color:#fde68a}.thermal-metric-card.green strong{color:#86efac}.thermal-metric-card.violet strong{color:#c4b5fd}.thermal-chart-grid{flex:none;grid-template-rows:minmax(360px,auto) minmax(360px,auto);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;min-height:0;display:grid;overflow:visible}.thermal-chart-panel{border:1px solid var(--line);background:linear-gradient(145deg,#0a141fdb,#02080ebd);border-radius:18px;min-width:0;min-height:360px;overflow:hidden}.thermal-chart-panel:first-child{grid-row:span 2}.thermal-chart-title{padding:16px 18px 0}.thermal-chart-title h3{letter-spacing:.02em;margin:6px 0 0;font-size:15px;font-weight:600}.thermal-chart-body{height:calc(100% - 56px);min-height:220px}.component-collapse{margin-top:18px}.component-collapse button{color:#e4faff;cursor:pointer;background:#040c14b8;border:1px solid #67e8f921;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:12px;display:flex}.component-collapse button span,.component-collapse button b{letter-spacing:.12em;text-transform:uppercase;font-size:10px}.component-list{gap:10px;margin-top:10px;display:grid}.component-mini-card{background:#18181b;border:1px solid #ffffff14;border-radius:12px;grid-template-columns:8px minmax(0,1fr);gap:10px;padding:11px;display:grid}.component-mini-card>span{background:var(--component-color);box-shadow:0 0 16px var(--component-color);border-radius:999px}.component-mini-card b,.component-mini-card small,.component-mini-card p{min-width:0;display:block}.component-mini-card b{color:#f8fafc;font-size:12px}.component-mini-card small{color:#93c5fd;margin-top:3px;font-size:10px}.component-mini-card p{color:#a1a1aa;margin:5px 0 0;font-size:10px;line-height:1.35}.thermal-input{margin-bottom:12px;display:block}.thermal-input>span{color:#a1a1aa;letter-spacing:.05em;margin-bottom:7px;font-size:11px;display:block}.thermal-input div{background:#18181b;border:1px solid #3f3f46;border-radius:10px;align-items:center;display:flex;overflow:hidden}.thermal-input.invalid div{border-color:#fb7185b8}.thermal-input input{color:#f8fafc;background:0 0;border:0;outline:none;width:100%;min-width:0;padding:11px 10px;font-family:monospace;font-size:12px}.thermal-input small{color:#7894a3;flex:none;padding-right:10px;font-size:10px}.thermal-edit-stack{gap:12px;margin-top:6px;display:grid}.thermal-edit-card{background:#040c14a8;border:1px solid #67e8f91a;border-radius:12px;padding:12px}.thermal-visual-view{grid-template-columns:minmax(440px,1fr) minmax(260px,310px);gap:18px;height:auto;min-height:760px;display:grid;overflow:visible}.thermal-package-stage{border:1px solid var(--line);background:linear-gradient(145deg,#0a141fdb,#02080ebd);border-radius:18px;min-height:760px;position:relative;overflow:hidden;box-shadow:0 20px 55px #00000047}.thermal-cross-section{width:min(42%,300px);min-width:230px;position:absolute;top:86px;bottom:86px;left:50%;transform:translate(-50%)}.cross-section-datum{background:#a5f3fc40;width:1px;height:34px;position:absolute;left:50%}.cross-section-datum span{color:#7c98a8;letter-spacing:.14em;text-transform:uppercase;width:150px;font-size:8px;position:absolute;left:12px}.datum-top{top:-38px}.datum-top span{top:0}.datum-bottom{bottom:68px}.datum-bottom span{bottom:0}.package-section{border:1px solid #cffafe4d;position:absolute;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffffff14,0 0 24px #67e8f914}.package-filter{background:linear-gradient(#7dd3fc8f,#0e749052);border-color:#7dd3fc94;border-radius:5px 5px 2px 2px;width:46%;height:8%;top:10%}.package-shield{width:72%;height:58%;box-shadow:none;border:0;top:19%}.shield-wall,.shield-lip{background:linear-gradient(90deg,#78350fe0,#fbbf247a,#78350fe0);border:1px solid #fbbf2499;position:absolute;box-shadow:0 0 18px #fbbf241f}.shield-wall{width:9%;top:0;bottom:0}.shield-wall.left{left:0}.shield-wall.right{right:0}.shield-lip{height:9%;left:0;right:0}.shield-lip.top{top:0}.shield-lip.bottom{bottom:0}.package-detector{background:linear-gradient(#c4b5fd7a,#581c8757);border-color:#c4b5fd9e;width:38%;height:9%;top:32%}.package-roic{background:repeating-linear-gradient(90deg,#bfdbfe2e 0 3px,#0000 3px 10px),linear-gradient(#3b82f65c,#1e40af4d);border-color:#93c5fd8f;width:44%;height:13%;top:42%}.package-carrier{background:linear-gradient(#a7f3d061,#064e3b57);border-color:#a7f3d085;width:58%;height:15%;top:56%}.package-platform{background:linear-gradient(#7f1d1dd1,#fca5a557,#7f1d1dd1);border-color:#fca5a58f;width:86%;height:10%;top:73%}.platform-foot{background:#7f1d1d7a;border:1px solid #fca5a561;height:42%;position:absolute;bottom:-46%;left:8%;right:8%}.package-energy-column{width:8px;position:absolute;top:15%;bottom:16%;left:calc(50% - 4px)}.package-energy-column i{filter:drop-shadow(0 0 10px #67e8f980);background:linear-gradient(#67e8f9cc,#fbbf2400);border-radius:999px;width:8px;height:34%;animation:3s linear infinite package-energy-rise;position:absolute;bottom:0}.package-energy-column i:nth-child(2){animation-delay:-.8s}.package-energy-column i:nth-child(3){animation-delay:-1.6s}.package-energy-column i:nth-child(4){animation-delay:-2.4s}.thermal-callouts{pointer-events:none;position:absolute;inset:88px 24px 72px}.thermal-layer{border:1px solid color-mix(in srgb, var(--layer-color), transparent 55%);background:linear-gradient(90deg, color-mix(in srgb, var(--layer-color), transparent 78%), #080f1dc7), #080f1deb;width:min(38%,320px);min-height:76px;box-shadow:inset 0 1px 0 #ffffff0d, 0 0 20px color-mix(in srgb, var(--layer-color), transparent 88%);border-radius:8px;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:10px;padding:12px 14px;display:grid;position:absolute;overflow:hidden}.thermal-layer:before{content:"";background:color-mix(in srgb, var(--layer-color), transparent 48%);width:64px;height:1px;position:absolute;top:50%}.thermal-layer:after{content:"";background:var(--layer-color);width:7px;height:7px;box-shadow:0 0 12px var(--layer-color);border-radius:50%;position:absolute;top:calc(50% - 3px)}.callout-filter,.callout-detector,.callout-carrier{left:0}.callout-shield,.callout-roic,.callout-platform{right:0}.callout-filter{top:2%}.callout-shield{top:16%}.callout-detector{top:31%}.callout-roic{top:45%}.callout-carrier{top:60%}.callout-platform{top:75%}.callout-filter:before,.callout-detector:before,.callout-carrier:before{right:-64px}.callout-filter:after,.callout-detector:after,.callout-carrier:after{right:-68px}.callout-shield:before,.callout-roic:before,.callout-platform:before{left:-64px}.callout-shield:after,.callout-roic:after,.callout-platform:after{left:-68px}.layer-energy{width:var(--energy-fill);background:linear-gradient(90deg, color-mix(in srgb, var(--layer-color), transparent 65%), transparent);opacity:.75;animation:3.4s ease-in-out infinite thermal-layer-energy;animation-delay:var(--layer-delay);position:absolute;inset:0 auto 0 0}.layer-label,.layer-data{z-index:1;min-width:0;position:relative}.layer-label b,.layer-label span,.layer-data span,.layer-data strong{overflow-wrap:anywhere;display:block}.layer-label b{color:#f8fafc;letter-spacing:.04em;font-size:15px}.layer-label span{color:var(--layer-color);letter-spacing:.12em;text-transform:uppercase;margin-top:5px;font-size:11px}.layer-data{color:#a1a1aa;text-align:right;align-content:center;gap:4px;font-family:monospace;font-size:10px;display:grid}.layer-data strong{color:#cffafe;font-size:11px}.thermal-gradient-strip{color:#a1a1aa;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;font-family:monospace;font-size:12px;display:grid;position:absolute;bottom:20px;left:24px;right:24px}.thermal-gradient-strip i{background:linear-gradient(90deg,#ef4444,#fbbf24,#67e8f9);border-radius:999px;height:10px;box-shadow:0 0 16px #67e8f92e}.thermal-results-panel{flex-direction:column;gap:12px;min-height:0;max-height:760px;padding:1px;display:flex;overflow-y:auto}.thermal-pie-card{background:linear-gradient(145deg,#040c14e0,#08121cb8);border:1px solid #67e8f921;border-radius:14px;padding:12px}.thermal-pie-card p{color:#a1a1aa;align-items:center;gap:8px;margin:8px 0;font-size:11px;display:flex}.thermal-pie-card p span{border-radius:50%;flex:none;width:8px;height:8px}.thermal-pie-card p b{color:#cffafe;margin-left:auto;font-family:monospace}@keyframes thermal-layer-energy{0%,to{opacity:.35;transform:translate(-16%)}50%{opacity:.82;transform:translate(6%)}}@keyframes package-energy-rise{0%{opacity:0;transform:translateY(18%)}18%,72%{opacity:.8}to{opacity:0;transform:translateY(-190%)}}@media (max-width:1200px){.thermal-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.thermal-visual-view{grid-template-columns:1fr}.thermal-results-panel{display:none}.thermal-layer{width:min(42%,320px)}}@media (max-width:980px){.thermal-chart-grid{grid-template-rows:repeat(3,minmax(360px,auto));grid-template-columns:1fr;overflow:visible}.thermal-chart-panel:first-child{grid-row:auto}.thermal-plot-view,.thermalmass-view-shell,.thermalmass-card,.simulation-console,.package-workspace{height:auto;overflow:visible}.thermal-package-stage{min-height:760px}.thermal-cross-section{width:min(48%,280px)}.thermal-layer{width:min(44%,300px)}}@media (max-width:700px){.thermalmass-card .console-header{flex-direction:column}.thermal-metric-grid{grid-template-columns:1fr}.thermal-layer{grid-template-columns:1fr;width:100%;position:relative;top:auto;left:auto;right:auto}.thermal-callouts{gap:10px;margin:520px 18px 20px;display:grid;position:relative;inset:auto}.thermal-layer:before,.thermal-layer:after{display:none}.thermal-cross-section{width:270px;height:430px;top:90px;bottom:auto}.thermal-package-stage{min-height:1180px}.layer-data{text-align:left}}
