.calendar-app{--cal-line:rgba(133,164,183,.15);--cal-panel:rgba(6,13,19,.84);display:grid;gap:12px;min-width:0;color:#edf5f7}
.calendar-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) auto auto auto;align-items:center;gap:14px;min-height:68px;padding:10px 14px;border:1px solid var(--cal-line);border-radius:6px;background:rgba(5,11,17,.88)}
.calendar-title p,.calendar-agenda header p,.calendar-add header p,.calendar-connections header p{margin:0 0 3px;color:#6de6bc;font:750 8px "Spline Sans Mono",monospace;letter-spacing:.14em;text-transform:uppercase}
.calendar-title h2,.calendar-agenda h3,.calendar-add h3,.calendar-connections h3{margin:0;color:#edf5f7;font-size:18px;letter-spacing:0}
.calendar-nav,.calendar-view-switch{display:inline-flex;align-items:center;overflow:hidden;border:1px solid var(--cal-line);border-radius:5px}
.calendar-nav button,.calendar-view-switch button{min-width:34px;height:32px;padding:0 10px;border:0;border-right:1px solid var(--cal-line);background:transparent;color:#9eacb5;font-size:10px;cursor:pointer}
.calendar-nav button:last-child,.calendar-view-switch button:last-child{border-right:0}
.calendar-nav button:hover,.calendar-view-switch button:hover,.calendar-view-switch button.is-active{background:rgba(89,224,180,.1);color:#eafff8}
.calendar-metrics{display:grid;grid-template-columns:repeat(3,minmax(62px,1fr));min-width:230px}
.calendar-metrics span{display:grid;gap:2px;padding:3px 10px;border-left:1px solid var(--cal-line)}
.calendar-metrics b{color:#f4fbfc;font:750 15px "Spline Sans Mono",monospace}
.calendar-metrics i{color:#70808b;font:650 7px "Spline Sans Mono",monospace;font-style:normal;text-transform:uppercase}
.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;min-height:660px;overflow:hidden;border:1px solid var(--cal-line);border-radius:6px;background:var(--cal-panel)}
.calendar-board{min-width:0;overflow:auto}
.calendar-sidebar{display:grid;align-content:start;min-width:0;border-left:1px solid var(--cal-line);background:rgba(8,16,23,.94)}
.calendar-month{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));min-width:735px;min-height:658px}
.calendar-weekday{display:grid;align-items:center;height:34px;padding:0 10px;border-right:1px solid var(--cal-line);border-bottom:1px solid var(--cal-line);color:#71818c;font:700 8px "Spline Sans Mono",monospace;text-transform:uppercase}
.calendar-cell{position:relative;min-height:103px;padding:7px;border-right:1px solid var(--cal-line);border-bottom:1px solid var(--cal-line);background:rgba(255,255,255,.008)}
.calendar-cell:nth-child(7n){border-right:0}.calendar-cell.is-outside{background:rgba(0,0,0,.13);opacity:.52}.calendar-cell.is-selected{background:rgba(88,223,178,.045);box-shadow:inset 0 0 0 1px rgba(88,223,178,.2)}
.calendar-date{display:flex;align-items:center;gap:6px;min-height:25px;padding:0 3px;border:0;background:transparent;color:#8999a3;cursor:pointer}
.calendar-date span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;font:700 10px "Spline Sans Mono",monospace}
.calendar-cell.is-today .calendar-date span{background:#58dfb2;color:#04100c}.calendar-date i{color:#58dfb2;font:650 7px "Spline Sans Mono",monospace;font-style:normal;text-transform:uppercase}
.calendar-cell-events{display:grid;gap:3px;padding-top:4px}
.calendar-event{display:grid;grid-template-columns:5px auto minmax(0,1fr);align-items:center;gap:5px;width:100%;min-height:22px;padding:3px 5px;overflow:hidden;border:1px solid color-mix(in srgb,var(--event) 22%,transparent);border-radius:3px;background:color-mix(in srgb,var(--event) 9%,transparent);color:#dce8eb;text-align:left;cursor:pointer}
.calendar-event:hover,.calendar-event:focus-visible{border-color:color-mix(in srgb,var(--event) 58%,transparent);outline:0}.calendar-event>i{width:4px;height:4px;border-radius:50%;background:var(--event)}
.calendar-event time{color:color-mix(in srgb,var(--event) 80%,white);font:650 7px "Spline Sans Mono",monospace;white-space:nowrap}.calendar-event b{overflow:hidden;font-size:9px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.calendar-more{min-height:20px;border:0;background:transparent;color:#7f919c;font-size:8px;text-align:left;cursor:pointer}
.calendar-agenda,.calendar-add{padding:16px}.calendar-agenda{border-bottom:1px solid var(--cal-line)}.calendar-agenda header,.calendar-add header{position:relative;padding-bottom:12px}
.calendar-agenda header>span{position:absolute;right:0;bottom:12px;color:#70808b;font:650 8px "Spline Sans Mono",monospace}.calendar-agenda-list{display:grid;max-height:280px;overflow:auto}
.calendar-agenda-list article{display:grid;grid-template-columns:5px 54px minmax(0,1fr) 24px;align-items:center;gap:7px;min-height:48px;border-top:1px solid rgba(133,164,183,.1)}
.calendar-agenda-list article>i{width:4px;height:24px;border-radius:3px;background:var(--event)}.calendar-agenda-list time{color:#82919a;font:650 8px "Spline Sans Mono",monospace}
.calendar-agenda-list article div{display:grid;min-width:0;gap:2px}.calendar-agenda-list article b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.calendar-agenda-list article span{overflow:hidden;color:#6f808a;font-size:8px;text-overflow:ellipsis;white-space:nowrap}
.calendar-agenda-list article button{width:24px;height:24px;border:0;background:transparent;color:#75858f;cursor:pointer}.calendar-empty-day{display:grid;gap:4px;padding:18px 0;color:#81919b}.calendar-empty-day b{color:#b8c5ca;font-size:10px}.calendar-empty-day span{font-size:9px}
.calendar-add form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.calendar-add label{display:grid;gap:4px;color:#778892;font:650 7px "Spline Sans Mono",monospace;text-transform:uppercase}
.calendar-add input,.calendar-add select,.calendar-add textarea{width:100%;min-width:0;min-height:34px;box-sizing:border-box;border:1px solid var(--cal-line);border-radius:4px;background:rgba(2,8,12,.8);color:#e9f3f5;font:500 10px "Instrument Sans",sans-serif}
.calendar-add textarea{min-height:56px;resize:vertical}.calendar-field-wide{grid-column:1/-1}
.calendar-week-view{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));min-width:980px;min-height:658px}.calendar-week-column{border-right:1px solid var(--cal-line)}
.calendar-week-column>button{display:grid;justify-items:center;gap:4px;width:100%;height:62px;padding:9px;border:0;border-bottom:1px solid var(--cal-line);background:transparent;color:#84949d;cursor:pointer}
.calendar-week-column>button b{font:700 8px "Spline Sans Mono",monospace;text-transform:uppercase}.calendar-week-column>button span{font:750 17px "Instrument Sans",sans-serif}.calendar-week-column.is-today>button span{color:#58dfb2}
.calendar-week-column>div{display:grid;align-content:start;gap:5px;padding:8px}.calendar-week-column>div>p{color:#596a74;font-size:9px;text-align:center}
.calendar-connections{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);gap:12px 22px;padding:14px;border:1px solid var(--cal-line);border-radius:6px;background:rgba(5,11,17,.88)}
.calendar-connections>header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.calendar-source-list{display:grid;gap:6px}
.calendar-source{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:46px;padding:7px;border:1px solid rgba(133,164,183,.11);border-radius:4px;background:rgba(255,255,255,.012)}
.calendar-source.is-connected{border-color:rgba(88,223,178,.24)}.calendar-source-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:5px;background:#17212a;color:#eef5f7;font-weight:800}.calendar-source-mark.is-google{color:#57da8b}.calendar-source-mark.is-microsoft{color:#66b7ff}
.calendar-source>div{display:grid;gap:2px;min-width:0}.calendar-source b{font-size:10px}.calendar-source span{overflow:hidden;color:#71828c;font-size:8px;text-overflow:ellipsis;white-space:nowrap}
.calendar-file-tools{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-content:start;align-items:center;gap:8px;padding:8px 0}.calendar-file-tools span{color:#74858f;font-size:9px;line-height:1.45}
.calendar-connection-error{grid-column:1/-1;margin:0;padding:8px 10px;border-left:2px solid #ff728d;background:rgba(255,73,108,.06);color:#e4a2af;font-size:9px}
@media(max-width:1180px){.calendar-toolbar{grid-template-columns:minmax(200px,1fr) auto auto}.calendar-metrics{grid-column:1/-1;min-width:0;border-top:1px solid var(--cal-line);padding-top:8px}.calendar-layout{grid-template-columns:minmax(0,1fr) 290px}}
@media(max-width:900px){.calendar-toolbar{grid-template-columns:1fr auto}.calendar-nav{justify-self:end}.calendar-view-switch{grid-column:1}.calendar-metrics{grid-column:1/-1}.calendar-layout{grid-template-columns:minmax(0,1fr)}.calendar-sidebar{grid-template-columns:1fr 1fr;border-top:1px solid var(--cal-line);border-left:0}.calendar-agenda{border-right:1px solid var(--cal-line);border-bottom:0}.calendar-connections{grid-template-columns:minmax(0,1fr)}.calendar-connections>header{grid-column:1}}
@media(max-width:620px){.calendar-toolbar{grid-template-columns:1fr}.calendar-nav{grid-row:2;justify-self:start}.calendar-view-switch{grid-row:2;grid-column:1;justify-self:end}.calendar-sidebar{grid-template-columns:1fr}.calendar-agenda{border-right:0;border-bottom:1px solid var(--cal-line)}.calendar-month{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0;min-height:540px}.calendar-weekday{height:30px;padding:0 4px;font-size:6px}.calendar-cell{min-height:84px;padding:3px}.calendar-date{gap:2px;min-height:22px;padding:0}.calendar-date span{width:19px;height:19px;font-size:8px}.calendar-date i{display:none}.calendar-event{grid-template-columns:4px minmax(0,1fr);gap:3px;min-height:19px;padding:2px 3px}.calendar-event time{display:none}.calendar-event b{font-size:7px}.calendar-more{padding:1px;font-size:7px}.calendar-file-tools{grid-template-columns:1fr 1fr}.calendar-file-tools span{grid-column:1/-1}}
