/* Version 6: scoped student profile / schedule / balance; calendar styling only. */
[hidden]{display:none!important}.profile-picture{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-initials{display:grid;place-items:center;width:100%;height:100%}.profile-v06-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.profile-v06-stack .panel{min-width:0}.profile-v06-stack>.panel>.panelhead h2{min-width:0;overflow-wrap:anywhere}.profile-v06-stack>.panel>.panelhead button{flex-shrink:0}.profile-photo-row{display:flex;align-items:center;gap:24px;margin-bottom:28px}.profile-photo-row>div:last-child{min-width:0}.profile-photo-row h3{font-size:22px;overflow-wrap:anywhere}.profile-photo-row p{margin-top:8px}.profile-photo-large{width:104px;height:104px;flex:0 0 104px;border-radius:50%;background:#fff3d9;color:#04175b;font-size:32px;font-weight:700;overflow:hidden;border:3px solid #ffb11a}.profile-v06-list{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin:0}.profile-v06-list dt{font-size:14px;color:var(--muted);margin-bottom:6px}.profile-v06-list dd{margin:0;font-size:16px;font-weight:600;overflow-wrap:anywhere}.profile-v06-stack form .field{max-width:640px}.profile-v06-stack .panelbody form .field{max-width:none}.emergency-details{border-top:1px solid var(--line);padding-top:20px}.emergency-details summary{cursor:pointer;font-size:14px;font-weight:600;min-height:44px;line-height:1.6;padding:10px 0}.v06-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.photo-mode-tabs{display:flex;gap:8px;margin-bottom:24px}.photo-mode-tabs button{flex:1}.photo-mode-tabs button[aria-pressed=true]{background:#04175b;color:white}.avatar-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.avatar-choice{padding:12px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;flex-direction:column;gap:8px;cursor:pointer;text-align:center;font-size:14px;overflow-wrap:anywhere}.avatar-choice:has(input:checked){outline:3px solid #ffb11a;background:#fff8e9}.avatar-choice input{width:18px;min-height:18px;height:18px;padding:0}.avatar-choice img{width:72px;height:72px;object-fit:cover;border-radius:50%}#photo-canvas{display:block;width:min(256px,100%);height:auto;border-radius:12px;margin:20px auto;border:1px solid var(--line)}#photo-crop-controls input[type=range]{padding:0;min-height:44px;accent-color:#04175b}.school-avatar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.school-avatar-card{display:flex;align-items:center;flex-direction:column;text-align:center;gap:12px;min-width:0;padding:20px;border:1px solid var(--line);border-radius:10px}.school-avatar-card img{width:96px;height:96px;border-radius:50%;object-fit:cover}.school-avatar-card strong{overflow-wrap:anywhere}.school-avatar-card .check-line{margin:0}.school-avatar-card button{width:100%}.balance-view-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.balance-v06 .panel{overflow:hidden}.balance-v06 .balance-header{background:#04175b;color:white}.balance-v06 .balance-header h2,.balance-v06 .balance-header>.icon{color:white}.balance-v06 .status-header{background:#fff0cf;color:#04175b}.balance-v06 .status-header h2,.balance-v06 .status-header>.icon{color:#04175b}.demo-label{line-height:1.65}.calendar-panel .weekday-row{background:#04175b;color:white;font-weight:600;border-color:#04175b;padding:16px 0}.calendar-panel .date-cell,.calendar-panel .calendar-blank{background:white;color:#172541}.calendar-panel .date-cell:hover{background:#f0f4ff}.calendar-panel .is-today .date-number{background:#ffb11a;color:#04175b;outline:none;border-radius:50%;font-weight:700}.calendar-panel .date-badge{background:#fff0cf;color:#04175b}.calendar-panel .calendar-toolbar h2{color:#04175b}.calendar-panel .calendar-controls{padding:6px;background:#f4f6fb;border-radius:10px}.calendar-panel .date-cell:focus-visible{outline:3px solid #ffb11a;outline-offset:-3px}.student-schedule-v06{overflow:hidden}.schedule-context{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.schedule-context h2{font-size:24px;line-height:1.5;margin:6px 0}.schedule-context h2 .tag{font-size:12px;vertical-align:middle}.schedule-context form{display:flex;gap:12px;align-items:flex-end;flex-shrink:0}.schedule-context .field{margin:0}.schedule-context select{min-width:120px}.schedule-week{padding:16px}.schedule-week table{border-collapse:separate;border-spacing:6px;width:100%;table-layout:fixed}.schedule-week th{background:#04175b;color:white;padding:12px 8px;text-align:center;font-size:14px;border-radius:6px}.schedule-week th:first-child{width:112px}.schedule-week tbody th{background:#f4f6fb;color:#526482;font-weight:500;font-size:13px}.schedule-week tbody th span{display:block;line-height:1.7;white-space:nowrap}.schedule-week td{padding:0;vertical-align:top;border:0}.schedule-class{background:#eef3ff;border-left:3px solid #2549a4;border-radius:6px;padding:12px;min-height:96px;overflow-wrap:anywhere}.schedule-class strong{display:block;font-size:14px;line-height:1.5}.schedule-class small{display:block;font-size:13px;line-height:1.6;color:#526482;margin-top:4px}.schedule-class.subject-1{background:#eff7f3;border-color:#27634b}.schedule-class.subject-2{background:#f4effa;border-color:#674397}.schedule-class.subject-3{background:#fff5e5;border-color:#8c3f00}.schedule-class.schedule-activity{background:#f4f6fb;border-color:#aebbd0;min-height:72px}.schedule-mobile{display:none}.schedule-day-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:20px 20px 0}.schedule-day-tabs a{padding:10px 4px;min-width:0;text-align:center;font-size:14px}.schedule-day-cards{display:grid;gap:12px;margin-top:16px}.schedule-day-cards .schedule-class{min-height:0;padding:16px}.schedule-card-time{font-size:14px;color:#2549a4;margin-bottom:6px;font-weight:600}.schedule-day-cards h3{font-size:18px}.schedule-day-cards .small{margin-top:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1200px){.schedule-week{display:none}.schedule-mobile{display:block}.school-avatar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.profile-photo-row{gap:16px;align-items:flex-start}.profile-photo-large{width:80px;height:80px;flex-basis:80px;font-size:26px}.profile-photo-row h3{font-size:20px}.profile-v06-stack>.panel>.panelhead{gap:12px}.profile-v06-stack>.panel>.panelhead h2{font-size:19px}.avatar-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.school-avatar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.school-avatar-card{padding:12px}.school-avatar-card img{width:72px;height:72px}.schedule-context{align-items:flex-start;flex-direction:column;gap:20px}.schedule-context form{width:100%}.schedule-context .field{flex:1}.schedule-context select{width:100%}.schedule-context h2{font-size:22px}.calendar-panel .weekday-row{font-size:12px;padding:14px 0}.calendar-panel .calendar-toolbar{gap:20px}.calendar-panel .calendar-controls{padding:4px}.balance-view-bar .button{width:100%;text-align:center}.v06-actions>*{flex:1}.school-avatar-card button{font-size:14px}}
@media(max-width:380px){.profile-photo-row{flex-direction:column}.school-avatar-grid{grid-template-columns:1fr}}
.profile-v06-list.space{margin-top:24px}
.profile-v06-stack>.panel>.panelhead{flex-wrap:nowrap;align-items:flex-start}.profile-v06-stack>.panel>.panelhead h2{flex:1}.profile-v06-stack>.panel>.panelhead button,.profile-v06-stack>.panel>.panelhead .tag{align-self:flex-start;flex-shrink:0}
