:root{--bg: #f5f6f8;--panel: #ffffff;--ink: #17181c;--muted: #606975;--line: #d9dee7;--accent: #b42318;--accent-strong: #86170f;--green: #0e7a54;--gold: #b7791f;--black: #111111;--shadow: 0 16px 40px rgba(30, 35, 42, .08)}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:10px 11px;min-height:42px}textarea{min-height:96px;resize:vertical}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:middle;font-size:14px}th{color:var(--muted);font-size:12px;text-transform:uppercase}.boot-screen,.auth-shell{min-height:100vh;display:grid;place-items:center;padding:clamp(16px,4vw,24px);background:linear-gradient(145deg,#b4231814,#0e7a540f),var(--bg)}.boot-screen{gap:12px}.spin{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-panel{width:min(520px,100%);background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:clamp(16px,4vw,28px)}.auth-brand,.brand,.row,.topbar,.account-chip,.panel-heading,.meta-row,.button-row,.table-actions,.inline-action{display:flex;align-items:center}.auth-brand{gap:14px;margin-bottom:24px}.auth-brand h1,.topbar h1,.panel-heading h2,.event-body h3{margin:0}.auth-brand h1{font-size:24px;line-height:1.1}.auth-brand p,.topbar p,.event-body p,.panel-heading span,.field span,.profile-grid span,.mini-list span,.car-row span,.demo-strip{color:var(--muted)}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:8px;background:var(--black);color:#fff;font-weight:800;flex:0 0 auto}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#eef1f5;border-radius:8px;padding:4px;margin-bottom:18px}.segmented button,.nav-tabs button,.icon-button,.primary,.secondary,.tiny{border:0;border-radius:8px}.segmented button{min-height:38px;background:transparent;color:var(--muted)}.segmented button.active{background:#fff;color:var(--ink);box-shadow:0 1px 8px #00000014}.form-grid{display:grid;gap:14px}.field{display:grid;gap:7px;font-size:13px}.primary,.secondary,.tiny{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;font-weight:700}.primary svg,.secondary svg,.tiny svg{flex:0 0 auto}.primary{background:var(--accent);color:#fff}.primary.danger-action{background:var(--accent-strong)}.secondary{background:#edf1f6;color:var(--ink)}.tiny{min-height:31px;padding:0 10px;background:#edf1f6;font-size:12px}.tiny.danger{background:#f6d9d5;color:var(--accent-strong)}.danger-outline{background:#fff4f2;border:1px solid #f1b5ae;color:var(--accent-strong)}.primary:disabled,.secondary:disabled{opacity:.58;cursor:progress}.demo-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;font-size:12px}.app-shell{min-height:100vh;display:grid;grid-template-columns:1fr}.sidebar{background:#161514;color:#fff;padding:16px}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{gap:12px;margin-bottom:16px}.sidebar-head .brand{margin-bottom:0}.brand small{display:block;color:#bdb7ad;margin-top:3px}.brand .brand-mark{background:var(--accent)}.menu-toggle{width:42px;height:42px;border:0;border-radius:8px;display:grid;place-items:center;background:#2a2724;color:#fff}.nav-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(145px,100%),1fr));gap:7px;max-height:0;overflow:hidden;pointer-events:none;transition:max-height .18s ease;visibility:hidden}.nav-tabs.open{max-height:760px;margin-top:10px;pointer-events:auto;visibility:visible}.nav-tabs button{min-height:44px;display:flex;align-items:center;gap:10px;background:transparent;color:#d8d1c7;padding:0 12px;text-align:left}.nav-tabs button.active,.nav-tabs button:hover{background:#2a2724;color:#fff}.workspace{min-width:0;padding:clamp(14px,4vw,28px)}.topbar{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:20px}.topbar h1{font-size:26px;line-height:1.1}.topbar p{margin:5px 0 0}.account-chip{width:100%;flex-wrap:wrap;gap:10px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 8px 8px 12px;box-shadow:0 8px 20px #1f1c180d}.view-switch{display:grid;grid-template-columns:auto minmax(120px,1fr);align-items:center;gap:7px;min-width:min(100%,190px)}.view-switch span{color:var(--muted);font-size:12px;font-weight:800}.view-switch select{min-height:36px;padding:6px 9px}.role-select{min-width:145px}.account-chip strong,.brand strong,.event-body h3,.mini-list strong,.car-row strong{min-width:0;overflow-wrap:anywhere}.role-pill,.type-pill,.status-pill{display:inline-flex;align-items:center;border-radius:999px;min-height:25px;padding:0 9px;font-size:12px;font-weight:800}.role-pill.admin,.status-pill.closed{background:#f6d9d5;color:var(--accent-strong)}.role-pill.competitor,.status-pill.open{background:#d7f3e5;color:var(--green)}.role-pill.spectator,.type-pill,.status-pill{background:#edf1f6;color:#4e5968}.icon-button{width:36px;height:36px;display:grid;place-items:center;background:#edf1f6;color:var(--ink)}.content-grid{display:grid;grid-template-columns:1fr;gap:18px}.span-2{grid-column:1 / -1}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:clamp(14px,3vw,18px);min-width:0}.panel-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:16px}.panel-heading h2{font-size:18px}.stats-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat{background:#fff;border:1px solid var(--line);border-radius:8px;padding:15px;display:grid;gap:7px}.stat svg{color:var(--accent)}.stat span{color:var(--muted);font-size:13px}.stat strong{font-size:22px}.event-strip,.card-grid,.car-list,.mini-list{display:grid;gap:12px}.card-grid{grid-template-columns:1fr}.event-card{display:grid;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;min-width:0;max-width:100%}.event-card.compact{grid-template-columns:1fr;min-height:116px}.event-card.compact>div{padding:14px;display:grid;align-content:center;gap:4px}.image-preview{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block;background:#ddd8ce;border-radius:8px}.event-card>.image-preview{border-radius:0;min-width:0}.event-card.compact .image-preview{height:auto;aspect-ratio:16 / 9}.image-preview.empty{display:grid;place-items:center;color:var(--muted);font-size:13px}.event-body{padding:15px;display:grid;gap:10px;min-width:0;overflow:hidden}.event-body h3{font-size:18px;line-height:1.2;overflow-wrap:anywhere;word-break:break-word}.event-body p{margin:0;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.spread{justify-content:space-between;flex-wrap:wrap;gap:8px}.meta-row{flex-wrap:wrap;gap:8px;min-width:0}.meta-row span,.success-line{display:inline-flex;align-items:center;min-width:0;max-width:100%;background:#f2f5f8;border:1px solid var(--line);border-radius:999px;padding:5px 9px;font-size:12px;overflow-wrap:anywhere}.success-line{color:var(--green);border-color:#bdebd4;background:#edfbf4}.inline-action{display:grid;grid-template-columns:1fr;align-items:stretch;gap:8px;min-width:0}.inline-action select{min-width:0}.inline-action .secondary,.registration-actions .secondary{width:100%;min-width:0;white-space:normal}.inline-action .secondary{white-space:nowrap}.registration-actions .button-row{display:grid;grid-template-columns:1fr}.registration-actions{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd;padding:10px;min-width:0}.car-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px}.car-row .image-preview,.leaderboard-table .image-preview,td .image-preview{width:86px;height:54px;aspect-ratio:auto}.empty-state{display:grid;gap:4px;padding:24px;border:1px dashed var(--line);border-radius:8px;background:#fbfcfd}.empty-state p{margin:0;font-weight:800}.empty-state span{color:var(--muted)}.table-wrap{width:100%;overflow-x:auto}.mini-list>div{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:8px}.checkbox-row{display:flex;gap:10px;align-items:center;color:var(--muted)}.checkbox-row input{width:18px;min-height:18px}.settings-panel{max-width:860px}.profile-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:20px}.profile-grid>div{display:grid;gap:5px;border:1px solid var(--line);border-radius:8px;padding:12px}.admin-upgrade{display:grid;grid-template-columns:1fr;gap:12px;align-items:end}.button-row,.table-actions{gap:8px;flex-wrap:wrap}.quick-timing{display:grid;gap:14px}.quick-lap-form{display:grid;grid-template-columns:minmax(92px,.75fr) minmax(120px,1fr) auto;gap:8px;align-items:center;min-width:430px}.quick-lap-form .primary{min-height:42px}.toast{position:fixed;right:20px;bottom:20px;background:#161514;color:#fff;border-radius:8px;padding:12px 14px;box-shadow:var(--shadow);z-index:20}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:18px;background:#1111116b}.confirm-dialog{width:min(440px,100%);display:grid;gap:14px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:18px}.confirm-dialog h2,.confirm-dialog p{margin:0}.confirm-dialog h2{font-size:20px;line-height:1.2}.confirm-dialog p{color:var(--muted);line-height:1.45}.confirm-dialog .button-row{justify-content:flex-end}.loading-overlay{position:fixed;left:50%;bottom:20px;z-index:45;transform:translate(-50%);display:inline-flex;align-items:center;gap:10px;max-width:calc(100vw - 28px);min-height:44px;padding:10px 14px;border-radius:8px;background:#161514;color:#fff;box-shadow:var(--shadow);font-weight:800}.mini-spinner{display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .75s linear infinite}@media(min-width:680px){.topbar{align-items:center;flex-direction:row;justify-content:space-between}.topbar h1{font-size:30px}.account-chip{width:auto}.panel-heading{align-items:center;flex-direction:row;justify-content:space-between}.event-card.compact{grid-template-columns:150px minmax(0,1fr)}.event-card.compact .image-preview{height:100%;aspect-ratio:auto}.admin-upgrade{grid-template-columns:minmax(0,1fr) auto}.inline-action .secondary,.registration-actions .secondary{width:auto}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:760px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-action{grid-template-columns:minmax(0,1fr) auto}.registration-actions .button-row{display:flex}}@media(min-width:980px){.content-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}.stats-row,.profile-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1120px){.app-shell{grid-template-columns:280px minmax(0,1fr)}.sidebar{min-height:100vh;padding:22px;position:sticky;top:0;align-self:start}.brand,.sidebar-head .brand{margin-bottom:28px}.sidebar-head{display:block}.menu-toggle{display:none}.nav-tabs{grid-template-columns:1fr;max-height:none;overflow:visible;margin-top:0;pointer-events:auto;visibility:visible}}
