:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#e6e8f0;background:#111318;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.shell{max-width:1500px;margin:auto;padding:28px}.top,.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.top{margin-bottom:20px}.top h1{font-size:26px;margin:0 0 6px}.top p,.panel p,.muted,small{color:#9399aa}.version{font-size:12px;background:#6657e8;padding:4px 8px;border-radius:12px;vertical-align:middle}.panel{background:#1c2029;border:1px solid #2b303c;border-radius:14px;padding:22px;margin:16px 0}.auth{max-width:420px;margin:10vh auto}.auth form{display:grid;gap:14px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid .panel{margin:0}.panel h2{font-size:15px;letter-spacing:.06em;margin:0 0 14px;color:#abb4c9}.accent-orange{border-top:3px solid #f09c27}.accent-purple{border-top:3px solid #8172ff}.accent-red{border-top:3px solid #e64c52}.accent-green{border-top:3px solid #21b99a}.accent-blue{border-top:3px solid #448dff}.wide{grid-column:span 3}.toolbar{margin:12px 0}.actions{display:flex;gap:10px}label{display:block;font-size:13px;color:#aab1c3;margin:12px 0}input,textarea,select{display:block;width:100%;margin-top:6px;padding:11px 12px;color:#e8eaf0;background:#101218;border:1px solid #343a49;border-radius:7px;font:inherit}textarea{min-height:75px;resize:vertical}input[type=checkbox],input[type=file]{width:auto}input:disabled,textarea:disabled,select:disabled{opacity:.5}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.button,button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:8px;padding:11px 15px;text-decoration:none;font:600 14px inherit;color:white;cursor:pointer;background:#6258e8}.secondary{background:#303644;border:1px solid #444b5d}.orange{background:#bd741c;margin:4px}.primary{background:#6258e8;margin:4px}.disabled{background:#313541;color:#7c8393;cursor:not-allowed;margin:4px}.status{color:#65d8be}.preview{background:#11141a;border:1px solid #3d4150;border-radius:8px;padding:12px;margin:12px 0;max-height:300px;overflow:auto}.hidden{display:none!important}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:12px;border-bottom:1px solid #323744;font-size:13px}th{color:#9fa8ba}.event-name{font-weight:600}.pill{padding:4px 8px;border-radius:12px;background:#163b36;color:#66dbc0}.contact-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px}.contact-row input{min-width:0}#toast{position:fixed;bottom:20px;right:20px;background:#303644;padding:12px 18px;border-radius:8px;display:none;box-shadow:0 6px 22px #0008}small{display:block;margin:10px 0}@media(max-width:1000px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wide{grid-column:span 2}}@media(max-width:650px){.shell{padding:14px}.grid{grid-template-columns:1fr}.wide{grid-column:span 1}.top{align-items:flex-start}.top h1{font-size:20px}.two,.contact-row{grid-template-columns:1fr}.panel{padding:16px}.toolbar{align-items:flex-start;flex-wrap:wrap}}
.danger{background:#b83c45;color:#fff}.check-label,.registrant{display:flex;align-items:center;gap:9px}.check-label input,.registrant input{width:auto;margin:0}.registrant{margin:8px 0;color:#ccd1dc}
.warning{color:#ffb648;background:#3a2d19;border:1px solid #8b6221;padding:9px;border-radius:7px}
.job-banner{padding:13px 16px;margin:12px 0;color:#a99dff;border:1px solid #6258e8;border-radius:9px;background:#1b1d2b}.job-banner button{float:right;margin-top:-5px}
.token-panel{border-top:3px solid #6258e8}.token-panel .toolbar{margin-top:0}.token-panel .toolbar h2{margin-bottom:6px}.token-steps{color:#aab1c3;line-height:1.8;margin:14px 0 18px;padding-left:22px}.token-steps li{padding-left:4px}.token-form>label{margin:12px 0 6px}.token-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.token-input-row input{margin:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.token-input-row button{margin:0;white-space:nowrap}#token-status:empty{display:none}
@media(max-width:650px){.token-input-row{grid-template-columns:1fr}.token-input-row button{width:100%}}
