/* R2.84 · Configuración docente y selector de vistas. */
.setup-steps{align-items:stretch;gap:12px;margin:26px 0 30px}
.setup-steps>button.step{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;margin:0;min-height:56px;padding:12px 16px;line-height:1.4}
.setup-steps .step-number{flex:none;width:26px;height:26px;font-size:13px}
.setup-layout>div{display:flex;flex-direction:column;gap:22px}
.teacher-config-card{border:1px solid #dce6ec;box-shadow:0 3px 14px #17324d04;border-radius:15px;margin:0 0 22px}
.setup-layout .teacher-config-card{margin:0}
.teacher-config-card>h3{margin-bottom:10px;color:#213e52}
.teacher-config-card>p.muted{line-height:1.8;margin-bottom:24px}
.teacher-config-card .field-grid{column-gap:20px;row-gap:0}
.teacher-config-card>.card-actions{margin-top:26px;padding-top:20px;border-top:1px solid #e6edf1;gap:12px}
.teacher-config-card .school-list{margin:20px 0 26px}
.teacher-config-card .school-option{border-radius:12px;padding:17px 18px;background:#f8fafb;transition:background .15s,border-color .15s}
.teacher-config-card .school-option:has(input:checked){border-color:#88bfb6;background:#eff8f5}
.school-create{border:1px solid #d9e5e7;border-radius:12px;background:#f8fbfa;margin:24px 0 0;overflow:hidden}
.school-create>summary{position:relative;display:flex;flex-direction:column;gap:5px;list-style:none;padding:18px 48px 18px 19px;cursor:pointer;color:var(--green);font-size:15px}
.school-create>summary::-webkit-details-marker{display:none}
.school-create>summary::after{content:'+';position:absolute;right:19px;top:18px;font-size:24px;line-height:1}
.school-create[open]>summary::after{content:'−'}
.school-create>summary .muted{font-size:12px;font-weight:400;color:var(--muted);line-height:1.6}
.school-create[open]>summary{border-bottom:1px solid #dce8e4;background:#eef6f3}
.school-create .school-add{margin:0;padding:22px 19px;border:0;background:white}
.school-create .school-add>button{margin-top:2px}
.teacher-config-card .discipline-grid{margin:24px 0 28px;gap:16px}
.teacher-config-card .discipline-field{border-radius:12px}
.teacher-config-card .discipline-chips{gap:10px}
.group-picker{background:#f7fafb;border:1px solid #dfe9ec;border-radius:13px;padding:20px;margin:26px 0}
.group-picker .section-heading{align-items:center;gap:12px;margin:0 0 16px;flex-wrap:wrap}
.group-picker .section-heading h4{margin:0;font-size:15px}
.group-count{font-size:12px;font-weight:600;color:#38776b;font-variant-numeric:tabular-nums}
.group-picker .card-actions{margin:0;gap:10px}
.group-picker .group-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0 22px}
.group-picker .group-chip{margin:0;width:100%;height:46px;min-height:46px;padding:8px 4px;font-size:14px;line-height:1.3}
.group-picker .group-chip.selected{box-shadow:0 2px 5px #0f766e12}
.group-picker .custom-group{margin:0;padding-top:18px;border-top:1px solid #dfe9ec}
.group-picker .custom-group input{min-width:0}
.school-unlink-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid #e6edf1;flex-wrap:wrap}
/* Fixed dimensions and zero adjacent-button margins in both sidebar modes. */
.sidebar .admin-view-switch{padding:12px;margin:0 0 18px;min-width:0;max-width:100%;border-radius:12px}
.sidebar .admin-view-buttons{display:grid;grid-template-columns:minmax(0,1fr);gap:7px}
.sidebar .admin-view-buttons>button{display:flex;align-items:center;gap:10px;justify-content:flex-start;width:100%;min-width:0;height:44px;min-height:44px;padding:10px 12px;margin:0;font-size:12px;line-height:1.3;text-align:left}
.admin-view-icon{display:grid;place-items:center;width:20px;flex:0 0 20px;font-size:19px;line-height:1}
.admin-view-label{min-width:0;overflow-wrap:anywhere}
.sidebar .admin-preview-caption{font-size:10px;line-height:1.6;margin:11px 0 0}
@media(min-width:651px){
 body.sidebar-collapsed .admin-view-switch{background:transparent;border:0;padding:0;margin:16px 0;width:100%}
 body.sidebar-collapsed .admin-view-caption,body.sidebar-collapsed .admin-preview-caption,body.sidebar-collapsed .admin-view-label{display:none}
 body.sidebar-collapsed .admin-view-buttons{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
 body.sidebar-collapsed .sidebar .admin-view-buttons>button{height:44px;min-height:44px;margin:0;padding:10px 0;justify-content:center;border-radius:10px}
}
@media(max-width:650px){
 .setup-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .setup-steps>button.step{flex-direction:column;justify-content:flex-start;text-align:center;min-height:90px;padding:12px 6px;gap:8px;font-size:11px}
 .teacher-config-card{padding:20px 17px}.group-picker{padding:17px 12px}.group-picker .group-grid{gap:7px}
 .group-picker .custom-group button{width:100%}.sidebar .admin-view-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sidebar .admin-view-buttons>button{justify-content:center;padding:9px 6px;font-size:11px}.sidebar .admin-preview-caption{margin-top:8px}
}
@media(prefers-reduced-motion:reduce){.teacher-config-card .school-option{transition:none}}

/* R289-UI-SCHOOLS-01 · Datos y presentación dentro de cada escuela. */
.school-management>h3{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.school-management-count{font-size:12px;font-weight:600;padding:5px 11px;border-radius:20px;background:#edf5f7;color:#486377;white-space:nowrap}
.school-management-list{display:grid;gap:18px;margin-top:20px}
.school-management-card{min-width:0;border:1px solid #d9e5eb;border-radius:13px;background:white;overflow:hidden}
.school-management-heading{padding:22px 22px 0}
.school-management-identity{display:flex;align-items:center;gap:14px;min-width:0}
.school-management-mark{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #cae2df;border-radius:12px;background:#eef7f5;color:#0c7069;font-size:19px;font-weight:750}
.school-management-identity>div{min-width:0}
.school-management-identity h4{margin:0 0 5px;font-size:18px;line-height:1.4;color:var(--navy);overflow-wrap:anywhere}
.school-management-identity p{margin:0;font-size:12px;line-height:1.7}
.school-management-card>.school-management-actions{margin:18px 22px 20px;gap:10px}
.school-management-actions>button{min-height:44px;margin:0}
.school-management-actions>button[aria-expanded=true]{background:#eaf5f2;border-color:#6aa99f;color:#0b5f59}
.school-management-panel{margin:0 22px 22px;padding:20px;background:#f7fafb;border:1px solid #dfe9ec;border-radius:11px;min-width:0}
.school-management-panel[hidden]{display:none}
.school-management-panel>h4{margin:0 0 6px;color:var(--navy)}
.school-management-panel>p{font-size:13px;line-height:1.7;margin-bottom:20px}
.school-management-panel .field-grid>.field:last-child{grid-column:1/-1}
.school-management-panel form>.card-actions{margin-top:4px}
.school-management-panel>.document-style-panel{border:0;background:transparent;box-shadow:none;padding:0;margin:0;min-width:0}
.school-management-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 22px;background:#fafcfd;border-top:1px solid #e8eef2}
.school-management-footer small{color:var(--muted);font-size:12px;line-height:1.6;flex:1 1 200px}
.school-management-footer>.school-management-remove{border-color:transparent;background:transparent;color:#a52b24;min-height:44px;font-size:13px;padding:8px 10px;margin:0}
.school-management-footer>.school-management-remove:hover:enabled{background:#fff0ee;border-color:#efcdc8}
.school-management .school-create{margin-top:20px;background:#f8fbfa}
.school-management-empty{padding:20px;border:1px dashed #bed4d9;border-radius:12px;color:var(--muted);font-size:14px;margin:0}
@media(max-width:650px){
 .school-management-heading{padding:18px 16px 0}
 .school-management-identity{align-items:flex-start;gap:11px}
 .school-management-identity h4{font-size:16px}
 .school-management-card>.school-management-actions{display:grid;grid-template-columns:minmax(0,1fr);margin:16px;gap:9px}
 .school-management-actions>button{width:100%;white-space:normal}
 .school-management-panel{margin:0 12px 16px;padding:16px 12px}
 .school-management-panel form>.card-actions>button{flex:1 1 160px}
 .school-management-footer{padding:12px 16px;gap:6px}
 .school-management-footer small{flex-basis:100%}
 .school-management-footer>.school-management-remove{padding-left:0}
}

/* R289-UI-FLOW-03 · Acciones alineadas y edición visible. */
.document-primary-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;margin:18px 0 26px}
.document-primary-actions>button,.class-editor .card-actions>button{margin:0;min-height:44px;line-height:1.4}
.class-editor{scroll-margin-top:24px;min-width:0}
.class-editor .card-actions{display:flex;flex-wrap:wrap;gap:10px}
.class-editor input,.class-editor select{max-width:100%}
@media(max-width:650px){.document-primary-actions>button{flex:1 1 220px}.class-editor .discipline-chips{grid-template-columns:minmax(0,1fr)}}

/* R289-PASTEL-CALENDAR-04 · Disponibilidad mensual compacta. */
.calendar-availability-form>.form-object-fields{display:flex;flex-direction:column;gap:18px}
.availability-section{padding:20px;border:1px solid #dae5e9;border-radius:14px;background:#fff;min-width:0}
.availability-section>h3,.availability-section>summary{margin:0;color:#203e52;font-weight:700;font-size:17px}
.availability-section>summary{cursor:pointer;min-height:28px}
.availability-section>p{margin:8px 0 18px;line-height:1.6;font-size:13px}
.availability-section-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.availability-section-fields>.field{min-width:0}
.availability-section-fields>.availability-groups,.availability-section-fields>.form-group{grid-column:1/-1}
.availability-groups{padding:14px 16px;margin:6px 0 2px;border-radius:11px;background:#f4f9f8;border:1px solid #dcebe7;min-width:0}
.availability-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.availability-group-header>button{margin:0;min-height:36px;padding:7px 12px}
.availability-group-tags{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 8px}
.availability-group-tag{display:inline-block;padding:5px 13px;border-radius:20px;background:#e0eeea;color:#24584f;font-size:13px;font-weight:650;overflow-wrap:anywhere;max-width:100%}
.availability-groups>p{font-size:12px;line-height:1.5;margin:6px 0 0}
.availability-group-editor[hidden]{display:none!important}
.availability-group-editor{margin-top:16px;padding-top:12px;border-top:1px solid #d6e5df}
.availability-group-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.availability-group-row{display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:end;gap:5px}
.availability-group-row>label{grid-column:1/-1;font-size:12px;margin:0}
.availability-group-row>input{min-width:0;margin:0;height:38px;padding:6px 10px}
.availability-group-row>button{margin:0;padding:4px;min-height:38px}
.availability-group-editor>button{margin:12px 0 0}
.availability-group-notice:empty{display:none}
.availability-section-fields input,.availability-section-fields select{max-width:100%}
@media(max-width:650px){.availability-section{padding:16px}.availability-section-fields{grid-template-columns:minmax(0,1fr)}.availability-group-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-groups{padding:12px}}
@media(max-width:360px){.availability-group-inputs{grid-template-columns:minmax(0,1fr)}}

/* Keep date controls readable without stacked card padding. */
.availability-exceptions-fields{display:block}
.availability-exceptions-fields .form-object-fields{padding:0;margin:0;min-width:0;border:0}
.availability-exceptions-fields [data-form-array="personal_absences"]>.form-array-entries{padding:0;background:transparent}
.availability-exceptions-fields .array-item{padding:12px 0;background:transparent}
.availability-exceptions-fields .array-item>.form-group{padding:12px;margin:8px 0;background:#f8fafb}
.availability-exceptions-fields .official-calendar-categories{margin-top:20px;padding-top:12px;border-top:1px solid #dae5e9}
.calendar-field-error{font-size:14px;line-height:1.5;color:#9b2525;margin:6px 0}
@media(max-width:650px){.availability-exceptions-fields input[type="date"]{width:100%;min-height:44px;font-size:15px}.availability-exceptions-fields .array-item>.form-group{padding:8px}.availability-exceptions-fields .field{min-width:0}}

/* Keep both calendar navigation actions visible on short or narrow screens. */
#form-modal.calendar-preview-modal[open]{display:flex;flex-direction:column;overflow:hidden}
#form-modal.calendar-preview-modal>.dialog-top{flex-shrink:0}
#form-modal.calendar-preview-modal>form{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}
#form-modal.calendar-preview-modal .dialog-body{flex:1;min-height:0;max-height:none}
#form-modal.calendar-preview-modal .dialog-actions{flex-shrink:0}

/* R289-PDA-PROJECT-07: antecedentes visibles y revisión de proyectos por grupos. */
.curriculum-block.history-previous { background:#f0f8f1; border-color:#ccdfcf; }
.curriculum-history-summary { margin:.25rem 0 .45rem; font-size:.85rem; color:#526158; }
.pda-option.history-previous { background:#eff8f1; border:1px solid #d2e5d7; border-radius:8px; padding:.55rem; }
.pda-option.history-continuity { background:#fff6e8; border:1px solid #edd8b6; border-radius:8px; padding:.55rem; }
.pda-option.history-new { background:#fff; }
.pda-history-label { display:block; margin:.25rem 0; font-size:.85rem; line-height:1.4; color:#43534a; }
.history-continuity .pda-history-label { color:#795426; }
.project-review-module { margin:.7rem 0; padding:.7rem .8rem; border:1px solid #dce2df; border-radius:9px; background:#fff; }
.project-review-module h4,.project-next-guide h4 { margin:0 0 .45rem; font-size:1rem; }
.project-review-module p { margin:.35rem 0; }
.project-review-module small,.project-next-guide small { display:block; line-height:1.4; color:#57645d; margin-top:.4rem; }
.project-review-module select { display:block; max-width:10rem; margin:.4rem 0 .65rem; }
.project-stage-group { margin-top:.6rem; }
.project-stage-group > strong,.project-stage-group > summary { display:block; margin-bottom:.35rem; font-size:.9rem; font-weight:600; }
.project-stage-group > summary { display:list-item; cursor:pointer; }
.project-review-confirmation { background:#f5f7f6; border-color:#bac9c1; }
.project-review-confirmation .list-choice { margin-bottom:0; }
.project-progress-totals { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; margin:.75rem 0; padding:.6rem 0; border-top:1px solid #dce2df; border-bottom:1px solid #dce2df; }
.project-progress-totals > div { display:flex; flex-direction:column; gap:.15rem; min-width:0; }
.project-progress-totals span { font-size:.8rem; color:#526158; }
.project-progress-totals strong { font-size:1.1rem; }
.project-period-guide { padding:0; margin:.5rem 0; list-style:none; }
.project-period-guide li { padding:.5rem 0; border-top:1px solid #e4e9e6; }
.project-period-heading { display:flex; flex-wrap:wrap; gap:.2rem .8rem; justify-content:space-between; font-size:.9rem; }
.project-period-guide p { margin:.25rem 0 0; font-size:.85rem; line-height:1.45; color:#526158; }
@media(max-width:480px) { .project-review-module { padding:.6rem; } .project-progress-totals { gap:.35rem; } }

.project-candidate-facts { display:flex; flex-wrap:wrap; gap:.35rem 1rem; margin:.4rem 0; font-size:.85rem; }
.project-candidate-facts strong { margin-right:.2rem; }
.project-continuity-option > small { display:block; margin-bottom:.5rem; }

/* R289-PDA-POLISH-08: énfasis discreto e información de continuidad legible. */
.curriculum-history-summary { font-weight:700; color:#3d5648; }
.curriculum-expand { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:.55rem .8rem; font-weight:700; border:1px solid #a9ceca; border-radius:9px; color:#075e58; background:#edf7f5; transition:background .15s,border-color .15s; }
.curriculum-expand:hover { background:#dfeeea; border-color:#69a69d; }
.curriculum-expand[aria-expanded="true"] { background:#dceee8; border-color:#78aba0; }
.curriculum-expand:focus-visible { outline:3px solid #348a80; outline-offset:3px; }
.project-continuity-list.card { background:#f0f7fb; border:1px solid #bfd5e4; border-left:4px solid #5284a3; }
.project-continuity-list > h3 { color:#264f68; }
.project-continuity-option { background:#fff; border:1px solid #d4e1e9; border-radius:9px; margin-top:.7rem; padding:.85rem; }
.project-continuity-option.is-resumed { background:#eaf5f0; border-color:#8fbcaa; }
.project-progress-review.card { background:#f2f8f5; border:1px solid #b3d3c3; border-left:4px solid #44896b; margin-bottom:1.6rem; }
.project-continuation-eyebrow { display:block; color:#346b54; font-size:.75rem; font-weight:700; letter-spacing:.04em; margin-bottom:.3rem; }
.project-progress-review > h3 { color:#24593f; margin-top:.2rem; }
.project-review-subtitle { display:block; font-size:.95rem; margin:.4rem 0; }
.project-progress-review + h3,.project-continuity-list + h3 { border-top:1px solid #d6e2dd; padding-top:1.1rem; }
.confirmation-metrics { display:grid; gap:.5rem; margin:.8rem 0; }
.confirmation-metrics > div { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:.25rem .7rem; padding:.55rem .65rem; background:#f0f6f5; border-radius:7px; }
.confirmation-metrics dt { font-size:.85rem; color:#425954; }
.confirmation-metrics dd { margin:0; color:#164d44; }
.confirmation-note { font-size:.85rem; line-height:1.5; color:#53635e; }

/* R289-PROJECT-SECTIONS-09: preparación independiente de los PDA. */
.project-preparation-section.adaptation-section { clear:both; margin:1.5rem 0 .8rem; padding:1rem; border:1px solid #bfd5e4; border-left:4px solid #5284a3; border-radius:12px; background:#f0f7fb; }
.project-preparation-heading { display:block; background:transparent; padding:0 0 .7rem; margin-bottom:.8rem; border-bottom:1px solid #ccdde8; }
.project-preparation-eyebrow { display:block; font-size:.75rem; font-weight:700; letter-spacing:.04em; color:#375e75; margin-bottom:.3rem; }
.project-preparation-heading h3 { margin:.2rem 0 .4rem; color:#264f68; }
.project-preparation-heading p { margin:0; }
.project-preparation-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.project-preparation-group { min-width:0; border:1px solid #d5e2ea; border-radius:9px; padding:.85rem; background:#fff; }
.project-preparation-group h4 { margin:0 0 .5rem; }
.project-preparation-group p { margin:.4rem 0; }
.project-preparation-group .flow-guide { background:transparent; padding:0; color:#43586a; line-height:1.6; }
.project-preparation-group .list-choice { margin:.7rem 0 0; border-top:1px solid #e1e8ee; border-bottom:0; padding-top:.7rem; }
@media(max-width:760px) { .project-preparation-groups { grid-template-columns:1fr; } .project-preparation-section.adaptation-section { padding:.8rem; } }

/* R289-PROJECT-LIST-10: más espacio vertical para elegir proyectos. */
.monthly-wizard .project-picker .project-list { max-height:640px; }
@media(max-width:800px) { .monthly-wizard .project-picker .project-list { max-height:400px; } }

/* R289-PROJECT-RESIZE-11: arrastre vertical limitado al contenido. */
.monthly-wizard .project-picker .project-list.project-list-resizable { display:block; height:640px; resize:vertical; overflow:auto; box-sizing:border-box; border:1px solid #d2e2df; border-radius:9px; }
.project-list-entries { display:grid; gap:12px; }
.project-list-resize-help { display:block; margin:-.25rem 0 .5rem; color:#52665d; font-size:.8rem; line-height:1.4; }
@media(max-width:800px) { .monthly-wizard .project-picker .project-list.project-list-resizable { height:400px; } }

/* R289-PROJECT-STABILITY-12: evitar ciclos por aparición de barras de scroll. */
.monthly-wizard .project-picker .project-list.project-list-resizable { scrollbar-gutter:stable; overflow-x:hidden; }
.project-list-entries { min-width:0; grid-template-columns:minmax(0,1fr); }
.project-list-entries > .project-choice { min-width:0; max-width:100%; overflow-wrap:anywhere; }
.monthly-wizard:has(.project-list-resizable) > .dialog-body { scrollbar-gutter:stable; }
.project-list-entries > .project-choice { margin:0; }

/* R289-WORD-FLOW-13: contexto legible, con controles estables. */
.graduate-profile-panel .choice-list.project-list-resizable { display:block; height:460px; resize:vertical; overflow-y:auto; overflow-x:hidden; scrollbar-gutter:stable; box-sizing:border-box; }
.graduate-profile-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; min-width:0; }
.graduate-profile-options > .list-choice { min-width:0; margin:0; overflow-wrap:anywhere; }
.context-axes textarea.context-auto-text,.context-articulations textarea.context-auto-text { overflow-y:hidden; resize:none; max-height:none; min-height:5rem; box-sizing:border-box; }
#form-modal:has(.graduate-profile-panel) .dialog-body { scrollbar-gutter:stable; }
@media(max-width:600px) { .graduate-profile-options { grid-template-columns:1fr; } }

/* R289-TEACHER-SETUP-14: collapsible class form and clear single-logo control. */
.class-editor.school-create{padding:0;margin-top:20px}
.class-editor-form{padding:20px;margin:0;background:#fff}
.class-editor>summary strong{font-size:18px}
.setup-footer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px}
.setup-footer-actions>button{width:100%;min-height:48px;height:100%;margin:0;white-space:normal;line-height:1.4;padding:12px 14px;box-sizing:border-box}
.school-logo-editor{margin:22px 0;padding:16px;border:1px solid #dce8e4;border-radius:14px;background:#f8fbfa}
.school-logo-editor h4{margin:0 0 8px}
.school-logo-editor>.muted{line-height:1.6;margin:0 0 12px}
.school-logo-drop{display:flex;gap:16px;align-items:center;border:2px dashed #b5cbc4;border-radius:12px;padding:16px;background:white;transition:border-color .15s,background-color .15s;min-width:0}
.school-logo-drop.drag-over,.school-logo-drop:focus-visible{border-color:var(--green);background:#eef7f2;outline:2px solid #83ae9b;outline-offset:2px}
.school-logo-drop[aria-busy="true"]{opacity:.7}
.school-logo-current{flex:0 0 110px;text-align:center;font-size:12px;color:#476259}
.school-logo-current img{display:block;width:100px;height:80px;object-fit:contain;margin:0 auto 8px;background:#fff}
.school-logo-placeholder{display:grid;place-items:center;width:100px;height:80px;border:1px solid #dde5e1;border-radius:8px;margin:0 auto 8px;color:#6b7c74;background:#f5f8f6}
.school-logo-description{min-width:0;flex:1}
.school-logo-description p{margin:6px 0 12px}
.school-logo-description .card-actions{gap:8px;margin:0}
.school-logo-remove{border:1px solid #c6d4ce;border-radius:8px;padding:9px 12px;background:#fff;color:#476259;font-weight:600;cursor:pointer}
.school-logo-remove[hidden]{display:none}
@media(max-width:600px){.school-logo-drop{flex-direction:column;align-items:stretch}.school-logo-current{flex-basis:auto}.school-logo-description{text-align:center}.school-logo-description .card-actions{justify-content:center}.setup-footer-actions{grid-template-columns:1fr}.class-editor-form{padding:14px}}

.document-style-layout .school-logo-description .card-actions{margin:0}

/* R289-ADMIN-POLISH-15: align the first card with its sticky summary. */
.setup-layout>div>:first-child{margin-top:0}
.setup-layout>.setup-summary{margin-top:0;margin-bottom:0}
/* Logo controls also adapt to narrow columns inside the desktop layout. */
.school-logo-editor{container-type:inline-size}
@container(max-width:360px){.school-logo-drop{flex-direction:column;align-items:stretch}.school-logo-current{flex-basis:auto}.school-logo-description{text-align:center}.school-logo-description .card-actions{justify-content:center}}

/* DEV15: explicit document saving; no automatic downloads. */
.word-download-dialog{width:min(640px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box}
.word-download-list{display:grid;gap:12px;margin-top:18px}
.word-download-file{display:grid;gap:8px;padding:16px;border:1px solid #d5e5e5;border-radius:12px;background:#f5fafb}
.word-download-file small{overflow-wrap:anywhere}
.word-download-file .card-actions{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 0}
.download-status:not(:empty){padding:12px;border-radius:9px;background:#edf7f4;color:#174b47;line-height:1.5}
@media(max-width:600px){.graduate-profile-panel .choice-list.project-list-resizable{height:380px}.word-download-file .card-actions>button{flex:1 1 100%}}
