.tt{background:#fff;border:1px solid #e9e5f0;border-radius:20px;padding:28px;color:#292235;max-width:1160px;margin:auto}.tt *{box-sizing:border-box}.tt [hidden]{display:none!important}.tt-school{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.tt-eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#8154b8}.tt-school h2{font-size:25px;margin:8px 0;color:#2f2440}.tt-school p{font-size:12px;color:#89818f;margin:0}.tt .button{white-space:nowrap;min-height:42px}.tt input,.tt select{background:#fff;color:#332b3c;border:1px solid #dcd6e5;border-radius:10px;font:inherit;min-height:44px;padding:10px 12px;min-width:0;max-width:100%}.tt-search{display:flex;gap:9px;margin-bottom:14px}.tt-search input{flex:1;width:0}.tt-results{max-height:320px;overflow:auto;border:1px solid #e7e1ec;border-radius:12px}.tt-results button{display:block;width:100%;text-align:left;background:#fff;border:0;border-bottom:1px solid #f0ebf5;padding:14px;cursor:pointer;color:#34263f}.tt-results button:hover{background:#f7f2ff}.tt-results small{display:block;color:#8a8095;margin-top:5px}.tt-pages{display:flex;align-items:center;justify-content:center;gap:16px;margin:12px 0 20px;font-size:12px}.tt-controls{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:18px;background:#f6f2fb;border-radius:14px}.tt-controls label,.tt-track{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#665574}.tt-controls label:nth-child(2){width:155px}.tt-controls label:nth-child(3){flex:1;min-width:150px}.tt-controls select{min-width:95px}.tt-week{display:flex;align-items:center;gap:10px;margin:24px 0 16px;flex-wrap:wrap}.tt-week strong{font-size:16px;flex:1;text-align:center;color:#513571}.tt-track{max-width:360px;margin-bottom:12px}.tt-scroll{overflow:auto;border:1px solid #e9e3ef;border-radius:14px}.tt-table{width:100%;min-width:500px;border-collapse:collapse;table-layout:fixed;font-size:13px}.tt-table caption{text-align:left;padding:14px;font-weight:700;color:#746282;font-size:12px;caption-side:bottom}.tt-table th,.tt-table td{border-bottom:1px solid #eee8f3;border-right:1px solid #eee8f3;padding:10px 7px;text-align:center;overflow-wrap:anywhere}.tt-table th:last-child,.tt-table td:last-child{border-right:0}.tt-table thead th{background:#f6f2fa;color:#766382;height:65px}.tt-table thead th:first-child{width:45px}.tt-table th small{display:block;font-size:10px;font-weight:400;margin-top:5px}.tt-table tbody th{font-size:11px;color:#9789a1;background:#fcfaff}.tt-table td{height:68px;vertical-align:middle}.tt-table .tt-today{background:#f5efff}.tt-table thead .tt-today{background:#7850b4;color:#fff}.tt-subject{display:block;border-radius:7px;padding:8px 3px;font-weight:600;line-height:1.45}.tt-subject+.tt-subject{margin-top:4px}.tt-color-0{background:#eee4ff;color:#694494}.tt-color-1{background:#e4f3ed;color:#39705a}.tt-color-2{background:#fff0de;color:#8c6435}.tt-color-3{background:#e7effc;color:#496b9a}.tt-color-4{background:#fbe7ee;color:#985773}.tt-blank{color:#c6bfce}.tt-empty{padding:24px 14px;text-align:center;background:#faf8fd;border-radius:12px;color:#84758f;font-size:13px;line-height:1.8}.tt-note{font-size:12px;color:#92859c;line-height:1.8;margin:18px 0 10px}.tt-source{font-size:11px;color:#765293}.tt button:disabled{opacity:.45;cursor:default}.tt :is(button,input,select,a):focus-visible{outline:3px solid #b998ec;outline-offset:3px}
@media(max-width:760px){.tt{padding:18px 14px;border-radius:15px}.tt-school h2{font-size:21px}.tt-controls{padding:13px;gap:10px}.tt-controls label{flex:1}.tt-controls label:nth-child(2){width:auto}.tt-controls label:nth-child(3){flex-basis:60%}.tt-controls>.button{flex:1}.tt-week{gap:6px}.tt-week .button{font-size:11px;padding:8px}.tt-week strong{font-size:13px}.tt-week [data-tt-today]{width:100%}.tt-table{font-size:12px}.tt-note{font-size:11px}}
