.page.teaching-plan-macro-page{position:relative;max-width:none;min-height:calc(100vh - 116px);padding:24px 15px 48px;background:#f3f3f4;color:#676a6c;font:300 14px/21px Lexend,sans-serif}
.teaching-plan-macro-page>.page-heading{min-height:84px;margin-bottom:0;padding:15px;background:#fafafa}
.teaching-plan-macro-page>.page-heading h1{color:#6a6a6a;font:500 20px/24px Lexend,sans-serif}
.tpm-shell{display:flow-root;border:0;background:transparent;color:#676a6c}
.tpm-filters{position:absolute;top:39px;left:42.54%;right:6.06%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 42px;align-items:end;gap:24px;padding:0}
.tpm-filters label{display:block;min-width:0;color:#0d6efd;font:500 14px/21px Lexend,sans-serif}
.tpm-filters select{display:block;box-sizing:border-box;width:100%;height:35px;padding:6px 12px;border:1px solid #e5e6e7;background:#fff;color:#676a6c;font:400 14px/21px Lexend,sans-serif}
.tpm-filters .select2-container{width:100%!important}.tpm-filters .select2-selection--single{min-height:33px}
.tpm-filters button{min-height:31px;padding:4px 8px;border:1px solid #005be8;border-radius:3px;background:#005be8;color:#fff;font:400 14px/21px Lexend,sans-serif;cursor:pointer}
.tpm-filters button:disabled,.tpm-tabs button:disabled{opacity:.55;cursor:default}
.tpm-result{margin:1px 0 16px;padding:16px;border:1px solid #e7eaec;background:#fff}
.tpm-tabs{display:flex;min-height:55px;overflow-x:auto;align-items:center;padding:0 10px;border-bottom:1px solid #dedede}
.tpm-tabs button{flex:none;padding:15px 8px;border:0;border-bottom:2px solid transparent;background:#fff;color:#141313;font:400 14px/21px Lexend,sans-serif;cursor:pointer}
.tpm-tabs button[aria-selected=true]{border-bottom-color:#ed5565;color:#000;font-weight:400}
.tpm-actions{display:flex;justify-content:flex-start;padding:8px 16px}
.tpm-actions button{box-sizing:border-box;width:28.5px;height:31px;border:0;border-radius:3px;background:#23c6c8;color:#fff;padding:0;font:400 14px/21px Lexend,sans-serif;cursor:pointer}
.tpm-actions button:disabled{opacity:.6;cursor:default}
.tpm-table-scroll{overflow-x:auto;margin:0 -4px}
.tpm-table{width:100%;min-width:1050px;border-collapse:collapse}
.tpm-table.tpm-all{min-width:2150px}
.tpm-table th,.tpm-table td{border:1px solid #ebebeb;padding:8px;text-align:center;vertical-align:middle}
.tpm-table th{background:#f5f5f6;color:#222;font:700 14px/20px Lexend,sans-serif}
.tpm-table:not(.tpm-all) th:first-child{width:120px;min-width:120px}
.tpm-table td{font:300 14px/20px Lexend,sans-serif}
.tpm-table td.tpm-placeholder{color:#8a8a8a}.tpm-all td{height:100px;box-sizing:border-box}
.tpm-all td:first-child{font-weight:700}
.tpm-day-detail{text-align:left;min-width:130px}.tpm-day-detail summary{cursor:pointer;color:#1c84c6}
.tpm-day-detail dl{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;margin:7px 0;font:300 12px/18px Lexend,sans-serif}
.tpm-day-detail dt{font-weight:600}.tpm-day-detail dd{margin:0;overflow-wrap:anywhere}
.tpm-loading,.tpm-error{margin:8px 16px}.tpm-error{color:#b42318}
.tpm-shell button:focus-visible,.tpm-shell select:focus-visible{outline:2px solid #005be8;outline-offset:2px}
@media(max-width:1100px){.tpm-filters{position:static;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;background:#fff}.tpm-result{margin-top:12px}}
@media(max-width:550px){.tpm-filters{grid-template-columns:1fr}.tpm-result{margin:8px}.tpm-table-scroll{margin:0 6px}}
