.work-calendar{--day-width:90px;background:#141618;color:#f5f5f5;border:1px solid #303337;border-radius:14px;overflow:hidden;margin-bottom:30px;min-width:0}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px}.calendar-toolbar h2{color:#fff;margin:0 0 5px;text-transform:capitalize;font-size:1.35rem}.calendar-toolbar span{color:#b6bcc3;font-size:.82rem}.calendar-controls{display:flex;gap:8px}
#hub .calendar-controls button{background:#262a2e;color:#fff;border:1px solid #4a5057;border-radius:7px;padding:10px 15px;cursor:pointer}
.calendar-scroll{overflow:auto;max-height:650px;scrollbar-color:#63696f #202326}.calendar-grid{width:calc(210px + var(--days) * var(--day-width));min-width:100%;padding-bottom:8px}.calendar-days{display:grid;grid-template-columns:210px repeat(var(--days),var(--day-width));position:sticky;top:0;z-index:5;background:#141618}.calendar-corner{position:sticky;left:0;background:#141618;z-index:6;padding:20px;color:#b6bcc3}.calendar-day{padding:14px 0;text-align:center;border-left:1px solid #282b2e;display:flex;flex-direction:column;gap:6px}.calendar-day strong{color:#fff;font-size:.9rem}.calendar-day span{color:#aeb6c0;text-transform:uppercase;font-size:.67rem;letter-spacing:.1em}.calendar-day.calendar-today{background:#78282e;box-shadow:inset 0 -3px #ff747b}.calendar-weekend{background:#202326}
.calendar-row{display:flex;min-height:92px;border-top:1px solid #34383c}.calendar-track{position:relative;display:grid;align-items:center;grid-template-columns:repeat(var(--days),var(--day-width));background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-width) - 1px),#2b2e32 calc(var(--day-width) - 1px),#2b2e32 var(--day-width));min-height:92px}
#hub .calendar-label{position:sticky;left:0;z-index:3;flex:0 0 210px;width:210px;border:0;border-right:1px solid #34383c;border-radius:0;background:#1b1e21;color:#fff;text-align:left;padding:16px 20px;display:flex;flex-direction:column;gap:8px;cursor:pointer;white-space:normal;overflow-wrap:anywhere}#hub .calendar-label strong{color:#fff;font-size:.85rem}#hub .calendar-label span{color:#b6bcc3;font-size:.72rem}
#hub .calendar-event{position:relative;z-index:2;min-width:0;margin:8px 4px;padding:12px 10px;border:0;border-radius:8px;background:var(--event-color);color:#12171b;display:flex;flex-direction:column;gap:6px;text-align:left;cursor:pointer;box-shadow:0 3px 10px #0003;height:72px;overflow:hidden}#hub .calendar-event strong,#hub .calendar-event span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#12171b;font-size:.82rem}#hub .calendar-event span{font-size:.72rem}#hub .calendar-event:hover{filter:brightness(1.1);transform:translateY(-1px)}.calendar-now{position:absolute;top:0;bottom:0;border-left:1px solid #fff9;z-index:1;pointer-events:none}.calendar-caption,.calendar-empty{padding:16px 24px;color:#b6bcc3;font-size:.8rem;margin:0}.calendar-empty{color:#fff;padding:30px 24px}.calendar-caption{border-top:1px solid #34383c}.work-calendar button:focus-visible,.calendar-scroll:focus-visible{outline:3px solid #fff;outline-offset:-3px}
@media(max-width:750px){.calendar-toolbar{padding:18px;flex-wrap:wrap}.calendar-grid{width:calc(150px + var(--days) * var(--day-width))}.calendar-days{grid-template-columns:150px repeat(var(--days),var(--day-width))}#hub .calendar-label{flex-basis:150px;width:150px;padding:12px}.sidebar nav{flex-wrap:wrap}}
#hub .work-calendar{background:#fffefb;color:#232320;border-color:#d9d7ce;border-top:4px solid #ff7900;border-radius:4px;box-shadow:0 4px 0 #e8e5dc}
#hub .calendar-toolbar{background:#fffefb}
#hub .calendar-toolbar h2{color:#232320}
#hub .calendar-toolbar span{color:#68675e}
#hub .calendar-controls button{background:#fffefb;color:#343229;border:1px solid #aaa597;border-radius:3px}
#hub .calendar-controls button:hover{background:#fff0df;border-color:#ff7900}
#hub .calendar-controls [data-action="calendar-today"]{background:#ff7900;color:#171715;border-color:#ff7900}
#hub .calendar-scroll{scrollbar-color:#bbb7ae #f2f0e9}
#hub .calendar-days,#hub .calendar-corner{background:#eeece4;color:#555146}
#hub .calendar-day{border-color:#d9d7ce}
#hub .calendar-day strong{color:#232320}
#hub .calendar-day span{color:#68675e}
#hub .calendar-weekend{background:#e5e2d9}
#hub .calendar-day.calendar-today{background:#ff7900;box-shadow:inset 0 -3px #ab4b00}
#hub .calendar-day.calendar-today strong,#hub .calendar-day.calendar-today span{color:#171715;font-weight:700}
#hub .calendar-row{border-color:#d9d7ce}
#hub .calendar-track{background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-width) - 1px),#dedbd3 calc(var(--day-width) - 1px),#dedbd3 var(--day-width))}
#hub .calendar-label{background:#faf8f3;color:#232320;border-color:#d9d7ce}
#hub .calendar-label:hover{background:#fff0df}
#hub .calendar-label strong{color:#232320}
#hub .calendar-label span{color:#68675e}
#hub .calendar-event{background:var(--event-color);border:1px solid #e4babb;border-left:4px solid #ff7900;border-radius:4px;box-shadow:0 2px 0 #eadbd5;color:#232320}
#hub .calendar-event strong{color:#744016}
#hub .calendar-event span{color:#51423e}
#hub .calendar-event:hover{filter:none;background:#ffe2bf;border-color:#ff7900}
#hub .calendar-now{border-left:2px solid #ff7900}
#hub .calendar-caption,#hub .calendar-empty{background:#fffefb;color:#68675e;border-color:#d9d7ce}
#hub .work-calendar button:focus-visible,#hub .calendar-scroll:focus-visible{outline:3px solid #a44900;outline-offset:-3px}
.calendar-home-link{font-size:13px;color:#795a3b}#hub .page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0}#hub .page-heading h1{margin:10px 0;font-size:36px}#hub .page-heading .eyebrow{color:#945020;font-size:10px;font-weight:700;letter-spacing:2px}#hub .work-calendar{border-radius:12px;box-shadow:none}#hub .calendar-label,#hub .calendar-event{margin-top:0;margin-bottom:0}.calendar-month-label{display:flex;align-items:center;gap:8px;font-size:12px;color:#71695f}.calendar-month-label input{padding:8px;width:155px}.calendar-controls{flex-wrap:wrap}#hub .calendar-controls button{margin:0}#hub .calendar-event{margin:8px 4px}#hub .calendar-label{margin:0}@media(max-width:650px){#hub .page-heading{align-items:flex-start;flex-direction:column}.calendar-month-label{width:100%}.calendar-toolbar{align-items:flex-start}}
#hub .calendar-controls{align-items:center}#hub .calendar-controls button{height:42px;min-height:42px}.calendar-month-label{margin:0}

.calendar-event-list{margin-top:32px;padding:26px;background:#fffaf5;border:1px solid #e2dbd2;border-radius:12px;scroll-margin-top:130px}.calendar-event-list .event-list-toolbar p{font-size:13px;color:#776858}.calendar-event-list input{width:100%}.calendar-event-list .event-list-footer{margin-top:20px}.calendar-list-dates{text-align:right;font-size:13px;flex-shrink:0}@media(max-width:650px){.calendar-event-list{padding:18px}.calendar-event-list .event-content-row{align-items:flex-start;flex-direction:column;gap:8px}.calendar-list-dates{text-align:left}}

/* TechHub calendar: month overview and duration comparison. */
#hub .page-heading{padding:28px 30px;background:#171715;color:#fff;border-radius:16px;border-top:4px solid #ff7900}#hub .page-heading h1{color:#fff;font-size:34px;letter-spacing:-1px}#hub .page-heading p{color:#c8c3ba;font-size:14px}#hub .page-heading .eyebrow{color:#ffad61}#hub .page-heading .primary{background:#ff7900;color:#171715;border:0;border-radius:8px}
#hub .calendar-upcoming{background:#fff;border-radius:16px;padding:24px;margin:24px 0}.calendar-upcoming .home-event-filters{gap:6px}.calendar-upcoming .home-event-filters button{border-radius:20px!important}.calendar-upcoming .event-home-card{background:#faf8f4;border-radius:10px}.calendar-upcoming .event-home-card h3{font-size:20px}
#hub .work-calendar{border:1px solid #ddd5ca;border-radius:16px;box-shadow:0 8px 30px #39260e08}#hub .calendar-toolbar{padding:26px 28px;background:#fff}#hub .calendar-toolbar h2{font-size:27px;letter-spacing:-.7px}#hub .calendar-controls button{border-radius:8px;border-color:#e0d6ca}#hub .calendar-controls input{border-radius:8px;border:1px solid #e0d6ca;background:#faf8f4}.calendar-viewbar{padding:0 28px 22px;display:flex;justify-content:space-between;align-items:center;gap:18px;background:#fff;flex-wrap:wrap}.calendar-view-switch{display:flex;padding:4px;background:#f1ede6;border-radius:10px;gap:4px}#hub .calendar-view-switch button{background:transparent;color:#706556;border:0;border-radius:7px;padding:10px 16px;margin:0;font-size:12px}#hub .calendar-view-switch button[aria-pressed=true]{background:#171715;color:#fff}.calendar-legend{display:flex;gap:16px;flex-wrap:wrap}.calendar-legend span{display:flex;align-items:center;gap:6px;font-size:11px;color:#756958}.calendar-legend i{width:8px;height:8px;border-radius:50%;background:#d39521}.calendar-legend [data-state=confirmed] i{background:#27805b}.calendar-legend [data-state=cancelled] i{background:#a45252}
.calendar-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #e6dfd5;background:#e6dfd5;gap:1px}.month-weekday{padding:12px;text-align:center;text-transform:uppercase;font-size:10px;font-weight:750;letter-spacing:1.5px;background:#f5f2ec;color:#81735f}.month-cell{min-height:126px;background:#fff;padding:7px;min-width:0}.month-cell.is-weekend{background:#faf8f4}.month-outside{background:#f1eee8;min-height:85px}.month-cell.is-selected{box-shadow:inset 0 0 0 2px #ff7900;background:#fffbf6}#hub .month-day{display:flex;justify-content:space-between;align-items:center;width:100%;padding:3px 4px;margin:0 0 5px;border:0;background:transparent;color:#302d27;border-radius:6px;box-shadow:none}#hub .month-day>span{display:grid;place-items:center;width:28px;height:28px;font-weight:700;font-size:13px}#hub .month-day small{font-size:9px;font-weight:500;color:#8d7c67}.is-today .month-day>span{background:#ff7900;border-radius:50%;color:#171715}.month-event{display:block;padding:7px 8px;margin:4px 0;border-radius:5px;background:#fff0d8;border-left:3px solid #d39521;color:#784d00;text-decoration:none;font-size:11px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-event[data-state=confirmed]{background:#e0f1e8;border-color:#27805b;color:#236244}.month-event[data-state=cancelled]{background:#eee8e5;border-color:#a45252;color:#806964;text-decoration:line-through}.month-event:hover{filter:brightness(.95)}#hub .month-more{background:transparent;color:#875024;border:0;padding:3px 6px;font-size:10px;margin:0}.calendar-day-agenda{padding:24px 28px;display:grid;grid-template-columns:230px 1fr;gap:24px;background:#fff}.calendar-day-agenda h3{font-size:20px;margin:9px 0;text-transform:capitalize}.calendar-day-agenda p{font-size:12px;color:#827363}.day-agenda-events a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border:1px solid #e6ded2;border-radius:10px;text-decoration:none;color:#302d27;margin-bottom:8px}.day-agenda-events strong{font-size:14px}.day-agenda-events small{display:block;font-size:11px;color:#827363;margin-top:5px}.day-agenda-events a>span{font-size:11px;white-space:nowrap}.day-agenda-events a:hover{border-color:#ff7900}#hub .calendar-event[data-state=confirmed]{border-left-color:#27805b}#hub .calendar-event[data-state=cancelled]{border-left-color:#a45252}#hub .calendar-caption{font-size:11px;background:#f8f5ef}#hub .calendar-scroll[hidden]{display:none}.calendar-upcoming .event-list-toolbar h2{font-size:23px}
@media(max-width:750px){#hub .calendar-toolbar{padding:20px}.calendar-viewbar{padding:0 20px 18px}.calendar-day-agenda{grid-template-columns:1fr;padding:20px;gap:6px}.month-cell{min-height:110px;padding:4px}.month-event{padding:6px 4px;font-size:10px}#hub .month-day{padding:0}#hub .month-day small{display:none}.month-weekday{padding:10px 0;font-size:9px;letter-spacing:0}.calendar-legend{gap:10px}#hub .page-heading{padding:22px}#hub .page-heading h1{font-size:29px}.day-agenda-events a{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:450px){.month-cell{min-height:95px;padding:2px}.month-event{font-size:9px;padding:5px 2px;border-left-width:2px}.calendar-viewbar{padding-left:12px;padding-right:12px}.calendar-legend span{font-size:10px}#hub .calendar-upcoming{padding:18px}.calendar-controls{width:100%}.calendar-month-label{width:auto}.calendar-controls{gap:5px}#hub .calendar-controls button{padding:8px 12px}.calendar-day-agenda{padding:16px}}

@media(max-width:450px){.calendar-month-label{width:100%;justify-content:space-between}.calendar-month-label input{flex:1;max-width:210px}.calendar-controls{justify-content:flex-end}}

/* Flight-case artwork using the original TechHub brand family. */
#hub .calendar-branded-heading{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding:38px 42px;background:radial-gradient(ellipse at 85% 0%,#49311f 0,transparent 65%),#171715;overflow:hidden;border:1px solid #3b342a;border-top:4px solid #ff7900}.calendar-branded-heading::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:6px;background:repeating-linear-gradient(135deg,#ff7900 0 12px,#171715 12px 24px);opacity:.65}#hub .calendar-branded-heading h1{font-size:clamp(28px,3.2vw,43px);line-height:1.12;margin:16px 0}#hub .calendar-branded-heading h1 span{color:#ffa24d}#hub .calendar-branded-heading p{max-width:430px;line-height:1.6}.calendar-heading-copy .primary{margin-top:12px}.calendar-case-art{max-width:440px;width:100%;justify-self:end}.calendar-case-label{position:relative;padding:22px 25px 16px;background:#242421;border:1px solid #635747;border-radius:12px;box-shadow:0 14px 30px #0005,inset 0 0 0 5px #191917;transform:rotate(-2deg)}.calendar-case-label::before,.calendar-case-label::after{content:"";position:absolute;top:12px;width:5px;height:5px;border-radius:50%;background:#847762;box-shadow:0 1px 2px #000}.calendar-case-label::before{left:12px}.calendar-case-label::after{right:12px}.calendar-case-label>img{display:block;width:100%;max-width:300px;height:auto;margin:0 auto 13px}.calendar-case-label>span{display:block;text-align:center;font-size:9px;letter-spacing:2px;color:#bbad97}.calendar-label-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px;border-top:1px solid #514736;padding-top:10px;font-size:8px;letter-spacing:1.5px;color:#a3937b}.calendar-barcode{height:18px;width:90px;background:repeating-linear-gradient(90deg,#ae9b7c 0 2px,transparent 2px 4px,#ae9b7c 4px 5px,transparent 5px 8px)}.calendar-brand-family{display:flex;justify-content:space-between;gap:10px;margin-top:24px}.calendar-brand-family>span{display:flex;align-items:center;gap:6px;font-size:10px;color:#c5b9a6}.calendar-brand-family img{width:24px;height:24px;object-fit:contain}@media(max-width:850px){#hub .calendar-branded-heading{gap:24px;padding:28px}.calendar-brand-family{flex-wrap:wrap;justify-content:center}.calendar-brand-family>span{font-size:9px}}@media(max-width:650px){#hub .calendar-branded-heading{grid-template-columns:1fr;padding:24px;gap:24px}.calendar-case-art{max-width:360px;justify-self:center}.calendar-case-label{padding:18px 22px 12px}.calendar-case-label>img{max-width:220px}.calendar-brand-family{margin-top:18px;gap:12px}.calendar-brand-family img{width:20px;height:20px}.calendar-brand-family>span{font-size:9px}}

/* Event labels and planning surface share the flight-case identity. */
#hub .calendar-upcoming{position:relative;background:linear-gradient(135deg,#fff 65%,#fff3e3);border:1px solid #e3d8c8;box-shadow:0 8px 28px #44301307}.calendar-upcoming .event-list-toolbar>div{border-left:4px solid #ff7900;padding-left:15px}.calendar-upcoming .suite-eyebrow{color:#956133}.calendar-upcoming .event-list-toolbar input{border-radius:10px;background:#fff;box-shadow:0 3px 8px #30200c05;padding:13px 16px}.calendar-upcoming .home-event-filters{padding:14px 0 5px;border-top:1px solid #eee4d8;margin-top:20px}.calendar-upcoming .home-event-filters button.secondary{border-radius:7px!important;background:#fff;border:1px solid #e6ddcf;padding:9px 13px;transition:background .15s,box-shadow .15s}.calendar-upcoming .home-event-filters button[aria-pressed=true]{background:#171715;color:#fff;border-color:#171715;box-shadow:inset 0 -3px #ff7900}.calendar-upcoming .home-event-filters button:hover{border-color:#d5823a}
.calendar-upcoming .event-home-grid{align-items:stretch;gap:18px}.calendar-upcoming .event-home-card{position:relative;display:flex;flex-direction:column;background:#fffefb;border:1px solid #ddd1bf;border-top:5px solid #ff7900;border-left-width:1px;border-radius:12px;padding:22px;box-shadow:0 5px 12px #48301809;transition:transform .18s,box-shadow .18s;overflow:hidden}.calendar-upcoming .event-home-card::after{content:"";position:absolute;right:18px;top:17px;width:36px;height:15px;opacity:.18;background:repeating-linear-gradient(90deg,#433422 0 2px,transparent 2px 4px,#433422 4px 5px,transparent 5px 8px)}.calendar-upcoming .event-home-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #48301818;border-color:#d28d4d}.calendar-upcoming .home-event-status{font-size:9px!important;letter-spacing:1.4px;padding-right:42px;color:#8c5b2b;margin-bottom:14px}.calendar-upcoming .event-home-card>small{font-size:12px;color:#675947;font-weight:600}.calendar-upcoming .event-home-card h3{font-size:24px;letter-spacing:-.5px;line-height:1.18;margin:15px 0 12px}.calendar-upcoming .event-confirmation-status{align-self:flex-start;margin-bottom:13px;border-radius:5px;font-size:10px!important}.calendar-upcoming .event-home-card p{font-size:12px;color:#82725e;flex:1;line-height:1.7;margin-bottom:20px}.calendar-upcoming .event-home-card>span:last-child{border-top:1px dashed #daccb8;padding-top:14px;color:#9c4b08;font-size:12px}.calendar-upcoming .event-home-card:has([data-status=confirmed]){border-top-color:#27805b}.calendar-upcoming .event-home-card:has([data-status=cancelled]){border-top-color:#a45252;background:#f9f6f3}.calendar-upcoming .event-list-footer{padding-top:6px}.calendar-upcoming .event-list-footer button.secondary{padding:8px 12px;border:1px solid #ddd1bf;border-radius:7px;background:#fff}
#hub .work-calendar{border:1px solid #dacdbb;border-top:5px solid #ff7900;box-shadow:0 10px 32px #39260e0b}#hub .calendar-toolbar{background:linear-gradient(110deg,#fff4e5,#fff 70%);position:relative}#hub .calendar-toolbar>div:first-child{padding-left:58px;position:relative}#hub .calendar-toolbar>div:first-child::before{content:"";position:absolute;left:0;top:0;width:42px;height:46px;border:1px solid #dba96e;border-radius:8px;background:linear-gradient(#ff7900 0 12px,transparent 12px),repeating-linear-gradient(90deg,transparent 0 8px,#e7c8a2 8px 9px,transparent 9px 14px),#fff5e6;box-shadow:0 3px 0 #e9d5bc}#hub .calendar-toolbar h2{font-size:29px;margin-bottom:6px}#hub .calendar-toolbar>div:first-child>span{font-size:11px;font-weight:600;letter-spacing:.5px;color:#927048}.calendar-viewbar{padding-top:4px;background:#fff;border-bottom:1px solid #ebdfcf}.calendar-view-switch{background:#f3eee5;border:1px solid #e6d9c7}.calendar-legend{padding:9px 12px;background:#faf7f1;border-radius:8px}.month-weekday{background:#ede6db;color:#77614a;font-size:10px;padding:14px}.month-cell{background:linear-gradient(150deg,#fff,#fffdf9);transition:background .15s}.month-cell:hover{background:#fff7eb}.month-cell.is-weekend{background:#f6f2ea}.month-cell.is-selected{background:#fff2df;box-shadow:inset 0 0 0 2px #ff7900}.month-cell.is-today{background:#fff8eb}.month-cell.is-today.is-selected{background:#fff2df}.month-outside{background:repeating-linear-gradient(135deg,#f1eee7 0 7px,#eeebe3 7px 8px)}.month-event{box-shadow:0 2px 4px #39260e08;border-radius:4px}.calendar-day-agenda{background:linear-gradient(115deg,#f6edde,#fff 65%);border-top:1px solid #e0d0b8}.calendar-day-agenda>div:first-child{border-left:4px solid #ff7900;padding-left:15px}.calendar-day-agenda .suite-eyebrow{font-size:9px;color:#966434}.calendar-day-agenda h3{font-size:23px;letter-spacing:-.4px}.day-agenda-events a{background:#fff;border-left:4px solid #d39521;box-shadow:0 3px 9px #46331906}.day-agenda-events a[data-state=confirmed]{border-left-color:#27805b}.day-agenda-events a[data-state=cancelled]{border-left-color:#a45252}.day-agenda-events a>span{padding:5px 8px;background:#f7f2e9;border-radius:5px}.calendar-caption{border-top-style:dashed!important}
@media(max-width:750px){#hub .calendar-toolbar h2{font-size:25px}.calendar-upcoming .event-home-card{padding:18px}.calendar-upcoming .event-home-card h3{font-size:22px}.calendar-day-agenda h3{font-size:21px}.calendar-legend{padding:8px}.month-weekday{padding:11px 0}}@media(prefers-reduced-motion:reduce){.calendar-upcoming .event-home-card,.month-cell,.calendar-upcoming .home-event-filters button.secondary{transition:none}.calendar-upcoming .event-home-card:hover{transform:none}}
