.star-rating.svelte-g3tu47{display:inline-flex;gap:2px;align-items:center}.star.svelte-g3tu47{color:var(--text-muted, #666);display:flex;align-items:center;justify-content:center;line-height:1}.star.filled.svelte-g3tu47{color:#f5c518}.interactive.svelte-g3tu47 .star:where(.svelte-g3tu47){cursor:pointer;background:none;border:none;padding:0;transition:transform .1s}.interactive.svelte-g3tu47 .star:where(.svelte-g3tu47):hover{transform:scale(1.2)}h2.svelte-192nkn0{margin:0 0 4px;font-size:20px}.schedule-name.svelte-192nkn0{color:var(--text-secondary);margin:0 0 24px;font-size:14px}.field.svelte-192nkn0{margin-bottom:20px}label.svelte-192nkn0{display:block;font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-secondary)}textarea.svelte-192nkn0{width:100%;background:var(--bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);padding:12px;font-family:inherit;font-size:14px;resize:vertical;box-sizing:border-box}textarea.svelte-192nkn0:focus{outline:none;border-color:var(--accent)}.char-count.svelte-192nkn0{display:block;text-align:right;font-size:12px;color:var(--text-muted);margin-top:4px}.note-hint.svelte-192nkn0{font-size:12px;color:var(--text-muted);margin:4px 0 0}.error.svelte-192nkn0{color:#ef4444;font-size:14px;margin:0 0 16px}.actions.svelte-192nkn0{display:flex;gap:12px;flex-wrap:wrap}.btn-primary.svelte-192nkn0{flex:1;padding:12px 24px;background:var(--accent);color:var(--bg);border:none;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;font-family:inherit;transition:opacity .15s}.btn-primary.svelte-192nkn0:hover:not(:disabled){opacity:.9}.btn-primary.svelte-192nkn0:disabled{opacity:.5;cursor:not-allowed}.btn-danger.svelte-192nkn0{padding:12px 24px;background:none;color:#ef4444;border:1px solid #ef4444;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;font-family:inherit;transition:background-color .15s}.btn-danger.svelte-192nkn0:hover:not(:disabled){background:#ef44441a}.btn-danger.svelte-192nkn0:disabled{opacity:.5;cursor:not-allowed}.concert-detail.svelte-83ecl{padding:24px 0 48px}.breadcrumb.svelte-83ecl{font-size:14px;margin-bottom:24px;color:var(--text-muted);padding:0 16px}.breadcrumb.svelte-83ecl a:where(.svelte-83ecl){color:var(--text-secondary)}.breadcrumb.svelte-83ecl .separator:where(.svelte-83ecl){margin:0 8px}.concert-header.svelte-83ecl{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:48px;padding:0 16px}.concert-image.svelte-83ecl{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:1;background:var(--image-placeholder)}.concert-image.svelte-83ecl img:where(.svelte-83ecl){width:100%;height:100%;object-fit:cover}.badge.svelte-83ecl{position:absolute;top:16px;left:16px;padding:6px 16px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:.5px}.badge.gratis.svelte-83ecl{background:var(--accent);color:var(--bg)}.badge.paavej.svelte-83ecl{background:var(--text-secondary, #a0a0a0);color:#1a1a1a}.badge.udsolgt.svelte-83ecl{background:var(--badge-udsolgt);color:#fff}.badge.aflyst.svelte-83ecl{background:#424242;color:#fff}.badge.tidligere.svelte-83ecl{background:#5c5c5c;color:#fff}.title-row.svelte-83ecl{display:flex;align-items:flex-start;gap:12px;justify-content:space-between}.concert-info.svelte-83ecl h1:where(.svelte-83ecl){font-size:clamp(1.5rem,4vw,2.5rem);line-height:1.1;margin-bottom:24px}.rating-summary.svelte-83ecl{display:flex;align-items:center;gap:8px;margin-bottom:16px}.rating-text.svelte-83ecl{font-size:14px;color:var(--text-secondary)}.attendance-btn.svelte-83ecl{display:inline-block;margin-top:12px;padding:10px 20px;background:var(--card-bg);border:2px solid var(--accent);color:var(--accent);border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;font-family:inherit;transition:background-color .15s,color .15s}.attendance-btn.svelte-83ecl:hover{background:var(--accent);color:var(--bg)}.date-time.svelte-83ecl{display:flex;gap:16px;align-items:center;margin-bottom:24px}.date-box.svelte-83ecl{display:flex;flex-direction:column;align-items:center;padding:12px 16px;border:2px solid var(--accent);border-radius:8px;min-width:70px}.day-name.svelte-83ecl{font-size:14px;font-weight:600;color:var(--accent)}.day.svelte-83ecl{font-size:32px;font-weight:700;color:var(--accent);line-height:1}.month.svelte-83ecl{font-size:14px;font-weight:600;color:var(--accent)}.year.svelte-83ecl{font-size:13px;font-weight:600;color:var(--accent)}.time-info.svelte-83ecl{display:flex;flex-direction:column;gap:4px}.time.svelte-83ecl{font-size:20px;font-weight:600;color:var(--accent)}.full-date.svelte-83ecl{color:var(--text-secondary)}.full-date.svelte-83ecl:first-letter{text-transform:capitalize}.venue-info.svelte-83ecl{margin-bottom:24px}.venue-info.svelte-83ecl h2:where(.svelte-83ecl){font-size:18px;margin-bottom:4px}.venue-address.svelte-83ecl{color:var(--text-secondary);margin:0}.sub-venue.svelte-83ecl{color:var(--text-muted);font-style:italic;margin:4px 0 0}.ticket-button.svelte-83ecl{display:inline-block;padding:14px 32px;background:var(--accent);color:var(--bg);border-radius:8px;font-weight:600;font-size:16px;text-decoration:none;transition:transform .15s,opacity .15s}.ticket-button.svelte-83ecl:hover{transform:translateY(-2px);opacity:.9;text-decoration:none}.ticket-button.coming-soon.svelte-83ecl{background:var(--text-secondary, #a0a0a0);color:#1a1a1a}.ticket-button.sold-out.svelte-83ecl{background:var(--badge-udsolgt);color:#fff;cursor:default}.ticket-button.sold-out.svelte-83ecl:hover{transform:none;opacity:1}.ticket-button.canceled.svelte-83ecl{background:#616161;color:#fff}.past-notice.svelte-83ecl{display:flex;align-items:center;gap:10px;padding:14px 20px;background:#2a2a2a;border-radius:8px;color:var(--text-secondary);font-size:15px}.past-icon.svelte-83ecl{font-size:18px}.description-section.svelte-83ecl,.artists-section.svelte-83ecl{padding:0 16px;margin-bottom:48px}.description-section.svelte-83ecl h2:where(.svelte-83ecl),.artists-section.svelte-83ecl h2:where(.svelte-83ecl){font-size:20px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.description.svelte-83ecl{color:var(--text-secondary);line-height:1.7}.description.svelte-83ecl p{margin:0 0 16px}.read-more-link.svelte-83ecl{display:inline-block;margin-top:8px;color:var(--accent);font-weight:500}.read-more-link.svelte-83ecl:hover{text-decoration:underline}.description-source.svelte-83ecl{margin-top:16px;font-size:13px;color:var(--text-muted);font-style:italic}.artists-list.svelte-83ecl{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.artist-card.svelte-83ecl{display:flex;gap:16px;padding:16px;background:var(--card-bg);border-radius:12px}.artist-image.svelte-83ecl{width:80px;height:80px;border-radius:8px;object-fit:cover;flex-shrink:0}.artist-info.svelte-83ecl h3:where(.svelte-83ecl){font-size:16px;margin-bottom:4px}.genres.svelte-83ecl{color:var(--text-secondary);font-size:13px;margin:0 0 8px}.streamers.svelte-83ecl{display:flex;flex-wrap:wrap;gap:8px}.streamer-link.svelte-83ecl{font-size:12px;padding:4px 8px;background:var(--bg);border-radius:4px;color:var(--text-secondary)}.streamer-link.svelte-83ecl:hover{color:var(--accent)}.reviews-section.svelte-83ecl{padding:0 16px;margin-bottom:48px}.reviews-section.svelte-83ecl h2:where(.svelte-83ecl){font-size:20px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.reviews-list.svelte-83ecl{display:flex;flex-direction:column;gap:16px}.review-card.svelte-83ecl{padding:16px;background:var(--card-bg);border-radius:12px}.review-header.svelte-83ecl{display:flex;align-items:center;gap:12px;margin-bottom:8px}.review-date.svelte-83ecl{font-size:12px;color:var(--text-muted)}.review-note.svelte-83ecl{color:var(--text-secondary);margin:0 0 8px;line-height:1.5;font-size:14px}.review-author.svelte-83ecl{font-size:13px;color:var(--text-muted);font-style:italic}@media (max-width: 768px){.concert-header.svelte-83ecl{grid-template-columns:1fr}.concert-image.svelte-83ecl{max-height:300px}}
