/* SLPT-R28-B16C2-CALENDAR-HYBRID-DASHBOARD-REFINEMENT-20260825 */
/* Approved: Calendar Design 3 list + week-calendar hybrid; vivid Quick Access with only a hint of glass; subtle purple upcoming rows. */

/* Main Coach Quick Access: restore vivid folder colour as the dominant material. Glass is only a restrained surface highlight. */
#content .v192-dashboard .v192-quick{
  background:linear-gradient(150deg,
    color-mix(in srgb,var(--tile-accent) 92%,white 8%) 0%,
    color-mix(in srgb,var(--tile-accent) 84%,#14213a 16%) 100%)!important;
  border-color:color-mix(in srgb,var(--tile-accent) 66%,white 34%)!important;
  box-shadow:0 15px 28px color-mix(in srgb,var(--tile-accent) 20%,transparent),0 5px 11px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.27)!important;
  -webkit-backdrop-filter:blur(3px) saturate(104%)!important;
  backdrop-filter:blur(3px) saturate(104%)!important;
}
#content .v192-dashboard .v192-quick::before{
  background:linear-gradient(180deg,color-mix(in srgb,var(--tile-accent) 94%,white 6%),color-mix(in srgb,var(--tile-accent) 84%,#14213a 16%))!important;
  border-color:color-mix(in srgb,var(--tile-accent) 66%,white 34%)!important;
}
#content .v192-dashboard .v192-quick:hover{filter:saturate(1.06) brightness(1.015)!important}
html[data-theme="mist-graphite"] #content .v192-dashboard .v192-quick,
html[data-theme="dark"] #content .v192-dashboard .v192-quick{
  background:linear-gradient(150deg,color-mix(in srgb,var(--tile-accent) 68%,#101827 32%) 0%,color-mix(in srgb,var(--tile-accent) 52%,#09121f 48%) 100%)!important;
  border-color:color-mix(in srgb,var(--tile-accent) 58%,#34445c 42%)!important;
  box-shadow:0 16px 30px color-mix(in srgb,var(--tile-accent) 18%,transparent),0 7px 16px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.10)!important;
}
html[data-theme="mist-graphite"] #content .v192-dashboard .v192-quick::before,
html[data-theme="dark"] #content .v192-dashboard .v192-quick::before{
  background:linear-gradient(180deg,color-mix(in srgb,var(--tile-accent) 72%,#101827 28%),color-mix(in srgb,var(--tile-accent) 55%,#09121f 45%))!important;
}

/* Upcoming-session individual rows: very subtle purple tint + hint of glass, with text contrast preserved. */
#content .v192-dashboard .v192-session-row{
  background:linear-gradient(112deg,rgba(116,82,196,.060),rgba(139,98,237,.025) 48%,rgba(255,255,255,.035)),var(--r248-panel-soft)!important;
  border-color:color-mix(in srgb,var(--r248-line) 86%,#8b62ed 14%)!important;
  box-shadow:0 4px 12px rgba(83,57,143,.035),inset 0 1px 0 rgba(255,255,255,.16)!important;
  -webkit-backdrop-filter:blur(4px) saturate(104%);backdrop-filter:blur(4px) saturate(104%);
}
#content .v192-dashboard .v192-session-row:hover{
  background:linear-gradient(112deg,rgba(116,82,196,.085),rgba(139,98,237,.040) 52%,rgba(255,255,255,.045)),var(--r248-panel-soft)!important;
  border-color:rgba(116,82,196,.25)!important;
}
html[data-theme="mist-graphite"] #content .v192-dashboard .v192-session-row,
html[data-theme="dark"] #content .v192-dashboard .v192-session-row{
  background:linear-gradient(112deg,rgba(117,82,196,.15),rgba(95,64,159,.075) 54%,rgba(18,24,35,.22)),var(--r248-panel-soft)!important;
  border-color:rgba(159,126,235,.18)!important;
  box-shadow:0 5px 15px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.055)!important;
}
#content .v192-dashboard .v192-session-row b{color:var(--r248-text)!important}
#content .v192-dashboard .v192-session-row small{color:var(--r248-muted)!important}

