
:root{
  --bg:#071424;
  --panel:#1b2a3d;
  --panel-2:#22344a;
  --muted:#c9d4e3;
  --text:#f4f7fb;
  --gold:#f6c85f;
  --accent:#7adcf7;
  --line:rgba(255,255,255,.08);
  --shadow:0 14px 40px rgba(0,0,0,.24);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:linear-gradient(90deg,#031224 0%,#08182b 40%,#031224 100%);
  color:var(--text);
}
.page-shell{
  max-width:1380px;
  margin:0 auto;
  padding:28px 20px 60px;
}
.hero{
  background:linear-gradient(180deg,#091c31 0%,#0b1728 100%);
  border:1px solid rgba(246,200,95,.25);
  border-radius:28px;
  padding:32px;
  box-shadow:var(--shadow);
}
.eyebrow{
  color:var(--gold);
  font-weight:800;
  letter-spacing:.03em;
  margin-bottom:8px;
}
.hero h1{
  margin:0 0 12px;
  color:var(--gold);
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.08;
}
.hero p{
  margin:0;
  color:#ecf2fb;
  max-width:960px;
  font-size:1.05rem;
  line-height:1.75;
}
.hero-stats{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  max-width:720px;
}
.stat-box{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(246,200,95,.18);
  border-radius:20px;
  padding:16px 18px;
}
.stat-box span{
  display:block;
  font-size:1.6rem;
  font-weight:800;
  color:var(--gold);
}
.stat-box small{color:var(--muted)}

.toolbar{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.tool-card,.verb-card{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:var(--shadow);
}
.tool-card{padding:20px}
.tool-card h2{
  margin:0 0 8px;
  font-size:1.4rem;
  color:var(--gold);
}
.tool-card p{
  margin:0 0 16px;
  line-height:1.65;
  color:var(--muted);
}
.filter-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.text-input{
  width:100%;
  border:1px solid rgba(255,255,255,.12);
  background:#f5f7fb;
  color:#102033;
  border-radius:16px;
  padding:14px 15px;
  font-size:1rem;
  outline:none;
}
.text-input:focus{
  border-color:var(--accent);
  box-shadow:0 0 0 4px rgba(122,220,247,.18);
}
.button-row{
  display:flex;
  gap:10px;
  margin-top:12px;
  flex-wrap:wrap;
}
.btn{
  border:none;
  border-radius:14px;
  padding:12px 18px;
  font-weight:800;
  cursor:pointer;
}
.btn-primary{background:var(--gold); color:#13253a;}
.btn-secondary{background:var(--accent); color:#143043;}

.quick-tabs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:22px 0 10px;
}
.tab-btn{
  border:none;
  cursor:pointer;
  padding:11px 16px;
  border-radius:999px;
  font-weight:700;
  background:#31445c;
  color:#fff;
}
.tab-btn.active{
  background:var(--gold);
  color:#13253a;
}
.results-header{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:16px;
  margin:18px 0 14px;
}
.results-header h2{
  margin:0;
  color:var(--gold);
  font-size:1.8rem;
}
.results-header p{
  margin:0;
  color:var(--muted);
}
.cards-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.verb-card{padding:18px}
.card-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:start;
}
.pv-title{
  margin:0 0 10px;
  font-size:1.45rem;
  color:#fff;
  text-transform:lowercase;
}
.meta-row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:8px 11px;
  font-size:.83rem;
  font-weight:700;
  border:1px solid transparent;
}
.badge-gold{
  background:rgba(246,200,95,.18);
  color:#ffe196;
  border-color:rgba(246,200,95,.2);
}
.particle-tag{
  background:rgba(122,220,247,.12);
  color:#a8efff;
  border-color:rgba(122,220,247,.16);
}
.level-tag{
  background:rgba(255,255,255,.06);
  color:#d6dfeb;
  border-color:rgba(255,255,255,.08);
}
.speak-chip{
  border:none;
  border-radius:14px;
  padding:10px 12px;
  background:#f6c85f;
  color:#0f2237;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
}
.senses-wrap{
  margin-top:16px;
  display:grid;
  gap:12px;
}
.sense-box{
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:14px;
  background:var(--panel-2);
}
.sense-top{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.context-pill{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:7px 11px;
  font-size:.78rem;
  background:#68d7ea;
  color:#143244;
  font-weight:800;
}
.meaning{
  margin:10px 0 8px;
  font-size:1rem;
  line-height:1.65;
  color:#eef4fb;
}
.example{
  margin:0;
  padding-left:12px;
  border-left:3px solid var(--gold);
  color:#ffd78b;
  font-style:italic;
  line-height:1.7;
}
.empty-state{
  padding:24px;
  border-radius:24px;
  background:var(--panel);
  border:1px solid var(--line);
  color:var(--muted);
}
@media (max-width:1100px){
  .toolbar,.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:720px){
  .hero,.tool-card,.verb-card{border-radius:20px}
  .toolbar,.cards-grid,.hero-stats,.filter-grid{grid-template-columns:1fr;}
  .results-header{flex-direction:column; align-items:start;}
  .card-head{flex-direction:column;}
}
