body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100vh}.event-detail[data-v-48ddc5c2]{width:100%;padding:16px 12px}@media(min-width:640px){.event-detail[data-v-48ddc5c2]{max-width:720px;margin:0 auto;padding:32px 24px}}.loading-state[data-v-48ddc5c2],.error-state[data-v-48ddc5c2]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center}.spinner[data-v-48ddc5c2]{width:48px;height:48px;margin-bottom:20px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin-48ddc5c2 .8s cubic-bezier(.4,0,.2,1) infinite}@keyframes spin-48ddc5c2{to{transform:rotate(360deg)}}.loading-text[data-v-48ddc5c2]{color:#64748b;font-size:.95rem}.error-icon[data-v-48ddc5c2]{width:56px;height:56px;margin-bottom:16px;color:#ef4444}.error-text[data-v-48ddc5c2]{color:#64748b;font-size:.95rem}.event-info-card[data-v-48ddc5c2]{background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;border-radius:16px;padding:16px;margin-bottom:12px}@media(min-width:640px){.event-info-card[data-v-48ddc5c2]{border-radius:20px;padding:20px;margin-bottom:20px}}.info-header[data-v-48ddc5c2]{display:flex;flex-direction:column;gap:10px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #f1f5f9}@media(min-width:480px){.info-header[data-v-48ddc5c2]{flex-direction:row;align-items:center;justify-content:space-between}}.event-name[data-v-48ddc5c2]{font-size:1.35rem;font-weight:800;color:#0f172a;line-height:1.3;letter-spacing:-.03em}@media(min-width:640px){.event-name[data-v-48ddc5c2]{font-size:1.6rem}}.event-status[data-v-48ddc5c2]{padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:700;letter-spacing:.02em;box-shadow:0 2px 6px #00000014;flex-shrink:0}.status-draft[data-v-48ddc5c2]{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569}.status-registration[data-v-48ddc5c2]{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8}.status-checkin[data-v-48ddc5c2]{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#b45309}.status-ongoing[data-v-48ddc5c2]{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#15803d}.status-arbitration[data-v-48ddc5c2]{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#b91c1c}.status-completed[data-v-48ddc5c2]{background:linear-gradient(135deg,#ede9fe,#ddd6fe);color:#6d28d9}.status-archived[data-v-48ddc5c2]{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#4b5563}.info-items[data-v-48ddc5c2]{display:flex;flex-direction:column;gap:14px}@media(min-width:480px){.info-items[data-v-48ddc5c2]{gap:8px}}.info-item[data-v-48ddc5c2]{display:flex;align-items:center;gap:12px}.info-icon[data-v-48ddc5c2]{width:36px;height:36px;flex-shrink:0;padding:8px;border-radius:10px;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#64748b}.info-item:nth-child(1) .info-icon[data-v-48ddc5c2]{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#2563eb}.info-item:nth-child(2) .info-icon[data-v-48ddc5c2]{background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#ea580c}.info-item:nth-child(3) .info-icon[data-v-48ddc5c2]{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#16a34a}.info-text[data-v-48ddc5c2]{display:flex;flex-direction:column;gap:2px;min-width:0}.info-label[data-v-48ddc5c2]{font-size:.7rem;color:#94a3b8;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.info-value[data-v-48ddc5c2]{color:#1e293b;font-weight:600;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.banner-section[data-v-48ddc5c2]{margin-bottom:16px;border-radius:12px;overflow:hidden}@media(min-width:640px){.banner-section[data-v-48ddc5c2]{margin-bottom:24px;border-radius:16px}}.banner-wrapper[data-v-48ddc5c2]{position:relative;width:100%}.banner-img[data-v-48ddc5c2]{width:100%;height:160px;object-fit:cover;display:block;transition:opacity .3s ease}@media(min-width:640px){.banner-img[data-v-48ddc5c2]{height:240px}}.banner-dots[data-v-48ddc5c2]{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:1}.banner-dot[data-v-48ddc5c2]{width:8px;height:8px;border-radius:50%;background:#ffffff80;cursor:pointer;transition:all .2s ease}.banner-dot.active[data-v-48ddc5c2]{width:20px;border-radius:4px;background:#fff}@media(min-width:640px){.banner-dot[data-v-48ddc5c2]{width:10px;height:10px}.banner-dot.active[data-v-48ddc5c2]{width:24px}}.content-card[data-v-48ddc5c2]{background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;border-radius:16px;padding:16px;margin-bottom:12px}@media(min-width:640px){.content-card[data-v-48ddc5c2]{border-radius:20px;padding:24px;margin-bottom:20px}}.section-title[data-v-48ddc5c2]{display:flex;align-items:center;gap:8px;color:#1e293b;font-size:1rem;font-weight:600;margin-bottom:14px;letter-spacing:-.01em}@media(min-width:640px){.section-title[data-v-48ddc5c2]{gap:10px;font-size:1.1rem;margin-bottom:18px}}.title-icon[data-v-48ddc5c2]{width:20px;height:20px;color:#3b82f6}.project-count[data-v-48ddc5c2]{margin-left:auto;background:#dbeafe;color:#2563eb;padding:2px 10px;border-radius:12px;font-size:.8rem;font-weight:600}.description[data-v-48ddc5c2]{color:#475569;line-height:1.7;font-size:.95rem}.description[data-v-48ddc5c2] p{margin-bottom:12px}.description[data-v-48ddc5c2] p:last-child{margin-bottom:0}.description[data-v-48ddc5c2] img{max-width:100%;height:auto;display:block;border-radius:8px;margin:8px 0}.project-tabs-section[data-v-48ddc5c2]{margin-bottom:12px}@media(min-width:640px){.project-tabs-section[data-v-48ddc5c2]{margin-bottom:20px}}.tabs-wrapper[data-v-48ddc5c2]{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding:4px}.tabs-wrapper[data-v-48ddc5c2]::-webkit-scrollbar{display:none}.project-tab[data-v-48ddc5c2]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s ease;scroll-snap-align:start;flex-shrink:0;min-width:80px}@media(min-width:640px){.project-tab[data-v-48ddc5c2]{padding:12px 20px;border-radius:14px;min-width:100px}}.project-tab[data-v-48ddc5c2]:hover{background:#f1f5f9;border-color:#cbd5e1}.project-tab.active[data-v-48ddc5c2]{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:transparent;box-shadow:0 2px 8px #3b82f64d}.tab-name[data-v-48ddc5c2]{font-size:.85rem;font-weight:600;color:#475569;text-align:center}@media(min-width:640px){.tab-name[data-v-48ddc5c2]{font-size:.9rem}}.project-tab.active .tab-name[data-v-48ddc5c2]{color:#fff}.tab-type[data-v-48ddc5c2]{font-size:.65rem;padding:2px 8px;border-radius:8px;font-weight:600}.project-tab.active .tab-type[data-v-48ddc5c2]{background:#fff3;color:#fff}.tab-type.type-speed[data-v-48ddc5c2]{background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#ea580c}.tab-type.type-score[data-v-48ddc5c2]{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#9333ea}.project-detail-section[data-v-48ddc5c2]{overflow:hidden}.project-info-header[data-v-48ddc5c2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.project-title[data-v-48ddc5c2]{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0}@media(min-width:640px){.project-title[data-v-48ddc5c2]{font-size:1.25rem}}.project-type-badge[data-v-48ddc5c2]{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:18px;font-size:.75rem;font-weight:600;flex-shrink:0}@media(min-width:640px){.project-type-badge[data-v-48ddc5c2]{gap:6px;padding:6px 14px;border-radius:20px;font-size:.8rem}}.badge-icon[data-v-48ddc5c2]{width:14px;height:14px}.type-speed[data-v-48ddc5c2]{background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#ea580c}.type-score[data-v-48ddc5c2]{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#9333ea}.lap-tabs[data-v-48ddc5c2]{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.lap-tabs[data-v-48ddc5c2]::-webkit-scrollbar{display:none}.lap-tab[data-v-48ddc5c2]{padding:6px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;font-size:.85rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease;white-space:nowrap}.lap-tab[data-v-48ddc5c2]:hover{background:#f1f5f9;border-color:#cbd5e1}.lap-tab.active[data-v-48ddc5c2]{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:transparent;color:#fff;box-shadow:0 2px 6px #3b82f640}.ranking-section[data-v-48ddc5c2]{min-height:200px}.ranking-header[data-v-48ddc5c2]{display:flex;justify-content:space-between;align-items:center;padding:8px 0;margin-bottom:8px}.update-time[data-v-48ddc5c2]{font-size:.75rem;color:#94a3b8}.refresh-btn[data-v-48ddc5c2]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#64748b}.refresh-btn[data-v-48ddc5c2]:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1;color:#3b82f6}.refresh-btn[data-v-48ddc5c2]:disabled{opacity:.6;cursor:not-allowed}.refresh-icon[data-v-48ddc5c2]{width:16px;height:16px}.refresh-icon.spinning[data-v-48ddc5c2]{animation:spin-48ddc5c2 .8s cubic-bezier(.4,0,.2,1) infinite}.ranking-loading[data-v-48ddc5c2],.ranking-error[data-v-48ddc5c2],.ranking-empty[data-v-48ddc5c2]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:#94a3b8}.ranking-loading svg[data-v-48ddc5c2],.ranking-error svg[data-v-48ddc5c2],.ranking-empty svg[data-v-48ddc5c2]{width:48px;height:48px;opacity:.5}.spinner-small[data-v-48ddc5c2]{width:24px;height:24px;border:2px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin-48ddc5c2 .8s cubic-bezier(.4,0,.2,1) infinite}.error-icon-small[data-v-48ddc5c2]{width:32px;height:32px;color:#ef4444}.ranking-list[data-v-48ddc5c2]{display:flex;flex-direction:column}.ranking-item[data-v-48ddc5c2]{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f1f5f9}.ranking-item[data-v-48ddc5c2]:last-child{border-bottom:none}.rank-position[data-v-48ddc5c2]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#94a3b8;border-radius:6px;font-weight:600;font-size:.85rem;flex-shrink:0}.ranking-item:nth-child(1) .rank-position[data-v-48ddc5c2]{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#b45309;font-weight:700}.ranking-item:nth-child(2) .rank-position[data-v-48ddc5c2]{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569;font-weight:700}.ranking-item:nth-child(3) .rank-position[data-v-48ddc5c2]{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#c2410c;font-weight:700}.athlete-info[data-v-48ddc5c2]{display:flex;align-items:center;gap:10px;min-width:0}.bib-number[data-v-48ddc5c2]{padding:2px 6px;background:#f1f5f9;color:#64748b;border-radius:4px;font-size:.7rem;font-weight:600;flex-shrink:0}.athlete-details[data-v-48ddc5c2]{display:flex;flex-direction:column;gap:1px;min-width:0}.athlete-name[data-v-48ddc5c2]{font-weight:500;color:#1e293b;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.athlete-unit[data-v-48ddc5c2]{font-size:.75rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.athlete-result[data-v-48ddc5c2]{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.result-primary[data-v-48ddc5c2]{font-weight:700;color:#3b82f6;font-size:.95rem;font-variant-numeric:tabular-nums}.ranking-item:nth-child(1) .result-primary[data-v-48ddc5c2]{color:#b45309}.ranking-item:nth-child(2) .result-primary[data-v-48ddc5c2]{color:#475569}.ranking-item:nth-child(3) .result-primary[data-v-48ddc5c2]{color:#c2410c}.result-secondary[data-v-48ddc5c2]{font-size:.7rem;color:#94a3b8}.qrcode-wrapper[data-v-48ddc5c2]{display:flex;justify-content:center;padding:12px;background:#f8fafc;border-radius:12px}@media(min-width:480px){.qrcode-wrapper[data-v-48ddc5c2]{padding:16px;border-radius:14px}}.qrcode-img[data-v-48ddc5c2]{width:160px;height:160px;border-radius:10px}@media(min-width:480px){.qrcode-img[data-v-48ddc5c2]{width:180px;height:180px;border-radius:12px}}@media(min-width:640px){.qrcode-img[data-v-48ddc5c2]{width:200px;height:200px}}@media(prefers-reduced-motion:reduce){.spinner[data-v-48ddc5c2],.spinner-small[data-v-48ddc5c2]{animation:none}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:linear-gradient(135deg,#f0f4f8,#e2e8f0,#cbd5e1);min-height:100vh}.app{min-height:100vh}
