/* Rounded analytics workspace surfaces. The shell and home dashboard are styled in
   portal-redesign.css. Existing visibility, status colours, shift colours and
   document printing remain owned by their feature styles. */
@media screen {
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) {
    min-width: 0;
    --dashboard-radius: 26px;
    --rota-radius: 26px;
  }

  /* Calm type hierarchy replaces the older uppercase display headings. */
  html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(h2, h3, h4):not(.iv-paper *) {
    font-family: var(--font-body);
    font-weight: 400;
    line-height: 1.35;
    text-transform: none;
    letter-spacing: -.025em;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) h2:not(.iv-paper *) { font-size: 26px; }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) h3:not(.iv-paper *) { font-size: 19px; }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) h4:not(.iv-paper *) { font-size: 15px; }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .stat__value, .rp-card__value, .rg-bar__big, .ts-total__value,
    .dy-total__value, .ms-hours__big, .ms-card__count, .day__hh,
    .bk-card__party, .shift-card__day, .clock__label, .schedule-metrics strong
  ) {
    font-family: var(--font-body);
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -.035em;
    text-transform: none;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .stat__label, .rp-card__label, .rg-bar__label, .ts-total__label,
    .dy-total__label, .ms-hours__label, .docs-heading__eyebrow,
    .docs-person__eyebrow, .bu-kicker, .st-eyebrow, .ob-eyebrow,
    .lv-card__title, .docs__title, .checks__title, .tasks__title,
    .folder__subhead, .day__closedtitle, .upcoming__summary
  ) {
    font: 500 13px/1.5 var(--font-body);
    letter-spacing: 0;
    text-transform: none;
    color: var(--muted-c);
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .lv-card__title, .docs__title, .checks__title, .tasks__title,
    .folder__subhead, .day__closedtitle, .upcoming__summary
  ) { font-weight: 500; color: var(--text-c); }

  /* Rounded cards retain each feature's border marks and feedback states. */
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .dashboard-surface, .ms-card, .ms-next, .ms-empty, .lv-card, .logday,
    .clist, .doc, .evt, .won-row, .ts-card, .folder, .rate-band, .team-chase,
    .rg-across, .rp-estimate, .rp-card, .rg-weekly, .ts-look, .dy-band, .lv,
    .shift-card, .chart, .clock, .wf-card, .wf-attention, .dtl-section,
    .dtl-card, .eod-section, .rc-report-catalogue, .cd-root, .cd-item,
    .ops-attachments, .ops-attachments__item, .schedule-library,
    .schedule-insights, .lhg, .lag, .sales-import, .ms-offers, .rg-offers,
    .shift-offer-card, .rc-fieldset, .dtl-weekdays, .cd-form,
    .sales-import__summary, .cu-card, .cu-period, .pa-workspace,
    .bu-card, .st-metric, .st-notice, .st-reorder-alert, .st-order,
    .ob-metric, .ob-share, .iv-metric, .xp-card, .xp-stat,
    .promotion-card, .promotion-profile, .promotion-events,
    .rota-tool-card, .rota-options, .si-management, .si-day,
    .panel__empty, .rp-loading, .ts-empty, .rg-empty, .pw-status
  ) {
    border-radius: 26px;
    box-shadow: none;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .bu-card, .cu-card, .iv-metric, .xp-card, .st-metric, .ob-metric,
    .rp-card, .ms-card, .lv-card, .dtl-card, .wf-card, .rota-tool-card
  ) { padding: 26px; }
  /* Quiet structural cards are nearly borderless. Cards carrying warning,
     completion or publication borders are deliberately outside this group. */
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .dashboard-surface, .bu-card, .cu-card, .iv-metric, .xp-card,
    .xp-stat, .dtl-section, .dtl-card, .eod-section, .wf-card,
    .promotion-profile, .promotion-events, .rota-tool-card,
    .si-management, .si-day, .chart, .lhg, .lag, .rc-report-catalogue
  ) { border-color: transparent; }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .stats {
    gap: 18px;
    background: transparent;
    border: 0;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .stat {
    padding: 24px;
    border: 1px solid transparent;
    border-radius: 26px;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.notice, .st-item-summary, .cu-entry, .pa-preview) {
    border-radius: 18px;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.pill, .won-chip, .ts-chip, .bk-card__table, .cd-item__access) {
    border-radius: 999px;
    letter-spacing: 0;
    text-transform: none;
    font-weight: 500;
    line-height: 1.5;
  }

  /* Toolbars group related controls without making the whole page one box. */
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.panel__bar, .rg-bar, .ts-bar, .rp-grainbar, .dy-head) {
    padding: 21px 24px;
    gap: 16px 22px;
    border-radius: 26px;
    border-color: transparent;
    box-shadow: none;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.panel__status, .rg-bar__range, .ts-range__sub, .dy-weeknav__range) {
    color: var(--muted-c);
    font-size: 13px;
    line-height: 1.5;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.rg-bar__title, .ts-range__title, .dy-weeknav__title) {
    font: 400 23px/1.35 var(--font-body);
    letter-spacing: -.025em;
    text-transform: none;
  }

  /* Workspace tabs keep labels visible and show selection with fill and weight. */
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .pw-tabs {
    gap: 8px;
    padding-bottom: 16px;
    border-color: transparent;
    scrollbar-color: var(--line-2-c) transparent;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.pw-tab, .filter-chip, .wf-nav button, .wf-subnav .rg-btn, .bu-nav .bu-btn) {
    border-radius: 999px;
    font: 400 13px/1.4 var(--font-body);
    letter-spacing: 0;
    text-transform: none;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .pw-tab {
    background: var(--panel-c);
    border: 1px solid transparent;
    padding: 13px 20px;
    box-shadow: none;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .pw-tab[aria-selected="true"], .filter-chip[aria-pressed="true"],
    .bu-nav .bu-btn[aria-current], .wf-nav button[aria-pressed="true"]
  ) {
    background: var(--ink-c);
    border-color: var(--ink-c);
    color: var(--panel-c);
    box-shadow: none;
    font-weight: 500;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .pw-tab small { color: var(--muted-c); }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .pw-tab[aria-selected="true"] small { color: inherit; opacity: .85; }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.rota-workspace-tabs, .st-views, .st-category-tabs) {
    gap: 8px;
    border-bottom-color: transparent;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.rota-workspace-tabs button, .st-view, .st-category-tab, .rota-segment button) {
    min-height: 42px;
    padding: 10px 18px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: var(--panel-c);
    color: var(--text-c);
    font: 400 13px/1.4 var(--font-body);
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.rota-workspace-tabs button[aria-selected="true"], .st-view[aria-pressed="true"], .st-category-tab[aria-selected="true"]) {
    background: var(--ink-c);
    border-color: var(--ink-c);
    color: var(--panel-c);
  }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-workspace-tabs button[aria-selected="true"]::after { content: none; }
  html[data-theme] body.team-app.is-authed #panel-stock .st-category-tab__count {
    border-radius: 999px;
    border-color: currentColor;
    padding: 2px 6px;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.rg-arrow, .ts-arrow, .dy-weeknav__arrow) {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    border: 1px solid var(--line-2-c);
    border-radius: 50%;
    background: var(--panel-c);
    color: var(--text-c);
  }

  /* Tables use quiet headers and clear rows. Scrolling and sticky columns stay
     with their original components, including the rota's horizontal scroller. */
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .tbl-wrap, .rp-scroll, .ts-scroll, .wf-scroll, .rc-table-wrap,
    .cu-scroll, .pa-scroll, .xp-table-wrap, .st-table-wrap, .bu-scroll
  ) {
    max-width: 100%;
    border-radius: 24px;
    border-color: var(--line-c);
    background: var(--panel-c);
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .tbl, .ts-sheet, .rc-table, .sales-import__table, .bu-table,
    .cu-table, .pa-table, .xp-table, .st-table, .iv-table
  ):not(.iv-paper *) th {
    background: var(--panel-c);
    color: var(--muted-c);
    border-color: var(--line-c);
    padding: 14px 16px;
    font: 400 12px/1.5 var(--font-body);
    letter-spacing: 0;
    text-transform: none;
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
    .tbl, .rc-table, .sales-import__table, .bu-table,
    .cu-table, .pa-table, .xp-table, .st-table, .iv-table
  ):not(.iv-paper *) td { font-size: 13px; line-height: 1.6; padding: 15px 16px; }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.tbl, .rc-table, .sales-import__table) tr:hover td {
    background: var(--app-wash);
  }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.rp-band, .rp-lede) { border-radius: 24px; }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .rp-band:has(+ .rp-lede) { border-radius: 24px 24px 0 0; }
  html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .rp-band + .rp-lede { border-radius: 0 0 24px 24px; }

  /* Inputs are a consistent size. Native pickers, colour inputs, radios,
     checkboxes and hidden controls keep their own behaviour. */
  html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(input, select, textarea):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="hidden"]):not([type="button"]):not([type="submit"]) {
    min-height: 44px;
    max-width: 100%;
    min-width: 0;
    padding: 10px 13px;
    border: 1px solid var(--line-2-c);
    border-radius: 14px;
    background: var(--panel-c);
    color: var(--text-c);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0;
    text-transform: none;
  }
  html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) textarea {
    min-height: 104px;
    resize: vertical;
  }
  html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(input, select, textarea):focus-visible {
    border-color: var(--accent-c);
    outline: 2px solid var(--accent-c);
    outline-offset: 2px;
  }
  html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(
    .field label, .field__label, .inline-field, .mailing__form label,
    .rc-controls label, .rc-dates label, .sales-import__fields label,
    .dtl-field > span, .eod-field > span, .wf-form label.field
  ) {
    font: 500 13px/1.5 var(--font-body);
    letter-spacing: 0;
    text-transform: none;
    color: var(--text-c);
  }
  html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(
    .btn, .rg-btn, .ts-btn, .dy-band__btn, .st-btn, .iv-btn,
    .cu-btn, .bu-btn, .ob-button, .sc-button, .xp-button, .onboard__go
  ) {
    border-radius: 999px;
    min-height: 42px;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0;
    text-transform: none;
  }
  html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(
    .st-btn--primary, .iv-btn--primary, .ob-button--primary,
    .sc-button--primary, .xp-button--primary,
    .cu-btn:not(.cu-btn--secondary), .bu-btn:not(.bu-btn--secondary)
  ) {
    background: var(--pd-highlight, #edc982);
    border-color: var(--pd-highlight, #edc982);
    color: var(--pd-on-highlight, #382a13);
    font-weight: 500;
  }
  html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(
    .st-btn--primary, .iv-btn--primary, .ob-button--primary,
    .sc-button--primary, .xp-button--primary,
    .cu-btn:not(.cu-btn--secondary), .bu-btn:not(.bu-btn--secondary)
  ):hover:not(:disabled) {
    background: #e1b76c;
    border-color: #e1b76c;
    color: var(--pd-on-highlight, #382a13);
  }

  /* Booking diary: open white space around semantic colour-coded entries. */
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-grid {
    border-radius: 26px;
    border-color: var(--line-c);
  }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-col { background: var(--panel-c); }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-col__head {
    background: var(--panel-c);
    padding: 17px 13px;
    min-height: 82px;
  }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-col.is-today .dy-col__head { background: var(--portal-blue-soft); }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-col__day {
    font: 500 14px/1.4 var(--font-body);
    text-transform: none;
    letter-spacing: 0;
  }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-col__sub { font-size: 12px; line-height: 1.5; }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-col__body { padding: 10px; gap: 10px; }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-item {
    border-radius: 14px;
    padding: 13px 11px;
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
  }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-item__kicker {
    font: 500 11px/1.5 var(--font-body);
    letter-spacing: .015em;
    text-transform: none;
  }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-item__line {
    font: 500 14px/1.45 var(--font-body);
    letter-spacing: -.015em;
  }
  html[data-theme] body.team-app.is-authed #panel-bookings :is(.dy-item__who, .dy-item__note) { font-size: 12px; line-height: 1.5; }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-item__clash { font-size: 12px; line-height: 1.5; }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-total__value { font-size: 28px; }
  html[data-theme] body.team-app.is-authed #panel-bookings :is(.dy-legend, .bk-card) { border-radius: 20px; }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-legend { padding: 14px 18px; gap: 12px 22px; }
  html[data-theme] body.team-app.is-authed #panel-bookings :is(.dy-weeknav__arrow, .dy-weeknav__today, .dy-more) { border-radius: 999px; }
  html[data-theme] body.team-app.is-authed #panel-bookings .dy-more { border-color: var(--line-c); }
  html[data-theme] body.team-app.is-authed #panel-bookings .upcoming { border-top: 0; padding-top: 8px; }

  /* Rota: airy controls and legible cards, without changing grid structure,
     publication patterns, absence indicators or manager-selected left edges. */
  html[data-theme] body.team-app.is-authed #panel-rota .rota-command { margin-bottom: 24px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-calendar { padding: 24px; border-color: transparent; border-radius: 26px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-overview { background: var(--panel-c); padding-block: 24px; border-color: transparent; border-radius: 26px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-overview strong { font-size: 26px; letter-spacing: -.035em; }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-overview span { font-size: 12px; }
  html[data-theme] body.team-app.is-authed #panel-rota :is(.rota-team-tab, .rota-day-choice, .rota-segment) { border-radius: 999px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-team-tab { padding: 15px 22px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-team-tab[aria-selected="true"] {
    background: var(--ink-c);
    border-color: var(--ink-c);
    color: var(--panel-c);
    box-shadow: none;
  }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-team-tab > span { font-weight: 500; }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-team-tab[aria-selected="true"] > span { color: inherit; }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-team-tab > small {
    justify-self: start;
    padding: 3px 8px;
    border-radius: 999px;
    color: var(--portal-amber);
    background: var(--portal-amber-soft);
  }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-team-tab.is-complete > small {
    color: var(--portal-green);
    background: var(--portal-green-soft);
  }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-segment button[aria-pressed="true"] {
    background: var(--ink-c);
    border-color: var(--ink-c);
    color: var(--panel-c);
    box-shadow: none;
  }
  html[data-theme] body.team-app.is-authed #panel-rota .rota-day-choice[aria-pressed="true"] {
    background: var(--pd-highlight, #edc982);
    color: var(--pd-on-highlight, #382a13);
    border-color: var(--pd-highlight, #edc982);
  }
  html[data-theme] body.team-app.is-authed #panel-rota :is(.rg-block, .rg-colour-legend, .rg-publish) { border-radius: 24px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-block__head { padding: 16px 18px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-colour-legend { padding: 14px 18px; gap: 10px 20px; }
  html[data-theme] body.team-app.is-authed #panel-rota :is(.rg-th, .rg-th__dow, .rg-th__date) {
    font: 400 12px/1.5 var(--font-body);
    letter-spacing: 0;
    text-transform: none;
  }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-th__date { color: var(--muted-c); }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-cell:not(.is-away) { background: var(--panel-c); }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-cell { padding: 8px; gap: 8px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-chip { border-radius: 13px; padding: 12px 10px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-chip__time { font-size: 13px; line-height: 1.5; }
  html[data-theme] body.team-app.is-authed #panel-rota :is(.rg-chip__job, .rg-chip__tasks, .rg-chip__flag, .rg-chip__state, .rg-who__sub) {
    font-size: 11px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-leave { border-radius: 13px; }
  html[data-theme] body.team-app.is-authed #panel-rota .rg-add { border-radius: 999px; }

  /* Feature dialogs inherit the canvas palette but keep native open/closed
     display and their existing scroll/focus behaviour. */
  html[data-theme] body.team-app.is-authed :is(.modal__panel, dialog:not(.app-palette)) {
    border-radius: 28px;
    border-color: var(--line-c);
    background: var(--panel-c);
    color: var(--text-c);
    box-shadow: 0 20px 70px rgb(22 25 23 / 16%);
  }
  html[data-theme] body.team-app.is-authed :is(.modal__panel, dialog:not(.app-palette)) h2 {
    font: 400 26px/1.35 var(--font-body);
    letter-spacing: -.025em;
    text-transform: none;
  }
  html[data-theme] body.team-app.is-authed :is(.modal__close, .st-dialog__close) {
    border-radius: 50%;
    color: var(--text-c);
    background: var(--bg-c);
    border-color: var(--line-c);
  }
  html[data-theme] body.team-app.is-authed :is(.modal__panel, dialog:not(.app-palette)) :is(.form-foot, .rg-modal__foot) {
    border-color: var(--line-c);
    background: var(--panel-c);
  }

  @media (max-width: 760px) {
    html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.panel__bar, .rg-bar, .ts-bar, .rp-grainbar, .dy-head) { padding: 16px; }
    html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(
      .bu-card, .cu-card, .iv-metric, .xp-card, .st-metric, .ob-metric,
      .rp-card, .ms-card, .lv-card, .dtl-card, .wf-card, .rota-tool-card
    ) { padding: 16px; }
    html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .stats { gap: 10px; }
    html[data-theme] body.team-app.is-authed .panel:not(#panel-home) .stat { padding: 16px; }
    html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(input, select, textarea):not([type="checkbox"]):not([type="radio"]) { font-size: 16px; }
    html[data-theme] body.team-app.is-authed :is(.panel:not(#panel-home), .modal__panel, dialog:not(.app-palette)) :is(
      .btn, .rg-btn, .ts-btn, .st-btn, .iv-btn, .cu-btn, .bu-btn,
      .ob-button, .sc-button, .xp-button
    ) { min-height: 44px; }
    html[data-theme] body.team-app.is-authed #panel-bookings .dy-strip {
      background: var(--panel-c);
      border-radius: 24px;
      overflow: hidden;
      border-color: var(--line-c);
    }
    html[data-theme] body.team-app.is-authed #panel-bookings .dy-strip__name { font: 500 12px/1.4 var(--font-body); text-transform: none; }
    html[data-theme] body.team-app.is-authed #panel-bookings .dy-strip__day.is-on {
      background: var(--portal-blue-soft);
      color: var(--portal-blue);
    }
    html[data-theme] body.team-app.is-authed #panel-bookings .dy-strip__day.is-on .dy-strip__num { color: var(--portal-blue); }
    html[data-theme] body.team-app.is-authed #panel-bookings .dy-col__head { padding: 14px; min-height: 68px; }
    html[data-theme] body.team-app.is-authed #panel-bookings .dy-col__body { padding: 14px; }
    html[data-theme] body.team-app.is-authed #panel-bookings .dy-item { padding: 13px; }
    html[data-theme] body.team-app.is-authed #panel-bookings .dy-legend { gap: 10px 15px; padding: 12px 14px; }
    html[data-theme] body.team-app.is-authed #panel-rota .rota-calendar { padding: 14px; }
    html[data-theme] body.team-app.is-authed #panel-rota .rota-overview { padding-block: 16px; }
    html[data-theme] body.team-app.is-authed #panel-rota .rota-overview strong { font-size: 20px; }
    html[data-theme] body.team-app.is-authed #panel-rota .rota-overview span { font-size: 11px; }
    html[data-theme] body.team-app.is-authed #panel-rota .rota-team-tab { padding: 13px; }
    html[data-theme] body.team-app.is-authed #panel-rota .rota-team-tab > small { font-size: 10px; padding: 3px 7px; }
    html[data-theme] body.team-app.is-authed .panel:not(#panel-home) :is(.rota-workspace-tabs button, .st-view, .st-category-tab, .rota-segment button) {
      min-height: 44px;
      padding: 9px 12px;
      font-size: 12px;
    }
    html[data-theme] body.team-app.is-authed #panel-rota .rota-workspace-tabs { gap: 6px; flex-wrap: wrap; }
    html[data-theme] body.team-app.is-authed #panel-rota .rota-calendar__actions { flex-wrap: wrap; }
    html[data-theme] body.team-app.is-authed #panel-rota .rg-colour-legend { padding: 12px; gap: 8px 13px; }
    html[data-theme] body.team-app.is-authed #panel-rota .rg-cell { padding: 6px; }
    html[data-theme] body.team-app.is-authed #panel-rota .rg-block__head { padding: 13px; }
    html[data-theme] body.team-app.is-authed .modal__panel { border-radius: 0; }
  }
}
