
/* everything scoped; WiseCP theme cannot leak in or out */
#tedsp-root{
  --te-ink:#15202B; --te-ink-soft:#5B6B7A; --te-ink-dim:#617584;
  --te-line:#DCE4EA; --te-surface:#F6F8FA;
  --te-signal:#0E7490; --te-signal-soft:#E0F2F7;
  --te-ok:#15803D; --te-warn:#B45309; --te-alert:#B91C1C;
  --te-font-hud:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  /* label webfont for globe pin labels (canvas-baked; must be loaded before pins drop) */
  --te-font-label:'Departure Mono ProDyn',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --te-font-body:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  display:block; font-family:inherit; color:var(--te-ink);
  background:#FFFFFF; max-width:1180px; margin:0 auto; padding:0;
  box-sizing:border-box; line-height:1.6; text-align:left;
}
@font-face{
  font-family:'Departure Mono ProDyn';
  src:url('/dpo/assets/fonts/DepartureMono-Regular.woff2') format('woff2');
  font-weight:400;font-style:normal;font-display:block;
}
#tedsp-root *,#tedsp-root *::before,#tedsp-root *::after{box-sizing:border-box;margin:0;padding:0}
#tedsp-root .te-head{padding:20px 0 14px;border-bottom:1px solid var(--te-line);margin-bottom:24px}
#tedsp-root .te-kicker{font-family:var(--te-font-hud);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--te-signal);margin-bottom:6px}
#tedsp-root h2.te-title{font-size:28px;line-height:1.2;font-weight:700;color:var(--te-ink)}
#tedsp-root .te-deck{margin-top:8px;font-size:15px;color:var(--te-ink-soft);max-width:640px}
/* globe card height-independent from the left feed (own outer separation) */
#tedsp-root .te-split{display:grid;grid-template-columns:minmax(320px,5fr) 7fr;gap:28px;align-items:start}
/* grid items must be shrinkable: min-width:auto would force the track to the
   nowrap min-content of resolver rows and overflow narrow phones */
#tedsp-root .te-split > section{min-width:0}
@media (max-width:1023px){#tedsp-root .te-split{grid-template-columns:1fr}}

#tedsp-root .te-form{display:flex;gap:8px}
#tedsp-root .te-toggle{display:flex;border:1px solid var(--te-line)}
#tedsp-root .te-toggle button{
  background:transparent;border:0;color:var(--te-ink-dim);cursor:pointer;
  font-family:var(--te-font-hud);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  padding:0 12px;transition:all .2s ease;
}
#tedsp-root .te-toggle button + button{border-left:1px solid var(--te-line)}
#tedsp-root .te-toggle button[aria-pressed="true"]{color:var(--te-signal);background:var(--te-signal-soft)}
#tedsp-root .te-input{
  flex:1;min-width:0;background:#FFFFFF;border:1px solid var(--te-line);
  color:var(--te-ink);font-family:var(--te-font-hud);font-size:15px;
  padding:11px 14px;border-radius:0;
}
#tedsp-root .te-input:focus{outline:none;border-color:var(--te-signal);box-shadow:0 0 0 3px rgba(14,116,144,.12)}
#tedsp-root .te-input::placeholder{color:var(--te-ink-dim)}
#tedsp-root .te-go{
  background:var(--te-signal);border:1px solid var(--te-signal);color:#FFFFFF;
  font-family:var(--te-font-hud);font-size:13px;letter-spacing:.08em;text-transform:uppercase;
  padding:11px 22px;border-radius:0;cursor:pointer;
  transition:background .3s ease;
}
#tedsp-root .te-go:hover{background:#0B5E75}
#tedsp-root .te-go[aria-busy="true"]{opacity:.6;cursor:progress}
#tedsp-root .te-watch{
  background:transparent;border:1px solid var(--te-line);color:var(--te-ink-soft);
  font-family:var(--te-font-hud);font-size:13px;letter-spacing:.08em;text-transform:uppercase;
  padding:11px 18px;border-radius:0;cursor:pointer;transition:all .3s ease;
}
#tedsp-root .te-watch:hover{border-color:var(--te-ink-dim);color:var(--te-ink)}
#tedsp-root .te-watch.active{border-color:#C85A2E;color:#C85A2E}
#tedsp-root .te-ok .te-ns{color:var(--te-signal)}
#tedsp-root .te-slow .te-dot{background:#C85A2E}
#tedsp-root .te-slow .te-ns,#tedsp-root .te-slow .te-ms{color:#C85A2E}
#tedsp-root .te-err .te-dot{background:var(--te-alert)}
#tedsp-root .te-err .te-ns{color:var(--te-alert)}

