
:root{--bg:#081827;--panel:#0d2235;--panel2:#102a40;--line:#24506f;--text:#dceaf2;--muted:#83abc0;--cyan:#65d4ff;--gold:#ffd166;--green:#54e0ae;--red:#ff8f8f;--violet:#bda5ff;--top-empirical:#35c9ff;--top-df:#ffd166;--top-mapped:#d47ab5;--top-mismatch:#ff7a59}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Georgia,'Times New Roman',serif}main{max-width:1280px;margin:auto;padding:20px}.head{display:flex;justify-content:space-between;gap:18px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:14px}.eyebrow{font:12px 'Courier New';letter-spacing:.16em;color:var(--cyan);text-transform:uppercase}.keepnu{text-transform:none}.homebtn{display:inline-block;margin:9px 0 2px;padding:8px 13px;border:1px solid #4f7d98;border-radius:10px;background:var(--panel2);color:var(--text);font:700 13px/1.2 Arial,Helvetica,sans-serif;text-decoration:none}.homebtn:hover{background:var(--panel2);color:var(--text)}h1{font-size:28px;font-weight:400;margin:5px 0}.tm{display:inline-block;font-size:.34em;line-height:1;vertical-align:super;transform:translateY(-0.08em);margin-left:.08em;border:1px solid currentColor;border-radius:999px;padding:.12em .22em;font-weight:700;letter-spacing:0}.sub{color:var(--muted);line-height:1.45}.unit button{background:transparent;color:var(--muted);border:1px solid var(--line);padding:8px 12px;cursor:pointer}.unit button.on{color:var(--bg);background:var(--cyan);border-color:var(--cyan)}.control{margin:18px 0;background:var(--panel);border:1px solid var(--line);padding:15px}.predictmenu{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:-8px 0 18px;padding:0}.predictchoices{display:flex;gap:10px;flex-wrap:wrap}.predictchoices button{background:#102a40;color:var(--muted);border:1px solid #355f78;padding:8px 14px;font:600 14px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.01em;cursor:default;border-radius:2px}.predictchoices button.on{color:var(--bg);background:var(--cyan);border-color:var(--cyan)}.predictmenu .unit{display:flex;margin-left:auto}.zrow{display:grid;grid-template-columns:110px 1fr 210px;gap:15px;align-items:center}.zbig{font-size:29px;color:var(--cyan);white-space:nowrap}input[type=range]{width:100%;accent-color:var(--cyan)}.elem{text-align:right}.elem strong{font-size:21px;font-weight:400;white-space:nowrap}.elem span{display:block;color:var(--muted);font-size:11px;line-height:1.2;white-space:nowrap}.ticks{display:flex;justify-content:space-between;color:var(--muted);font:11px 'Courier New';margin-left:125px;margin-top:6px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:150px;gap:10px;width:100%}.card{background:var(--panel);border:1px solid var(--line);padding:13px;min-width:0;width:100%;height:150px;overflow:hidden}.card .k{font:11px 'Courier New';letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.card .v{font:22px 'Courier New';margin:8px 0 5px;overflow-wrap:anywhere}.card .s{font-size:12px;color:var(--muted)}.spectral .v{color:var(--cyan)}.df .v{color:var(--gold)}.corr .v{color:var(--red)}.mapped .v{color:var(--green)}.zoomviz{margin-top:10px;background:var(--panel);border:1px solid var(--line);padding:12px}.zoomviz svg{height:500px}.zoomread{font:12px 'Courier New';color:var(--muted)}.viz{margin-top:10px;background:var(--panel);border:1px solid var(--line);padding:12px}.topplots{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.topplots svg{height:auto;aspect-ratio:540/340}.spectralhead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;align-items:center}.spectralhead .legend{grid-column:1/-1;justify-content:flex-start}.spectralhead .figrange{justify-self:end}.minipanel{min-width:0}.minipanel+.minipanel{border-left:1px solid var(--line);padding-left:12px}.minititle{font:11px 'Courier New';letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:5px 0 0}.mismatchkey{color:var(--red)}.viztop{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.legend{display:flex;gap:15px;flex-wrap:wrap;font:12px 'Courier New';color:var(--muted)}.toplegend{display:flex;gap:18px;flex-wrap:wrap;align-items:center;font:12px 'Courier New';color:var(--text);margin-top:8px}.toplegend span{display:inline-flex;align-items:center;gap:7px}.toplegend i{width:12px;height:12px;border-radius:50%;display:inline-block;box-shadow:0 0 0 1px rgba(255,255,255,.45)}.dot:before{content:'●';margin-right:5px}.l1:before{color:var(--cyan)}.l2:before{color:var(--gold)}.l3:before{color:var(--green)}.df .v{font-style:normal}.mapped{border-color:#2b8f72}.df{border-color:#8f7630}.unc{font-size:12px;color:var(--muted);margin-top:3px;font-family:'Courier New'}.dfmark{fill:var(--gold);stroke:#fff;stroke-width:1}.dferr{stroke:var(--gold);stroke-width:1.4}.mapband{fill:var(--green);opacity:.13;stroke:none}.direct{fill:var(--bg);stroke:var(--gold);stroke-width:2.4}svg{width:100%;height:340px;display:block}.zoomviz svg{height:500px}.spectralfull{margin-top:10px;background:var(--panel);border:1px solid var(--line);padding:12px}.spectralfull svg{height:430px}.figplotwrap{position:relative}.figrange{display:flex;align-items:center;gap:8px;font:11px 'Courier New';color:var(--muted);white-space:nowrap}.figrange input{width:150px;accent-color:var(--cyan)}.figrange b{color:var(--cyan);min-width:34px}.figrange.inplot{position:absolute;right:30px;bottom:74px;z-index:3;padding:6px 9px;background:var(--panel2);border:1px solid var(--line);border-radius:6px}.figrange.inplot span{color:var(--text)}.figrange.inplot input{width:190px}.figanim{margin:5px 0 3px;padding:4px 0 2px;background:var(--panel2);border:1px solid var(--line)}.figanimtop{display:flex;justify-content:space-between;align-items:center;font:11px 'Courier New';color:var(--cyan);margin:4px 10px 0}.figanimtop b{color:var(--cyan);font-weight:400}.figanim .figzscale,.figzstrip .figzscale{height:auto;display:block;width:min(100%,1180px);margin:3px auto 0}.figzstrip{margin:0 0 2px}.figanimcontrols{display:grid;grid-template-columns:auto minmax(220px,1fr);gap:10px;align-items:center;margin:0 10px 8px}.figalignhint{margin:0 22px 0 78px}.figanimcontrols button{background:var(--cyan);color:var(--bg);border:1px solid var(--cyan);padding:7px 12px;font:700 11px 'Courier New';cursor:pointer;border-radius:999px;box-shadow:0 0 0 1px rgba(255,255,255,.12) inset}.figanimcontrols button:hover{filter:brightness(1.05)}.figanimcontrols button:before{content:'▶';display:inline-block;margin-right:7px;font-size:10px;vertical-align:1px}.figanimcontrols button.paused:before{content:'❚❚';font-size:9px;vertical-align:1px}.figcaption{margin:14px 4px 2px;padding:14px 16px;background:var(--panel2);border-left:3px solid var(--cyan);color:var(--text);font-size:14px;line-height:1.65}.figcaptiontitle{font:700 12px 'Courier New';letter-spacing:.12em;text-transform:uppercase;color:var(--cyan);margin:0 0 7px}.axis{stroke:#40617a;stroke-width:1}.grid{stroke:#1b3c55;stroke-width:1}.path{fill:none;stroke-width:2}.sel{stroke:#fff;stroke-width:1.2}.bottom{display:grid;grid-template-columns:1.15fr .85fr;gap:10px;margin-top:10px}.explain,.test{background:var(--panel);border:1px solid var(--line);padding:15px}.equation{font:17px 'Courier New';padding:10px;background:var(--panel2);margin:10px 0}.flow{display:flex;gap:7px;align-items:center;flex-wrap:wrap;font:12px 'Courier New'}.flow span{border:1px solid var(--line);padding:7px}.arrow{border:0!important;color:var(--muted)}.stat{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.stat div{background:var(--panel2);padding:9px}.stat b{display:block;color:var(--green);font:17px 'Courier New'}.note{font-size:12px;color:var(--muted);line-height:1.45;margin-top:10px}.badge{font:10px 'Courier New';padding:3px 6px;border:1px solid var(--line);color:var(--muted)}@media(max-width:800px){.figanimcontrols{grid-template-columns:auto minmax(0,1fr)}.figrange.inplot{right:14px;bottom:70px}.figrange.inplot input{width:130px}.spectralhead{grid-template-columns:1fr}.spectralhead .legend{grid-column:1}.topplots{grid-template-columns:1fr}.minipanel+.minipanel{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:8px}main{padding:12px}.head{display:block}.unit{margin-top:12px}.zrow{grid-template-columns:80px 1fr}.elem{grid-column:1/-1;text-align:left}.elem strong,.elem span{white-space:normal}.ticks{margin-left:0}.cards{grid-template-columns:1fr 1fr}.bottom{grid-template-columns:1fr}svg{height:360px}}@media(max-width:480px){.cards{grid-template-columns:1fr;grid-auto-rows:auto}.card{height:auto;overflow:visible}.stat{grid-template-columns:1fr}h1{font-size:23px}}.thinfooter{width:100%;border-top:1px solid var(--line);padding:5px 10px 7px;color:var(--muted);font-size:12px;line-height:1.25;text-align:center}.thinfooter .tm{font-size:.5em;transform:translateY(-0.12em);padding:.08em .18em}.mobileNotice{display:none;position:fixed;inset:0;z-index:100;background:rgba(3,10,18,.74);padding:18px;align-items:center;justify-content:center}.mobileNotice.show{display:flex}.mobileNoticeCard{width:min(92vw,360px);background:var(--panel);border:0.5px solid var(--line);border-radius:10px;padding:18px 18px 16px;box-shadow:0 20px 50px rgba(0,0,0,.5);text-align:left}.mobileNoticeCard h2{margin:0 0 8px;color:var(--cyan);font-size:19px;font-weight:400}.mobileNoticeCard p{margin:0 0 14px;color:var(--text);font-size:15px;line-height:1.55}.mobileNoticeCard button{width:100%;color:var(--bg);background:var(--cyan);border:1px solid var(--cyan);border-radius:6px;padding:10px 12px;font:700 13px/1.2 Arial,Helvetica,sans-serif;cursor:pointer}.eyebrow.sectiontitle{font-weight:700}
