:root{
  --orange:#ff9418;
  --orange-dark:#e67f00;
  --dark:#111827;
  --ink:#1f2937;
  --muted:#6b7280;
  --line:#e5e7eb;
  --bg:#f5f7fb;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{text-decoration:none}
.shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:
radial-gradient(circle at top right,rgba(255,148,24,.13),transparent 35%),
linear-gradient(145deg,#f6f8fb,#e9edf4)}
.card{width:min(680px,100%);background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:0 25px 75px rgba(15,23,42,.12);overflow:hidden}
.brand{background:linear-gradient(145deg,#111827,#202938);padding:30px;text-align:center}
.brand img{width:min(330px,78%);height:auto;filter:drop-shadow(0 12px 25px rgba(0,0,0,.25))}
.content{padding:30px}
.eyebrow{font-size:10px;font-weight:800;letter-spacing:.15em;color:var(--orange)}
h1{font-size:30px;margin:8px 0 10px}
p{color:var(--muted);line-height:1.6}
.actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.btn{min-height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-weight:800;padding:12px 16px}
.btn-primary{background:linear-gradient(135deg,#ff9f2d,#ee8200);color:#fff}
.btn-dark{background:var(--dark);color:#fff}
.btn-light{background:#f3f4f6;color:#374151}
.notice{margin-top:24px;padding:14px;border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:12px;line-height:1.55}
.fullscreen{position:fixed;inset:0;background:#fff}
iframe{display:block;width:100%;height:100%;border:0;background:#fff}
.state{min-height:100vh;display:grid;place-items:center;padding:24px;text-align:center}
.state-box{max-width:520px}
.spinner{width:42px;height:42px;border:4px solid #e5e7eb;border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}
@keyframes spin{to{transform:rotate(360deg)}}
.hidden{display:none!important}
@media(max-width:560px){
  .shell{padding:0}
  .card{min-height:100vh;border:0;border-radius:0}
  .content{padding:26px 20px}
  .actions{grid-template-columns:1fr}
}
