
:root { --bg:#070a0f; --panel:#121923; --text:#f4f7fb; --muted:#9ca9ba; --line:rgba(255,255,255,.1); --gold:#f2c14e; --green:#3fd0a0; --red:#ff8d8d; }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; background:var(--bg); color:var(--text); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.signup-shell { width:min(1120px,100%); margin:0 auto; padding:18px; }
.signup-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px; border:1px solid var(--line); background:linear-gradient(180deg,rgba(23,34,49,.98),rgba(11,16,24,.98)); border-radius:8px; }
.brand-line { display:flex; align-items:center; gap:14px; min-width:0; }
.brand-line img { width:124px; max-width:34vw; height:auto; object-fit:contain; }
.eyebrow { margin:0 0 5px; color:var(--gold); font-size:12px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
h1,h2,p { margin:0; }
h1 { font-size:28px; line-height:1.04; letter-spacing:0; }
h2 { font-size:18px; letter-spacing:0; }
.status { min-width:92px; text-align:center; padding:8px 10px; border:1px solid #566172; border-radius:7px; font-size:12px; font-weight:850; color:#d7dfeb; text-transform:uppercase; }
.status.ok { border-color:#2e936d; color:#9ff0c8; background:rgba(46,147,109,.12); }
.status.warn { border-color:#b98932; color:#ffd37a; background:rgba(185,137,50,.12); }
.event-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:14px 0; }
.event-card,.panel,.access-panel { border:1px solid var(--line); background:rgba(18,25,35,.96); border-radius:8px; }
.event-card { padding:13px; min-height:78px; border-left:3px solid var(--gold); }
.event-card strong { display:block; overflow-wrap:anywhere; font-size:18px; line-height:1.15; }
.event-card small { display:block; margin-top:6px; color:var(--muted); font-size:12px; }
.access-panel,.panel { padding:16px; }
.login-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:end; }
label { display:grid; gap:7px; color:var(--muted); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
input,select,textarea { width:100%; border:1px solid rgba(255,255,255,.12); border-radius:7px; background:#0b111a; color:var(--text); padding:11px 12px; font:inherit; letter-spacing:0; }
textarea { resize:vertical; min-height:104px; text-transform:none; }
button { border:1px solid rgba(242,193,78,.55); border-radius:7px; background:rgba(242,193,78,.18); color:#fff; padding:11px 14px; font:inherit; font-weight:850; cursor:pointer; }
button:hover { background:rgba(242,193,78,.26); }
button:disabled { cursor:wait; opacity:.65; }
.ghost { border-color:rgba(255,255,255,.14); background:rgba(255,255,255,.05); }
.app-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr); gap:14px; }
.panel-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:12px; margin-bottom:14px; border-bottom:1px solid rgba(255,255,255,.08); }
.signup-form { display:grid; gap:14px; }
.field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.segmented { display:flex; align-items:center; gap:8px; margin:0; padding:0; border:0; }
.segmented legend { color:var(--muted); font-size:12px; font-weight:850; text-transform:uppercase; letter-spacing:.04em; margin-right:4px; }
.segmented label { display:block; text-transform:none; letter-spacing:0; }
.segmented input { position:absolute; opacity:0; pointer-events:none; }
.segmented span { display:inline-flex; justify-content:center; min-width:84px; padding:9px 12px; border:1px solid rgba(255,255,255,.1); border-radius:7px; background:#0b111a; color:#d8e0ea; cursor:pointer; }
.segmented input:checked + span { border-color:rgba(63,208,160,.65); background:rgba(63,208,160,.16); color:#fff; }
.form-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.form-message { color:var(--muted); font-size:13px; min-height:18px; }
.form-message.error { color:var(--red); }
.form-message.ok { color:#9ff0c8; }
.summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.summary-tile,.recent-item { padding:12px; border:1px solid rgba(255,255,255,.08); border-radius:7px; background:#0b111a; }
.summary-tile b { display:block; font-size:24px; }
.summary-tile span,.recent-item small { color:var(--muted); font-size:12px; }
.summary-tile span { font-weight:800; text-transform:uppercase; }
.recent-list { display:grid; gap:8px; margin-top:14px; }
.recent-item b { display:block; font-size:14px; }
.recent-item small { display:block; margin-top:3px; }
.hidden { display:none !important; }
@media (max-width:780px) { .signup-shell{padding:12px;} .signup-head{align-items:flex-start; flex-direction:column;} .event-strip,.app-grid,.field-grid{grid-template-columns:1fr;} .login-form{grid-template-columns:1fr;} .segmented{align-items:stretch; flex-wrap:wrap;} .segmented legend{width:100%;} .segmented label{flex:1 1 88px;} .segmented span{width:100%; min-width:0;} }
