@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;600;700;800&display=swap');:root{--bg:#080d17;--panel:#101827;--line:#202d40;--text:#e8eef8;--muted:#8290a5;--cyan:#45d6d0;--red:#ff667d;--orange:#ffb45c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px Manrope,Arial}.layout{display:flex;min-height:100vh}aside{width:235px;background:#0b1220;border-right:1px solid var(--line);padding:27px 18px;flex-shrink:0}aside a{display:block;color:#aab7c8;text-decoration:none;padding:12px;border-radius:7px}aside a:hover{background:#14283a;color:var(--cyan)}.brand{font-weight:800;font-size:19px;margin-bottom:40px}.brand span,header b{color:var(--cyan)}.brand small{display:block;color:var(--muted);font:9px 'DM Mono';letter-spacing:1px}.navtitle,header small,.panel>small{color:#72849d;font:10px 'DM Mono';letter-spacing:1px}.sidefoot{margin-top:35vh;color:#64d8a5;font:10px 'DM Mono'}.sidefoot small{color:#8796aa}main{flex:1;min-width:0}header{height:85px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 35px;background:#0b1220}header h1{font-size:18px;margin:5px 0}.content{padding:30px 35px;max-width:1500px;margin:auto}footer{padding:18px 35px;border-top:1px solid var(--line);color:#60718a;font-size:10px}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.hero h2{font-size:27px}.hero h2 span,.cyan{color:var(--cyan)}.hero p,.muted{color:var(--muted)}.btn{display:inline-block;background:var(--cyan);color:#07151c;border:0;border-radius:7px;padding:12px 16px;font-weight:800;text-decoration:none;cursor:pointer}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stats article,.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px}.stats small{color:#9ba9bd}.stats strong{display:block;font-size:28px;margin-top:12px}.red{color:var(--red)}.orange{color:var(--orange)}.panel{margin-bottom:18px}.panel h3{margin-top:7px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:680px}th{text-align:left;color:#72849d;font:9px 'DM Mono';padding:13px;border-bottom:1px solid var(--line)}td{padding:14px 13px;border-bottom:1px solid #1b2738;color:#c1ccda;font-size:11px;overflow-wrap:anywhere}.grid{display:grid;grid-template-columns:1.5fr .8fr;gap:16px}.panel input,.panel select,.authbox input{background:#091220;border:1px solid #2a3b51;border-radius:7px;padding:12px;color:white;min-width:0}.panel form{margin:18px 0}.userform{display:flex;gap:8px;flex-wrap:wrap}.userform input{flex:1}.inline{display:inline-flex;gap:5px;margin:0!important}.smallbtn{background:#23364a;color:white;border:0;border-radius:5px;padding:7px;cursor:pointer}.result,.notice{padding:14px;background:#0b1421;border:1px solid #34455b;border-radius:8px;margin-top:18px}.result p,.notice{color:#aab7c8;font-size:11px;line-height:1.6}.error{color:#ff8798}.authbody{display:grid;place-items:center;min-height:100vh}.authbox{width:min(400px,92vw);padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:12px;display:grid;gap:12px}.authbox h1{margin:0}.authbox h1 span{color:var(--cyan)}.authbox p,.authbox small{color:var(--muted)}.authbox label{font-size:12px;color:#aab7c8}.authbox .btn{margin-top:8px}
.mobile-signout{display:none}@media(max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}}@media(max-width:620px){.layout{display:block}aside{width:100%;padding:12px}aside a{display:inline-block;padding:8px}.sidefoot{display:none}header{padding:0 14px}.content{padding:18px 12px}.hero{display:block}.stats{gap:8px}.stats article,.panel{padding:13px}}

