.calendar-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.view-switch{display:flex;padding:3px;background:#f1f5ee;border-radius:8px}.view-switch button{border:0;background:transparent;padding:8px 14px;font-size:12px}.view-switch button.active{background:#fff;box-shadow:0 1px 4px #163f2520;color:#2b6540;font-weight:700}.full-day{min-width:1770px}.full-day .hours{grid-template-columns:repeat(24,1fr)}.full-day .track{background:repeating-linear-gradient(to right,transparent 0,transparent calc(4.16667% - 1px),#edf1ed calc(4.16667% - 1px),#edf1ed 4.16667%)}.full-day .room-info,.full-day .time-head>span{position:sticky;left:0;background:#fff;z-index:4;border-right:1px solid #edf1ed}.full-day .time-head>span{background:#f8faf8}.full-day .event{padding:8px 7px}.week-board{min-width:1200px}.week-row{display:grid;grid-template-columns:170px repeat(7,minmax(140px,1fr))}.week-row>div,.week-row>button{border-right:1px solid #e5ebe0;border-bottom:1px solid #e5ebe0}.week-head{background:#f7f9f5;position:sticky;top:0;z-index:2}.week-head>div{font-size:10px;color:#869381;padding:20px 15px}.week-head button{border:0;border-right:1px solid #e5ebe0;border-radius:0;background:transparent;padding:15px;font-weight:600;font-size:12px;text-transform:capitalize}.week-room{padding:20px 15px;font-size:12px;background:#fff;position:sticky;left:0;z-index:3}.week-cell{padding:8px;min-height:130px}.is-today{background:#f1f6ec!important}.calendar-entry{display:flex;flex-direction:column;width:100%;padding:8px!important;border:0;border-left:3px solid;border-radius:5px;text-align:left;margin:5px 0;cursor:grab;overflow:hidden;font-size:11px;gap:4px}.calendar-entry>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.calendar-entry small{font-size:10px;color:inherit;opacity:.75;margin:0}.calendar-entry strong{font-size:10px}.calendar-entry.option{background:#faf0d9;border-color:#c79d4e;color:#80622d}.calendar-entry.confirmed{background:#e3eee6;border-color:#6c9f79;color:#365e42}.calendar-entry.ready{background:#e0ebf6;border-color:#6c99bc;color:#3b5f80}.calendar-entry.completed{background:#eee8f5;border-color:#aa8bc2;color:#705482}.calendar-entry.meeting{background:#e1eeeb;border-color:#70a492;color:#356b5a}.calendar-entry.workshop{background:#f7e9d9;border-color:#c79a60;color:#8b632e}.calendar-entry.conference{background:#e6e8f8;border-color:#939bd0;color:#545c8e}.calendar-entry.culture{background:#f4e2ed;border-color:#c28aab;color:#8e5a77}.calendar-entry.other{background:#eceee2;border-color:#9da96d;color:#68753d}.cell-add{width:100%;border:1px dashed #d9e2d3;font-size:10px;padding:8px 4px;background:#fafcf8;color:#83927a;margin:5px 0}.month-board{min-width:900px}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays{background:#f7f9f5;color:#7f8e77;font-size:11px}.month-weekdays>div{padding:16px;text-align:center}.month-cell{min-height:155px;padding:8px;border-right:1px solid #e5ebe0;border-top:1px solid #e5ebe0}.month-cell.outside{background:#f8faf6;color:#9ba692}.month-date{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.month-date button{border:0;background:transparent;padding:4px 7px;font-size:12px;font-weight:600}.month-cell.is-today .month-date button:first-child{background:#50774a;color:white;border-radius:50%}.cell-more{border:0;background:transparent;font-size:10px;padding:5px;color:#66805b}.admin-intro{display:flex;align-items:center;justify-content:space-between;margin:5px 0 20px;gap:15px}.admin-intro h3{margin-bottom:0}.disabled-tag{background:#f3e8e2;color:#a06e53}#logout{font-size:11px;width:100%;margin-top:15px}.login-page{display:grid;place-items:center;min-height:100vh;padding:25px;background:radial-gradient(ellipse at top left,#e7eee0,transparent 65%),#f5f7f2}.login-card{width:430px;max-width:100%;padding:36px;border:1px solid #dfe7d8;border-radius:18px;background:#fff;box-shadow:0 20px 60px #354e2910}.login-card .brand{margin-bottom:35px}.login-card h1{font-size:28px}.login-card .eyebrow{letter-spacing:1.4px}.login-card .helper{display:block}.login-card form{margin:25px 0}#userDialog{width:500px}#userDialog input[type=checkbox]{width:17px;height:17px}.calendar-controls .date-control input{width:140px}@media(max-width:700px){.calendar-controls{gap:10px}.admin-intro{align-items:flex-start;flex-direction:column}.login-card{padding:25px}.view-switch button{padding:8px 20px}}

aside{overflow-y:auto}.aside-bottom{padding-top:18px}
