:root { color-scheme:dark; --bg:#07100d; --panel:#101d18; --line:#284238; --ink:#f2f7f4; --muted:#9fb3aa; --mint:#66f2b3; --amber:#f6c667; --red:#ff7b78; font-family:Inter,ui-sans-serif,system-ui,sans-serif; }
* { box-sizing:border-box; } body { margin:0; min-height:100vh; color:var(--ink); background:radial-gradient(circle at 85% 0%,#19372b 0,transparent 30rem),var(--bg); }
main { width:min(1100px,calc(100% - 32px)); margin:auto; padding:56px 0 96px; }.hero { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-bottom:36px; }
h1 { margin:4px 0 12px; font-size:clamp(2.5rem,7vw,5rem); line-height:.95; letter-spacing:-.06em; } h2,h3,p { margin-top:0; } h2 { margin-bottom:8px; } h3 { font-size:1.35rem; margin:6px 0; }
.lede,.card p { color:var(--muted); max-width:650px; }.eyebrow { color:var(--mint)!important; font-size:.72rem; font-weight:800; letter-spacing:.16em; margin-bottom:10px; }
.shield { display:grid; place-items:center; flex:0 0 110px; height:128px; font-size:3rem; font-weight:900; color:var(--bg); background:var(--mint); clip-path:polygon(50% 0,95% 17%,88% 72%,50% 100%,12% 72%,5% 17%); }
.card { border:1px solid var(--line); border-radius:18px; background:linear-gradient(145deg,rgba(20,38,31,.96),rgba(10,22,17,.96)); box-shadow:0 22px 70px rgba(0,0,0,.18); }
.onboard,.ingest { display:grid; grid-template-columns:1fr 1.2fr; gap:36px; padding:28px; margin-bottom:28px; }.ingest { margin-bottom:54px; }.alerts-section { margin-bottom:54px; }.alerts-section>.section-head p { color:var(--muted); }.alert-counts { color:var(--muted); text-align:right; }.alert-counts strong { color:var(--red); font-size:1.6rem; }.alert-group { margin-top:20px; }.alert-group>h3 { color:var(--muted); font-size:.82rem; letter-spacing:.1em; text-transform:uppercase; }.alert-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.alert-card { padding:18px; border-left:4px solid var(--amber); }.alert-card.critical { border-left-color:var(--red); }.alert-card p { margin-bottom:8px; }.alert-top { display:flex; justify-content:space-between; gap:12px; }.alert-top h3 { margin-top:4px; }.alert-severity,.alert-state { color:var(--amber); font-size:.68rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.alert-card.critical .alert-severity { color:var(--red); }.alert-state { color:var(--muted); }.alert-meta { font-size:.74rem; }.alert-card .actions { margin-top:12px; } label { display:block; font-size:.8rem; font-weight:700; margin-bottom:8px; }
.input-row { display:flex; gap:8px; } input,button { min-height:48px; border-radius:10px; font:inherit; } input { width:100%; min-width:0; padding:0 14px; color:var(--ink); background:#07110d; border:1px solid #365449; outline:none; } input:focus { border-color:var(--mint); box-shadow:0 0 0 3px #66f2b326; }
textarea { width:100%; resize:vertical; margin:0 0 12px; padding:12px 14px; color:var(--ink); background:#07110d; border:1px solid #365449; border-radius:10px; font:inherit; font-family:ui-monospace,monospace; } textarea:focus { border-color:var(--mint); outline:none; box-shadow:0 0 0 3px #66f2b326; } input[type="file"] { height:auto; min-height:44px; margin-bottom:14px; padding:10px; }
button,.button { padding:0 18px; border:0; color:#062016; background:var(--mint); font-weight:800; cursor:pointer; white-space:nowrap; } button:hover,.button:hover { filter:brightness(1.08); } .button { display:inline-flex; min-height:40px; align-items:center; justify-content:center; border-radius:10px; text-decoration:none; } #form-status { min-height:1.3em; margin:10px 0 0; font-size:.84rem; }
.section-head,.domain-top,.actions { display:flex; align-items:center; justify-content:space-between; gap:18px; }.secondary,.danger { min-height:40px; background:transparent; border:1px solid var(--line); color:var(--ink); }.danger { color:var(--red); }
.portfolio-actions { display:flex; gap:8px; align-items:center; }
.summary { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:18px 0; }.summary div { border:1px solid var(--line); padding:15px 18px; background:#0c1813; }.summary strong,.summary span { display:block; }.summary strong { font-size:1.6rem; }.summary span { color:var(--muted); font-size:.75rem; }
.domains { display:grid; grid-template-columns:1fr; gap:18px; }.domain-card { padding:22px; }.empty { grid-column:1/-1; padding:40px; text-align:center; color:var(--muted); }
.status-line { display:flex; gap:7px; align-items:center; color:var(--amber); font-size:.75rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }.status-dot { width:8px; height:8px; border-radius:50%; background:currentColor; box-shadow:0 0 12px currentColor; }[data-status="Protected"] .status-line { color:var(--mint); }[data-status="At risk"] .status-line { color:var(--red); }
.checked { font-size:.75rem; }.score strong { font-size:2rem; }.score span { color:var(--muted); font-size:.75rem; }.policy { display:flex; justify-content:space-between; padding:13px 0; border-block:1px solid var(--line); margin:14px 0; color:var(--muted); }.policy strong { color:var(--ink); text-transform:uppercase; }
.activation-panel { margin:18px 0; padding:18px; border:1px solid #4b6f60; border-radius:12px; background:linear-gradient(135deg,#10271e,#0b1712); }.activation-panel.complete { border-color:#3c8d69; }.activation-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }.activation-head h4 { margin:0; }.activation-head .eyebrow { margin-bottom:5px; }.activation-progress { color:var(--mint); font-size:.78rem; }.activation-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:18px 0 14px; padding:0; list-style:none; }.activation-steps li { display:flex; gap:9px; min-width:0; padding:11px; border:1px solid var(--line); border-radius:9px; background:#08130f; }.activation-steps li>span { display:grid; place-items:center; flex:0 0 24px; height:24px; border:1px solid var(--muted); border-radius:50%; color:var(--muted); font-size:.72rem; font-weight:800; }.activation-steps b,.activation-steps small { display:block; }.activation-steps b { font-size:.76rem; }.activation-steps small { margin-top:4px; color:var(--muted); font-size:.67rem; line-height:1.35; }.activation-steps li.complete { border-color:#3c8d69; }.activation-steps li.complete>span { border-color:var(--mint); color:#062016; background:var(--mint); font-size:0; }.activation-steps li.complete>span::after { content:"✓"; font-size:.75rem; }.activation-next { margin:0 0 12px; font-size:.78rem; line-height:1.45; }.activation-action { min-height:40px; }
.portfolio-signal { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:18px; margin:16px 0; padding:15px; border:1px solid var(--line); border-radius:12px; background:#0b1712; }.portfolio-risk>div { display:flex; flex-direction:column; gap:3px; }.portfolio-risk>span { display:block; margin-top:7px; color:var(--muted); font-size:.72rem; line-height:1.45; }.risk-rank { color:var(--mint); font-size:.68rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.portfolio-risk strong { font-size:1.08rem; }.remediation-summary>b { font-size:.78rem; }.remediation-indicators { margin:7px 0 0; padding-left:18px; color:var(--muted); font-size:.75rem; line-height:1.5; }
.issue { padding:12px; border-left:3px solid var(--amber); background:#f6c6670c; margin:9px 0; }.issue.critical { border-color:var(--red); }.issue.info,.issue.good { border-color:var(--mint); }.issue p { margin:4px 0 0; font-size:.83rem; line-height:1.45; }
.setup-panel { margin:18px 0; padding:16px; border:1px solid var(--line); border-radius:12px; background:#0b1712; }.setup-head { display:flex; justify-content:space-between; gap:12px; align-items:start; }.setup-head h4 { margin:0; }.setup-head .eyebrow { margin-bottom:5px; }.verification-state { padding:5px 8px; border:1px solid var(--amber); border-radius:999px; color:var(--amber); font-size:.67rem; font-weight:800; text-align:center; text-transform:uppercase; }.verification-state[data-state="verified"] { border-color:var(--mint); color:var(--mint); }.verification-message,.receiver-note { margin:10px 0; font-size:.78rem; line-height:1.45; }.receiver-warning { padding:10px; border-left:3px solid var(--amber); color:var(--muted); background:#f6c6670c; font-size:.78rem; line-height:1.45; }.receiver-warning code { color:var(--ink); }.setup-panel ol { padding-left:20px; color:var(--muted); font-size:.8rem; line-height:1.5; }.dns-instructions { margin:12px 0; }.dns-instructions div { display:grid; grid-template-columns:120px minmax(0,1fr); gap:10px; padding:8px 0; border-top:1px solid var(--line); }.dns-instructions dt { color:var(--muted); font-size:.72rem; font-weight:700; }.dns-instructions dd { margin:0; min-width:0; font-size:.78rem; }.dns-instructions code { display:block; overflow-wrap:anywhere; color:var(--mint); user-select:all; }.copy-field { min-height:28px; margin-top:7px; padding:0 10px; border:1px solid var(--line); color:var(--ink); background:transparent; font-size:.68rem; }.copy-fallback { position:fixed; left:-10000px; top:0; }
.operator-prerequisite { margin:14px 0; }.operator-prerequisite>p { margin:8px 0; font-size:.76rem; line-height:1.45; }
.posture-history { margin:18px 0; padding:18px; border:1px solid var(--line); border-radius:12px; background:#0b1712; }.history-head,.history-event-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }.history-head h4 { margin:0; }.history-head .eyebrow { margin-bottom:5px; }.history-count { color:var(--muted); font-size:.72rem; }.history-timeline { margin-top:14px; }.history-event { position:relative; display:grid; grid-template-columns:16px minmax(0,1fr); gap:10px; padding-bottom:16px; }.history-event:not(:last-child)::before { content:""; position:absolute; left:5px; top:12px; bottom:-2px; width:2px; background:var(--line); }.history-marker { position:relative; z-index:1; width:12px; height:12px; margin-top:4px; border:2px solid var(--amber); border-radius:50%; background:#0b1712; }.history-event.current .history-marker { border-color:var(--mint); box-shadow:0 0 10px #66f2b366; }.history-content { min-width:0; padding:0 0 2px; }.history-event-head>div>b,.history-event-head>div>span { display:block; }.history-event-head>div>span { margin-top:3px; color:var(--muted); font-size:.7rem; }.history-event-head>strong { color:var(--mint); font-size:.78rem; }.history-baseline { margin:9px 0 0; font-size:.76rem; }.change-list { margin:10px 0 0; padding:0; list-style:none; }.change-list li { display:grid; grid-template-columns:125px minmax(0,1fr); gap:8px; padding:7px 0; border-top:1px solid var(--line); font-size:.72rem; }.change-list li>b { color:var(--muted); }.change-list code { display:inline-block; max-width:100%; margin:1px 3px 1px 0; overflow-wrap:anywhere; color:var(--ink); }.change-arrow { color:var(--amber); }.change-added,.change-resolved { display:block; }.change-added { color:var(--amber); }.change-resolved { color:var(--mint); }.history-event details { margin:9px 0 0; }.history-event summary { font-size:.72rem; }
.report-dashboard { margin:18px 0; padding:18px; border:1px solid var(--line); border-radius:12px; background:#07110d; }.report-dashboard h4 { margin:0 0 12px; }.report-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.report-metrics div { min-width:0; }.report-metrics strong,.report-metrics span,.alignment span { display:block; }.report-metrics strong { overflow-wrap:anywhere; font-size:.9rem; }.report-metrics span,.alignment span { color:var(--muted); font-size:.73rem; line-height:1.45; }.alignment,.trend-chart,.daily-table,.investigations { margin-top:16px; }
.report-freshness { margin:0 0 14px; padding:10px 12px; border:1px solid var(--line); border-radius:8px; }.report-freshness b,.report-freshness span { display:block; }.report-freshness b { text-transform:capitalize; }.report-freshness span { margin-top:3px; color:var(--muted); font-size:.73rem; line-height:1.45; }.report-freshness.warning-stale { border-color:#aa7b2d; }.report-freshness.critical-stale { border-color:#b84a4a; }
.chart-head { display:flex; justify-content:space-between; gap:12px; align-items:center; }.chart-head>span { color:var(--muted); font-size:.72rem; }.legend { display:inline-block; width:8px; height:8px; margin:0 4px 0 9px; border-radius:2px; }.legend.aligned,.bar-aligned { background:var(--mint); }.legend.unaligned,.bar-unaligned { background:var(--red); }.trend-bars { display:flex; align-items:flex-end; gap:5px; min-height:150px; padding:18px 6px 0; overflow-x:auto; border-bottom:1px solid var(--line); }.trend-column { display:flex; flex:1 0 28px; height:130px; min-width:28px; flex-direction:column; justify-content:flex-end; align-items:center; }.trend-bar { display:flex; flex-direction:column; justify-content:flex-end; width:min(100%,32px); min-height:2px; overflow:hidden; border-radius:4px 4px 0 0; background:#15271f; }.trend-bar span { display:block; width:100%; }.trend-column small { height:22px; padding-top:5px; color:var(--muted); font-size:.61rem; }
.table-wrap { overflow-x:auto; }.report-dashboard table { width:100%; border-collapse:collapse; font-size:.72rem; }.report-dashboard caption { padding:0 0 8px; color:var(--ink); font-weight:700; text-align:left; }.report-dashboard th,.report-dashboard td { padding:7px 9px; border-top:1px solid var(--line); text-align:right; white-space:nowrap; }.report-dashboard th:first-child,.report-dashboard td:first-child { text-align:left; }.report-dashboard th { color:var(--muted); font-size:.66rem; text-transform:uppercase; letter-spacing:.04em; }.report-dashboard td code { color:var(--mint); }.investigations h5 { margin:0 0 4px; font-size:.9rem; }.investigations>p { margin:0 0 12px; color:var(--muted); font-size:.72rem; }.investigation-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.investigation-grid .table-wrap { padding:11px; border:1px solid var(--line); border-radius:8px; background:#0b1712; }
details { margin:16px 0; } summary { cursor:pointer; color:var(--mint); font-weight:700; }.records>div { display:grid; gap:6px; margin-top:12px; }.records code { overflow-wrap:anywhere; padding:8px; color:#c9d8d1; background:#07110d; border-radius:5px; }.muted { color:var(--muted); }.actions { justify-content:flex-end; margin-top:18px; }
@media (max-width:720px) { main { padding-top:32px; }.shield { display:none; }.onboard,.ingest,.domains,.alert-grid,.investigation-grid,.portfolio-signal,.activation-steps { grid-template-columns:1fr; }.input-row { flex-direction:column; }.summary { grid-template-columns:repeat(2,1fr); }.section-head { align-items:end; }.portfolio-actions { flex-direction:column; align-items:stretch; }.report-metrics { grid-template-columns:1fr; }.alert-counts { text-align:left; }.setup-head,.chart-head,.history-head,.history-event-head,.activation-head { flex-direction:column; align-items:flex-start; }.change-list li { grid-template-columns:1fr; gap:3px; }.dns-instructions div { grid-template-columns:1fr; gap:3px; } }

/* WatchMyDMARC identity v2 — local fonts only; no external requests. */
:root {
  color-scheme: light;
  --bg: #F5F8FC;
  --panel: #FFFFFF;
  --line: #DBE5F0;
  --ink: #0B1F3B;
  --muted: #61738A;
  --mint: #157347;
  --signal-green: #22C55E;
  --blue: #1677FF;
  --amber: #8A5200;
  --red: #B42335;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body { background:var(--bg); }
main { width:min(1200px,calc(100% - 32px)); padding-top:32px; }
.hero { min-height:260px; padding:32px; border-radius:14px; background:#08182D; }
.hero>div { max-width:780px; }
.brand-logo { display:block; width:clamp(180px,28vw,260px); min-width:160px; margin-bottom:32px; }
.hero-mark { width:clamp(96px,14vw,152px); height:auto; }
h1,h2,h3,h4 { color:var(--ink); font-family:Manrope, Inter, ui-sans-serif, system-ui, sans-serif; }
h1 { color:#FFFFFF; font-size:clamp(2.125rem,5vw,3.5rem); line-height:1.12; letter-spacing:-.035em; }
.hero .lede { color:#C3D4E5; font-size:1.125rem; line-height:1.55; }
.hero .eyebrow { color:#C3D4E5!important; }
.session-bar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; color:#C3D4E5; font-size:.8rem; }
.session-bar .secondary { color:#FFFFFF; border-color:#61738A; background:transparent; }
.eyebrow { color:#165F9E!important; letter-spacing:.12em; }
.card { border-color:var(--line); border-radius:14px; background:var(--panel); box-shadow:0 4px 18px rgba(11,31,59,.06); }
.card p,.alerts-section>.section-head p { color:var(--muted); }
input,textarea { color:var(--ink); background:#FFFFFF; border-color:#AFC2D6; }
input:focus,textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(22,119,255,.2); }
button,.button { color:#FFFFFF; background:#0B1F3B; }
button:hover,.button:hover { filter:none; background:#122F54; }
button:focus-visible,.button:focus-visible,summary:focus-visible,a:focus-visible { outline:3px solid #1677FF; outline-offset:3px; }
.secondary { color:var(--ink); background:#FFFFFF; border-color:#AFC2D6; }
.secondary:hover { color:#FFFFFF; background:#0B1F3B; }
.danger { color:var(--red); background:#FFFFFF; border-color:#EF9AA5; }
.danger:hover { color:#FFFFFF; background:var(--red); }
.summary div,.activation-panel,.activation-steps li,.portfolio-signal,.setup-panel,.posture-history,.report-dashboard,.investigation-grid .table-wrap { background:#FFFFFF; }
.summary div,.activation-panel,.activation-steps li,.portfolio-signal,.setup-panel,.posture-history,.report-dashboard { border-color:var(--line); }
.activation-panel.complete,.activation-steps li.complete { border-color:#68B58A; background:#F3FBF6; }
.activation-steps li.complete>span { border-color:var(--signal-green); color:#0B1F3B; background:var(--signal-green); }
.activation-progress,.risk-rank,.history-event-head>strong,.change-resolved { color:var(--mint); }
.verification-state[data-state="verified"] { border-color:#68B58A; color:var(--mint); background:#E4F8EC; }
.dns-instructions code,.report-dashboard td code,summary { color:#105DAF; }
.receiver-warning,.issue { background:#FFF4DA; }
.issue.info,.issue.good { border-color:var(--signal-green); background:#E4F8EC; }
.report-dashboard,.records code { background:#F8FAFD; }
.records code { color:#122641; }
.history-marker { background:#FFFFFF; }
.history-event.current .history-marker { border-color:var(--signal-green); box-shadow:none; }
.legend.aligned,.bar-aligned { background:var(--signal-green); }
.trend-bar { background:#E8EEF5; }
code,.record-detail,.dns-instructions code,textarea { font-family:"DM Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace; }
.status-dot { box-shadow:none; }
[data-status="Protected"] .status-line { color:var(--mint); }
@media (max-width:720px) {
  .hero { min-height:0; padding:24px; }
  .hero-mark { display:none; }
  .brand-logo { margin-bottom:24px; }
}
.auth-required main > :not(.auth-gate) { display:none; }
.auth-gate { width:min(520px,100%); margin:8vh auto; padding:32px; }
.auth-gate h1 { color:var(--ink); font-size:2rem; }
.auth-gate form { display:grid; gap:10px; }
.auth-gate .actions { justify-content:flex-start; }
.auth-logo { width:240px; max-width:100%; margin-bottom:24px; }
