:root {
  --ink: #eef4fb;
  --muted: #8fa3b8;
  --dim: #5d7186;
  --navy: #05101c;
  --panel: rgba(9, 25, 40, .78);
  --line: rgba(139, 179, 208, .16);
  --cyan: #52d7f2;
  --green: #51e3a4;
  --yellow: #f0ce58;
  --orange: #ff9256;
  --red: #ff526d;
}
* { box-sizing: border-box; }
html { color-scheme: dark; scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--ink);
  font-family: Manrope, system-ui, sans-serif;
  background:
    radial-gradient(circle at 78% 11%, rgba(30, 122, 147, .18), transparent 25rem),
    radial-gradient(circle at 3% 35%, rgba(25, 78, 115, .18), transparent 32rem),
    var(--navy);
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  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: 56px 56px;
  mask-image: linear-gradient(to bottom, #000, transparent 80%);
}
#storm { position: fixed; inset: 0; width: 100%; height: 100%; opacity: .18; pointer-events: none; }
a { color: inherit; }
.shell { width: min(1180px, calc(100% - 44px)); margin-inline: auto; position: relative; }
.status-strip { border-bottom: 1px solid var(--line); background: rgba(2, 9, 15, .78); font: 500 11px/1.2 "DM Mono", monospace; letter-spacing: .08em; color: #a9bac9; }
.status-strip__inner { width: min(1180px, calc(100% - 44px)); min-height: 34px; margin: auto; display: flex; align-items: center; gap: 9px; }
.status-strip__time { margin-left: auto; color: var(--dim); }
.pulse-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 12px var(--green); animation: pulse 1.8s ease-in-out infinite; }
@keyframes pulse { 50% { opacity: .35; box-shadow: 0 0 2px var(--green); } }
.site-header { min-height: 92px; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.brand__logo-frame { width: 58px; height: 58px; display: grid; place-items: center; overflow: hidden; border-radius: 50%; }
.brand__logo { width: 100%; height: 100%; display: block; object-fit: contain; transform: scale(1.3); transform-origin: 50% 44%; filter: drop-shadow(0 0 10px rgba(49,145,255,.22)); }
.brand strong, .brand small { display: block; }
.brand strong { font-size: 16px; letter-spacing: .08em; }
.brand small { margin-top: 3px; font: 500 9px/1 "DM Mono", monospace; letter-spacing: .12em; color: var(--muted); }
.header-meta { display: flex; gap: 9px; color: var(--dim); font: 500 10px/1 "DM Mono", monospace; letter-spacing: .09em; }
.hero { min-height: 610px; display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 48px; padding: 38px 0 66px; }
.eyebrow { margin: 0 0 12px; color: var(--cyan); font: 500 11px/1.2 "DM Mono", monospace; letter-spacing: .16em; }
h1, h2, p { text-wrap: pretty; }
h1 { margin: 0; font-size: clamp(48px, 6vw, 82px); line-height: .99; letter-spacing: -.062em; font-weight: 600; }
h1 em { color: var(--orange); font-style: normal; text-shadow: 0 0 42px rgba(255,146,86,.22); }
.lede { max-width: 560px; margin: 28px 0 34px; color: var(--muted); font-size: 16px; line-height: 1.7; }
.weather-summary { display: flex; align-items: center; gap: 18px; }
.weather-score { min-width: 86px; font: 500 68px/.86 "DM Mono", monospace; letter-spacing: -.08em; color: var(--orange); }
.weather-summary strong, .weather-summary small { display: block; }
.weather-summary strong { margin: 3px 0 5px; font-size: 17px; }
.weather-summary small { color: var(--muted); }
.weather-label { padding: 4px 7px; border: 1px solid rgba(255,146,86,.45); border-radius: 3px; color: var(--orange); background: rgba(255,146,86,.08); font: 500 9px/1 "DM Mono", monospace; letter-spacing: .1em; }
.hero__calculator { width: fit-content; margin-top: 24px; }
.defcon-line { display: flex; align-items: center; gap: 8px; }
.defcon-help { width: 19px; height: 19px; padding: 0; border: 1px solid var(--dim); border-radius: 50%; color: var(--muted); background: transparent; font: 600 11px/17px "DM Mono", monospace; cursor: pointer; }
.defcon-help:hover, .defcon-help:focus-visible { border-color: var(--cyan); color: var(--cyan); outline: none; box-shadow: 0 0 12px rgba(82,215,242,.2); }
.defcon-dialog { width: min(560px, calc(100% - 28px)); max-height: calc(100vh - 40px); padding: 24px; overflow: auto; border: 1px solid rgba(82,215,242,.26); border-radius: 16px; color: var(--ink); background: #081827; box-shadow: 0 30px 100px rgba(0,0,0,.65); }
.defcon-dialog::backdrop { background: rgba(1,7,12,.76); backdrop-filter: blur(4px); }
.defcon-dialog__head { display: flex; align-items: start; justify-content: space-between; gap: 20px; }
.defcon-dialog__head h2 { margin: 0; font-size: 28px; }
.defcon-dialog__close { width: 32px; height: 32px; padding: 0; border: 1px solid var(--line); border-radius: 50%; color: var(--muted); background: transparent; font-size: 22px; line-height: 28px; cursor: pointer; }
.defcon-dialog__close:hover, .defcon-dialog__close:focus-visible { border-color: var(--cyan); color: var(--cyan); outline: none; }
.defcon-levels { display: grid; gap: 8px; margin: 22px 0 0; padding: 0; list-style: none; }
.defcon-level { padding: 13px 15px; border: 1px solid var(--line); border-left: 4px solid var(--dim); border-radius: 9px; background: rgba(255,255,255,.025); }
.defcon-level strong, .defcon-level span { display: block; }
.defcon-level strong { margin-bottom: 4px; font-size: 12px; }
.defcon-level span { color: var(--muted); font-size: 11px; line-height: 1.5; }
.defcon-level[data-level="5"] { border-left-color: var(--green); }
.defcon-level[data-level="4"] { border-left-color: var(--yellow); }
.defcon-level[data-level="3"] { border-left-color: #ffad42; }
.defcon-level[data-level="2"] { border-left-color: var(--orange); }
.defcon-level[data-level="1"] { border-left-color: var(--red); }
.defcon-level.active { border-color: var(--cyan); background: rgba(82,215,242,.08); box-shadow: 0 0 18px rgba(82,215,242,.08); }
.radar-panel { padding: 18px; border: 1px solid rgba(82,215,242,.19); border-radius: 22px; background: linear-gradient(145deg, rgba(8,26,41,.92), rgba(2,12,20,.75)); box-shadow: 0 32px 80px rgba(0,0,0,.34), inset 0 0 70px rgba(49,154,169,.035); }
.radar-panel__head { display: flex; justify-content: space-between; color: var(--muted); font: 500 10px/1 "DM Mono", monospace; letter-spacing: .13em; }
.radar-panel__head span:last-child { color: var(--green); }
.radar-wrap { width: min(100%, 510px); margin: 8px auto; position: relative; aspect-ratio: 1; }
#radar { width: 100%; height: 100%; display: block; }
.radar-center { position: absolute; inset: 0; margin: auto; width: 65px; height: 65px; display: grid; place-content: center; text-align: center; border: 1px solid rgba(82,215,242,.4); border-radius: 50%; background: rgba(3,15,23,.9); box-shadow: 0 0 25px rgba(82,215,242,.13); pointer-events: none; }
.radar-center span { color: var(--muted); font: 500 8px/1 "DM Mono", monospace; letter-spacing: .12em; }
.radar-center strong { margin-top: 3px; font: 500 19px/1 "DM Mono", monospace; }
.radar-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 14px; color: var(--muted); font: 400 9px/1.2 "DM Mono", monospace; }
.radar-legend span { display: flex; align-items: center; gap: 5px; }
.radar-legend i { width: 6px; height: 6px; border-radius: 50%; }
.signal-band { display: grid; grid-template-columns: repeat(4, 1fr); border-block: 1px solid var(--line); }
.signal-band > div { padding: 28px 24px; border-right: 1px solid var(--line); }
.signal-band > div:first-child { padding-left: 0; }
.signal-band > div:last-child { border-right: 0; }
.signal-band span, .signal-band small, .signal-band strong { display: block; }
.signal-band span { color: var(--dim); font: 500 9px/1 "DM Mono", monospace; letter-spacing: .13em; }
.signal-band strong { margin: 9px 0 5px; font: 500 29px/1 "DM Mono", monospace; }
.signal-band strong.signal-band__time { font-size: 16px; margin-block: 14px 10px; }
.signal-band small { color: var(--muted); font-size: 11px; }
.sector-index { padding: 78px 0 0; }
.sector-index .section-heading { margin-bottom: 27px; }
.sector-risk-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.sector-risk-item { min-width: 0; padding: 18px 20px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); }
.sector-risk-item__head { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; margin-bottom: 12px; }
.sector-risk-item__head span { font-size: 12px; font-weight: 600; }
.sector-risk-item__head strong { font: 500 20px/1 "DM Mono", monospace; }
.sector-risk-bar { height: 6px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.07); }
.sector-risk-bar i { display: block; width: 0; height: 100%; border-radius: inherit; box-shadow: 0 0 12px currentColor; transition: width 1.2s cubic-bezier(.4,0,.2,1); }
.sector-risk-item__meta { display: flex; justify-content: space-between; gap: 10px; margin-top: 10px; color: var(--dim); font: 500 8px/1.35 "DM Mono", monospace; letter-spacing: .05em; }
.sector-risk-item__meta span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sector-risk-item__meta span:last-child { text-align: right; }
.sector-risk-item__evidence { display: block; min-width: 0; margin-top: 8px; overflow: hidden; color: var(--muted); font-size: 9px; line-height: 1.3; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; }
.sector-risk-item__evidence:hover { color: var(--cyan); text-decoration: underline; }
.section-block { padding: 96px 0 80px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 36px; margin-bottom: 35px; }
.section-heading h2, .panel h2, .method-panel h2 { margin: 0; font-size: clamp(27px, 3vw, 41px); line-height: 1.12; letter-spacing: -.045em; }
.section-heading > p { max-width: 440px; margin: 0; color: var(--muted); line-height: 1.6; font-size: 13px; }
.metric-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.metric-card { min-width: 0; min-height: 185px; padding: 22px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); transition: border-color .2s, transform .2s; }
.metric-card:hover { border-color: rgba(82,215,242,.34); transform: translateY(-2px); }
.metric-card__top { display: flex; justify-content: space-between; gap: 12px; }
.metric-card__num { font: 500 38px/1 "DM Mono", monospace; }
.metric-card__count { color: var(--dim); font: 500 9px/1 "DM Mono", monospace; }
.metric-card h3 { margin: 12px 0 5px; font-size: 14px; font-weight: 600; }
.metric-card p.metric-card__sources { min-width: 0; margin: 0 0 5px; overflow: hidden; color: var(--muted); font-size: 8px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }
.metric-card__evidence { min-width: 0; min-height: 28px; margin: 0 0 6px; overflow: hidden; }
.metric-card__evidence > span { display: block; margin-bottom: 6px; color: var(--dim); font: 500 8px/1.3 "DM Mono", monospace; letter-spacing: .08em; }
.metric-card__evidence a { display: block; width: 100%; max-width: 100%; margin-top: 3px; overflow: hidden; color: var(--text); font-size: 9px; line-height: 1.25; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; }
.metric-card__evidence a:hover { color: var(--cyan); text-decoration: underline; }
.metric-card__evidence small { color: var(--dim); font-size: 9px; }
.metric-bar { height: 3px; background: rgba(255,255,255,.06); overflow: hidden; }
.metric-bar i { display: block; height: 100%; width: 0; background: var(--cyan); box-shadow: 0 0 12px currentColor; transition: width .8s ease; }
.metric-card p { margin: 9px 0 0; color: var(--dim); font: 400 9px/1.4 "DM Mono", monospace; }
.content-grid { display: grid; grid-template-columns: 1.7fr .8fr; gap: 16px; padding-bottom: 16px; }
.panel { border: 1px solid var(--line); border-radius: 14px; background: var(--panel); overflow: hidden; }
.panel__head { padding: 26px 28px 23px; display: flex; justify-content: space-between; align-items: start; gap: 20px; border-bottom: 1px solid var(--line); }
.panel h2 { font-size: 27px; }
.live-badge { display: inline-flex; align-items: center; gap: 7px; color: var(--green); font: 500 9px/1 "DM Mono", monospace; letter-spacing: .08em; }
.live-badge i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); }
.feed-list { min-height: 360px; }
.feed-item { display: grid; grid-template-columns: 88px 1fr auto; gap: 20px; padding: 21px 28px; border-bottom: 1px solid var(--line); text-decoration: none; transition: background .2s; }
.feed-item:last-child { border-bottom: 0; }
.feed-item:hover { background: rgba(82,215,242,.04); }
.feed-item__type { color: var(--cyan); font: 500 9px/1.35 "DM Mono", monospace; letter-spacing: .08em; }
.feed-item h3 { margin: 0 0 6px; font-size: 13px; line-height: 1.45; font-weight: 600; }
.feed-item p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.feed-item time { color: var(--dim); font: 400 9px/1 "DM Mono", monospace; white-space: nowrap; }
.empty-state { padding: 80px 28px; color: var(--muted); text-align: center; }
.source-list { padding: 8px 22px; }
.source-group__title { margin: 18px 4px 5px; font: 600 9px/1.3 "DM Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
.source-group__title:first-child { margin-top: 10px; }
.source-item { display: grid; grid-template-columns: 8px 1fr; gap: 10px; padding: 13px 4px; border-bottom: 1px solid var(--line); }
.source-item:last-child { border: 0; }
.source-item > i { width: 7px; height: 7px; margin-top: 5px; border-radius: 50%; background: var(--dim); }
.source-item.healthy > i { background: var(--green); box-shadow: 0 0 9px rgba(81,227,164,.4); }
.source-item.warning > i { background: var(--orange); }
.source-item a { font-size: 11px; text-decoration: none; }
.source-item small { display: block; margin-top: 3px; color: var(--dim); font: 400 8px/1.4 "DM Mono", monospace; }
.source-note { margin: 0; padding: 17px 25px 23px; color: var(--dim); font-size: 9px; line-height: 1.55; }
.method-panel { display: grid; grid-template-columns: .72fr 1.25fr auto; align-items: center; gap: 45px; margin-bottom: 80px; padding: 42px; border: 1px solid rgba(82,215,242,.2); border-radius: 14px; background: linear-gradient(120deg, rgba(25,78,102,.2), rgba(7,19,31,.8)); }
.method-panel h2 { font-size: 30px; }
.method-panel > p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.method-panel__actions { display: flex; align-items: stretch; flex-direction: column; gap: 9px; }
.method-panel__button { display: inline-flex; align-items: center; justify-content: space-between; gap: 18px; min-width: 190px; padding: 12px 14px; border: 1px solid rgba(82,215,242,.24); border-radius: 6px; color: var(--cyan); text-decoration: none; white-space: nowrap; font: 500 9px/1 "DM Mono", monospace; letter-spacing: .07em; transition: border-color .2s, background .2s, color .2s, transform .2s; }
.method-panel__button:hover { border-color: rgba(82,215,242,.55); background: rgba(82,215,242,.07); color: var(--text); transform: translateY(-1px); }
.method-panel__button--primary { border-color: rgba(255,146,86,.5); background: rgba(255,146,86,.1); color: var(--orange); }
.method-panel__button--primary:hover { border-color: var(--orange); background: rgba(255,146,86,.16); color: #ffd1b9; }
.site-footer { padding: 28px 0 45px; display: flex; align-items: center; justify-content: space-between; gap: 40px; border-top: 1px solid var(--line); }
.site-footer p { max-width: 690px; margin: 0; color: var(--dim); text-align: right; font-size: 9px; line-height: 1.6; }
.brand--footer .brand__logo-frame { width: 46px; height: 46px; }
@media (max-width: 900px) {
  .hero { grid-template-columns: 1fr; padding-top: 60px; }
  .radar-panel { width: min(100%, 620px); margin: auto; }
  .signal-band { grid-template-columns: repeat(2, 1fr); }
  .signal-band > div:nth-child(2) { border-right: 0; }
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
  .sector-risk-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .content-grid, .method-panel { grid-template-columns: 1fr; }
  .method-panel { gap: 24px; }
}
@media (max-width: 620px) {
  .shell, .status-strip__inner { width: min(100% - 28px, 1180px); }
  .header-meta { display: none; }
  .site-header { min-height: 76px; }
  .hero { gap: 38px; padding: 45px 0; }
  h1 { font-size: 49px; }
  .radar-panel { padding: 13px; border-radius: 15px; }
  .signal-band > div { padding: 22px 16px; }
  .signal-band > div:nth-child(odd) { padding-left: 0; }
  .signal-band strong { font-size: 23px; }
  .section-block { padding: 70px 0 60px; }
  .section-heading { display: block; }
  .section-heading > p { margin-top: 18px; }
  .metric-grid { grid-template-columns: 1fr; }
  .sector-risk-grid { grid-template-columns: 1fr; }
  .metric-card { min-height: 155px; }
  .feed-item { grid-template-columns: 74px 1fr; gap: 13px; padding: 18px; }
  .feed-item time { display: none; }
  .panel__head { padding: 22px 18px; }
  .live-badge { display: none; }
  .method-panel { padding: 28px; }
  .method-panel__actions { width: 100%; }
  .method-panel__button { min-width: 0; width: 100%; }
  .hero__calculator { width: 100%; }
  .site-footer { align-items: start; flex-direction: column; }
  .site-footer p { text-align: left; }
}
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; animation-duration: .01ms !important; } }
