/* Mobile portal photo and account sharing only. */
.portal-hero > .portal-avatar {display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1}
.portal-hero > div:first-child {min-width:0}
.portal-hero > .portal-avatar img {display:block;object-position:center top}
.jfr-share-dialog {border:0;border-radius:18px;padding:24px;width:min(560px,calc(100% - 24px));max-height:90dvh;overflow:auto;color:var(--text,#163848);box-shadow:0 24px 80px #10273840}
.jfr-share-dialog::backdrop {background:#10273899}
.jfr-share-dialog h3 {margin:0 0 8px}.jfr-share-dialog p {font-size:13px;line-height:1.6}
.jfr-share-dialog label {display:block;margin:12px 0;font-size:12px;font-weight:600}
.jfr-share-dialog input,.jfr-share-dialog textarea {display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:10px;border:1px solid #cbd5df;border-radius:8px;font:inherit}
.jfr-share-dialog textarea {min-height:150px;font-family:monospace;resize:vertical}
.jfr-share-dialog .account-actions {display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.jfr-share-dialog a {display:inline-flex;align-items:center;text-decoration:none;background:#e8f2f7;color:#12495f;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:600}
.jfr-share-dialog button {min-height:40px}.jfr-share-dialog .share-note {color:#607485;font-size:12px}.jfr-share-dialog .share-warning {color:#9a520b}
@media(max-width:650px){
 .portal-hero {grid-template-columns:minmax(0,1fr) 76px!important;gap:12px!important;padding:16px}
 .portal-hero > .portal-avatar {display:flex!important;width:76px;height:94px;min-width:0;border-radius:14px;align-self:start;font-size:22px}
 .portal-hero-photo-wrap {min-width:0;width:76px;align-self:start}
 .portal-hero-photo-wrap .portal-avatar {display:flex!important;width:76px;height:94px}
 .student-hero-photo {width:76px;height:94px;box-sizing:border-box;border-radius:14px}
 .portal-hero h2 {font-size:20px;overflow-wrap:anywhere}.portal-hero .portal-status {grid-template-columns:1fr;gap:6px}
 .portal-hero .portal-stat {padding:8px}.portal-hero .portal-stat b {overflow-wrap:anywhere}
}

@media(max-width:650px){
 #page-portal .portal-hero > div:first-child {display:contents}
 #page-portal .portal-hero .eyebrow,#page-portal .portal-hero h2,#page-portal .portal-hero p {grid-column:1;margin:0}
 #page-portal .portal-hero > .portal-avatar {grid-column:2;grid-row:1 / 4}
 #page-portal .portal-hero .portal-status {grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:2px}
}

.jfr-share-dialog {font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.jfr-share-dialog button {font:600 12px/1.4 system-ui,sans-serif;border:1px solid #c9dce6;border-radius:9px;background:#f2f8fb;color:#16465a;padding:10px 13px;cursor:pointer}
.jfr-share-dialog button:hover {background:#e3f0f6}.jfr-share-dialog button:disabled {opacity:.55;cursor:wait}
.jfr-share-dialog textarea {font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.7;font-weight:400}
.jfr-direct-delivery {border-top:1px solid #d8e5ec;margin:18px 0;padding-top:12px}
.jfr-direct-delivery h4 {margin:0;font-size:15px}
.jfr-delivery-preview:not(:empty) {background:#f3f8fb;border:1px solid #d3e3ec;border-radius:12px;padding:12px;margin:12px 0;overflow-wrap:anywhere}
.jfr-delivery-preview textarea {min-height:170px;background:#fff}

/* V2.8.6: keep the account Save action readable over shared button styles. */
#jfrSaveAccount {background:#087e96;color:#fff;border:1px solid #087e96;font-weight:700;min-width:96px;min-height:40px}
#jfrSaveAccount:hover {background:#06677b;border-color:#06677b}
#jfrSaveAccount:focus-visible {outline:3px solid #8cdae7;outline-offset:3px}
.jfr-share-dialog #jfrStudentEmailNote {min-height:96px;font-family:inherit;background:#fff}
