.schedule-viewport{padding-bottom:1rem;scroll-snap-type:x mandatory}.trello-board{display:flex;gap:1rem;padding-bottom:1rem;width:-moz-fit-content;width:fit-content}.board-column{flex:0 0 300px;width:320px;min-width:300px;scroll-snap-align:start}.column-header{padding:.5rem 1rem;background-color:var(--pico-card-background-color);border-radius:var(--pico-border-radius) var(--pico-border-radius) 0 0;border:1px solid var(--pico-card-border-color);border-bottom:none}.column-header h3{margin:0;font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.column-header small{text-transform:capitalize;color:var(--pico-muted-color)}.lessons-list{display:flex;flex-direction:column;gap:.75rem;background-color:var(--pico-card-background-color);border:1px solid var(--pico-card-border-color);border-radius:0 0 var(--pico-border-radius) var(--pico-border-radius);padding:1rem;min-height:200px}.lesson-card{position:relative;padding:1rem;border-radius:var(--pico-border-radius);background-color:var(--pico-card-sectioning-background-color);transition:all .2s ease;border:1px solid var(--pico-card-border-color);border-left:4px solid var(--pico-primary)}.lesson-card .card-body,.lesson-card .card-footer,.lesson-card .card-header{padding:0;margin:0;border:none;background:none}.lesson-card .card-header{font-weight:700;margin-bottom:.5rem;font-size:.9em}.lesson-card .card-body .subject{margin:0;font-size:1.1em}.lesson-card .card-body .group{color:var(--pico-muted-color);font-size:.9em}.lesson-card .card-footer{display:flex;justify-content:space-between;margin-top:1rem;padding-top:.5rem;border-top:1px solid var(--pico-card-border-color);font-size:.85em;color:var(--pico-muted-color)}.lesson-card .event-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--pico-muted-border-color)}.no-lessons{color:var(--pico-muted-color);text-align:center;padding-top:2rem}.lesson-card.status-modified{border-left-color:#ffc107}.lesson-card.status-modified .is-modified{background-color:rgba(255,193,7,.15);padding:0 2px;border-radius:3px}.lesson-card.status-modified .is-modified del{color:var(--pico-muted-color)}.lesson-card.status-canceled{border-left-color:#ff3535;background-color:var(--pico-card-background-color);opacity:.7}.lesson-card.status-canceled small{color:var(--pico-muted-color)}.lesson-card.status-added{border-left-color:#28a745}.lesson-card.status-school_event{border-left-color:#8e44ad}.lesson-card.status-school_event .event-time{font-size:.9em;color:var(--pico-muted-color)}.lesson-card.status-school_event .event-description{margin-top:.5rem;font-size:.95em}.lesson-card.is-active{box-shadow:0 0 15px rgba(69,161,115,.5);border-color:var(--pico-primary);border-left-width:4px}.live-indicator{position:absolute;top:8px;right:8px}.live-indicator .live-dot{display:block;width:12px;height:12px;background-color:#01d10c;border-radius:50%;animation:pulse 1.5s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(16,184,1,.7)}70%{box-shadow:0 0 0 10px rgba(220,53,69,0)}to{box-shadow:0 0 0 0 rgba(220,53,69,0)}}.interactive-link{text-decoration:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted;text-underline-offset:2px;color:inherit}.interactive-link:hover{color:var(--pico-primary)}.lessons-list.editor-mode .day-editor-card{cursor:pointer}.lessons-list.editor-mode .day-editor-card:hover{transform:translateY(-2px);box-shadow:var(--pico-card-box-shadow);border-left-color:var(--pico-primary)}.lessons-list.editor-mode .card-header{display:flex;justify-content:space-between;align-items:center}.lessons-list.editor-mode .card-header .lesson-count{background:var(--pico-muted-background-color);border-radius:1rem;padding:0 .5rem;font-size:.8rem}.lessons-list.editor-mode .card-body{margin-top:.5rem}.lessons-list.editor-mode .lesson-summary-item{display:flex;font-size:.85rem;gap:.5rem}.lessons-list.editor-mode .lesson-summary-item>span:first-child{color:var(--pico-muted-color)}.lessons-list.editor-mode .lesson-summary-item .group{color:var(--pico-muted-color);margin-left:.25rem}.lessons-list.editor-mode .no-lessons-small{font-size:.9em;color:var(--pico-muted-color)}.schedule-cell-editor .editor-row{grid-template-columns:1fr 1fr 2fr 1.5fr 2fr auto;gap:.5rem;align-items:center;margin-bottom:.5rem}.schedule-cell-editor .editor-header{grid-template-columns:1fr 1fr 2fr 1.5fr 2fr auto;gap:.5rem;padding:0 .5rem;color:var(--pico-muted-color)}.admin-lesson-wrapper{position:relative}.admin-lesson-wrapper .admin-actions{position:absolute;top:4px;right:4px;display:flex;gap:4px}.admin-lesson-wrapper .admin-actions button{width:32px;height:32px;padding:0;border-radius:50%;font-size:14px}.memo-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-top:1rem;padding:0 1rem!important;font-size:.9rem;background-color:var(--pico-secondary-background);border:1px solid var(--pico-secondary-border);color:var(--pico-secondary-color)}.memo-button:hover{background-color:var(--pico-secondary-hover-background);border-color:var(--pico-secondary-hover-border)}.lesson-card.is-clickable{cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.lesson-card.is-clickable:hover{box-shadow:0 .25rem .75rem rgba(0,0,0,.1);transform:translateY(-3px)}.lesson-card.event-card{display:flex;flex-direction:column;padding:0}.event-card .event-content{flex-grow:1;padding:var(--pico-card-padding)}.event-actions{padding:var(--pico-card-padding);padding-top:.75rem}.event-actions .grid{grid-column-gap:1rem}.event-actions .grid button,.event-actions .grid div>button{margin-bottom:0;height:100%}@media(max-width:768px){.board-column{min-width:280px}.column-header h3{font-size:1rem}.day-editor-card .card-header .lesson-count{font-size:.8rem}.day-editor-card .lesson-summary-item{flex-direction:column;align-items:flex-start;gap:.2rem}}.memo-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0}.memo-item:not(:last-child){border-bottom:1px solid var(--pico-muted-border-color)}.memo-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:50px;height:50px;font-size:1.5rem;background-color:var(--pico-secondary-background);border-radius:50%;border:1px solid var(--pico-secondary-border)}.memo-text-content{display:flex;flex-direction:column}.memo-label{margin:0;font-weight:600;color:var(--pico-secondary-foreground);font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}.memo-value{margin:.25rem 0 0;line-height:1.6;white-space:pre-wrap;color:var(--pico-primary-foreground)}footer button{width:100%}.scroller-wrapper{position:relative;width:100%;display:flex;align-items:center}.schedule-viewport{width:100%;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}.schedule-viewport::-webkit-scrollbar{display:none}.scroll-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:40px;height:40px;border-radius:50%;border:1px solid var(--pico-muted-border-color);background-color:var(--pico-card-background-color);color:var(--pico-color);box-shadow:0 4px 10px rgba(0,0,0,.15);display:flex;align-items:center;justify-content:center;font-size:1.5rem;padding:0;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .2s}.scroll-arrow:hover{background-color:var(--pico-primary);color:var(--pico-primary-inverse);border-color:var(--pico-primary)}.scroll-arrow.visible{opacity:1;pointer-events:auto}.scroll-arrow.left{left:-20px}.scroll-arrow.right{right:-20px}@media(max-width:768px){.scroll-arrow{display:none!important}.schedule-viewport{scrollbar-width:thin}.schedule-viewport::-webkit-scrollbar{display:block;height:4px}}