*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";color:#0f172a;background:#fafafa}.app-header{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;border-bottom:1px solid #e5e7eb;background:#fafafae6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}.button-sm{padding:6px 10px;font-size:.9rem;line-height:1}.app-logo{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:6px 8px;margin:0;font-size:18px;font-weight:900;cursor:pointer;color:#0f172a;display:inline-flex;align-items:center;height:28px;overflow:hidden}.app-logo:hover{background:#0f172a0a;border-radius:10px}.app-auth{display:flex;align-items:center;gap:8px}.app-main{padding:40px}.card-button{display:block;width:100%;padding:0;border:0;background:transparent;text-align:inherit}.table-wrap{max-height:520px;overflow:auto}.rank-table{width:100%;border-collapse:collapse}.rank-table th,.rank-table td{padding:12px 14px;border-bottom:1px solid #e5e7eb}.rank-table thead th{position:sticky;top:0;background:#f8fafc;z-index:1}.rank-table th:nth-child(1),.rank-table td:nth-child(1){text-align:center}.rank-table th:nth-child(2),.rank-table td:nth-child(2){text-align:center}.rank-table th:nth-child(3),.rank-table td:nth-child(3){text-align:center;font-variant-numeric:tabular-nums}.container{max-width:960px;margin:0 auto;padding:24px}.event-detail-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}@media(min-width:1024px){.event-detail-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:14px}}.event-detail-main,.comments-sidebar{min-width:0}@media(min-width:1024px){.comments-sidebar{position:sticky;top:84px;max-height:calc(100vh - 96px);overflow:auto;padding-bottom:12px}}.event-hero{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 1px 3px #0000000d}.event-hero-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.event-hero-title{display:flex;align-items:center;gap:10px;margin-top:12px}.event-title{margin:0;font-size:22px;line-height:1.2}.event-desc{margin:12px 0 0;color:#334155}.event-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.stat{border:1px solid #e5e7eb;background:#f8fafc;border-radius:12px;padding:10px 12px}.stat-label{font-size:12px;color:#64748b}.stat-value{margin-top:2px;font-size:16px;font-weight:700;color:#0f172a}.event-gallery{padding:16px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-item{display:block;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb;background:#f8fafc;padding:0;cursor:pointer}.gallery-item:hover{border-color:#cbd5e1;box-shadow:0 10px 30px #0f172a14}.gallery-item img{width:100%;height:140px;object-fit:cover;display:block}.lightbox{position:relative;width:min(960px,calc(100vw - 28px));max-height:calc(100vh - 28px);background:#0b1020;border:1px solid rgba(148,163,184,.3);border-radius:14px;overflow:hidden}.app-logo-img{display:block;height:100%;width:auto;object-fit:cover}.lightbox-img{display:block;width:100%;height:auto;max-height:calc(100vh - 28px);object-fit:contain;background:#0b1020}.lightbox-close{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:999px;border:1px solid rgba(148,163,184,.4);background:#020617a6;color:#fff;cursor:pointer;font-size:16px;line-height:1}.lightbox-close:hover{background:#020617cc}.option-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px}.option-card{text-align:left;width:100%;border:1px solid #e5e7eb;background:#fff;border-radius:14px;padding:12px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s}.option-card:hover{transform:translateY(-1px);box-shadow:0 10px 30px #0f172a14;border-color:#cbd5e1}.option-card.selected{border-color:#2563eb;box-shadow:0 10px 30px #2563eb26}.option-top{display:flex;gap:12px;align-items:center}.option-image-button{padding:0;border:0;background:transparent;cursor:pointer;line-height:0;border-radius:12px;flex:0 0 auto}.option-image-button:hover .option-image{border-color:#cbd5e1}.option-image{width:56px;height:56px;border-radius:12px;object-fit:cover;border:1px solid #e5e7eb;background:#f8fafc;flex:0 0 auto}.option-image.placeholder{background:radial-gradient(circle at 30% 30%,#ffffffd9,#e2e8f0e6),linear-gradient(135deg,#f1f5f9,#e2e8f0);filter:blur(.2px);display:grid;place-items:center}.option-image-placeholder-icon{font-size:14px;line-height:1;opacity:.55;filter:grayscale(1);-webkit-user-select:none;user-select:none}.option-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}.option-name{font-weight:800;color:#0f172a;line-height:1.2}.odds-pill{font-size:12px;font-weight:800;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;padding:6px 10px;border-radius:999px;white-space:nowrap}.option-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.option-metric{border:1px solid #e5e7eb;background:#f8fafc;border-radius:12px;padding:10px 12px}.option-metric-label{font-size:12px;color:#64748b}.option-metric-value{margin-top:2px;font-weight:800;color:#0f172a}@media(min-width:640px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-item img{height:160px}.option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.page-title{margin:0;font-size:28px}.page-sub{margin-top:8px;color:#6b7280}.bet-cta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;padding:10px 0 2px}.bet-amount-row{display:flex;align-items:center;gap:10px}.bet-unit{font-weight:800;color:#334155;white-space:nowrap}.grid{display:grid;grid-template-columns:1fr;gap:16px}.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000000d}.card-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.card-title{margin:0;font-size:20px}.status-badge{color:#fff;font-weight:700;padding:6px 10px;border-radius:999px;font-size:12px;letter-spacing:.3px}.card-desc{margin:12px 0 8px;color:#334155}.card-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.meta-item{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px}.meta-label{display:block;font-size:12px;color:#64748b;margin-bottom:4px}.meta-value{font-size:14px;color:#0f172a}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;word-break:break-all}.progress-section{margin-top:12px}.progress-label{color:#64748b;font-size:12px;margin-bottom:8px}.progress-container{position:relative}.progress-track{height:14px;background:#e5e7eb;border-radius:999px;overflow:hidden;border:1px solid #e5e7eb}.progress-fill{height:100%;background:linear-gradient(180deg,#4f8df3,#3b82f6,#2563eb);box-shadow:inset 0 1px 1px #ffffff40,inset 0 -1px 1px #00000014;transition:width .4s ease}.progress-container .progress-tooltip{position:absolute;bottom:calc(100% + 8px);right:0;background:#0f172a;color:#fff;padding:8px 10px;border-radius:8px;font-size:12px;box-shadow:0 6px 20px #0003;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .12s ease,transform .12s ease;white-space:nowrap}.progress-container:hover .progress-tooltip{opacity:1;transform:translateY(0)}.progress-container .progress-tooltip:after{content:"";position:absolute;top:100%;right:12px;border-width:6px;border-style:solid;border-color:#0f172a transparent transparent transparent}.card-footer{display:flex;justify-content:flex-end;margin-top:12px}.event-id{color:#9ca3af;font-size:12px}@media(min-width:640px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:#fff;width:100%;max-width:760px;border-radius:12px;box-shadow:0 20px 60px #00000040;border:1px solid #e5e7eb;max-height:calc(100vh - 32px);overflow:auto}.modal-header{padding:16px 16px 8px;border-bottom:1px solid #eef2f7}.modal-body{padding:16px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.form-row{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:12px}.form-grid{display:grid;grid-template-columns:1fr;gap:12px}.form-grid .span-2{grid-column:1}@media(min-width:640px){.form-grid{grid-template-columns:1fr 1fr;gap:12px 16px}.form-grid .span-2{grid-column:1 / -1}}.image-input-grid{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:640px){.image-input-grid{grid-template-columns:1fr 1fr;gap:12px 16px}}.option-row{display:grid;grid-template-columns:1fr 160px auto;gap:8px;align-items:center}@media(max-width:420px){.option-row{grid-template-columns:1fr 120px auto}}.inline-row{display:grid;grid-template-columns:1fr auto;gap:8px}label{font-size:12px;color:#64748b}.input{width:100%;padding:10px 12px;font-size:14px;border:1px solid #e5e7eb;border-radius:8px;outline:none;background:#f8fafc}.input:focus{border-color:#93c5fd;box-shadow:0 0 0 3px #93c5fd59;background:#fff}.form-error{color:#ef4444;font-size:12px}.form-info{color:#16a34a;font-size:12px}.button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #e5e7eb;background:#f8fafc;color:#0f172a;padding:10px 14px;border-radius:8px;font-size:14px;cursor:pointer}.button:hover{background:#f1f5f9}.button:disabled{opacity:.6;cursor:not-allowed}.button.primary{background:#2563eb;border-color:#1d4ed8;color:#fff}.button.primary:hover{background:#1d4ed8}.button.ghost{background:transparent}.button.google{background:#4285f4;border-color:#4285f4;color:#fff}.button.google:hover{background:#3367d6}
