dialog.school-detail{padding:0!important;overflow:hidden;width:min(780px,calc(100% - 24px));max-height:94dvh}.school-detail #dialogContent{display:flex;flex-direction:column;max-height:94dvh;overflow:hidden}.school-detail .dialogtop{flex:none;margin:0;padding:16px 20px;border-bottom:1px solid var(--line);align-items:flex-start}.school-detail .dialogtop>div{min-width:0}.school-detail h2{font-size:23px}.school-detail #close{flex:none;width:44px;height:44px;padding:0;font-size:25px}.school-detail :focus:not(:focus-visible){outline:none}.school-detail #detailTitle{outline:none}.school-detail .detail-scroll{overflow:auto;overscroll-behavior:contain;min-height:0;padding:0 20px 24px;overflow-wrap:anywhere}.school-detail section{margin:24px 0}.school-detail h3{font-size:19px;margin:0 0 16px}.school-detail .detail-field{margin:0 0 24px;min-width:0}.school-detail .detail-field h4{font-size:12px;font-weight:400;color:var(--muted);margin:0 0 3px}.school-detail .detail-field strong{display:block;font-size:19px;font-weight:650;line-height:1.5}.school-detail .detail-field small{display:block;font-size:12px;color:var(--muted)}.school-detail .detail-field p{font-size:13px;margin:6px 0}.school-detail .detailgrid{margin:16px 0;gap:20px}.school-detail .detailgrid>div{border:0;padding:0}.school-detail details{margin:14px 0}.school-detail summary{cursor:pointer;font-weight:600}.school-detail details p{font-size:13px;margin:8px 0}.school-detail .detail-toolbar{flex:none;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:8px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:white}.school-detail .detail-toolbar button{width:100%;min-height:48px;padding:8px;font-size:14px}.school-detail .share-link-actions{display:block;margin:0;min-width:0}.school-detail .consult-card{margin-bottom:0}body:has(dialog.school-detail[open]){overflow:hidden}@media(max-width:560px){dialog.school-detail{width:100%;height:100dvh;max-height:100dvh;max-width:none;inset:0;margin:0;border-radius:0}.school-detail #dialogContent{height:100%;max-height:100dvh}.school-detail .dialogtop{padding:10px 16px}.school-detail h2{font-size:20px}.school-detail .dialogtop p{font-size:12px}.school-detail .detail-scroll{padding:0 16px 24px}}
.school-detail .detail-toolbar .share-link-actions button{font-size:12px;padding:8px 3px;white-space:nowrap}

/* Detail viewport and source typography. */
.school-detail #dialogContent{box-sizing:border-box;height:94dvh}
.school-detail .detail-scroll{box-sizing:border-box;flex:1 1 auto;scroll-padding-bottom:24px}
.school-detail .detail-explanation{font-size:14px;font-weight:400;line-height:1.7}
.school-detail #detailAid p{font-weight:400;line-height:1.7}
.school-detail .program-summary{list-style:none;position:relative;padding:12px 24px 12px 0;min-height:44px;box-sizing:border-box}
.school-detail .program-summary::-webkit-details-marker{display:none}
.school-detail .program-summary::after{content:'⌄';position:absolute;right:2px;top:10px;font-size:22px;color:var(--green)}
.school-detail details[open]>.program-summary::after{content:'⌃'}
.school-detail .program-hint{font-weight:400;color:var(--muted);font-size:12px}
.qr-save{display:inline-block;border:1px solid var(--line);border-radius:8px;padding:10px 16px;min-height:44px;box-sizing:border-box;background:white;color:var(--green)}
.consult-card figcaption small{display:block;font-size:12px;font-weight:400;margin-top:6px}
@media(max-width:560px){.school-detail #dialogContent{height:100dvh}}

/* V6.5.3: two-line labels and one native disclosure treatment. */
.school-detail .program-hint{display:block;margin-top:6px;line-height:1.6;text-wrap:pretty;word-break:normal;overflow-wrap:normal}
.school-detail summary,.comparison .compare-value summary{list-style:none;position:relative;padding:12px 28px 12px 0;min-height:44px;box-sizing:border-box}
.school-detail summary::-webkit-details-marker,.comparison .compare-value summary::-webkit-details-marker{display:none}
.school-detail summary::after,.comparison .compare-value summary::after{content:'⌄';position:absolute;right:2px;top:10px;font-size:22px;color:var(--green);transition:transform .15s}
.school-detail details[open]>summary::after,.school-detail details[open]>.program-summary::after,.comparison .compare-value details[open]>summary::after{content:'⌄';transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){.school-detail summary::after,.comparison summary::after{transition:none}}

/* V6.5.3 mobile acceptance: explicit label rows and bounded inner scroller. */
.school-detail .program-summary{display:block;padding:8px 28px 8px 0}
.school-detail .program-title{display:block;line-height:1.5;overflow-wrap:normal;word-break:normal}
.school-detail .program-hint{display:block;margin-top:4px;font-size:12px;line-height:1.6;color:var(--muted)}
.school-detail .program-hint-part{display:inline-block;white-space:nowrap}
.school-detail #academic>details{margin:6px 0}
.school-detail #dialogContent{min-height:0;min-width:0;overflow:hidden}
.school-detail .detail-scroll{height:0;min-height:0;flex:1 1 0%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(24px + env(safe-area-inset-bottom))}
.school-detail .detail-toolbar{position:relative;bottom:auto;flex:0 0 auto;min-width:0}
.school-detail .detail-toolbar .share-link-actions{position:static}
@supports not (height:100dvh){dialog.school-detail,.school-detail #dialogContent{height:94vh;max-height:94vh}@media(max-width:560px){dialog.school-detail,.school-detail #dialogContent{height:100%;max-height:100%}}}
