/* Screen-only adaptations keep the approved projector and printed slides intact. */
.timeline-mobile{display:none}
button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #798fae;outline-offset:2px}
@media screen and (max-width:600px){
 body{font-size:16px;line-height:1.6}header{padding:16px;align-items:center;gap:12px}header b{font-size:25px}header span{font-size:12px;text-align:right}
 main{padding:12px}#notice{padding:0 16px;overflow-wrap:anywhere}#notice:empty{display:none}#login{margin:24px 12px;padding:22px;max-width:none}#login button{width:100%}
 button{min-height:44px;max-width:100%;touch-action:manipulation}input,textarea,select{font-size:16px;min-height:44px;max-width:100%;min-width:0}input[type=checkbox]{min-height:22px;width:22px;height:22px;vertical-align:middle}
 h1{font-size:23px;overflow-wrap:anywhere}h2{font-size:20px}h3{font-size:18px}p,summary{overflow-wrap:anywhere}
 .main-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:20px}.main-nav select{grid-column:1/-1;width:100%}.main-nav button{font-size:15px;padding:9px 6px}
 .work-toolbar{gap:12px;margin-bottom:18px}#categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}#categories button{padding:8px 3px;font-size:14px}
 .work-toolbar>.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.work-toolbar #project-picker{grid-column:1/-1;grid-row:1;width:100%}
 .timeline-toolbar{gap:4px}.timeline-toolbar h1{width:100%;margin:8px 0}.timeline-toolbar>.row{display:grid;grid-template-columns:44px minmax(0,1fr) 44px auto;width:100%;gap:6px}.timeline-toolbar input{width:100%;padding:6px;font-size:16px}.timeline-toolbar button{padding:6px}
 .timeline-summary{font-size:14px}.timeline-scroll{display:none}.timeline-mobile{display:block;border:1px solid #cfd6e1;border-radius:12px;background:#f1f3f7;padding:12px}.timeline-mobile h2{font-size:18px;margin:4px 0 12px}
 .month-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-bottom:12px;text-align:center}.month-calendar>span{font-size:13px;color:#657388;min-height:26px}.month-calendar button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;padding:2px;border:1px solid transparent;background:#e7ebf2;line-height:1.2}.month-calendar small{font-size:8px;height:10px;line-height:10px;color:#59728e}.month-calendar .calendar-today{border-color:#59728e;font-weight:700}.month-calendar button[aria-pressed=true]{background:#c8d4e4;border-color:#59728e}
 .mobile-schedule h3{margin:16px 0 8px;font-size:17px}.mobile-schedule-item{display:flex;gap:10px;align-items:start;width:100%;text-align:left;background:#fff9;margin:8px 0;padding:10px;overflow-wrap:anywhere}.mobile-schedule-item small{flex-shrink:0;max-width:70px;color:#657388}.mobile-schedule-item span{min-width:0}.timeline-month-links button{font-size:14px;min-height:44px}
 .project-grid{gap:12px;margin-top:16px}.project-grid>section{padding:16px}.section-title{flex-wrap:wrap}.record button{min-height:44px;font-size:14px}.task details{padding:10px}.task .row{gap:8px}.task p{line-height:1.7}
 #weekly-view>.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#weekly-view>.row>label{grid-column:1/-1}#week{width:100%}.weekly-layout{gap:14px}.weekly-layout>section{padding:14px}.weekly-layout>section:last-child{grid-row:1}.slide{min-height:0;padding:16px}.slide h1{font-size:22px;margin:10px 0 18px}.slide h2,.slide-work,.slide-item small,.slide-columns aside,.slide-columns aside p{font-size:16px}.slide-columns aside{padding:14px}.weekly-layout>section:last-child{position:sticky;top:0;z-index:2;max-height:45dvh;overflow:auto;overscroll-behavior:contain;box-shadow:0 4px 14px #343b4918}.weekly-layout>section:last-child>.row{justify-content:space-between;gap:4px}.weekly-layout>section:last-child>.row button{font-size:14px;padding:6px}.slide-category{font-size:12px}#present-note{font-size:16px}
 #courses-view,#settings-view{padding:16px}#courses-view>.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#provider{grid-column:1/-1;width:100%}#course-balance{font-size:16px;line-height:1.8}#settings-view>.row{display:grid;grid-template-columns:1fr;width:100%}#integration-status{font-size:14px}#integration-status p{margin:8px 0}
 #editor{padding:16px;width:calc(100% - 16px);max-height:90dvh;overflow:auto}#edit-title{font-size:21px}.ledger-report{max-width:calc(100% - 16px)}
}
