:root{
  --bg-dark:#071027;
  --panel:#0f1724;
  --accent:#3fb0ff;
  --muted:#9aa6bf;
  --glass:rgba(255,255,255,0.03);
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;font-family:'Inter',system-ui,Segoe UI,Arial}
body{background:linear-gradient(180deg,var(--bg-dark),#071028 60%);color:#e8eef8;display:flex;align-items:center;justify-content:center}
.scene{width:980px;max-width:96vw;padding:40px;position:relative}
#bgCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.nebula{position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;opacity:0.9}
.mast{text-align:left;margin-bottom:20px;position:relative;z-index:2}
.mast h1{font-family:'Merriweather',serif;font-size:34px;margin:0;color:#ffffff}
.subtitle{margin:6px 0 0;color:var(--muted);font-size:14px}
.card{position:relative;z-index:2;backdrop-filter:blur(6px);background:linear-gradient(180deg,rgba(255,255,255,0.02),rgba(255,255,255,0.01));border-radius:10px;padding:22px;border:1px solid rgba(255,255,255,0.04);box-shadow:0 12px 40px rgba(3,8,20,0.6)}
.form-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.field{display:flex;flex-direction:column;gap:6px}
label{font-weight:600;color:var(--muted);font-size:13px}
input[type="date"]{padding:10px 12px;border-radius:8px;border:1px solid rgba(255,255,255,0.06);background:transparent;color:inherit;min-width:180px}
.actions{margin-left:auto;display:flex;gap:10px}
.primary{background:linear-gradient(90deg,var(--accent),#6fd3ff);border:none;padding:10px 16px;border-radius:8px;color:#07202a;font-weight:700;cursor:pointer}
.ghost{background:transparent;border:1px solid rgba(255,255,255,0.06);padding:10px 14px;border-radius:8px;color:var(--muted);cursor:pointer}
.result{margin-top:20px;display:flex;gap:18px;align-items:flex-start}
.hidden{display:none}
.symbols{display:flex;gap:14px}
.symbol{background:linear-gradient(180deg,rgba(255,255,255,0.01),transparent);padding:14px;border-radius:8px;border:1px solid rgba(255,255,255,0.03);width:240px}
.symbol h2{margin:0 0 8px;color:var(--muted);font-size:14px}
.symbol .name{font-size:18px;font-weight:700;color:var(--accent)}
.glyph{margin-top:10px;font-size:30px;opacity:0.95}
.analysis{flex:1;background:transparent;padding:12px;border-radius:8px}
.analysis h3{margin:0 0 8px;color:#fff}
.analysis p{margin:0;color:#cfd8ea;line-height:1.6}
.sig{text-align:center;margin-top:18px;color:var(--muted);font-size:13px}

@media (max-width:720px){.scene{padding:18px}.symbols{flex-direction:column}.actions{width:100%;justify-content:space-between}.mast{text-align:center}}

/* subtle heading accent */
.mast h1::after{content:"";display:block;height:2px;width:56px;background:linear-gradient(90deg,var(--accent),transparent);margin-top:12px;border-radius:2px}