/* beam indicator */
#tedsp-root .te-beam{
  margin:18px 0 14px;max-height:0;opacity:0;overflow:hidden;
  border:1px solid var(--te-line);background:var(--te-surface);
  display:flex;align-items:center;gap:10px;
  transition:all .9s cubic-bezier(.22,1,.36,1);
}
#tedsp-root .te-beam.show{opacity:1;max-height:60px;padding:11px 14px;margin:18px 0 14px}
#tedsp-root .te-beam.ok{border-color:#BBF7D0;background:#F0FDF4}
#tedsp-root .te-beam.warn{border-color:#FECACA;background:#FEF2F2}
#tedsp-root .te-beam .b-dot{width:8px;height:8px;border-radius:50%;flex:none}
#tedsp-root .te-beam.ok .b-dot{background:var(--te-ok)}
#tedsp-root .te-beam.warn .b-dot{background:var(--te-alert);animation:teDpo2Pulse 2s ease-in-out infinite alternate}
#tedsp-root .te-beam .b-text{font-family:var(--te-font-hud);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--te-ink-soft);flex:1}
#tedsp-root .te-beam.ok .b-text{color:var(--te-ok)}
#tedsp-root .te-beam.warn .b-text{color:var(--te-alert)}
@keyframes teDpo2Pulse{from{opacity:1}to{opacity:.4}}
@media (prefers-reduced-motion: reduce){#tedsp-root *{animation:none!important;transition-duration:.01ms!important}}

/* feed */
#tedsp-root .te-feed-head{display:flex;justify-content:space-between;align-items:baseline;margin:16px 0 6px}
#tedsp-root .te-feed-title{font-family:var(--te-font-hud);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--te-ink-dim)}
#tedsp-root .te-feed-count{font-family:var(--te-font-hud);font-size:11px;color:var(--te-signal)}
#tedsp-root ol.te-list{list-style:none;max-height:420px;overflow-y:auto;border:1px solid var(--te-line)}
#tedsp-root .te-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--te-line);animation:teDpo2Row .45s cubic-bezier(.22,1,.36,1) both;min-width:0}
#tedsp-root .te-row:last-child{border-bottom:none}
@keyframes teDpo2Row{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
#tedsp-root .te-dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--te-ink-dim)}
#tedsp-root .te-pending .te-dot{animation:teDpo2Pulse 1.4s ease-in-out infinite alternate}
#tedsp-root .te-ok .te-dot{background:var(--te-ok)}
#tedsp-root .te-te .te-dot{background:var(--te-signal);box-shadow:0 0 6px rgba(14,116,144,.5)}
#tedsp-root .te-nxdomain .te-dot{background:var(--te-warn)}
#tedsp-root .te-name{font-family:var(--te-font-hud);font-size:13px;color:var(--te-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
#tedsp-root .te-city{color:var(--te-ink-dim);font-size:11px}
#tedsp-root .te-ns{flex:1;min-width:0;font-family:var(--te-font-hud);font-size:11px;color:var(--te-ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}
#tedsp-root .te-ok .te-ns{color:var(--te-signal)}
#tedsp-root .te-ms{font-family:var(--te-font-hud);font-size:11px;color:var(--te-ink-dim);min-width:48px;text-align:right}
#tedsp-root .te-row.te-te{background:var(--te-signal-soft)}
#tedsp-root .te-status{margin-top:12px;font-family:var(--te-font-hud);font-size:11px;color:var(--te-ink-dim);min-height:15px}

/* globe */
#tedsp-root .te-globe-wrap{position:relative;height:560px;border:1px solid var(--te-line);background:#FFFFFF;overflow:hidden}
@media (max-width:767px){#tedsp-root .te-globe-wrap{height:380px}}
#tedsp-root .te-globe-mount{position:absolute;inset:0}
#tedsp-root .te-globe-mount canvas{width:100%!important;height:100%!important;display:block}
#tedsp-root .te-globe-note{position:absolute;bottom:12px;right:14px;font-family:var(--te-font-hud);font-size:10px;color:var(--te-ink-dim);letter-spacing:.06em}
#tedsp-root .te-globe-fb{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;transition:opacity .9s cubic-bezier(.22,1,.36,1)}
#tedsp-root .te-globe-fb.hidden{opacity:0;pointer-events:none}
#tedsp-root .te-globe-fb .ring{width:140px;height:140px;border:1px solid var(--te-line);border-radius:50%;position:relative}
#tedsp-root .te-globe-fb .ring::before{content:"";position:absolute;inset:20px;border:1px solid var(--te-line);border-radius:50%}
#tedsp-root .te-globe-fb .ring::after{content:"";position:absolute;top:50%;left:50%;width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--te-signal);border-radius:50%;animation:teDpo2Pulse 2s ease-in-out infinite alternate}
#tedsp-root .te-globe-fb p{font-family:var(--te-font-hud);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--te-ink-dim)}
#tedsp-root .te-foot{margin-top:24px;padding-top:14px;border-top:1px solid var(--te-line);font-family:var(--te-font-hud);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--te-ink-dim);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

#tedsp-root button:focus-visible {outline:3px solid var(--te-signal);outline-offset:3px}
#tedsp-root .te-form {flex-wrap:wrap}
#tedsp-root .te-input {flex-basis:100%}
#tedsp-root .te-name {max-width:45%}
#tedsp-root .te-city {display:block;white-space:normal}
#tedsp-root .te-row {flex-wrap:wrap}
#tedsp-root .te-ns {white-space:normal;overflow-wrap:anywhere}
#tedsp-root .te-globe-fb p {text-align:center;padding:0 16px}
#tedsp-root .te-foot {text-transform:none;font-size:12px;letter-spacing:0}

/* Page 81 light globe frame: wrapper and WebGL renderer share the same field. */
#tedsp-root .te-globe-wrap {border:1px solid #000;background:#F5F5F3}
#tedsp-root .te-globe-note,#tedsp-root .te-globe-fb p {color:#15202B}