/* Stage 2 login screen refinement */
.authbody{min-height:100vh;display:grid;place-items:center;padding:28px 16px;background:radial-gradient(ellipse at 50% 0%,#14283a 0%,#080d17 58%)}
.auth-wrap{width:min(440px,100%);margin:auto}
.auth-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto 25px}
.auth-logo{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#45d6d0,#197b9b);display:grid;place-items:center;color:#07151c;font-size:27px}
.auth-brand strong{display:block;font-size:22px;letter-spacing:1px}.auth-brand strong span{color:var(--cyan)}
.auth-brand small{display:block;color:#8290a5;font:9px 'DM Mono';letter-spacing:2px;margin-top:3px}
.authbox{width:100%;padding:32px;background:rgba(16,24,39,.96);border:1px solid #26374d;border-radius:15px;box-shadow:0 22px 70px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:11px}
.auth-heading{margin-bottom:12px}.auth-heading small{font:10px 'DM Mono';letter-spacing:1.6px;color:var(--cyan)}
.auth-heading h1{font-size:25px;margin:9px 0 5px;color:var(--text)}
.auth-heading p{font-size:12px;color:var(--muted);margin:0}
.authbox label{font:10px 'DM Mono';letter-spacing:1px;color:#9aabc0;margin-top:7px}
.authbox input{width:100%;height:46px;background:#091220;border:1px solid #2a3b51;border-radius:8px;padding:0 13px;color:#eef5ff;font:13px Manrope,Arial;outline:none}
.authbox input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(69,214,208,.10)}
.login-btn{width:100%;height:46px;justify-content:center;margin-top:8px;font-size:13px}
.login-error{padding:11px 12px;border-radius:7px;border:1px solid #713746;background:#351d29;color:#ff9aaa;font-size:11px;line-height:1.55}
.auth-foot{text-align:center;color:#687b94;font:9px 'DM Mono';letter-spacing:.6px;margin-top:8px}
.auth-help{text-align:center;color:#6f8097;font-size:10px;margin-top:17px;line-height:1.6}
@media(max-width:480px){.authbox{padding:23px 19px}.auth-brand{margin-bottom:18px}}


/* PhishGuard evidence-first triage UI */
/* Triage dashboard and scanner additions */
.warning{border-color:#825d26!important;background:#271f13!important;color:#f6d590!important;line-height:1.65}.warning strong{color:#ffd27a}.metricstats{grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0}.metricstats article{padding:14px}.metricstats strong{font-size:21px}.metricdate{font:11px 'DM Mono';overflow-wrap:anywhere}.scanner h2{margin-bottom:4px}.result-danger{border-color:#713746;background:linear-gradient(135deg,#251521,#101827)}.result-neutral{border-color:#665733;background:linear-gradient(135deg,#211f18,#101827)}.risk-score{font-size:15px;color:#ffb45c}.result code,code{overflow-wrap:anywhere;color:#9be4dd}.progress{height:8px;background:#202d40;border-radius:99px;overflow:hidden}.progress span{height:100%;display:block;background:linear-gradient(90deg,#ffb45c,#ff667d);border-radius:inherit}.review-badge{display:inline-block;border:1px solid #825d26;border-radius:999px;padding:7px 10px;color:#ffd27a;font:10px 'DM Mono'}.result ul{padding-left:20px;color:#c6d1df}.result li{margin:5px 0}.metricstats .metricdate{font-size:11px}@media(max-width:700px){.metricstats{grid-template-columns:repeat(2,minmax(0,1fr))}.risk-score{display:block;margin-top:8px}.scanner .userform input{flex-basis:100%}}
/* URL scan screenshot (sandboxed) */
.scanner .email-screenshot,
.result .email-screenshot {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: 400px;
  object-fit: contain;
  background: #06121b;
  border: 1px solid #124638;
  border-radius: 8px;
  margin: 14px 0;
}

/* Enhanced responsive for mobile/tablet */
@media (max-width: 768px) {
  .layout { flex-direction: column; }
  aside { width: 100%; padding: 10px 12px; border-right: none; border-bottom: 1px solid var(--line); }
  aside a { display: inline-block; padding: 6px 10px; font-size: 12px; margin: 2px; }
  .brand { margin-bottom: 8px; font-size: 16px; }
  .brand small { font-size: 8px; }
  .sidefoot { display: none; }
  .mobile-signout { display: inline-block !important; margin-left: 8px; }
  .navtitle { display: none; }
  header { height: 60px; padding: 0 12px; }
  header h1 { font-size: 15px; }
  .content { padding: 12px; }
  .hero { flex-direction: column; align-items: flex-start; gap: 8px; }
  .hero h2 { font-size: 20px; }
  .stats { grid-template-columns: repeat(2, 1fr); gap: 8px; }
  .stats article { padding: 12px; }
  .stats strong { font-size: 22px; margin-top: 8px; }
  .panel { padding: 12px; }
  .tablewrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  table { min-width: 600px; }
  td, th { padding: 8px 6px; font-size: 10px; }
  .userform { flex-direction: column; }
  .userform input, .userform select, .userform button { width: 100%; }
  .grid { grid-template-columns: 1fr; }
  footer { padding: 12px; font-size: 9px; }
}

@media (max-width: 480px) {
  .stats { grid-template-columns: 1fr; }
  .stats strong { font-size: 20px; }
  aside a { font-size: 11px; padding: 5px 8px; }
  .authbox { width: 95vw; padding: 20px 16px; }
  header h1 { font-size: 13px; }
  .content { padding: 8px; }
}
