:root{
  --bg:#020b13;--bg2:#061827;--panel:#08243a;--panel2:#0b314d;--border:#1f638c;
  --text:#f5fbff;--muted:#9fd4ff;--blue:#2d9df0;--green:#39d353;--yellow:#ffd447;--red:#ff5b5b;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:radial-gradient(circle at top,#0a2c47,#020b13 58%);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
a{color:var(--muted);text-decoration:none}
.dl-header{height:72px;background:rgba(2,12,20,.96);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:1000}
.dl-brand{display:flex;align-items:center;gap:11px;color:white;text-transform:uppercase;letter-spacing:2px}
.dl-logo{font-size:30px;color:var(--blue)}
.dl-brand strong{font-size:20px}
.dl-brand em{font-style:normal;color:var(--blue)}
.dl-brand small{display:block;font-size:10px;color:var(--muted)}
.dl-nav{display:flex;gap:22px}
.dl-nav a{color:white;text-transform:uppercase;font-size:12px;font-weight:1000}
.panel,.report-card{background:linear-gradient(145deg,rgba(8,36,58,.98),rgba(6,26,43,.98));border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:0 20px 60px rgba(0,0,0,.28)}
.eyebrow{margin:0 0 8px;color:var(--muted);font-size:12px;font-weight:1000;letter-spacing:.13em;text-transform:uppercase}
h1{font-size:56px;line-height:.95;margin:0 0 16px;text-transform:uppercase;text-shadow:0 4px 0 #000}
h2{margin:0 0 14px}
.hero-copy{font-size:19px;line-height:1.5;max-width:850px;color:#d9f2ff}
.muted-text{line-height:1.45;color:#d9f2ff}
select,input{width:100%;background:#071c2d;border:1px solid var(--border);border-radius:10px;color:white;padding:12px}
.btn,button{display:inline-block;background:var(--blue);color:white;border:0;border-radius:10px;padding:12px 17px;font-weight:1000;cursor:pointer}
.btn-dark{background:#071c2d;border:1px solid var(--border)}
.full{width:100%}
.action-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.action-row select{max-width:380px}
.status-label{font-size:42px;font-weight:1000;letter-spacing:-1.5px;margin:10px 0}
.status-label.good{color:var(--green)}
.status-label.questionable{color:var(--yellow);font-size:34px}
.status-label.bad{color:var(--red);font-size:34px}
.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.metric-grid div,.data-list div{background:#071c2d;border:1px solid var(--border);border-radius:12px;padding:11px;display:grid;gap:4px}
.metric-grid span,.data-list span{color:var(--muted);font-size:12px}
.home-shell,.city-shell,.reef-shell{max-width:1600px;margin:auto;padding:24px}
.home-hero{display:grid;grid-template-columns:1.5fr .9fr;gap:22px;min-height:500px}
.hero-card,.reef-hero{background:linear-gradient(90deg,rgba(3,15,27,.9),rgba(3,15,27,.25)),url('/assets/ocean.jpg');background-size:cover;background-position:center;border:1px solid var(--border);border-radius:22px;padding:44px;display:flex;flex-direction:column;justify-content:center}
.hero-card.compact{min-height:260px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:24px}
.report-card{display:flex;flex-direction:column;justify-content:space-between}
.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}
.stat-strip div{background:#071c2d;border:1px solid var(--border);border-radius:16px;padding:20px}
.stat-strip strong{display:block;font-size:42px;color:var(--blue)}
.stat-strip span{color:var(--muted);font-weight:900}
.home-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:18px}
.section-head{display:flex;justify-content:space-between;align-items:center}
.reef-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.reef-card,.reef-cards a{background:#071c2d;border:1px solid var(--border);border-radius:12px;padding:13px;color:white;display:grid;gap:4px}
.reef-card small,.reef-cards small{color:var(--muted)}
.warning{background:#071c2d;border:1px solid var(--border);border-left:5px solid var(--blue);border-radius:12px;padding:12px;margin-bottom:10px}
.warning.good{border-left-color:var(--green)}
.warning.bad{border-left-color:var(--red)}
.content-grid{display:grid;gap:18px;margin-bottom:18px}
.content-grid.three{grid-template-columns:repeat(3,1fr)}
.content-grid.two{grid-template-columns:1fr 1fr}
.data-list{display:grid;gap:9px}
.big-score{font-size:50px;color:var(--green);font-weight:1000}
.dl-footer{border-top:1px solid var(--border);padding:24px;text-align:center;color:var(--muted)}
.dl-footer a{color:var(--muted)}
@media(max-width:1000px){
  .dl-header{padding:0 14px}.dl-nav{display:none}
  .home-shell,.city-shell,.reef-shell{padding:14px}
  .home-hero,.home-grid,.stat-strip,.content-grid.three,.content-grid.two{grid-template-columns:1fr}
  h1{font-size:38px}
  .hero-card,.reef-hero{padding:28px}
  .hero-card.compact{display:block}
  .reef-cards{grid-template-columns:1fr}
}

/* Mobile navigation */
.menu-toggle{
  display:none;
  background:#071c2d;
  border:1px solid var(--border);
  color:white;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  padding:8px 12px;
  border-radius:10px;
}

@media(max-width:768px){
  .dl-header{
    position:sticky;
    top:0;
  }

  .menu-toggle{
    display:block;
  }

  .dl-nav{
    display:none;
    position:absolute;
    top:72px;
    right:14px;
    width:220px;
    background:#071c2d;
    border:1px solid var(--border);
    border-radius:12px;
    flex-direction:column;
    gap:0;
    overflow:hidden;
    z-index:9999;
    box-shadow:0 20px 50px rgba(0,0,0,.45);
  }

  .dl-nav.open{
    display:flex;
  }

  .dl-nav a{
    padding:16px 20px;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .dl-nav a:last-child{
    border-bottom:0;
  }
}