/* Client upcoming items share the same restrained purple material language. */
.r20-coached-dashboard .r32-upcoming-item{
  background:linear-gradient(112deg,rgba(116,82,196,.065),rgba(139,98,237,.025) 50%,rgba(255,255,255,.12))!important;
  border-color:rgba(116,82,196,.15)!important;
  -webkit-backdrop-filter:blur(4px) saturate(104%);backdrop-filter:blur(4px) saturate(104%);
}
html[data-theme="mist-graphite"] .r20-coached-dashboard .r32-upcoming-item,
html[data-theme="dark"] .r20-coached-dashboard .r32-upcoming-item{
  background:linear-gradient(112deg,rgba(116,82,196,.15),rgba(80,55,137,.075) 54%,rgba(16,22,32,.24))!important;
  border-color:rgba(159,126,235,.18)!important;
}

/* Calendar Design 3 - list + calendar hybrid. */
.r28c2-shell{--c2-line:color-mix(in srgb,var(--line) 78%,transparent);display:grid;gap:14px;min-width:0}
.r28c2-shell .page-head{margin-bottom:0}
.r28c2-top-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.r28c2-main-tabs{width:max-content;margin:0;padding:4px;border-radius:13px;background:color-mix(in srgb,var(--surface-soft) 88%,transparent);box-shadow:inset 0 0 0 1px var(--c2-line)}
.r28c2-main-tabs button{min-width:104px;padding:8px 14px;border-radius:9px;font-weight:800}
.r28c2-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--c2-line);border-radius:14px;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 8px 22px rgba(20,28,42,.04)}
.r28c2-nav{display:flex;align-items:center;gap:7px}.r28c2-range{font-size:13px;font-weight:850;letter-spacing:-.01em}
.r28c2-hybrid{display:grid;grid-template-columns:minmax(255px,310px) minmax(0,1fr);gap:12px;min-width:0;align-items:stretch}
.r28c2-upcoming,.r28c2-week-panel{margin:0!important;min-width:0;border:1px solid var(--c2-line)!important;border-radius:16px!important;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 96%,transparent),color-mix(in srgb,var(--surface-soft) 78%,transparent))!important;box-shadow:0 14px 30px rgba(24,34,49,.055)!important}
.r28c2-upcoming{padding:13px;display:flex;flex-direction:column;max-height:720px}
.r28c2-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}.r28c2-side-head h2{margin:0;font-size:18px}.r28c2-side-head small{color:var(--muted);font-size:9px}
.r28c2-list{display:grid;gap:9px;overflow:auto;padding-right:2px;overscroll-behavior:contain}
.r28c2-day-group{display:grid;gap:6px}.r28c2-day-label{display:flex;align-items:center;gap:7px;padding:5px 2px 2px;color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.r28c2-day-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:rgba(119,76,190,.10);color:#7c4fbd;font-size:8px}
.r28c2-list-item{--event-colour:#7c5ce1;display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;padding:9px;border:1px solid color-mix(in srgb,var(--event-colour) 16%,var(--c2-line));border-left:3px solid var(--event-colour);border-radius:11px;background:linear-gradient(110deg,color-mix(in srgb,var(--event-colour) 5%,var(--surface-soft)),color-mix(in srgb,var(--surface-soft) 92%,transparent));color:var(--ink);text-align:left;cursor:pointer}.r28c2-list-item:hover{background:linear-gradient(110deg,color-mix(in srgb,var(--event-colour) 9%,var(--surface-soft)),var(--surface-soft));border-color:color-mix(in srgb,var(--event-colour) 24%,var(--c2-line))}.r28c2-list-time{font-size:10px;font-weight:900;color:color-mix(in srgb,var(--event-colour) 76%,var(--ink))}.r28c2-list-copy{min-width:0}.r28c2-list-copy b,.r28c2-list-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.r28c2-list-copy b{font-size:10.5px}.r28c2-list-copy small{margin-top:2px;color:var(--muted);font-size:8.5px}.r28c2-type{padding:4px 6px;border-radius:99px;background:color-mix(in srgb,var(--event-colour) 10%,var(--surface-strong));color:color-mix(in srgb,var(--event-colour) 74%,var(--ink));font-size:7.5px;font-weight:850}
.r28c2-week-panel{padding:0;overflow:hidden}.r28c2-week-scroll{overflow:auto;overscroll-behavior-inline:contain}.r28c2-week{min-width:780px}.r28c2-week-head{display:grid;grid-template-columns:54px repeat(7,minmax(92px,1fr));border-bottom:1px solid var(--c2-line);background:color-mix(in srgb,var(--surface-soft) 84%,transparent)}.r28c2-week-head>span{padding:10px 7px;text-align:center;border-left:1px solid var(--c2-line);font-size:9px;font-weight:850}.r28c2-week-head>span:first-child{border-left:0}.r28c2-week-head .today{color:#8a5ad0;background:rgba(123,80,192,.07)}
.r28c2-week-body{display:grid;grid-template-columns:54px repeat(7,minmax(92px,1fr));height:720px;position:relative}.r28c2-time-axis{position:relative;border-right:1px solid var(--c2-line);background:color-mix(in srgb,var(--surface-soft) 50%,transparent)}.r28c2-time-label{position:absolute;right:8px;transform:translateY(-50%);color:var(--muted);font-size:8px}.r28c2-day-col{position:relative;border-right:1px solid var(--c2-line);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 51px,color-mix(in srgb,var(--c2-line) 72%,transparent) 52px,transparent 53px);background-size:100% 60px}.r28c2-day-col:last-child{border-right:0}.r28c2-day-col.is-today{background-color:rgba(124,79,189,.025)}
.r28c2-event{--event-colour:#7c5ce1;position:absolute;left:5px;right:5px;min-height:38px;padding:6px 7px;border:1px solid color-mix(in srgb,var(--event-colour) 60%,rgba(255,255,255,.22));border-left:3px solid var(--event-colour);border-radius:8px;background:linear-gradient(140deg,color-mix(in srgb,var(--event-colour) 25%,var(--surface-strong)),color-mix(in srgb,var(--event-colour) 10%,var(--surface-soft)));color:var(--ink);box-shadow:0 6px 14px color-mix(in srgb,var(--event-colour) 10%,transparent);overflow:hidden;text-align:left;cursor:pointer}.r28c2-event b,.r28c2-event small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.r28c2-event b{font-size:9px}.r28c2-event small{margin-top:2px;color:var(--muted);font-size:7.5px}.r28c2-event-time{font-size:7.5px!important;font-weight:900;color:color-mix(in srgb,var(--event-colour) 76%,var(--ink))!important}
.r28c2-empty{padding:16px;text-align:center;color:var(--muted);font-size:10px}
html[data-theme="mist-graphite"] .r28c2-upcoming,html[data-theme="mist-graphite"] .r28c2-week-panel,html[data-theme="dark"] .r28c2-upcoming,html[data-theme="dark"] .r28c2-week-panel{box-shadow:0 16px 34px rgba(0,0,0,.22)!important}.r28c2-list-item,.r28c2-event{-webkit-backdrop-filter:blur(4px) saturate(105%);backdrop-filter:blur(4px) saturate(105%)}
@media(max-width:1080px){.r28c2-hybrid{grid-template-columns:1fr}.r28c2-upcoming{max-height:330px}.r28c2-list{grid-template-columns:repeat(2,minmax(0,1fr))}.r28c2-day-group{min-width:0}}
@media(max-width:700px){.r28c2-toolbar{align-items:flex-start;flex-direction:column}.r28c2-nav{width:100%;display:grid;grid-template-columns:40px 1fr 40px}.r28c2-nav .small-btn{width:100%}.r28c2-list{grid-template-columns:1fr}.r28c2-upcoming{max-height:360px}.r28c2-week{min-width:720px}}
@media(prefers-reduced-motion:reduce){.r28c2-list-item,.r28c2-event,#content .v192-dashboard .v192-session-row{transition:none!important;transform:none!important}}
