:where(.sdi-orario,.sdi-class-information-section,.sdi-orario-index,.sdi-information-cards){--sdi-border:#d6d9dd;--sdi-head:#b7d3ed;--sdi-head-text:#17324d;--sdi-official:#e6f1fb;--sdi-personal:#fff4d6;--sdi-conflict:#fee2e2;--sdi-button-bg:#f7f7f7;--sdi-button-bg-hover:#f2f3f4;--sdi-button-bg-active:#e9ecef;--sdi-button-border:#dce2e8;--sdi-button-border-hover:#aeb9c3;--sdi-button-text:#60758a;--sdi-button-text-hover:#46525d;--sdi-panel-border:#e7ebef;--sdi-panel-accent:#066ac9;--sdi-panel-shadow:0 1px 8px rgb(23 50 77 / 10%)}.sdi-orario{margin:1.5rem 0;padding:1.25rem;border:1px solid var(--sdi-panel-border);border-bottom:4px solid var(--sdi-panel-accent);border-radius:.2rem .2rem 0 0;background:#fff;box-shadow:var(--sdi-panel-shadow)}.sdi-orario>header{margin-bottom:1rem}.sdi-orario>header h2,.sdi-orario>header p{margin:.25rem 0}.sdi-orario-information{margin:0 0 1rem;padding:.8rem 1rem;border:1px solid var(--sdi-border);border-left:4px solid #2271b1;background:#f8fafc}.sdi-orario-information h3,.sdi-orario-information p{margin:.25rem 0}.sdi-orario-information dl{display:grid;grid-template-columns:minmax(12rem,max-content) 1fr;gap:.35rem 1rem;margin:.5rem 0 0}.sdi-orario-information dt{font-weight:700}.sdi-orario-information dd{margin:0}.sdi-orario-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.sdi-orario-table-frame{border:1px solid var(--sdi-panel-border);border-bottom:4px solid var(--sdi-panel-accent);border-radius:.2rem .2rem 0 0;background:#fff;box-shadow:var(--sdi-panel-shadow)}.sdi-orario-table-frame>table{margin:0}.sdi-orario-grid,.sdi-class-information-table{width:100%;border-collapse:collapse;border-spacing:0;font-size:.92rem}.sdi-orario-grid{min-width:600px;table-layout:fixed}.sdi-orario-grid th,.sdi-orario-grid td,.sdi-class-information-table th,.sdi-class-information-table td{padding:.5rem .6rem;border:1px solid var(--sdi-border);vertical-align:middle}.sdi-orario-grid thead th,.sdi-class-information-table thead th{background:var(--sdi-head);color:var(--sdi-head-text);text-align:center;font-weight:700}.sdi-orario-grid tbody th{background:#f2f4f7;text-align:center}.sdi-orario-grid thead th:first-child,.sdi-orario-grid tbody th{width:8%}.sdi-orario-grid thead th:not(:first-child){width:15.33%}.sdi-orario-grid tbody tr:not(.sdi-orario-break) td{min-height:100px;height:100px;text-align:center}.sdi-orario-grid td strong,.sdi-orario-grid td span,.sdi-orario-grid td small{display:block}.sdi-orario-grid .sdi-event-links{display:flex;flex-wrap:wrap;gap:.28rem;align-items:center;justify-content:center;margin-top:.3rem}.sdi-orario .sdi-orario-grid a.sdi-orario-cell-button{display:inline-flex;max-width:100%;min-height:1.8rem;align-items:center;justify-content:center;box-sizing:border-box;padding:.2rem .45rem;white-space:normal;text-align:center}.sdi-official{background:var(--sdi-official)}.sdi-personal{background:var(--sdi-personal)}.sdi-conflict{background:var(--sdi-conflict);box-shadow:inset 0 0 0 2px #b91c1c}.sdi-free{background:#fff}.sdi-orario-break th,.sdi-orario-break td{background:#f7f7f7}.sdi-orario-break td{color:#50575e;text-align:center;vertical-align:middle}.sdi-personal-editor{margin-top:1.5rem;padding:1rem;border:1px solid var(--sdi-border);border-radius:5px}.sdi-personal-fields{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end}.sdi-personal-fields label{display:flex;flex-direction:column;gap:.25rem}.sdi-personal-editor textarea{width:min(100%, 45rem)}.sdi-personal-list{padding:0;list-style:none}.sdi-personal-list li{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--sdi-border)}.sdi-personal-list form{margin:0}.sdi-delete{color:#991b1b}.sdi-notice,.sdi-orario-message{padding:.75rem 1rem;border-left:4px solid #2271b1;background:#f0f6fc}.sdi-notice-error{border-color:#b91c1c;background:#fef2f2}.sdi-notice-success{border-color:#15803d;background:#f0fdf4}.sdi-orario-index .sdi-orario-index-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.65rem;margin:0;padding:0;list-style:none}.sdi-teacher-index-group{margin:1.25rem 0 1.75rem;padding:1.25rem;border:1px solid var(--sdi-panel-border);border-bottom:4px solid var(--sdi-panel-accent);border-radius:.2rem .2rem 0 0;background:#fff;box-shadow:var(--sdi-panel-shadow)}.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-group>h3{margin:0 0 .75rem;color:#17324d;font-size:1.4rem;font-weight:700;letter-spacing:.08em}.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;margin:0;padding:0;list-style:none}.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons li,.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons a{width:100%;min-width:0;box-sizing:border-box}.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons a{min-height:4.25rem}.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons small{display:block;margin-top:.18rem;color:#646970;font-size:.76rem;font-weight:500;line-height:1.2}.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons a:hover small,.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons a:focus-visible small{color:inherit}.sdi-orario-index .sdi-teacher-index-buttons li,.sdi-orario-index .sdi-class-index-buttons li{margin:0;padding:0;list-style:none}.sdi-class-index-group{position:relative;margin:0 0 .8rem;padding:2.8rem 3rem 3.25rem;border:1px solid var(--sdi-panel-border);border-bottom:4px solid var(--sdi-panel-accent);border-radius:.2rem .2rem 0 0;background:#fff;box-shadow:var(--sdi-panel-shadow)}.sdi-orario-index-rooms{margin:1.25rem 0;padding:1.25rem;border:1px solid var(--sdi-panel-border);border-bottom:4px solid var(--sdi-panel-accent);border-radius:.2rem .2rem 0 0;background:#fff;box-shadow:var(--sdi-panel-shadow)}.sdi-class-index-group>h3{position:absolute;top:1rem;right:1.1rem;margin:0;color:#526b82;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sdi-class-index-track+.sdi-class-index-track{margin-top:1.5rem}.sdi-class-index-track>h4{margin:0 0 .55rem;color:#17324d;font-size:1rem;font-weight:700;letter-spacing:.04em}.sdi-orario-index .sdi-class-index-buttons{display:flex;flex-wrap:wrap;gap:.65rem;margin:0 0 0 2.75rem;padding:0;list-style:none}.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button:link,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button:visited{display:flex;width:6.1rem;min-height:2.9rem;align-items:center;justify-content:center;border-radius:.25rem;font-size:.95rem;font-weight:700}.sdi-orario-index .sdi-orario-index-buttons li{margin:0;padding:0;list-style:none}.sdi-orario-index .sdi-orario-index-button{display:flex;min-height:2.75rem;width:100%;box-sizing:border-box;flex-direction:column;align-items:center;justify-content:center;text-align:center}.sdi-orario-index .sdi-orario-index-button small{display:block;margin-top:.15rem;color:#646970;font-size:.78rem}.sdi-orario-index .sdi-orario-index-button:hover small,.sdi-orario-index .sdi-orario-index-button:focus small{color:inherit}.sdi-class-information-section{margin:1.25rem 0;padding:1.25rem;border:1px solid var(--sdi-panel-border);border-bottom:4px solid var(--sdi-panel-accent);border-radius:.2rem .2rem 0 0;background:#fff;box-shadow:var(--sdi-panel-shadow)}.sdi-class-information-section h2{margin:0 0 .5rem;color:#526b82;font-size:1.05rem;font-weight:600}.sdi-class-information-table{min-width:42rem}.sdi-class-information-table tbody th{width:25%;text-align:center;font-weight:700}.sdi-class-teachers th:first-child,.sdi-class-teachers td:first-child{text-align:center}.sdi-class-teachers td:nth-child(2){text-align:center}.sdi-class-teachers th:nth-child(3),.sdi-class-teachers td:nth-child(3){width:4.5rem;text-align:center}.sdi-class-teachers td:nth-child(4){text-align:center;font-style:italic}.sdi-class-teachers td:nth-child(4) strong{font-style:normal}.sdi-class-figures td,.sdi-class-representatives td{text-align:center}.sdi-orario span.sdi-orario-button.is-disabled,.sdi-class-information-section span.sdi-orario-button.is-disabled{display:inline-block;padding:.28rem .6rem;border:1px solid #d8dde2;border-radius:.2rem;color:#7b8792;background:#f5f6f7;font-size:.875rem;font-weight:600;line-height:1.35;cursor:not-allowed}.sdi-orario a.sdi-orario-button,.sdi-class-information-section a.sdi-orario-button,.sdi-orario-index a.sdi-orario-button{display:inline-block;padding:.28rem .6rem;border:1px solid var(--sdi-button-border);border-radius:.2rem;color:var(--sdi-button-text);background:var(--sdi-button-bg);box-shadow:none;font-size:.875rem;font-weight:600;line-height:1.35;text-decoration:none!important;transition:color 120ms ease,background-color 120ms ease,border-color 120ms ease,box-shadow 120ms ease,transform 60ms ease}.sdi-orario a.sdi-orario-button:link,.sdi-orario a.sdi-orario-button:visited,.sdi-class-information-section a.sdi-orario-button:link,.sdi-class-information-section a.sdi-orario-button:visited,.sdi-orario-index a.sdi-orario-button:link,.sdi-orario-index a.sdi-orario-button:visited{color:var(--sdi-button-text);text-decoration:none!important}.sdi-orario a.sdi-orario-button:hover,.sdi-orario a.sdi-orario-button:focus-visible,.sdi-class-information-section a.sdi-orario-button:hover,.sdi-class-information-section a.sdi-orario-button:focus-visible,.sdi-orario-index a.sdi-orario-button:hover,.sdi-orario-index a.sdi-orario-button:focus-visible{border-color:var(--sdi-button-border-hover);color:var(--sdi-button-text-hover);background:var(--sdi-button-bg-hover);box-shadow:0 1px 3px rgb(23 50 77 / 16%);text-decoration:none!important}.sdi-orario a.sdi-orario-button:active,.sdi-class-information-section a.sdi-orario-button:active,.sdi-orario-index a.sdi-orario-button:active{border-color:#8795a1;color:#35414b;background:var(--sdi-button-bg-active);box-shadow:inset 0 1px 2px rgb(23 50 77 / 18%);transform:translateY(1px);text-decoration:none!important}.sdi-orario a.sdi-orario-cell-button.sdi-class-button,.sdi-orario a.sdi-orario-cell-button.sdi-class-button:link,.sdi-orario a.sdi-orario-cell-button.sdi-class-button:visited{border-color:#066ac9;color:#fff;background:#066ac9}.sdi-orario a.sdi-orario-cell-button.sdi-class-button:hover,.sdi-orario a.sdi-orario-cell-button.sdi-class-button:focus-visible{border-color:#0054a6;color:#fff;background:#005eb8;box-shadow:0 2px 5px rgb(0 75 145 / 28%)}.sdi-orario a.sdi-orario-cell-button.sdi-class-button:active{border-color:#00417f;color:#fff;background:#004d99;box-shadow:inset 0 2px 3px rgb(0 0 0 / 22%)}.sdi-orario-index a.sdi-orario-index-button.is-current,.sdi-orario-index a.sdi-orario-index-button[aria-current="page"]{border-color:#96a4af;color:var(--sdi-button-text-hover);background:#f4f4f4;box-shadow:0 0 0 3px #b7c1c9}.sdi-orario-index a.sdi-orario-index-button.is-current:hover,.sdi-orario-index a.sdi-orario-index-button.is-current:focus-visible,.sdi-orario-index a.sdi-orario-index-button[aria-current="page"]:hover,.sdi-orario-index a.sdi-orario-index-button[aria-current="page"]:focus-visible{border-color:#7f8e9a;color:#35414b;background:#eff1f2;box-shadow:0 0 0 3px #9eabb5,0 2px 4px rgb(23 50 77 / 18%)}.sdi-orario-index a.sdi-orario-index-button.is-current:active,.sdi-orario-index a.sdi-orario-index-button[aria-current="page"]:active{border-color:#6f7f8b;color:#26333d;background:#e5e9ec;box-shadow:0 0 0 3px #8998a3,inset 0 1px 3px rgb(23 50 77 / 24%);transform:translateY(1px)}.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button:link,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button:visited{border-color:#066ac9;color:#fff;background:#066ac9}.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button:hover,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button:focus-visible{border-color:#0054a6;color:#fff;background:#005eb8;box-shadow:0 2px 5px rgb(0 75 145 / 28%)}.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button:active{border-color:#00417f;color:#fff;background:#004d99;box-shadow:inset 0 2px 3px rgb(0 0 0 / 22%)}.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button.is-current,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button[aria-current="page"]{border-color:#003f7d;color:#fff;background:#00509e;box-shadow:0 0 0 3px rgb(6 106 201 / 28%)}.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button.is-current:hover,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button.is-current:focus-visible,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button[aria-current="page"]:hover,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button[aria-current="page"]:focus-visible{border-color:#00366c;color:#fff;background:#004b94;box-shadow:0 0 0 3px rgb(6 106 201 / 36%),0 2px 5px rgb(0 75 145 / 28%)}.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button.is-current:active,.sdi-orario-index.sdi-orario-index-classes a.sdi-class-index-button[aria-current="page"]:active{border-color:#002a55;color:#fff;background:#003f7d;box-shadow:0 0 0 3px rgb(6 106 201 / 42%),inset 0 2px 3px rgb(0 0 0 / 24%)}.sdi-muted{color:#646970}.sdi-information-cards{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.65rem;margin:1.25rem 0}.sdi-information-card{position:relative;min-width:0;padding:3rem;border:1px solid var(--sdi-panel-border);border-bottom:4px solid var(--sdi-panel-accent);border-radius:.2rem .2rem 0 0;background:#fff;box-shadow:var(--sdi-panel-shadow)}.sdi-information-card h2{margin:.25rem 0 1.35rem;color:#17324d;font-size:clamp(1.35rem, 2.2vw, 1.75rem);font-weight:800;text-transform:uppercase}.sdi-information-ribbon{position:absolute;top:0;left:3rem;width:2rem;height:3rem;background:#066ac9;clip-path:polygon(0 0,100% 0,100% 100%,50% 72%,0 100%)}.sdi-information-year{margin:0 0 2.6rem;color:#526b82;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-align:right;text-transform:uppercase}.sdi-information-label{margin:1.35rem 0 .55rem;color:#60758a;font-family:Georgia,"Times New Roman",serif;font-size:1rem;font-style:italic}.sdi-information-value,.sdi-information-reception{margin:0;color:#29445f;font-size:1.12rem}.sdi-information-value a{color:#526b82;overflow-wrap:anywhere}.sdi-information-reception{margin:.8rem 0 1.8rem}.sdi-information-note{color:#60758a;font-family:Georgia,"Times New Roman",serif;font-style:italic}.sdi-information-note p{margin:.45rem 0}.sdi-information-action,.sdi-information-action:link,.sdi-information-action:visited{display:inline-block;padding:.75rem 1.25rem;border:1px solid #066ac9;border-radius:.25rem;color:#fff;background:#066ac9;font-weight:700;text-decoration:none!important}.sdi-information-action:hover,.sdi-information-action:focus-visible{border-color:#0054a6;color:#fff;background:#005eb8;text-decoration:none!important}.sdi-information-classes-label{margin-top:1.8rem}.sdi-information-class-groups{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--sdi-panel-border);border-bottom:3px solid var(--sdi-panel-accent);box-shadow:var(--sdi-panel-shadow)}.sdi-information-class-groups>section{min-width:10rem;flex:1 1 12rem;padding:1rem 1.35rem;border-right:1px solid var(--sdi-panel-border)}.sdi-information-class-groups>section:last-child{border-right:0}.sdi-information-class-groups h3{margin:0 0 .7rem;color:#17324d;font-size:1.05rem}.sdi-information-class-buttons{display:flex;flex-wrap:wrap;gap:.65rem}.sdi-information-cards a.sdi-orario-button,.sdi-information-cards a.sdi-orario-button:link,.sdi-information-cards a.sdi-orario-button:visited{display:inline-flex;min-width:4.6rem;min-height:2.75rem;align-items:center;justify-content:center;padding:.28rem .6rem;border:1px solid var(--sdi-button-border);border-radius:.2rem;color:var(--sdi-button-text);background:var(--sdi-button-bg);font-weight:700;text-decoration:none!important}.sdi-information-cards a.sdi-orario-button:hover,.sdi-information-cards a.sdi-orario-button:focus-visible{border-color:var(--sdi-button-border-hover);color:var(--sdi-button-text-hover);background:var(--sdi-button-bg-hover);box-shadow:0 1px 3px rgb(23 50 77 / 16%)}.sdi-information-empty{margin:.5rem 0 0}@media (max-width:640px){.sdi-orario,.sdi-class-information-section,.sdi-teacher-index-group,.sdi-orario-index-rooms{padding:.8rem}.sdi-class-index-group{padding:2.75rem 1rem 2rem}.sdi-orario-index .sdi-class-index-buttons{margin-left:0}.sdi-orario-index a.sdi-class-index-button,.sdi-orario-index a.sdi-class-index-button:link,.sdi-orario-index a.sdi-class-index-button:visited{width:5.4rem}.sdi-orario-grid,.sdi-class-information-table{font-size:.84rem}.sdi-orario-grid th,.sdi-orario-grid td,.sdi-class-information-table th,.sdi-class-information-table td{padding:.4rem}.sdi-information-cards{grid-template-columns:1fr}.sdi-information-card{padding:2.75rem 1.25rem 2rem}.sdi-information-ribbon{left:1.25rem}}@media (max-width:1100px){.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:850px){.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.sdi-orario-index.sdi-orario-index-teachers .sdi-teacher-index-buttons{grid-template-columns:1fr}}