:root {
  color-scheme: dark;
  --bg:#090b10;
  --card:#121620;
  --border:#272d3a;
  --text:#f7f8fb;
  --muted:#aab1c2;
  --accent:#5865f2;
  --accent-hover:#4752c4;
  --danger:#ff7180;
}
*{box-sizing:border-box}
body{
  min-height:100vh;margin:0;padding:24px;display:grid;place-items:center;
  font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);
  background:radial-gradient(circle at top,rgba(88,101,242,.20),transparent 38%),var(--bg)
}
.home-card,.card{
  width:min(100%,470px);padding:34px;border:1px solid var(--border);
  border-radius:20px;background:rgba(18,22,32,.95);
  box-shadow:0 26px 90px rgba(0,0,0,.45);text-align:center
}
.logo{
  width:60px;height:60px;margin:0 auto 18px;border-radius:18px;
  display:grid;place-items:center;background:var(--accent);
  color:#fff;font-size:29px;font-weight:900
}
.eyebrow{margin:0 0 8px;color:#9aa2ff;font-size:12px;font-weight:900;letter-spacing:.16em}
h1{margin:0 0 10px}
p{color:var(--muted);line-height:1.55}
form{margin-top:24px;text-align:left}
label{display:block;margin-bottom:8px;font-size:14px;font-weight:800}
input{
  width:100%;padding:14px 15px;border:1px solid var(--border);border-radius:11px;
  outline:none;background:#0c1018;color:var(--text);font-size:16px
}
input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(88,101,242,.18)}
button{
  width:100%;margin-top:13px;padding:14px 16px;border:0;border-radius:11px;
  cursor:pointer;background:var(--accent);color:#fff;font-size:15px;font-weight:900
}
button:hover{background:var(--accent-hover)}
button:disabled{opacity:.65;cursor:wait}
.message{min-height:22px;margin:12px 0 0;color:var(--danger);font-size:14px;text-align:center}
.viewer{width:min(100%,1250px)}
.transcript-area{
  overflow:hidden;border:1px solid var(--border);border-radius:18px;
  background:var(--card);box-shadow:0 26px 90px rgba(0,0,0,.45)
}
.transcript-header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;border-bottom:1px solid var(--border)}
.transcript-header h1{font-size:20px;margin:0}
.actions{display:flex;gap:10px}
.secondary{width:auto;margin:0;padding:10px 15px;background:#282e3c}
iframe{display:block;width:100%;height:calc(100vh - 145px);min-height:600px;border:0;background:#fff}
.hidden{display:none!important}
@media(max-width:650px){
 body{padding:10px}
 .home-card,.card{padding:25px 20px}
 .transcript-header{align-items:flex-start;flex-direction:column}
 .actions{width:100%}.actions button{flex:1}
 iframe{height:calc(100vh - 195px);min-height:480px}
}
