.detail-page{min-height:100vh;background:var(--bg-primary);padding-top:80px}.detail-container{max-width:900px;margin:0 auto;padding:2rem 1rem 4rem}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);text-decoration:none;font-size:.9rem;margin-bottom:1.5rem;transition:color .2s ease}.back-link:hover{color:var(--orange)}.back-link svg{width:18px;height:18px}.btn-back{display:inline-block;margin-top:1rem;padding:.75rem 1.5rem;background:var(--orange);color:#fff;text-decoration:none;border-radius:8px;font-weight:600}.detail-hero{position:relative;border-radius:20px;overflow:hidden;margin-bottom:2rem;background:var(--bg-secondary)}.hero-image-container{position:relative;height:300px}.hero-image{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,13,20,.95) 0,rgba(10,13,20,.3) 50%,transparent)}.hero-placeholder{height:200px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-elevated) 0,var(--bg-secondary) 100%)}.hero-sport-icon{width:100px;height:100px;opacity:.3}.hero-content{padding:1.5rem 2rem 2rem}.hero-image-container+.hero-content{position:absolute;bottom:0;left:0;right:0}.detail-title{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800;color:var(--text-primary);margin:.75rem 0 1rem;line-height:1.2}.detail-location{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:1rem}.detail-location svg{width:18px;height:18px;color:var(--orange)}.sport-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border-radius:20px;font-size:.8rem;font-weight:600;color:#fff}.detail-info{background:var(--bg-secondary);border:1px solid var(--border);border-radius:16px;padding:2rem;margin-bottom:2rem}.info-block{margin-bottom:1.5rem}.info-block:last-child{margin-bottom:0}.info-block h2{font-size:1rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.info-block p{color:var(--text-secondary);line-height:1.7}.next-date{font-size:1.25rem;font-weight:600;color:var(--orange)!important}.disciplines-list{display:flex;flex-wrap:wrap;gap:.5rem}.discipline-tag{padding:.5rem 1rem;background:rgba(249,115,22,.1);border:1px solid rgba(249,115,22,.2);border-radius:8px;font-size:.9rem;color:var(--orange-light)}.info-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.info-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;color:var(--text-primary);text-decoration:none;font-size:.9rem;font-weight:500;transition:all .2s ease}.info-link:hover{border-color:var(--orange);color:var(--orange)}.info-link svg{width:18px;height:18px}.editions-section{margin-top:2rem}.editions-section h2{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem}.editions-list{display:flex;flex-direction:column;gap:1rem}.edition-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem;transition:all .2s ease}.edition-card.upcoming{border-left:4px solid var(--orange)}.edition-card.past{opacity:.7}.edition-card:hover{background:var(--bg-elevated)}.edition-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.edition-year{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.edition-status{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.edition-status.upcoming{background:rgba(249,115,22,.15);color:var(--orange)}.edition-status.past{background:var(--bg-elevated);color:var(--text-muted)}.edition-date,.edition-location{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.9rem;margin-bottom:.5rem}.edition-date svg,.edition-location svg{width:16px;height:16px;color:var(--text-muted)}.edition-distances{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.distance-tag{padding:.375rem .75rem;background:var(--bg-elevated);border-radius:6px;font-size:.8rem;color:var(--text-secondary)}.distance-tag small{color:var(--text-muted)}.edition-actions{margin-top:1.25rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.btn-register{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--orange);color:#fff;text-decoration:none;border-radius:8px;font-size:.9rem;font-weight:600;transition:all .2s ease}.btn-register:hover{background:var(--orange-dark);transform:translateY(-2px)}.btn-register svg{width:16px;height:16px}.gpx-downloads{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.gpx-label{font-size:.85rem;color:var(--text-muted)}.gpx-link{padding:.375rem .75rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);text-decoration:none;font-size:.8rem;transition:all .2s ease}.gpx-link:hover{border-color:var(--orange);color:var(--orange)}.gpx-link small{color:var(--text-muted)}.error-container,.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-secondary);min-height:50vh}.loading-spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--orange);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:640px){.detail-container{padding:1rem 1rem 3rem}.hero-image-container{height:200px}.hero-content{padding:1rem 1.25rem 1.5rem}.detail-info{padding:1.25rem}.edition-card{padding:1rem}.edition-header{flex-direction:column;align-items:flex-start;gap:.5rem}}