.cal-page{flex-direction:column;gap:18px;display:flex}.cal-head{justify-content:space-between;align-items:baseline;gap:var(--ds-space-4);flex-wrap:wrap;display:flex}.cal-head__copy{flex-direction:column;gap:4px;min-width:0;display:flex}.cal-head__title{font-family:var(--ds-font-display);color:var(--ds-fg-1);letter-spacing:-.015em;font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:500;line-height:1.3}.cal-head__sub{font-size:var(--ds-text-sm);color:var(--ds-fg-4);line-height:1.4}.cal-head__actions{gap:var(--ds-space-2);flex-shrink:0;display:inline-flex}.cal-section{flex-direction:column;gap:6px;display:flex}.cal-section__head{justify-content:space-between;align-items:baseline;gap:var(--ds-space-3);display:flex}.cal-section__title{font-family:var(--ds-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ds-fg-5);font-size:9px;font-weight:500}.cal-section__count{font-family:var(--ds-font-mono);color:var(--ds-fg-5);letter-spacing:.04em;font-size:9px}.cal-week{background:var(--ds-bg-2);border:1px solid color-mix(in srgb, var(--ds-stroke) 30%, transparent);border-radius:var(--ds-radius-sm);grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.cal-week__day{border-right:1px solid color-mix(in srgb, var(--ds-stroke) 25%, transparent);flex-direction:column;gap:6px;min-height:88px;padding:10px 10px 12px;display:flex;position:relative}.cal-week__day:last-child{border-right:0}.cal-week__day--past{opacity:.45}.cal-week__day--today:before{content:"";background:var(--ds-accent-hi);height:2px;position:absolute;top:0;left:0;right:0}.cal-week__day-head{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.cal-week__day-dow{font-family:var(--ds-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ds-fg-5);font-size:9px;font-weight:500}.cal-week__day--today .cal-week__day-dow{color:var(--ds-accent-hi)}.cal-week__day-num{font-family:var(--ds-font-display);color:var(--ds-fg-2);font-size:1rem;font-weight:500;line-height:1}.cal-week__day--today .cal-week__day-num{color:var(--ds-fg-1)}.cal-week__day-marks{flex-direction:column;gap:3px;margin-top:auto;display:flex}.cal-week__mark{background:var(--ds-fg-5);opacity:.6;border-radius:2px;height:4px}.cal-week__mark--interview{background:linear-gradient(90deg, var(--ds-accent-hi), var(--ds-mauve));opacity:.85}.cal-week__mark--calendar{background:var(--ds-teal);opacity:.65}.cal-week__mark--allday{background:color-mix(in srgb, var(--ds-teal) 35%, transparent);border:1px solid color-mix(in srgb, var(--ds-teal) 50%, transparent);height:5px}.cal-week__day-overflow{font-family:var(--ds-font-mono);color:var(--ds-fg-5);letter-spacing:.04em;margin-top:1px;font-size:8px}.cal-week__day-empty{font-family:var(--ds-font-mono);color:var(--ds-fg-5);letter-spacing:.06em;opacity:.5;margin-top:auto;font-size:8px}.cal-agenda{gap:var(--ds-space-4);flex-direction:column;display:flex}.cal-day-group{flex-direction:column;gap:2px;display:flex}.cal-day-group__head{justify-content:space-between;align-items:baseline;gap:var(--ds-space-3);border-bottom:1px solid color-mix(in srgb, var(--ds-stroke) 30%, transparent);margin-bottom:2px;padding-bottom:4px;display:flex}.cal-day-group__label{font-family:var(--ds-font-display);font-size:var(--ds-text-sm);color:var(--ds-fg-2);letter-spacing:-.01em;font-weight:500}.cal-day-group__label--today{color:var(--ds-fg-1)}.cal-day-group__count{font-family:var(--ds-font-mono);color:var(--ds-fg-5);letter-spacing:.04em;font-size:9px}.cal-row{gap:var(--ds-space-3);border-bottom:1px solid color-mix(in srgb, var(--ds-stroke) 35%, transparent);color:inherit;grid-template-columns:3px 78px minmax(0,1fr) auto;align-items:center;padding:7px 0;text-decoration:none;display:grid}.cal-row:last-child{border-bottom:0}.cal-row__bar{background:var(--ds-fg-5);opacity:.55;border-radius:1.5px;align-self:stretch;width:3px}.cal-row--interview .cal-row__bar{background:var(--ds-accent-hi);opacity:1}.cal-row--allday .cal-row__bar{background:var(--ds-teal);opacity:.9}.cal-row--calendar .cal-row__bar{background:var(--ds-teal);opacity:.65}.cal-row--ambiguous .cal-row__bar{background:var(--ds-yellow);opacity:.85}.cal-row__time{font-family:var(--ds-font-mono);color:var(--ds-fg-3);letter-spacing:.02em;white-space:nowrap;font-size:.6875rem}.cal-row--allday .cal-row__time{color:var(--ds-teal-deep)}.cal-row__body{flex-direction:column;gap:2px;min-width:0;display:flex}.cal-row__title{font-size:var(--ds-text-sm);color:var(--ds-fg-1);text-overflow:ellipsis;white-space:nowrap;font-weight:500;line-height:1.35;overflow:hidden}.cal-row__meta{align-items:baseline;gap:var(--ds-space-2);font-size:var(--ds-text-xs);color:var(--ds-fg-4);flex-wrap:wrap;line-height:1.4;display:flex}.cal-row__meta-tag{font-family:var(--ds-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ds-fg-5);font-size:9px}.cal-row__meta-tag--needs-match{color:var(--ds-yellow)}.cal-row__meta-sep{color:var(--ds-fg-5);opacity:.5}.cal-row__action{font-family:var(--ds-font-mono);letter-spacing:.04em;color:var(--ds-fg-4);white-space:nowrap;border-radius:var(--ds-radius-xs);transition:color var(--ds-dur-fast) var(--ds-ease), background var(--ds-dur-fast) var(--ds-ease);margin:-2px -4px;padding:2px 4px;font-size:.6875rem;text-decoration:none}.cal-row__action:hover{color:var(--ds-fg-1);background:color-mix(in srgb, var(--ds-fg-1) 6%, transparent)}.cal-row__action:focus-visible{outline:2px solid var(--ds-accent-hi);outline-offset:2px}.cal-tail{flex-direction:column;display:flex}.cal-tail__row{gap:var(--ds-space-3);border-bottom:1px solid color-mix(in srgb, var(--ds-stroke) 25%, transparent);grid-template-columns:64px minmax(0,1fr) auto;align-items:baseline;padding:6px 0;display:grid}.cal-tail__row:last-child{border-bottom:0}.cal-tail__tag{font-family:var(--ds-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ds-fg-5);font-size:9px;font-weight:500}.cal-tail__tag--prep{color:var(--ds-mauve)}.cal-tail__tag--match{color:var(--ds-yellow)}.cal-tail__body{flex-direction:column;gap:2px;min-width:0;display:flex}.cal-tail__title{font-size:var(--ds-text-sm);color:var(--ds-fg-2);text-overflow:ellipsis;white-space:nowrap;font-weight:500;line-height:1.35;overflow:hidden}.cal-tail__meta{font-size:var(--ds-text-xs);color:var(--ds-fg-4);line-height:1.4}.cal-tail__time{font-family:var(--ds-font-mono);color:var(--ds-fg-5);letter-spacing:.02em;white-space:nowrap;font-size:.6875rem}.cal-quiet{gap:var(--ds-space-2);padding:var(--ds-space-3) 0;font-size:var(--ds-text-xs);color:var(--ds-fg-4);flex-direction:column;line-height:1.5;display:flex}.cal-quiet__title{font-size:var(--ds-text-sm);color:var(--ds-fg-3);font-weight:500}.cal-connect{align-items:center;gap:var(--ds-space-4);padding:var(--ds-space-4) var(--ds-space-5);border-radius:var(--ds-radius-md);border:1px solid color-mix(in srgb, var(--ds-accent-lo) 30%, transparent);background:color-mix(in srgb, var(--ds-accent-lo) 4%, transparent);flex-wrap:wrap;display:flex}.cal-connect__copy{flex:1;min-width:240px}.cal-connect__title{font-size:var(--ds-text-sm);color:var(--ds-fg-1);font-weight:500}.cal-connect__desc{font-size:var(--ds-text-xs);color:var(--ds-fg-4);margin-top:2px}.cal-foot{justify-content:space-between;align-items:center;gap:var(--ds-space-3);padding-top:var(--ds-space-3);border-top:1px solid color-mix(in srgb, var(--ds-stroke) 35%, transparent);font-family:var(--ds-font-mono);color:var(--ds-fg-5);letter-spacing:.04em;flex-wrap:wrap;font-size:.6875rem;display:flex}.cal-foot__group{align-items:center;gap:var(--ds-space-2);display:inline-flex}.cal-foot__sep{color:var(--ds-fg-5);opacity:.45}.cal-foot__link{color:var(--ds-fg-4);transition:color var(--ds-dur-fast) var(--ds-ease), border-color var(--ds-dur-fast) var(--ds-ease);border-bottom:1px solid #0000;text-decoration:none}.cal-foot__link:hover{color:var(--ds-fg-2);border-bottom-color:color-mix(in srgb, var(--ds-fg-4) 60%, transparent)}@media (max-width:720px){.cal-week{grid-template-columns:repeat(7,minmax(48px,1fr))}.cal-week__day{min-height:76px;padding:8px 6px 10px}.cal-week__day-num{font-size:.875rem}.cal-row{grid-template-columns:3px minmax(0,1fr) auto}.cal-row__time{grid-area:2/2;font-size:.625rem}.cal-row__body{grid-area:1/2}.cal-row__action{grid-area:1/3/span 2}}
