/* The calendar shares the studio's glass surfaces, with quieter day cells. */
.calendar-heading{margin-bottom:24px;gap:20px}.calendar-heading h1{font-size:32px}.calendar-heading .primary-button{flex-shrink:0}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.calendar-month-controls,.calendar-navigation{display:flex;align-items:center;gap:15px}.calendar-month-controls h2{font-size:23px;font-weight:550;letter-spacing:-.7px;min-width:152px;margin:0;color:#e8edf8}.calendar-navigation{gap:5px}.calendar-navigation .icon-button{font-size:24px;width:34px;height:34px}.calendar-navigation .subtle-button{min-height:36px;padding:8px 12px}.calendar-filter{display:flex;align-items:center;gap:9px;background:#b8c5e908;border:1px solid #d4def219;border-radius:11px;padding:8px 12px;color:#b4bfd5}.calendar-filter svg{width:16px;height:16px}.calendar-filter select{min-width:132px;max-width:200px;color:#dce4f4;background:transparent;border:0;font:inherit;font-size:12px;outline-offset:6px}.calendar-filter option{background:#252d40}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:22px;align-items:start}.calendar-month-panel,.calendar-day-panel{min-width:0;border:1px solid #d4def217;border-top-color:#e7eaff29;border-radius:19px;background:linear-gradient(135deg,#333b501f,#202a3b19);box-shadow:inset 0 1px 0 #ffffff04;backdrop-filter:blur(18px);overflow:hidden}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding:16px 8px 13px;border-bottom:1px solid #d4def211;color:#9aa9c3;font-size:11px;text-align:center}.calendar-weekdays span:first-child{color:#d7a0ae}.calendar-weekdays span:last-child{color:#9eb5e8}.calendar-grid{padding:6px;gap:3px}.calendar-day{appearance:none;min-width:0;min-height:100px;padding:10px 7px;display:flex;flex-direction:column;gap:7px;text-align:left;background:transparent;border:1px solid transparent;border-radius:11px;color:#d9e1f2;cursor:pointer;transition:background .15s,border-color .15s}.calendar-day:hover{background:#d4def20b;border-color:#d4def21b}.calendar-day.selected{background:linear-gradient(140deg,#aa98ed25,#a79deb0c);border-color:#c0adee5c;box-shadow:inset 0 1px 0 #eee5ff0f}.calendar-day:focus-visible{outline:2px solid #c1b5fa;outline-offset:-2px}.calendar-day.outside{color:#6f7f99}.calendar-day.outside .calendar-previews{opacity:.58}.calendar-day-heading{display:flex;align-items:center;justify-content:space-between;gap:2px;min-height:23px}.calendar-day-number{font-size:13px;line-height:23px;min-width:23px;text-align:center;font-variant-numeric:tabular-nums}.calendar-day.today .calendar-day-number{border-radius:7px;background:#bca8f5;color:#1b1532;font-weight:650}.calendar-today-label{font-size:9px;color:#c1b0ed}.calendar-previews{display:flex;flex-direction:column;gap:5px;min-width:0;max-width:100%}.calendar-preview{display:flex;align-items:center;gap:4px;min-width:0;font-size:10px;line-height:1.45;color:#b4c4e6}.calendar-preview.work{color:#a8cfbd}.calendar-preview i{font-style:normal;flex-shrink:0;font-size:12px;font-weight:600}.calendar-preview>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.calendar-more{font-size:9px;color:#9aa6be;padding-left:12px}.calendar-day-dots{display:none}.calendar-month-footer{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 18px;border-top:1px solid #d4def20c;color:#8d9db9;font-size:10px}.calendar-legend{display:flex;gap:13px}.calendar-legend span:before,.calendar-indicator{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;background:#a1b5ec}.calendar-legend .work:before,.calendar-indicator.work{background:#92c7ad}.calendar-timezone{margin-left:auto}.calendar-day-panel{padding:24px 20px}.calendar-day-panel-heading{padding:0 0 19px;border-bottom:1px solid #d4def211}.calendar-day-panel-heading .eyebrow{font-size:9px;letter-spacing:1.4px;color:#8e9bb7}.calendar-day-panel-heading h2{font-size:18px;font-weight:550;letter-spacing:-.5px;line-height:1.5;margin:8px 0 0;color:#e0e7f6}#calendarDayToday{margin-left:8px;color:#c8b8f4}.calendar-day-section{margin-top:22px}.calendar-section-heading{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:12px}.calendar-section-heading h3{display:flex;align-items:center;font-size:13px;font-weight:550;margin:0;color:#c8d3e7;white-space:nowrap}.calendar-section-heading h3>span{font-size:10px;font-weight:400;color:#8a9bb9;margin-left:8px}.calendar-section-heading .subtle-button{padding:6px 7px;font-size:11px;color:#b9bfdc}.calendar-entry{display:flex;flex-direction:column;gap:8px;min-width:0;width:100%;text-align:left;border:1px solid #d4def21b;border-top-color:#d4def22b;border-radius:13px;padding:15px 14px;background:linear-gradient(130deg,#b0bbd30c,#b0bbd303);margin-bottom:9px;transition:background .15s,border-color .15s;color:#dce5f5}.calendar-entry:hover{background:#b0bbd313;border-color:#bdc7e43a}.calendar-entry-top,.calendar-entry-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#92a4c5}.calendar-time{color:#b0bfeb;font-variant-numeric:tabular-nums}.calendar-entry-kind{color:#a4cfb9}.calendar-entry-permission{font-size:9px;color:#8594b0}.calendar-entry-title{font-size:13px;font-weight:550;line-height:1.65;overflow-wrap:anywhere}.calendar-entry-body{font-size:11px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;color:#9eafc9;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.calendar-entry-meta{font-size:10px;line-height:1.5;margin-top:4px;padding-top:10px;border-top:1px solid #d4def20c;flex-wrap:wrap;overflow-wrap:anywhere}.calendar-empty{font-size:12px;line-height:1.8;color:#8d9db8;border:1px dashed #d4def214;border-radius:12px;padding:21px 15px;margin:0}.calendar-person-group{margin-top:15px}.calendar-person-heading{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:#c5d0e4;margin:0 0 10px;overflow-wrap:anywhere}.calendar-person-heading>small{font-size:10px;color:#91a3bf;margin-left:auto}.calendar-person-heading .mini-avatar{color:#d4c5eb;background:#af98d220}.calendar-sharing-note{font-size:11px;line-height:1.9;color:#8c9cb7;margin:17px 2px 0}.calendar-dialog{width:min(580px,calc(100vw - 32px))}.calendar-dialog h2{font-size:21px;font-weight:550;margin:6px 0 0;letter-spacing:-.5px}.calendar-dialog .field label small{font-size:10px;color:#899bb7;font-weight:400;margin-left:4px}.calendar-dialog .field input[type=date],.calendar-dialog .field input[type=time]{color-scheme:dark;min-height:45px;min-width:0}.calendar-owner-hint,.calendar-entry-info{font-size:11px;line-height:1.8;color:#9babca;margin:0 0 21px}.calendar-entry-info{margin:18px 0 0;color:#8b9ebc}.calendar-remote-notice{font-size:12px;line-height:1.8;color:#d8c8a4;border:1px solid #e3c68e28;background:#e0bf7c09;border-radius:10px;padding:12px;margin:0 0 15px}.calendar-dialog [readonly]{background:#0f16231a;color:#c1cde2}.calendar-dialog select:disabled{opacity:.7}.calendar-dialog .dialog-footer{position:sticky;bottom:0;background:#202a3df2;backdrop-filter:blur(18px)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}
@media(min-width:1600px){.calendar-layout{grid-template-columns:minmax(0,1.9fr) minmax(330px,1fr);gap:27px}.calendar-day{min-height:117px;padding:12px}.calendar-preview{font-size:12px}.calendar-more{font-size:10px}.calendar-day-number{font-size:14px}.calendar-day-panel{padding:27px}.calendar-entry-title{font-size:14px}.calendar-entry-body{font-size:12px}}
@media(max-width:1200px){.calendar-layout{gap:15px;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr)}.calendar-day{padding:9px 4px;min-height:93px}.calendar-day-panel{padding:20px 16px}.calendar-today-label{display:none}.calendar-month-footer{padding:13px 12px;gap:10px}.calendar-preview{font-size:9px}.calendar-heading h1{font-size:30px}}
@media(max-width:850px){.calendar-layout{grid-template-columns:1fr}.calendar-day{min-height:90px;padding:9px 8px}.calendar-preview{font-size:11px}.calendar-day-panel{padding:24px}.calendar-day-panel-heading h2{font-size:20px}.calendar-day-section{margin-top:20px}.calendar-entry-title{font-size:14px}.calendar-entry-body{font-size:12px}.calendar-sharing-note{font-size:11px}}
@media(max-width:560px){.calendar-heading{flex-direction:row;align-items:center;gap:12px;margin-bottom:23px}.calendar-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.calendar-heading h1{font-size:23px;letter-spacing:-.9px;margin-bottom:8px}.calendar-heading .subtitle{font-size:11px;max-width:230px}.calendar-heading .primary-button{font-size:11px;padding:10px 12px;gap:4px}.calendar-heading .primary-button svg{width:13px;height:13px}.calendar-toolbar{align-items:flex-start;flex-wrap:wrap;gap:12px}.calendar-month-controls{flex:1;justify-content:space-between;gap:12px;width:100%}.calendar-month-controls h2{font-size:21px;min-width:0}.calendar-filter{width:100%;padding:10px 12px}.calendar-filter select{font-size:13px;flex:1;max-width:none}.calendar-weekdays{font-size:11px;padding:14px 6px 11px}.calendar-grid{padding:5px;gap:2px}.calendar-day{min-height:66px;padding:7px 2px;gap:7px;align-items:center;border-radius:10px}.calendar-day-heading{justify-content:center}.calendar-day-number{font-size:13px;min-width:24px;line-height:24px}.calendar-previews{display:none}.calendar-day-dots{display:flex;gap:5px;min-height:10px;align-items:center}.calendar-day-dots>span{font-size:9px;line-height:1;color:#aabdED}.calendar-day-dots>span:before{content:'';display:inline-block;width:3px;height:3px;border-radius:50%;background:#aabdED;vertical-align:middle;margin-right:2px}.calendar-day-dots>span.work{color:#a6d3b9}.calendar-day-dots>span.work:before{background:#a6d3b9}.calendar-day.outside .calendar-day-dots{opacity:.55}.calendar-month-footer{font-size:10px;padding:13px 14px;gap:12px}.calendar-month-footer .calendar-timezone{display:none}.calendar-month-footer #calendarMonthSummary{margin-left:auto}.calendar-day-panel{padding:22px 17px}.calendar-day-panel-heading h2{font-size:18px}.calendar-entry{padding:15px}.calendar-entry-body{font-size:12px}.calendar-section-heading h3{font-size:13px}.calendar-section-heading .subtle-button{font-size:12px;min-height:34px}.calendar-dialog{width:calc(100vw - 20px)}.calendar-dialog .field input,.calendar-dialog .field select,.calendar-dialog .field textarea{font-size:16px}.calendar-dialog .form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.calendar-dialog .field{min-width:0}.calendar-dialog .dialog-footer{padding:16px 18px}.calendar-dialog .dialog-footer .primary-button{font-size:12px}}
