#learningToolsDialog{position:fixed;inset:0;margin:auto;width:min(1020px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #e8e6ef;border-radius:16px;padding:24px;background:white;color:#242331;font-family:'DM Sans',sans-serif}#learningToolsDialog::backdrop{background:#24233170;backdrop-filter:blur(3px)}#learningToolsDialog .learning-header{display:flex;align-items:center;justify-content:space-between;gap:12px}#learningToolsDialog h2{font-size:21px;margin:0}#learningToolsDialog h3{font-size:16px;margin:0 0 12px}#learningToolsDialog .learning-note{font-size:12px;line-height:1.7;color:#757281}#learningToolsDialog .learning-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}#learningToolsDialog button{padding:9px 12px;border:1px solid #7357db;background:#7357db;color:white;border-radius:8px;font:inherit;font-size:12px;cursor:pointer}#learningToolsDialog button.secondary{background:#f0ebff;color:#6341ce;border-color:#e6dffc}#learningToolsDialog button:disabled{opacity:.6;cursor:wait}#learningToolsDialog label{display:block;font-size:12px;margin:12px 0 6px}#learningToolsDialog input,#learningToolsDialog select,#learningToolsDialog textarea{font:inherit;width:100%;padding:10px;border:1px solid #dddbe7;border-radius:8px}#learningToolsDialog .learning-card{border:1px solid #eceaf2;border-radius:12px;padding:18px;margin:14px 0}#learningToolsDialog .learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}#learningToolsDialog .learning-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}#learningToolsDialog .learning-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:14px}#learningToolsDialog .learning-progress{height:8px;background:#ece8fa;border-radius:8px;overflow:hidden}#learningToolsDialog .learning-progress>span{display:block;height:100%;background:#7357db}#learningToolsDialog .learning-status{font-size:13px;color:#6341ce;min-height:20px}#learningToolsDialog .learning-files{display:flex;gap:8px;flex-wrap:wrap}#learningToolsDialog .learning-storage-row{padding:12px 0;border-bottom:1px solid #eceaf2}#learningToolsDialog audio{max-width:100%}@media(max-width:700px){#learningToolsDialog{padding:16px}#learningToolsDialog .learning-grid{grid-template-columns:1fr}}

#learningProgressDialog{width:min(950px,94vw);max-height:90vh;overflow:auto;border:1px solid #d8e2ee;border-radius:18px;padding:24px}#learningProgressDialog label{display:block;margin:12px 0}#learningProgressDialog input:not([type=checkbox]),#learningProgressDialog select,#learningProgressDialog textarea{width:100%;padding:10px;border:1px solid #c7d5e4;border-radius:8px}.learning-check{display:flex!important;gap:10px;align-items:start}.learning-warning{background:#fff3da;color:#694707;border-radius:8px;padding:12px}.learning-rubric{border:1px solid #d7e2ed;border-radius:12px;padding:16px;margin:16px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.learning-rubric>p{grid-column:1/-1}.learning-rubric-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}.learning-rubric-summary div{padding:10px;background:#eff5fa;border-radius:8px}.learning-rubric-summary dt{font-size:12px;color:#536982}.learning-rubric-summary dd{margin:4px 0 0;font-weight:600}.progress-certificate{padding:clamp(22px,5vw,60px);border:2px solid #a8bbcf;outline:1px solid #d9e3ed;outline-offset:-10px;text-align:center;background:#fff;color:#18354f}.progress-certificate>img{width:65px;display:block;margin:0 auto 15px}.progress-certificate>span{font-size:12px;letter-spacing:2px;font-weight:600}.progress-certificate h2{font-size:clamp(24px,4vw,38px);margin:28px 0}.progress-certificate h3{font-size:clamp(25px,5vw,42px);margin:16px 0}.progress-certificate h4{font-size:24px}.progress-certificate small{font-size:11px}.progress-certificate .learning-grid{margin-top:30px}@media(max-width:600px){.learning-rubric,.learning-rubric-summary{grid-template-columns:1fr}#learningProgressDialog{padding:16px}}@media print{body:has(#learningProgressDialog[open])>*:not(#learningProgressDialog){display:none!important}#learningProgressDialog[open]{position:static!important;display:block!important;max-height:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important}#learningProgressDialog .learning-header,#learningProgressDialog #progressStatus,#learningProgressDialog #progressTabs,#learningProgressDialog>label,#learningProgressDialog #progressStudent,#learningProgressDialog .learning-actions{display:none!important}.progress-certificate{break-inside:avoid;min-height:70vh}}

