.event-detail-page{--c-bg: #F5F6F7;--c-surface: #FFFFFF;--c-surface-2: #EDEFF1;--c-text: #3C424B;--c-text-muted: #646B75;--c-text-soft: #9CA3AD;--c-border: #E6E8EB;--c-border-strong: #D0D4DA;--c-primary: #098F89;--c-primary-soft: #077571;--c-primary-tint: #E0F0EF;--c-info: rgb(91, 124, 250);--c-info-tint: color-mix(in srgb, rgb(91, 124, 250) 15%, transparent);--font-display: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", -apple-system, sans-serif;--r-sm: 6px;--r-md: 8px;--r-lg: 10px;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 14px;--shadow-card: 0 2px 8px rgba(36, 152, 146, .06), 0 1px 3px rgba(0, 0, 0, .04);background-color:var(--c-bg);color:var(--c-text);font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,-apple-system,sans-serif;min-height:60vh;padding:32px 0 60px}.event-detail-page *,.event-detail-page *:before,.event-detail-page *:after{box-sizing:border-box}.event-detail-shell{max-width:1180px;padding-left:40px;padding-right:40px}.event-detail-back-bar{padding:0 0 20px}.event-detail-page .btn.btn-outline.btn-sm{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--c-border-strong);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-text);font-family:inherit;font-size:var(--fs-base);font-weight:500;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s}.event-detail-page .btn.btn-outline.btn-sm:hover{background:var(--c-surface-2);border-color:var(--c-text-muted);color:var(--c-text)}.event-detail-page .event-detail-icon{line-height:1;display:inline-flex;align-items:center;justify-content:center}.event-detail-page .event-detail-icon-back{font-size:14px}.event-detail-page .event-detail-icon-calendar{font-size:13px}.event-detail-hero{position:relative;border-radius:var(--r-md);overflow:hidden;height:320px;background:var(--c-surface-2);margin-bottom:20px}.event-detail-hero img{width:100%;height:100%;object-fit:cover;display:block}.event-detail-hero-tags{position:absolute;top:14px;left:14px;display:flex;flex-wrap:wrap;gap:8px}.event-detail-tag{display:inline-block;padding:4px 12px;border-radius:999px;font-size:var(--fs-xs);font-weight:600;line-height:1.4}.event-detail-tag-light{padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700;background:#fffffff2;color:#5b7cfa;border:0}.event-detail-tag-dark{padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600;background:#0006;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:0}.event-detail-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:14px;font-size:13px;color:#9ca3ad}.event-detail-meta-item{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#9ca3ad}.event-detail-meta-item i{color:#9ca3ad;font-size:13px}.event-detail-meta-item .event-detail-info-value-muted{color:#9ca3ad}.event-detail-title{font-size:24px;font-weight:700;color:var(--c-text);letter-spacing:-.02em;line-height:1.3;margin-bottom:18px}.event-detail-summary{font-size:15px;line-height:1.85;color:var(--c-text-muted);margin-bottom:24px;padding-left:14px;border-left:3px solid rgb(91,124,250)}.event-detail-prose{font-size:14px;line-height:1.9;color:var(--c-text);margin-bottom:28px}.event-detail-prose p{margin-bottom:14px}.event-detail-prose p:last-child{margin-bottom:0}.event-detail-section{margin-bottom:28px}.event-detail-section-title{display:inline-block;font-size:18px;font-weight:700;color:var(--c-text);margin-bottom:14px;padding-bottom:8px;border-bottom:2px solid var(--c-info)}.event-detail-soft{color:var(--c-text-soft)}.event-detail-program-card{background:var(--c-surface);border-radius:var(--r-lg);padding:24px;margin-bottom:28px;box-shadow:var(--shadow-card)}.event-detail-program-item{display:flex;align-items:flex-start;gap:16px;padding:12px 0;border-bottom:1px solid var(--c-border)}.event-detail-program-item:last-child{border-bottom:0}.event-detail-program-time{min-width:60px;font-size:var(--fs-base);font-weight:700;color:var(--c-info);font-variant-numeric:tabular-nums}.event-detail-program-desc{font-size:var(--fs-base);color:var(--c-text);line-height:1.55}.event-detail-target-list{padding-left:22px;margin:0 0 28px;font-size:var(--fs-base);line-height:2;color:var(--c-text)}.event-detail-organizer-card{background:var(--c-surface);border:0;border-radius:var(--r-lg);padding:24px;margin-bottom:28px;box-shadow:var(--shadow-card)}.event-detail-organizer{display:flex;align-items:center;gap:12px}.event-detail-organizer-icon{width:48px;height:48px;border-radius:12px;background:var(--c-info-tint);color:var(--c-info);display:grid;place-items:center;flex-shrink:0}.event-detail-organizer-icon .event-detail-icon{font-size:22px}.event-detail-organizer-name{font-size:var(--fs-base);font-weight:700;color:var(--c-text);margin-bottom:2px}.event-detail-organizer-contact{font-size:var(--fs-sm);line-height:1.5}.event-detail-share{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:20px;border-top:1px solid var(--c-border)}.event-detail-share-label{font-size:var(--fs-sm)}.event-detail-share-actions{display:flex;gap:8px;flex-shrink:0}.event-detail-share-actions .event-detail-icon{font-size:14px}.event-detail-sidebar{position:sticky;top:90px}.event-detail-date-card{background:var(--c-surface);border:0;border-radius:var(--r-lg);overflow:hidden;margin-bottom:16px;box-shadow:var(--shadow-card)}.event-detail-date-card-header{padding:12px;background:#5b7cfa;color:#fff;text-align:center}.event-detail-date-card-month{font-size:11px;opacity:.85;font-weight:600}.event-detail-date-card-day{font-family:var(--font-display);font-size:36px;font-weight:700;line-height:1}.event-detail-date-card-time{font-size:12px;margin-top:4px;font-weight:600;color:#fff}.event-detail-date-card-header .event-detail-info-value-muted{color:#ffffffe6}.event-detail-date-card-body{padding:16px 20px 20px}.event-detail-date-card-body .event-detail-info-row:first-of-type{border-top:0;padding-top:0}.event-detail-sidebar-card{background:var(--c-surface);border:0;border-radius:var(--r-lg);padding:20px;margin-bottom:16px;box-shadow:var(--shadow-card)}.event-detail-sidebar-card-title{font-size:var(--fs-base);font-weight:700;color:var(--c-text);margin-bottom:14px}.event-detail-info-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;border-top:1px solid var(--c-border);font-size:var(--fs-sm)}.event-detail-info-row:first-of-type{border-top:0;padding-top:0}.event-detail-info-label{color:var(--c-text-soft);font-weight:600;flex-shrink:0}.event-detail-info-value{color:var(--c-text);font-weight:600;text-align:right;word-break:break-word}.event-detail-info-value-muted{color:var(--c-text-soft);font-weight:500}.event-detail-related-item{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--c-border);text-decoration:none;color:inherit;transition:opacity .15s}.event-detail-related-item:first-of-type{border-top:0;padding-top:0}.event-detail-related-item:hover{opacity:.82}.event-detail-related-thumb{width:64px;height:64px;border-radius:var(--r-md);overflow:hidden;flex-shrink:0;background:var(--c-surface-2)}.event-detail-related-thumb img{width:100%;height:100%;object-fit:cover;display:block}.event-detail-related-title{font-size:var(--fs-sm);font-weight:600;color:var(--c-text);line-height:1.45;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event-detail-related-date{font-size:var(--fs-xs);color:var(--c-text-soft)}.event-detail-not-found{text-align:center;padding:64px 24px;background:var(--c-surface);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.event-detail-not-found .btn-primary{background:var(--c-primary);border-color:var(--c-primary);border-radius:var(--r-md);font-size:var(--fs-md);font-weight:500;padding:8px 16px}.event-detail-not-found .btn-primary:hover{background:var(--c-primary-soft);border-color:var(--c-primary-soft)}@media(max-width:1199.98px){.event-detail-sidebar{position:static}}@media(max-width:991.98px){.event-detail-shell{padding-left:20px;padding-right:20px}.event-detail-page{padding-top:20px}}@media(max-width:767.98px){.event-detail-hero{height:220px}.event-detail-title{font-size:18px}.event-detail-prose{margin-bottom:28px}.event-detail-date-card-day{font-size:30px}.event-detail-info-row{flex-direction:column;gap:4px}.event-detail-info-value{text-align:left}.event-detail-share{flex-wrap:wrap}}
