/* One readable student profile, with no accordion or settings clutter. */
body.minimal-calm #drawer:has(.student-profile){width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 48px);border:1px solid var(--line)}
body.minimal-calm #drawer:has(.student-profile) .drawer-head{padding:18px 24px;border-bottom:1px solid var(--line)}
body.minimal-calm #drawer:has(.student-profile) .drawer-head h2{font-size:21px;font-weight:600}
body.minimal-calm #drawer:has(.student-profile) .drawer-body{padding:0 24px 24px}
body.minimal-calm .ful-student-details.student-profile{display:flex;flex-direction:column;align-items:stretch;gap:0;font-size:14px;color:var(--ink);line-height:1.5}
.student-profile *, .student-profile *::before, .student-profile *::after{box-sizing:border-box}
.student-profile h3{font-size:16px!important;font-weight:600;margin:0 0 12px!important;letter-spacing:0;text-transform:none}
.student-profile p{margin:0}
.student-profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:22px 0}
.student-profile-stats>div{display:grid;align-content:start;gap:6px}
.student-profile-stats span{font-size:14px;color:var(--ink)}
.student-profile-stats strong,.student-profile-stats .ful-link{font-size:16px;font-weight:550;text-align:left}
.student-profile-stats .happiness-summary{font-size:15px}
.student-profile-contact{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-bottom:22px}
.student-profile-contact>section{padding:16px;min-width:0}
.student-profile-contact>section+section{border-left:1px solid var(--line)}
.student-profile .ful-discord-contacts{padding:0;font-size:14px;color:var(--ink)}
.student-profile .ful-contact-heading{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--ink)}
.student-profile .ful-contact-heading>span{font-size:0}
.student-profile .ful-contact-heading>span::after{content:'discord';font-size:16px}
.student-profile .ful-contact-people,.student-profile .ful-call-checkins{display:grid;grid-template-columns:1fr;gap:10px}
.student-profile .ful-contact-person,.student-profile .ful-coach-checkin{display:flex;flex-direction:row;justify-content:space-between;align-items:baseline;gap:12px}
.student-profile .ful-contact-person>span,.student-profile .ful-coach-checkin>span,.student-profile .ful-checkin-empty{font-size:14px;color:var(--ink)}
.student-profile .ful-contact-person strong,.student-profile .ful-checkin-date strong{font-size:14px;font-weight:500;color:var(--ink)}
.student-profile .ful-checkin-date time{display:none}
.student-profile a{text-underline-offset:3px}
.student-profile .student-profile-section,.student-profile .ful-current-deals{padding:20px 0;border:0;border-top:1px solid var(--line);margin:0;width:100%}
.student-profile .ful-current-deals ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.student-profile .ful-current-deals li{display:flex;align-items:baseline;gap:6px;padding:7px 11px;border-radius:6px;background:var(--soft);font-size:14px}
.student-profile .ful-current-deals li span{font-size:14px;color:var(--ink)}
.student-profile .ful-help,.student-profile .student-actions-empty{font-size:14px;color:var(--ink)}
.student-profile .student-payment-editor{border:0;padding:0;margin:0;font-size:14px}
.student-profile .student-payment-heading{margin-bottom:12px}
.student-profile .student-payment-heading h3{margin:0!important}
.student-profile .student-payment-heading .btn{background:none;border:0;box-shadow:none;padding:0;min-height:28px;text-decoration:underline;text-underline-offset:3px;font-size:14px}
.student-profile .student-payment-plan{margin:0}
.student-profile .student-payment-plan+.student-payment-plan{margin-top:20px;padding-top:20px}
.student-profile .student-payment-overview-total{font-size:15px;font-weight:500;margin:0 0 12px}
.student-payment-overview-table{width:100%;border-collapse:collapse;font-size:14px;text-align:left;table-layout:fixed}
.student-payment-overview-table th{background:var(--soft);font-weight:500;padding:8px 10px;color:var(--ink)}
.student-payment-overview-table td{padding:10px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.student-payment-overview-table th:nth-child(2),.student-payment-overview-table td:nth-child(2){text-align:right}
.student-payment-overview-table th:last-child,.student-payment-overview-table td:last-child{text-align:right}
.student-payment-overview-table [data-payment-status=paid]{color:#18704a}
.student-payment-overview-table [data-payment-status=overdue]{color:#b3261e}
.student-profile .student-payment-overview-note{font-size:14px;margin-top:12px;line-height:1.6}
.student-profile .student-actions-heading{margin:0 0 12px}
.student-profile .student-action-row,.student-profile .student-action-row .ful-link{font-size:14px}
.student-profile .student-actions-call+.student-actions-call{border:0;margin:0;padding:0}
.student-profile .student-actions-quick-add{display:flex;gap:8px;align-items:flex-start;margin-top:12px}
.student-profile .student-actions-quick-add textarea{resize:vertical;min-height:40px;flex:1}
.student-profile .student-actions-buttons{flex-wrap:nowrap;margin:0;min-height:40px}
.student-profile .input{font-size:14px;line-height:1.5;padding:9px 12px;width:100%;min-width:0}
.student-profile #ful-live-student{display:block}
.student-profile #ful-student-note{min-height:84px;resize:vertical}
.student-profile .student-profile-note{font-size:14px;margin:0 0 10px}
.student-profile [role=status]{font-size:14px;margin-top:8px;color:var(--ink)}
.student-profile [role=status]:empty{display:none}
.student-profile [hidden]{display:none!important}
.student-profile-payment-edit{font-size:14px}
@media(max-width:560px){body.minimal-calm #drawer:has(.student-profile){width:calc(100vw - 16px);max-width:calc(100vw - 16px);inset:8px;max-height:calc(100dvh - 16px)}body.minimal-calm #drawer:has(.student-profile) .drawer-head{padding:14px 16px}body.minimal-calm #drawer:has(.student-profile) .drawer-body{padding:0 16px 16px}.student-profile-stats{grid-template-columns:1fr;gap:12px;padding:16px 0}.student-profile-stats>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.student-profile-contact{grid-template-columns:1fr}.student-profile-contact>section+section{border-left:0;border-top:1px solid var(--line)}.student-profile .student-profile-section,.student-profile .ful-current-deals{padding:16px 0}.student-payment-overview-table{font-size:13px}}
body.minimal-calm #drawer:has(.student-profile) .drawer-footer{display:none}
body.minimal-calm .student-profile .student-payment-overview-total,body.minimal-calm .student-profile .student-payment-overview-note{color:var(--ink)}
body.minimal-calm .student-profile .student-payment-overview-table :is(th,td){padding:8px 10px;height:auto;min-height:0;font-size:14px;color:var(--ink);background:none;border-bottom:1px solid var(--line);text-transform:none;letter-spacing:0}
body.minimal-calm .student-profile .student-payment-overview-table th{font-weight:500;background:var(--soft)}
body.minimal-calm .student-profile .student-payment-overview-table :is(th,td):nth-child(2),body.minimal-calm .student-profile .student-payment-overview-table :is(th,td):last-child{text-align:right}
body.minimal-calm .student-profile .student-payment-overview-table [data-payment-status=paid]{color:#18704a}
body.minimal-calm .student-profile .student-payment-overview-table [data-payment-status=overdue]{color:#b3261e}
body.minimal-calm .student-profile .student-payment-heading .btn{background:none;border:0;box-shadow:none}
body.minimal-calm .student-profile .student-actions-heading h3{margin:0!important}
.ful-deal-logo{display:inline-grid;place-items:center;position:relative;width:24px;height:24px;flex:0 0 24px;border-radius:6px;overflow:hidden;background:var(--soft);color:var(--ink)}
.ful-deal-logo img{position:absolute;inset:0;width:24px;height:24px;object-fit:contain;background:var(--paper,#fff)}
body.minimal-calm .ful-current-deals li{display:flex;flex-direction:row;align-items:center;gap:7px;background:none;padding:0;font-weight:500}
body.minimal-calm .ful-current-deals li>span:last-child{font-size:13px;overflow-wrap:anywhere}
body.minimal-calm .ful-deals-compact{margin:14px 0 0;padding:0;border:0}
.ful-deals-compact ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0;padding:0}
body.minimal-calm .ful-deals-compact li>span:last-child{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ful-deals-compact .ful-help{font-size:12px;margin:0}
.student-profile-earnings{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:22px 0 16px;font-size:14px}
.student-profile-earnings>strong{font-size:28px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.student-profile-earnings>strong>span{font-size:15px;font-weight:400;letter-spacing:0}
.student-profile :is(#ful-student-next,#ful-student-actionables){resize:vertical;min-height:64px}
.student-profile .student-actions-call-link{display:inline-block;margin:0 0 8px;font-size:13px}
.student-profile .student-actions-call+.student-actions-call{margin-top:12px}
.student-profile .student-actions-call-link:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:2px}
@media(max-width:560px){.student-profile-earnings{flex-wrap:wrap;gap:5px}.student-profile-earnings>strong{font-size:26px}}

/* Compact profile dialog. The card face and the shared contact ledger live in ui/student-card.css. */
body.minimal-calm #drawer:has(.student-profile){width:min(600px,calc(100vw - 32px));height:fit-content;min-height:0}
body.minimal-calm #drawer:has(.student-profile) .drawer-head{padding:18px 20px 10px;border:0}
body.minimal-calm #drawer:has(.student-profile) .drawer-body{padding:0 20px 20px}
body.minimal-calm .student-profile-earnings{display:flex;justify-content:space-between;align-items:baseline;margin:0;padding:12px 0 16px;gap:10px;font-size:13px}
body.minimal-calm .student-profile-earnings>strong{font-size:18px;font-weight:600;white-space:nowrap;letter-spacing:0}
.student-contact-table .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.student-contact-table .ful-checkin-date time{display:none}
body.minimal-calm .student-profile .student-profile-section,body.minimal-calm .student-profile .ful-current-deals{padding:12px 0;border:0}
body.minimal-calm .student-profile h3{font-size:14px!important;margin:0 0 8px!important}
body.minimal-calm .student-profile .student-payment-heading{margin:0 0 6px}
body.minimal-calm .student-profile .student-payment-overview-total{margin:0;font-size:14px}
body.minimal-calm .student-profile .student-payment-overview-note{margin:3px 0 0;font-size:13px}
body.minimal-calm .student-profile .student-payment-plan+.student-payment-plan{margin-top:10px;padding-top:0;border:0}
.student-profile-program{display:flex;justify-content:space-between;gap:12px;font-size:13px}
body.minimal-calm .student-profile .ful-current-deals{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0}
body.minimal-calm .student-profile .ful-current-deals h3{flex:none;margin:0!important;font-weight:400}
body.minimal-calm .student-profile .ful-current-deals ul{justify-content:flex-end;gap:10px}
.student-action-area{padding:0;background:transparent;border-radius:0}
body.minimal-calm.theme-dark .student-action-area{background:transparent}
body.minimal-calm .student-profile .student-action-area .student-profile-section{padding:0}
body.minimal-calm .student-profile .student-action-area .student-actionables{padding-top:14px}
body.minimal-calm .student-profile :is(#ful-student-next,#ful-student-actionables){min-height:42px;padding:6px 8px;background:transparent;border-color:transparent;resize:vertical}
body.minimal-calm .student-profile :is(#ful-student-next,#ful-student-actionables):is(:hover,:focus){border-color:var(--line);background:var(--paper,#fff)}
body.minimal-calm .student-profile .student-actions-heading{margin:0 0 6px}
body.minimal-calm .student-profile .student-action-row{padding:5px 0}
body.minimal-calm .student-profile .student-actions-quick-add{margin-top:8px}
@media(max-width:560px){body.minimal-calm #drawer:has(.student-profile){width:calc(100vw - 16px)}body.minimal-calm #drawer:has(.student-profile) .drawer-body{padding:0 16px 16px}body.minimal-calm .student-profile .ful-current-deals{align-items:flex-start;flex-direction:column;gap:8px}body.minimal-calm .student-profile .ful-current-deals ul{justify-content:flex-start}}
body.balanced-blue.minimal-calm .student-profile .student-payment-heading{min-height:0;padding:0}
body.minimal-calm .student-profile #ful-student-payment-plan{padding:6px 0 10px;border:0}
body.minimal-calm .student-profile .student-payment-plan{margin-top:4px}
body.minimal-calm .student-profile .student-payment-heading .btn{height:24px;min-height:24px}
body.minimal-calm .student-profile .student-payment-overview-note[data-payment-status=overdue]{color:#b3261e}
body.minimal-calm.theme-dark .student-profile .student-payment-overview-note[data-payment-status=overdue]{color:#ffb4ab}

/* Room for inline schedule changes and the student's next steps. */
body.minimal-calm #drawer:has(.student-profile){width:min(880px,calc(100vw - 32px))}
body.minimal-calm #drawer:has(.student-profile) .drawer-head{padding:22px 28px 12px}
body.minimal-calm #drawer:has(.student-profile) .drawer-body{padding:0 28px 24px}
body.minimal-calm .student-profile .student-action-area .student-actionables{padding-top:4px}
body.minimal-calm .student-profile .student-action-area .student-next-followup{padding-top:20px}
body.minimal-calm .student-profile :is(#ful-student-next,#ful-student-actionables){min-height:64px;border:1px solid var(--line);background:var(--surface)}
body.minimal-calm .student-profile .student-payment-inline .student-payment-notes{font-size:13px;line-height:1.5;margin-top:10px}
@media(max-width:560px){body.minimal-calm #drawer:has(.student-profile){width:calc(100vw - 16px)}body.minimal-calm #drawer:has(.student-profile) .drawer-head{padding:16px}body.minimal-calm #drawer:has(.student-profile) .drawer-body{padding:0 16px 20px}}

/* Open profiles use one overview, one schedule, and a grouped next-step area. */
body.balanced-blue.minimal-calm #drawer:has(.student-profile){width:min(960px,calc(100vw - 32px))}
body.balanced-blue.minimal-calm .student-profile-overview{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,1.8fr);gap:32px;align-items:start;margin:4px 0 24px}
body.balanced-blue.minimal-calm .student-profile-metrics{display:grid;gap:12px}
body.balanced-blue.minimal-calm .student-profile-earnings{display:grid;gap:4px;padding:0;font-size:12px}
body.balanced-blue.minimal-calm .student-profile-earnings>strong{font-size:24px}
body.balanced-blue.minimal-calm .student-profile-program{justify-content:flex-start;gap:10px;font-size:12px}
body.balanced-blue.minimal-calm .student-profile-contact{display:block;border:0;border-radius:0;margin:0;padding:0;overflow:visible;min-width:0}
body.balanced-blue.minimal-calm .student-profile-contact .student-contact-table{margin:0}
body.balanced-blue.minimal-calm .student-profile #ful-student-payment-plan{padding:0 0 24px;margin:0}
body.balanced-blue.minimal-calm .student-profile .student-payment-editor{margin:0;padding:0;border:0}
body.balanced-blue.minimal-calm .student-profile .student-payment-notes p{margin:4px 0 0;font-size:12px}
body.balanced-blue.minimal-calm .student-profile-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr);gap:32px;align-items:start}
body.balanced-blue.minimal-calm .student-profile .ful-current-deals{display:block;padding:0}
body.balanced-blue.minimal-calm .student-profile .ful-current-deals h3{font-weight:600;margin:0 0 12px!important}
body.balanced-blue.minimal-calm .student-profile .ful-current-deals ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:start;gap:12px 8px}
body.balanced-blue.minimal-calm .student-profile .ful-current-deals li{justify-content:flex-start;align-items:center}
body.balanced-blue.minimal-calm .student-profile .student-action-area .student-actionables{padding:0}
@media(max-width:640px){
body.balanced-blue.minimal-calm .student-profile-overview,body.balanced-blue.minimal-calm .student-profile-bottom{grid-template-columns:minmax(0,1fr);gap:20px}
}
