/* Scoped detail layout: source notices remain plain text, never source CSS. */
.moa-modal.wide{width:min(820px,calc(100% - 32px));max-height:90dvh;scrollbar-gutter:stable;scroll-padding-top:80px}
.moa-modal .modal-head{padding:18px 26px;background:#fff;border-bottom:1px solid #e6ebdf;backdrop-filter:none}
.moa-modal .modal-head h2{font-size:15px;color:#2d4234}
.moa-modal .detail-main{padding:30px 32px 32px}
.moa-modal .detail-main>.eyebrow{font-family:inherit;letter-spacing:.04em;font-size:11px;margin-bottom:14px;color:#6c865e}
.moa-modal .detail-main>h2{font-size:25px;line-height:1.5;letter-spacing:-.8px;margin-bottom:12px;word-break:keep-all;overflow-wrap:anywhere}
.moa-modal .detail-main>p{font-size:13px;color:#73836a;line-height:1.9}
.moa-modal .detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:25px 0;padding:7px 20px;background:#f7f9f3;border:1px solid #e5ebdc;border-radius:12px}
.moa-modal .detail-facts>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;padding:16px 14px;border:0;min-width:0}
.moa-modal .detail-facts small{font-size:11px;line-height:1.5;color:#7c8c70;margin:0}
.moa-modal .detail-facts b{font-size:13px;font-weight:550;line-height:1.8;color:#364f3c;text-align:left;overflow-wrap:anywhere}
.moa-modal .detail-facts .detail-fee-value{font-size:19px;line-height:1.3;font-weight:700;letter-spacing:-.4px;color:#386c47}
.reservation-fee-box{padding:20px 23px;border:1px solid #e4ddce;background:#fcfaf5;border-radius:11px;margin:0 0 25px}
.section-title{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:12px}
.section-title h3{margin:0!important}.section-title span{font-size:10px;color:#9b8c72;white-space:nowrap}
.reservation-fee-box p,.reservation-fee-box li{font-size:13px;line-height:1.9;color:#7c6b4e;overflow-wrap:anywhere}
.reservation-fee-box ul{padding-left:18px;margin:0}.reservation-fee-box li+li{margin-top:9px}
.reservation-fee-box a{display:inline-block;font-size:12px;color:#81653e;text-decoration:underline;text-underline-offset:4px;margin-top:14px}
.reservation-extra{margin:0 0 28px;padding:0 4px}
.reservation-extra>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid #edf0e8;font-size:12px;line-height:1.85}
.reservation-extra dt{color:#8a987f}.reservation-extra dd{color:#53684a;overflow-wrap:anywhere}
.reservation-notice{padding:23px 25px;background:#f1f5e9;border:1px solid #e0e9d3;border-radius:12px;margin:25px 0 30px}
.reservation-notice>h3,.reservation-description>h3,.reservation-fee-box h3{font-size:15px;font-weight:650;line-height:1.6;color:#3f5c35;margin:0 0 19px}
.reservation-description{padding:0 3px;margin:30px 0;overflow:visible;max-height:none}
.public-copy{font-size:13px;line-height:1.95;color:#586d4d;word-break:keep-all;overflow-wrap:anywhere;white-space:normal}
.public-copy>p{margin:0 0 15px;line-height:1.95;white-space:pre-line}
.public-copy>p:last-child{margin-bottom:0}.public-copy>.public-copy-item{padding-left:15px;text-indent:-15px;margin-bottom:12px}
.public-copy>h4{font-size:13px;font-weight:700;line-height:1.7;margin:24px 0 13px;padding-top:19px;border-top:1px solid #dfe7d4;color:#3d5b32}
.public-copy>h4:first-child{margin-top:0;padding-top:0;border:0}
.reservation-description .public-copy>h4{border-color:#e8ecdf}
.moa-modal .detail-main>.notice{font-size:12px;line-height:1.9;margin:25px 0;white-space:pre-line}
.moa-modal .detail-main>.field{margin-top:26px}
.moa-modal .form-actions{padding-top:20px;border-top:1px solid #e7ecdf;justify-content:space-between;gap:12px}
.detail-schedule .event-row{gap:20px;line-height:1.8}.detail-schedule .event-row>b{text-align:right}
.card-bottom>strong{overflow-wrap:anywhere;line-height:1.6;min-width:0}.card-bottom .deadline,.card-bottom .bookmark-toggle{flex-shrink:0}
@media(max-width:600px){
 .moa-modal.wide{width:calc(100% - 16px);max-height:94dvh;border-radius:12px}
 .moa-modal .modal-head{padding:15px 18px}.moa-modal .detail-main{padding:23px 20px}
 .moa-modal .detail-main>h2{font-size:21px;line-height:1.55}
 .moa-modal .detail-facts{padding:4px 6px;margin:22px 0;grid-template-columns:repeat(2,minmax(0,1fr))}
 .moa-modal .detail-facts>div{padding:14px 10px;gap:7px}.moa-modal .detail-facts b{font-size:12px}
 .moa-modal .detail-facts .detail-fee-value{font-size:17px}
 .reservation-notice,.reservation-fee-box{padding:19px 18px}.reservation-extra>div{grid-template-columns:68px minmax(0,1fr);gap:12px}
 .public-copy{font-size:13px;line-height:1.95;word-break:normal}.public-copy>p{margin-bottom:16px}
 .reservation-description{padding:0}.section-title{align-items:flex-start;flex-wrap:wrap;gap:5px}
 .moa-modal .form-actions>a,.moa-modal .form-actions>button{flex:1}
}

.reservation-fee-box ul{list-style:none;padding-left:0}
