.v54-test-strip{padding:7px 14px;text-align:center;background:#623c12;color:#fff7e7;font:700 13px/1.45 system-ui,sans-serif;letter-spacing:.02em}
.v54-test-strip[hidden],.v54-semester-reminder[hidden]{display:none!important}
.v54-semester-reminder{display:grid;gap:4px;margin:10px 0 0;padding:10px 14px;background:#f0f1ef;border:1px solid #b9c1bc;border-left:4px solid #557677;color:#243c45;font:13px/1.55 system-ui,sans-serif;overflow-wrap:anywhere}
.v54-semester-reminder strong{font-size:14px}
.v54-semester-reminder .v54-reminder-count{display:inline-block;white-space:nowrap;color:#922f32;font-size:1.24em;font-weight:850;line-height:1.1;font-variant-numeric:tabular-nums}
.v54-semester-reminder.is-locked{border-left-color:#8a5145}
html[data-design=tech] .v54-semester-reminder{background:#1a2b37;border-color:#47606e;color:#e9f2f5}
html[data-design=tech] #report-view .v54-semester-reminder strong{color:#e9f2f5}
html[data-design=tech] #report-view .v54-semester-reminder .v54-reminder-count{color:#ffb4a6}
html[data-design=tech] .v54-test-strip{background:#49341c;color:#fff4d8}
html[data-design=horse] .v54-semester-reminder{background:#f2ece1;color:#412c26;border-color:#bba993}
html[data-design=horse] .v54-semester-reminder .v54-reminder-count{color:#853034}
html[data-design=forest] .v54-semester-reminder{background:#eaf0e8;color:#294b3e;border-color:#acc2b2}
html[data-design=forest] .v54-semester-reminder .v54-reminder-count{color:#87313a}
html #report-view button.rw-action-unavailable{background:#eceeed;color:#58666a;border-color:#a8b1b3;cursor:pointer;opacity:1;filter:none}
html #report-view button.rw-action-unavailable:hover{background:#e1e5e4;color:#435257}
.rw-action-popover{position:fixed;left:0;top:0;z-index:300;display:flex;align-items:flex-start;gap:12px;width:max-content;max-width:min(320px,calc(100vw - 24px));padding:11px 12px 11px 14px;border:1px solid #9daeb1;border-left:3px solid #637f87;border-radius:6px;background:#fffdf8;color:#253f49;box-shadow:0 8px 25px #17394a30;font:13px/1.5 system-ui,sans-serif;overflow-wrap:anywhere}
.rw-action-popover p{margin:0;min-width:0}
.rw-action-popover-close{flex:none;display:grid;place-items:center;width:25px;height:25px;margin:-5px -6px 0 0;padding:0;border:0;border-radius:4px;background:transparent;color:#435963;font:22px/1 system-ui,sans-serif}
.rw-action-popover-close:hover,.rw-action-popover-close:focus-visible{background:#e8efee}
html[data-design=tech] .rw-action-popover{background:#f5fbff;color:#203e4e;border-color:#809cac;border-left-color:#517e97}
.person-button .v54-person-settings{grid-column:2;grid-row:1/3;display:inline-flex;align-items:center;align-self:stretch;gap:3px;flex:none;margin:0;padding:0 0 0 8px;border:0;border-left:1px solid color-mix(in srgb,currentColor 35%,transparent);border-radius:0;color:inherit;font:700 11px/1 system-ui,sans-serif;white-space:nowrap}
.v54-person-settings svg{display:block;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.person-button .v54-person-settings span{color:inherit!important}
.person-button:hover,.person-button:focus-visible{background:color-mix(in srgb,currentColor 8%,transparent)}
.mast-right .person-button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:2px 9px;max-width:190px;min-height:48px;width:max-content;min-width:0;padding:7px 9px;white-space:normal;text-align:left;border:1px solid color-mix(in srgb,currentColor 28%,transparent);border-radius:5px}
.mast-right #person-name,.mast-right #person-role{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}
.mast-right #person-name{grid-column:1;grid-row:1;font-size:14px;line-height:1.2}
.mast-right #person-role{grid-column:1;grid-row:2;font-size:10px;line-height:1.3}
.mast-right #person-role:empty{display:none}
.mast-right .v54-person-chevron{display:none}
@media(max-width:680px){.mast-right .person-button{max-width:151px;min-height:44px;gap:2px 6px;padding:5px 6px}.mast-right #person-name{font-size:13px}.mast-right #person-role{font-size:10px}.person-button .v54-person-settings{gap:2px;padding-left:5px;font-size:11px}.v54-person-settings svg{width:13px;height:13px}}
@media(max-width:355px){.mast-right .person-button{max-width:120px;padding:4px 5px;gap:1px 4px}.mast-right #person-name{font-size:12px}.mast-right #person-role{font-size:9px}.person-button .v54-person-settings{padding-left:4px;font-size:10px}.v54-person-settings svg{width:12px;height:12px}}
@media(max-width:540px){.v54-test-strip{font-size:11px;padding:7px 9px}.v54-semester-reminder{margin-top:8px;padding:9px 11px;font-size:12px}.v54-semester-reminder strong{font-size:13px}}

html[data-design] #report-view .rw-calendar-day[data-state].today{outline:0!important;box-shadow:none!important}
html[data-design] #report-view .rw-calendar-day[data-state].today.selected{box-shadow:inset 0 0 0 1.5px #477b9a!important}
#report-view .rw-today-dot{position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:#b44b39;box-shadow:0 0 0 1px #fffdf8;pointer-events:none}
#report-view .rw-calendar-legend{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;margin:0;font:11px/1.35 system-ui,sans-serif;color:#516b73}
#report-view .rw-legend-item{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
#report-view .rw-legend-swatch{display:inline-block;flex:none;width:10px;height:10px;border:1px solid;border-radius:2px}
#report-view .rw-legend-normal{background:#dff1e4;border-color:#79ac86}
#report-view .rw-legend-waived{background:#ffebd3;border-color:#d7a35c}
#report-view .rw-legend-missed{background:#f9dedd;border-color:#d17e80}
#report-view .rw-legend-current{background:#dceefa;border-color:#80b6d1}
#report-view .rw-legend-future{background:#edf0ef;border-color:#b9c5c4}
#report-view .rw-legend-today{width:7px;height:7px;margin:0 2px;border:0;border-radius:50%;background:#b44b39;box-shadow:0 0 0 1px #fffdf8}

.rw-action-popover[hidden]{display:none!important}
