/* Kriger Mobility — site theme. Dark, borderless cards, Barlow, one hero per surface. */
:root{
  --bg:#0A0A0A; --card:#161616; --border:#2A2A2A; --text:#FFFFFF;
  --dim:#8A8A8A; --accent:#2563EB;
  --green:#22C55E; --yellow:#F59E0B; --red:#EF4444;
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:'Barlow','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  -webkit-font-smoothing:antialiased; line-height:1.55;
}
.wrap{max-width:560px;margin:0 auto;padding:28px 18px 80px}
.brand{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--dim);margin:4px 0 26px}
h1{font-size:26px;font-weight:700;margin:0 0 10px}
p.lead{color:var(--dim);font-size:15px;margin:0 0 26px}
.card{background:var(--card);border-radius:14px;padding:20px;margin:0 0 14px}
label{display:block;font-size:13px;color:var(--dim);margin:0 0 6px}
input[type=email],input[type=text]{
  width:100%;background:#0F0F0F;border:1px solid var(--border);border-radius:10px;
  color:var(--text);font-family:inherit;font-size:16px;padding:13px 14px;margin:0 0 16px;
}
input:focus{outline:none;border-color:var(--accent)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--dim);margin:2px 0 18px}
.consent input{margin-top:3px;accent-color:var(--accent);flex-shrink:0}
.consent label{cursor:pointer;margin:0;font-size:13px;color:var(--dim)}
.btn{
  display:block;width:100%;background:var(--accent);color:#fff;border:none;border-radius:10px;
  font-family:inherit;font-size:16px;font-weight:600;padding:14px;cursor:pointer;text-align:center;
  text-decoration:none;
}
.btn:disabled{opacity:.45}
.btn.ghost{background:transparent;border:1px solid var(--border);color:var(--text)}
.note{font-size:12.5px;color:var(--dim);margin-top:14px}
.err{color:var(--red);font-size:14px;margin:10px 0 0;min-height:18px}
.ok-view{text-align:center;padding:40px 10px}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px;vertical-align:1px}
.d-green{background:var(--green)}.d-yellow{background:var(--yellow)}
.d-dim{background:#3A3A3A}.d-blue{background:var(--accent)}
/* film page */
.setup{border-left:3px solid var(--accent);border-radius:0 14px 14px 0}
.setup ul{margin:8px 0 0;padding-left:18px;color:var(--dim);font-size:14px}
.setup li{margin:4px 0}
.slot{position:relative}
.slot h3{font-size:17px;font-weight:600;margin:0 0 2px}
.slot .side-tag{font-size:12px;color:var(--dim);letter-spacing:1.5px;text-transform:uppercase}
.slot p.cue{color:var(--dim);font-size:14px;margin:8px 0 14px}
.slot .row{display:flex;align-items:center;gap:10px}
.slot .stat{font-size:13.5px;color:var(--dim);flex:1}
.filebtn{position:relative;overflow:hidden;display:inline-block}
.filebtn input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}
.progress{height:5px;background:#222;border-radius:3px;margin-top:12px;overflow:hidden;display:none}
.progress>div{height:100%;background:var(--accent);width:0%;transition:width .2s}
.viewtag{font-size:11px;color:var(--dim);border:1px solid var(--border);border-radius:6px;
  padding:2px 8px;letter-spacing:1px;text-transform:uppercase}
.banner{background:var(--card);border-radius:14px;padding:16px 20px;margin:0 0 14px;
  font-size:14px;color:var(--dim)}
.banner b{color:var(--text)}
