/* SLPT R27 B15C2 - Calendar & Diary focused workspace redesign */
.r27c2-calendar-shell{--r27c2-line:color-mix(in srgb,var(--line) 82%,transparent);display:grid;gap:16px;min-width:0}
.r27c2-calendar-shell .page-head{margin-bottom:0}
.r27c2-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.r27c2-tabs{width:max-content;max-width:100%;margin:0;padding:4px;border-radius:14px;background:color-mix(in srgb,var(--surface-soft) 86%,transparent);box-shadow:inset 0 0 0 1px var(--r27c2-line)}
.r27c2-tabs button{min-width:108px;padding:9px 16px;border-radius:10px;font-weight:800}
.r27c2-calendar-view{display:grid;gap:14px;min-width:0}
.r27c2-command{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:4px 2px 0}
.r27c2-month-title{min-width:0}.r27c2-month-title h2{margin:2px 0 3px;font-size:clamp(24px,2.2vw,34px);letter-spacing:-.035em}.r27c2-month-title p,.r27c2-section-head p{margin:0;color:var(--muted);font-size:12px}.r27c2-kicker{display:block;color:var(--accent);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.r27c2-nav{display:grid;grid-template-columns:38px auto 38px;gap:6px;align-items:center}.r27c2-nav .small-btn{height:38px;min-width:38px;padding:0 10px;border-radius:11px;font-size:17px}.r27c2-nav .r27c2-today{font-size:11px;font-weight:850}
.r27c2-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.r27c2-metric{position:relative;min-width:0;padding:13px 14px;border:1px solid var(--r27c2-line);border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 94%,transparent),color-mix(in srgb,var(--surface-soft) 78%,transparent));box-shadow:0 9px 24px rgba(28,39,53,.055);overflow:hidden}.r27c2-metric::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent);opacity:.68}.r27c2-metric small,.r27c2-metric span{display:block}.r27c2-metric small{color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.r27c2-metric strong{display:block;margin:3px 0 1px;color:var(--ink);font-size:23px;line-height:1;font-weight:900}.r27c2-metric span{color:var(--muted);font-size:10px}
.r27c2-layout{grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);gap:14px;align-items:start}.r27c2-month-panel,.r27c2-agenda-panel,.r27c2-diary-panel{border:1px solid var(--r27c2-line);box-shadow:0 14px 34px rgba(28,39,53,.07);overflow:hidden}.r27c2-month-panel{padding:14px}.r27c2-panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.r27c2-panel-top>small{color:var(--muted);font-size:10px;white-space:nowrap}.r27c2-legend{margin:0;gap:8px}.r27c2-legend span{padding:5px 7px;border:1px solid var(--r27c2-line);border-radius:999px;background:var(--surface-soft);font-size:9px;font-weight:750}.r27c2-legend i{width:7px;height:7px;border-radius:50%}
.r27c2-month-scroll{min-width:0;overflow:hidden;border-radius:15px}.r27c2-month{border-radius:15px;border-color:var(--r27c2-line);background:var(--surface-subtle)}.r27c2-weekdays{background:color-mix(in srgb,var(--surface-soft) 88%,transparent);border-bottom-color:var(--r27c2-line)}.r27c2-weekdays span{padding:9px 6px;font-size:9px;letter-spacing:.1em}.r27c2-days{background:var(--r27c2-line);gap:1px}.r27c2-day{position:relative;min-height:112px;padding:8px;border:0!important;background:var(--surface-strong);box-shadow:none!important;transition:background .15s ease}.r27c2-day.outside{opacity:.48}.r27c2-day.weekend:not(.outside){background:color-mix(in srgb,var(--surface-soft) 64%,var(--surface-strong))}.r27c2-day.today{background:color-mix(in srgb,var(--accent) 8%,var(--surface-strong));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)!important}.r27c2-day:hover{background:color-mix(in srgb,var(--accent) 4%,var(--surface-strong))}.r27c2-date{margin-bottom:6px;min-height:27px}.r27c2-date span{width:26px;height:26px;border-radius:9px;font-size:11px}.r27c2-day.today .r27c2-date span{background:var(--accent);color:#fff;box-shadow:0 5px 12px color-mix(in srgb,var(--accent) 22%,transparent)}.r27c2-date small{font-size:8px;color:var(--muted)}.r27c2-day.today .r27c2-date small{color:var(--accent)}.r27c2-events{gap:3px}.r27c2-event-chip{display:grid;grid-template-columns:36px minmax(0,1fr);gap:4px;align-items:center;width:100%;min-width:0;padding:5px 6px;border:0;border-left:3px solid var(--event-colour);border-radius:7px;background:color-mix(in srgb,var(--event-colour) 9%,var(--surface-soft));color:var(--ink);text-align:left;cursor:pointer}.r27c2-event-time{font-size:8px;font-weight:900;color:color-mix(in srgb,var(--event-colour) 75%,var(--ink))}.r27c2-event-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8.5px;font-weight:750}.r27c2-event-chip:hover{background:color-mix(in srgb,var(--event-colour) 15%,var(--surface-soft))}.r27c2-more{padding:1px 4px;color:var(--muted);font-size:8px;font-weight:750}
.r27c2-agenda-panel{padding:14px}.r27c2-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.r27c2-section-head h2{margin:2px 0 3px;font-size:20px}.r27c2-section-head.compact{margin-bottom:10px}.r27c2-agenda-list{display:grid;gap:8px}.r27c2-agenda-day{border:1px solid var(--r27c2-line);border-radius:12px;background:var(--surface-subtle);overflow:hidden}.r27c2-agenda-day>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 9px;border-bottom:1px solid var(--r27c2-line);background:color-mix(in srgb,var(--surface-soft) 82%,transparent)}.r27c2-agenda-day>header>div{display:flex;align-items:baseline;gap:7px}.r27c2-agenda-day>header b{font-size:10px}.r27c2-agenda-day>header span,.r27c2-agenda-day>header em{color:var(--muted);font-size:8.5px;font-style:normal}.r27c2-agenda-day.is-today>header{background:color-mix(in srgb,var(--accent) 7%,var(--surface-soft))}.r27c2-agenda-items{display:grid}.r27c2-agenda-item{grid-template-columns:42px minmax(0,1fr) auto auto;gap:7px;padding:8px 9px;border-left-width:3px!important;border-radius:0!important;box-shadow:none!important;background:color-mix(in srgb,var(--event-colour) 5%,transparent)}.r27c2-agenda-item:hover{transform:none!important;background:color-mix(in srgb,var(--event-colour) 8%,transparent)}.r27c2-agenda-item .agenda-time{font-size:9px;font-weight:900}.r27c2-agenda-copy b{font-size:10.5px!important}.r27c2-agenda-copy small{font-size:8.5px!important;margin-top:2px!important}.r27c2-agenda-item .badge{font-size:7.5px;padding:3px 5px}.r27c2-agenda-item .small-btn{padding:5px 7px;font-size:8px}.r27c2-empty{padding:9px;color:var(--muted);font-size:9px}
.r27c2-diary-panel{padding:16px}.r27c2-diary-list{display:grid;gap:9px;margin-top:14px}.r27c2-diary-card{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px;border:1px solid var(--r27c2-line);border-radius:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 96%,transparent),color-mix(in srgb,var(--surface-soft) 80%,transparent));box-shadow:0 8px 20px rgba(28,39,53,.045)}.r27c2-diary-date strong,.r27c2-diary-date span{display:block}.r27c2-diary-date strong{font-size:11px}.r27c2-diary-date span{margin-top:2px;color:var(--muted);font-size:9px}.r27c2-diary-main{min-width:0}.r27c2-diary-title{display:flex;align-items:center;gap:8px;min-width:0}.r27c2-diary-title h3{margin:0;min-width:0;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.r27c2-diary-main p{margin:5px 0;color:var(--muted);font-size:10px;line-height:1.4}.r27c2-diary-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:9px}.r27c2-diary-actions{display:flex;gap:6px}.r27c2-diary-empty{margin-top:14px;padding:28px;text-align:center;border:1px dashed var(--r27c2-line);border-radius:14px}.r27c2-diary-empty p{margin:4px 0 0;color:var(--muted);font-size:11px}
html[data-theme="mist-graphite"] .r27c2-metric,html[data-theme="mist-graphite"] .r27c2-diary-card{box-shadow:0 14px 30px rgba(0,0,0,.18)}html[data-theme="mist-graphite"] .r27c2-day.today{background:color-mix(in srgb,var(--accent) 14%,var(--surface-strong))}
@media(max-width:1120px){.r27c2-layout{grid-template-columns:1fr}.r27c2-agenda-list{grid-template-columns:repeat(2,minmax(0,1fr))}.r27c2-agenda-day.is-today{grid-column:1/-1}}
@media(max-width:820px){.r27c2-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.r27c2-panel-top{align-items:flex-start;flex-direction:column}.r27c2-panel-top>small{white-space:normal}.r27c2-month-scroll{overflow-x:auto;overscroll-behavior-inline:contain}.r27c2-month{min-width:700px}.r27c2-agenda-list{grid-template-columns:1fr}.r27c2-diary-card{grid-template-columns:96px minmax(0,1fr)}.r27c2-diary-actions{grid-column:2;justify-content:flex-start}}
@media(max-width:560px){.r27c2-command{align-items:flex-start;flex-direction:column}.r27c2-nav{width:100%;grid-template-columns:42px 1fr 42px}.r27c2-nav .small-btn{width:100%}.r27c2-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.r27c2-metric{padding:11px}.r27c2-metric strong{font-size:20px}.r27c2-month-panel,.r27c2-agenda-panel,.r27c2-diary-panel{padding:11px}.r27c2-diary-card{grid-template-columns:1fr;gap:8px}.r27c2-diary-actions{grid-column:1}.r27c2-section-head{align-items:flex-start;flex-direction:column}.r27c2-section-head .btn{width:100%}.r27c2-agenda-item{grid-template-columns:40px minmax(0,1fr) auto}.r27c2-agenda-item .badge{display:none}.r27c2-agenda-item .small-btn{grid-column:2/4;justify-self:start}}
@media(prefers-reduced-motion:reduce){.r27c2-day,.r27c2-event-chip{transition:none!important}}