#studentMakeupsDialog{width:min(900px,94vw);max-height:90vh;overflow:auto;border:1px solid #d7e2ee;border-radius:18px;padding:24px}#studentMakeupsDialog label{display:block;margin:12px 0}#studentMakeupsDialog input:not([type=checkbox]),#studentMakeupsDialog select,#studentMakeupsDialog textarea{width:100%;padding:10px;border:1px solid #c7d5e4;border-radius:8px}@media(max-width:600px){#studentMakeupsDialog{padding:16px}}

#academyFollowUpDialog{width:min(960px,94vw);max-height:88vh;overflow:auto;border:0;border-radius:18px;padding:24px;color:var(--text,#163a37);background:var(--surface,#fff)}#academyFollowUpDialog::backdrop{background:rgba(15,32,40,.5)}.portal-upload-progress{display:flex;flex-wrap:wrap;gap:12px;align-items:center;position:sticky;bottom:0;background:#fff;padding:14px;border:1px solid #d8e3df;border-radius:12px;z-index:5}.portal-upload-progress progress{width:min(220px,60vw)}

#familyEngagementDialog{position:fixed;inset:0;margin:auto;width:min(960px,94vw);max-height:88dvh;overflow:auto;border:0;border-radius:18px;padding:24px;background:#fff;color:#242331}#familyEngagementDialog::backdrop{background:#24233170}#familyEngagementDialog input,#familyEngagementDialog textarea,#familyEngagementDialog select{max-width:100%}
/* Shared learning dialogs: fluid forms, wrapped actions and logical alignment. */
:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) .learning-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-block-end:16px}
:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) .learning-header h2{flex:1 1 220px;margin:0;overflow-wrap:anywhere}
:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) .learning-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-block:14px}
:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) .learning-card{border:1px solid #e7e4ef;border-radius:12px;padding:16px;margin-block:16px;min-width:0}
:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) label{display:block;margin-block:12px 6px;text-align:start}
:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) :is(input:not([type=checkbox]),textarea,select){box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:10px;font:inherit;border:1px solid #d7d2e4;border-radius:8px}
:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) :is(p,h3,h4,a){overflow-wrap:anywhere;text-align:start}
:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) .learning-body{white-space:pre-wrap;line-height:1.7}
@media(max-width:600px){:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog){box-sizing:border-box;width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100dvh - 24px);padding:14px}:is(#classSupportDialog,#familyEngagementDialog,#academyFollowUpDialog,#studentMakeupsDialog,#learningProgressDialog) button{min-height:44px;white-space:normal;max-width:100%}.learning-grid{grid-template-columns:minmax(0,1fr)}.learning-header h2{font-size:19px}}

#classSupportDialog{position:fixed;inset:0;margin:auto;box-sizing:border-box;width:min(960px,94vw);max-height:88dvh;overflow:auto;border:0;border-radius:18px;padding:24px;background:#fff;color:#242331}#classSupportDialog::backdrop{background:#24233170}#classSupportDialog button{padding:10px 14px;border-radius:8px;min-height:44px;white-space:normal}#classSupportDialog .learning-body{white-space:pre-wrap;overflow-wrap:anywhere}#classSupportDialog ol{padding-inline-start:24px;line-height:1.8}@media print{body:has(#classSupportDialog[open] .class-support-export)>*:not(#classSupportDialog){display:none!important}#classSupportDialog:has(.class-support-export){position:static!important;display:block!important;width:100%!important;max-height:none!important;overflow:visible!important;padding:0!important;border:0!important}#classSupportDialog:has(.class-support-export)>*:not(#classSupportContent),#classSupportDialog:has(.class-support-export) #classSupportContent>*:not(#recordsPreview),#classSupportDialog #printLearningRecords{display:none!important}.class-support-export .learning-card{break-inside:avoid}}
