.teacher-planner{--tp-ink:#22364b;--tp-blue:#3768a8;--tp-open:#e8f0fa;--tp-line:#dce5ed;color:var(--tp-ink);margin-top:20px}.teacher-planner button:focus-visible{outline-offset:3px;outline:3px solid #3768a8}.tp-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;display:flex}.tp-heading h2{letter-spacing:-.04em;margin:0 0 10px;font-family:Georgia,Times New Roman,serif;font-size:2.6rem;font-weight:400}.tp-heading p{margin:0;font-size:.94rem}.tp-zone{color:#52677b;align-items:center;gap:9px;max-width:270px;font-size:.78rem;display:flex}.tp-zone strong{font-weight:600;display:block}.tp-tutor-choice{max-width:340px;margin-bottom:20px}.tp-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:24px;display:grid}.tp-schedule{border:1px solid var(--tp-line);background:#fff;border-radius:14px;overflow:hidden}.tp-weekbar{align-items:center;gap:10px;padding:18px 16px;display:flex}.tp-weekbar h3{letter-spacing:-.02em;flex:1;margin:0;font-size:1rem}.tp-arrows{gap:2px;display:flex}.tp-arrows [data-slot=button]{min-width:30px;min-height:36px;padding:7px}.tp-weekbar>[data-slot=button]{min-height:36px;padding:7px 10px;font-size:.73rem}.tp-legend{color:#52677b;gap:20px;padding:0 20px 20px;font-size:.75rem;display:flex}.tp-legend span{align-items:center;gap:6px;display:flex}.tp-legend i{border-radius:2px;width:9px;height:9px}.tp-dot-open{background:#3768a8}.tp-dot-booked{background:#256b64}.tp-dot-off{background:#8895a3}.tp-week-grid{border-top:1px solid var(--tp-line);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.tp-day{border-right:1px solid var(--tp-line);flex-direction:column;min-width:0;min-height:360px;display:flex}.tp-day:last-child{border-right:0}.tp-day>header{text-align:center;background:#f7fafc;flex-direction:column;align-items:center;gap:4px;min-height:95px;padding:16px 7px;display:flex}.tp-day>header span{color:#657386;font-size:.72rem}.tp-day>header strong{letter-spacing:-.04em;font-size:1.55rem;font-weight:500;line-height:1.2}.tp-day>header small{color:var(--tp-blue);font-size:.6rem}.tp-today>header strong{background:var(--tp-blue);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.tp-day-entries{flex:1;padding:7px}.tp-day-empty{text-align:center;color:#657386;margin:28px 0;font-size:.67rem}.tp-entry{border-left:3px solid var(--tp-blue);background:var(--tp-open);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;border-radius:5px;flex-direction:column;gap:4px;margin-bottom:8px;padding:11px 7px 8px;font-size:.66rem;display:flex}.tp-entry strong{font-size:.78rem;font-weight:650}.tp-entry small{margin-top:5px;font-size:.62rem}.tp-entry button{text-align:left;color:#47617b;background:0 0;border:0;align-items:center;gap:3px;min-height:28px;margin-top:5px;padding:4px 0;font-size:.62rem;display:flex}.tp-entry-booked{color:#205c56;background:#e8f3f0;border-color:#256b64}.tp-entry-off,.tp-entry-covered{color:#536475;background:repeating-linear-gradient(135deg,#f0f3f6,#f0f3f6 5px,#e8edf2 5px 6px);border-color:#8895a3}.tp-add-day{border:0;border-top:1px dashed var(--tp-line);color:var(--tp-blue);background:#fff;justify-content:center;align-items:center;gap:3px;min-height:44px;padding:12px 3px;font-size:.68rem;display:flex}.tp-add-day:hover{background:#f1f6fc}.tp-schedule-note{border-top:1px solid var(--tp-line);background:#f7fafc;align-items:flex-start;gap:10px;padding:18px 20px;display:flex}.tp-schedule-note svg{color:#657386;flex-shrink:0}.tp-schedule-note p{max-width:65ch;margin:0;font-size:.74rem;line-height:1.6}.tp-editor{border:1px solid var(--tp-line);background:#f7fafc;border-radius:14px;padding:23px;scroll-margin-top:25px}.tp-editor-title{align-items:center;gap:10px;margin-bottom:20px;display:flex}.tp-editor-title h3{letter-spacing:-.025em;margin:0;font-size:1.16rem}.tp-mode{background:#e5ebf1;border-radius:8px;margin-bottom:22px;padding:4px;display:flex}.tp-mode button{background:0 0;border:0;border-radius:5px;flex:1;min-height:40px;padding:8px 6px;font-size:.78rem}.tp-mode button[aria-pressed=true]{color:#264f82;background:#fff;font-weight:600;box-shadow:0 1px 3px #22364b18}.tp-editor form{gap:15px;display:grid}.tp-editor .field{min-width:0;margin:0}.tp-editor .field>span{color:#455b71;font-size:.76rem;font-weight:600}.tp-editor input,.tp-editor select{background:#fff;width:100%;min-width:0;font-size:.84rem}.tp-time-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tp-preview{border-top:1px solid var(--tp-line);border-bottom:1px solid var(--tp-line);margin:2px 0;padding:17px 0}.tp-preview>strong{font-size:.91rem}.tp-preview p{margin:7px 0 0;font-size:.73rem;line-height:1.55}.tp-start-preview{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.tp-start-preview span{border:1px solid var(--tp-line);color:#365a87;font-variant-numeric:tabular-nums;background:#fff;border-radius:4px;padding:4px 7px;font-size:.71rem}.tp-editor .tick{align-items:flex-start;font-size:.74rem;line-height:1.5}.tp-editor .tick [role=checkbox]{flex-shrink:0;margin-top:2px}.tp-editor .tp-publish{background:var(--tp-blue);color:#fff;width:100%}.tp-editor-hint{margin:0;font-size:.72rem;line-height:1.6}.tp-success{color:#256b64;align-items:center;gap:7px;margin:0;font-size:.78rem;display:flex}.tp-success svg{flex-shrink:0}.tp-notice{border:1px solid var(--tp-line);background:#f7fafc;border-radius:10px;padding:25px}.tp-mobile-days{display:none}@media (min-width:1450px){.tp-entry strong{font-size:.9rem}}@media (max-width:1100px){.tp-layout{grid-template-columns:minmax(0,1fr)}.tp-editor{max-width:none}.tp-editor form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tp-editor .tp-preview,.tp-editor .tick,.tp-editor .form-error,.tp-editor .tp-success,.tp-editor .tp-publish,.tp-editor-hint{grid-column:1/-1}.tp-day{min-height:270px}.tp-editor-title{margin-bottom:12px}.tp-mode{max-width:400px}}@media (max-width:600px){.tp-heading{flex-direction:column;align-items:flex-start;gap:16px}.tp-heading h2{font-size:2.1rem}.tp-zone{max-width:none}.tp-zone strong{display:inline}.tp-weekbar{flex-wrap:wrap;gap:5px;padding:12px 8px}.tp-weekbar h3{min-width:140px;font-size:.85rem}.tp-legend{gap:15px;padding:0 14px 14px}.tp-mobile-days{border-top:1px solid var(--tp-line);background:#f7fafc;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding:7px;display:grid}.tp-mobile-days button{background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:center;gap:5px;min-height:60px;padding:8px 2px;display:flex}.tp-mobile-days span{font-size:.64rem}.tp-mobile-days strong{font-size:1.05rem;font-weight:600}.tp-mobile-days button[aria-pressed=true]{background:var(--tp-blue);color:#fff}.tp-week-grid{display:block}.tp-day{border:0;min-height:180px;display:none}.tp-day-selected{display:flex}.tp-day>header{min-height:0;display:none}.tp-day-entries{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;display:grid}.tp-entry{margin:0;padding:14px 12px}.tp-entry strong{font-size:1rem}.tp-entry span,.tp-entry small,.tp-entry button{font-size:.75rem}.tp-entry button{min-height:36px}.tp-day-empty{grid-column:1/-1;font-size:.84rem}.tp-add-day{font-size:.85rem}.tp-editor{padding:20px}.tp-editor form{grid-template-columns:1fr}.tp-editor .field,.tp-editor .tp-preview,.tp-editor .tick,.tp-editor .form-error,.tp-editor .tp-success,.tp-editor .tp-publish,.tp-editor-hint{grid-column:auto}.tp-time-fields .field{min-width:0}.tp-time-fields input{padding:9px}.tp-layout{gap:18px}}.tp-always{background:#f2f8f5;border:1px solid #cadbd4;border-radius:12px;justify-content:space-between;align-items:center;gap:24px;margin:20px 0;padding:22px;display:flex}.tp-always h3{margin:0 0 6px;font-size:1.15rem}.tp-always p{margin:5px 0;line-height:1.5}.tp-always button{flex-shrink:0}.tp-always-day{color:#205c56;background:#e8f3f0;border-radius:5px;grid-column:1/-1;padding:9px;font-size:.72rem}.teacher-planner>.tp-success{margin:12px 0}@media (max-width:600px){.tp-always{flex-direction:column;align-items:stretch;gap:12px}.tp-always button{width:100%}}
