/*
 * School 360 Card System
 * UI/IX v13.2 — five-family card runtime contract.
 *
 * This stylesheet intentionally loads after the scoped Tailwind runtime layer.
 * It defines the approved modern card families after legacy runtime card
 * compatibility selectors have been removed.
 */

.s360-ui-card,
.s360-ui-section-card,
.s360-ui-dashboard-panel,
.s360-ui-stat-card,
.s360-admin-dashboard__utility-card,
.s360-ui-action-card{
  box-sizing:border-box;
  min-width:0;
}

/* Family 1: Core content card. */
.s360-ui-card{
  background:var(--s360-card-core-bg,var(--s360-color-surface-raised));
  border:1px solid var(--s360-card-core-border-color,var(--s360-component-card-border-color));
  border-radius:var(--s360-card-core-radius,var(--s360-component-card-radius));
  box-shadow:var(--s360-card-core-shadow,var(--s360-component-card-shadow));
}

.s360-ui-card{
  padding:var(--s360-card-core-padding,var(--s360-component-card-padding));
}

/* Family 2: Section card + dashboard-panel structural variant. */
.s360-ui-section-card,
.s360-ui-dashboard-panel{
  background:var(--s360-ui-section-card-bg,var(--s360-color-surface-raised));
  border:1px solid var(--s360-ui-section-card-border-color,var(--s360-dashboard-panel-border-color,var(--s360-component-card-border-color)));
  border-radius:var(--s360-ui-section-card-radius,var(--s360-dashboard-panel-radius,var(--s360-component-card-radius)));
  box-shadow:var(--s360-ui-section-card-shadow,var(--s360-dashboard-panel-soft-shadow,var(--s360-component-card-shadow)));
}

.s360-ui-section-card{
  padding:var(--s360-ui-section-card-padding,var(--s360-component-card-padding));
}

/* Family 3: Stat / KPI card. */
.s360-ui-stat-card{
  display:flex;
  flex-direction:column;
  gap:var(--s360-card-stat-gap,6px);
  min-height:var(--s360-card-stat-min-height,98px);
  padding:var(--s360-card-stat-padding,18px);
  background:var(--s360-card-stat-bg,linear-gradient(180deg,var(--s360-color-surface-raised) 0%,var(--s360-color-bg-subtle) 100%));
  border:1px solid var(--s360-card-stat-border-color,var(--s360-color-border-muted));
  border-radius:var(--s360-card-stat-radius,var(--s360-radius-3xl));
  box-shadow:var(--s360-card-stat-shadow,var(--s360-shadow-xl));
}

.s360-ui-stat-card--warning{
  background:var(--s360-card-stat-warning-bg,linear-gradient(180deg,var(--s360-color-warning-surface) 0%,var(--s360-color-surface-raised) 100%));
  border-color:var(--s360-card-stat-warning-border,var(--s360-color-border-warning));
}

.s360-ui-stat-card--success{
  border-color:var(--s360-color-border-success);
}

.s360-ui-stat-card--danger{
  border-color:var(--s360-color-border-danger);
}

/* Family 4: Dashboard utility card. */
.s360-admin-dashboard__utility-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--s360-card-utility-gap,var(--s360-dashboard-compact-gap,var(--s360-space-sm)));
  width:100%;
  min-height:var(--s360-card-utility-min-height,58px);
  margin:0;
  padding:var(--s360-card-utility-padding-y,var(--s360-dashboard-top-card-padding-y,14px)) var(--s360-card-utility-padding-x,var(--s360-dashboard-top-card-padding-x,16px));
  background:var(--s360-card-utility-bg,linear-gradient(180deg,var(--s360-color-surface-raised) 0%,var(--s360-color-bg-subtle) 100%));
  border:1px solid var(--s360-card-utility-border-color,var(--s360-color-border-muted));
  border-radius:var(--s360-card-utility-radius,var(--s360-dashboard-panel-radius,var(--s360-radius-xl)));
  box-shadow:var(--s360-card-utility-shadow,var(--s360-shadow-sm));
  color:var(--s360-color-text-heading);
}

.s360-admin-dashboard__utility-card--notification{
  border-inline-start:3px solid var(--s360-card-utility-notification-accent,var(--s360-color-warning));
}

.s360-admin-dashboard__utility-card--school{
  border-inline-start:3px solid var(--s360-card-utility-school-accent,var(--s360-color-primary));
}

/* Family 5: Action / command / navigation card. */
.s360-ui-action-card,
.s360-admin-shortcut.s360-ui-dashboard-shortcut{
  display:flex;
  flex-direction:column;
  gap:var(--s360-card-action-gap,var(--s360-component-card-stack-gap));
  min-height:var(--s360-card-action-min-height,96px);
  padding:var(--s360-card-action-padding,var(--s360-component-card-padding-compact));
  background:var(--s360-card-action-bg,var(--s360-color-surface-raised));
  border:1px solid var(--s360-card-action-border-color,var(--s360-component-card-border-color));
  border-radius:var(--s360-card-action-radius,var(--s360-component-card-radius));
  box-shadow:var(--s360-card-action-shadow,var(--s360-shadow-sm));
  color:var(--s360-color-text-body);
  text-decoration:none;
  transition:border-color var(--s360-component-transition-fast,.15s ease), box-shadow var(--s360-component-transition-fast,.15s ease), transform var(--s360-component-transition-fast,.15s ease), background-color var(--s360-component-transition-fast,.15s ease);
}

.s360-ui-action-card__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--s360-space-sm);
}

.s360-ui-action-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:var(--s360-card-action-icon-size,36px);
  height:var(--s360-card-action-icon-size,36px);
  border-radius:var(--s360-radius-xl);
  background:var(--s360-card-action-icon-bg,var(--s360-color-primary-soft));
  color:var(--s360-card-action-icon-color,var(--s360-color-primary-chip));
  font-weight:var(--s360-font-weight-bold);
}

.s360-ui-action-card__title,
.s360-admin-shortcut.s360-ui-dashboard-shortcut :where(strong,.s360-admin-shortcut__title){
  margin:0;
  color:var(--s360-color-text-heading);
  font-size:var(--s360-card-action-title-size,14px);
  font-weight:var(--s360-font-weight-bold);
  line-height:1.35;
}

.s360-ui-action-card__description,
.s360-ui-action-card__meta,
.s360-admin-shortcut.s360-ui-dashboard-shortcut :where(p,small,em,.s360-admin-shortcut__meta){
  margin:0;
  color:var(--s360-color-text-tertiary);
  font-size:var(--s360-card-action-meta-size,12px);
  line-height:1.55;
}

.s360-ui-action-card__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--s360-component-toolbar-gap);
  margin-top:auto;
}


/* Phase 3B: command/action/navigation migration states. */
.s360-ui-action-card[data-s360-ui-action-card]{
  border-inline-start:4px solid var(--s360-card-action-accent,var(--s360-color-primary));
}

.s360-ui-action-card--success,
.s360-ui-action-card--ready,
.s360-ui-action-card--payment{
  --s360-card-action-accent:var(--s360-color-success);
  --s360-card-action-icon-bg:var(--s360-color-success-surface,var(--s360-color-bg-subtle));
  --s360-card-action-icon-color:var(--s360-color-success-strong,var(--s360-color-success));
}

.s360-ui-action-card--warning{
  --s360-card-action-accent:var(--s360-color-warning);
  --s360-card-action-icon-bg:var(--s360-color-warning-surface,var(--s360-color-bg-subtle));
  --s360-card-action-icon-color:var(--s360-color-warning-strong,var(--s360-color-warning));
}

.s360-ui-action-card--danger,
.s360-ui-action-card--blocked,
.s360-ui-action-card--audit{
  --s360-card-action-accent:var(--s360-color-danger);
  --s360-card-action-icon-bg:var(--s360-color-danger-surface,var(--s360-color-bg-subtle));
  --s360-card-action-icon-color:var(--s360-color-danger-strong,var(--s360-color-danger));
}

.s360-ui-action-card--info{
  --s360-card-action-accent:var(--s360-color-primary);
}

.s360-ui-action-card > :where(span,small,em):first-child{
  display:block;
  margin:0;
  color:var(--s360-color-text-tertiary);
  font-size:var(--s360-card-action-meta-size,12px);
  font-weight:var(--s360-font-weight-bold,700);
  letter-spacing:.04em;
  line-height:1.45;
  text-transform:uppercase;
}

.s360-ui-action-card > strong{
  display:block;
  margin:0;
  color:var(--s360-color-text-heading);
  font-size:var(--s360-card-action-value-size,22px);
  font-weight:var(--s360-font-weight-bold,700);
  line-height:1.2;
}

.s360-ui-action-card > :where(p,small,em):not(:first-child){
  margin:0;
  color:var(--s360-color-text-tertiary);
  font-size:var(--s360-card-action-meta-size,12px);
  line-height:1.55;
}

:where(a.s360-ui-card,a.s360-ui-section-card,a.s360-ui-stat-card,a.s360-ui-action-card,button.s360-ui-action-card,[role="button"].s360-ui-action-card):hover,
:where(.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-admin-shortcut.s360-ui-dashboard-shortcut):where(a,button,[role="button"]):hover{
  border-color:var(--s360-card-action-border-color-hover,var(--s360-color-primary-soft-border));
  box-shadow:var(--s360-card-action-shadow-hover,var(--s360-component-card-shadow-hover));
  transform:translateY(-1px);
  text-decoration:none;
}

:where(a.s360-ui-card,a.s360-ui-section-card,a.s360-ui-stat-card,a.s360-ui-action-card,button.s360-ui-action-card,[role="button"].s360-ui-action-card):focus-visible,
:where(.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-admin-shortcut.s360-ui-dashboard-shortcut):where(a,button,[role="button"]):focus-visible{
  outline:2px solid var(--s360-color-primary);
  outline-offset:2px;
  border-color:var(--s360-color-primary-soft-border);
  box-shadow:var(--s360-focus-ring), var(--s360-card-action-shadow-hover,var(--s360-component-card-shadow-hover));
  text-decoration:none;
}

.s360-family-compatibility-note{
  display:none;
}

@media (max-width: 782px){
  .s360-ui-card,
  .s360-ui-section-card{
    padding:var(--s360-card-mobile-padding,var(--s360-component-card-padding-compact));
  }

  .s360-ui-action-card,
  .s360-admin-shortcut.s360-ui-dashboard-shortcut{
    min-height:0;
    padding:var(--s360-card-action-mobile-padding,var(--s360-component-card-padding-tight));
  }

  .s360-admin-dashboard__utility-card{
    flex-direction:column;
    align-items:stretch;
    min-height:0;
  }
}

@media (prefers-reduced-motion: reduce){
  .s360-ui-card,
  .s360-ui-section-card,
  .s360-ui-stat-card,
  .s360-ui-action-card,
  .s360-admin-dashboard__utility-card,
  :where(.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-ui-action-card,.s360-admin-shortcut.s360-ui-dashboard-shortcut){
    transition:none;
  }

  :where(a.s360-ui-card,a.s360-ui-section-card,a.s360-ui-stat-card,a.s360-ui-action-card,button.s360-ui-action-card,[role="button"].s360-ui-action-card):hover,
  .s360-admin-shortcut.s360-ui-dashboard-shortcut:where(a,button,[role="button"]):hover{
    transform:none;
  }
}

/* Modern equivalents for former core/admin card modifiers. */
.s360-ui-section-card--full{
  width:100%;
}

.s360-ui-card--subtle{
  background:var(--s360-color-surface-muted,var(--s360-color-bg-subtle));
  border-color:var(--s360-color-border-muted);
  box-shadow:none;
}

/* --note canonical definition.
 * Secondary subtle variant: smaller padding/radius with surface background.
 * Use for inline note cards inside lists. */
.s360-ui-card--note{
  padding:var(--s360-space-sm,12px);
  border:1px solid var(--s360-color-border-subtle,#e5e7eb);
  border-radius:var(--s360-radius-xl,12px);
  background:var(--s360-color-surface,#fff);
  box-shadow:none;
  list-style:none;
}

/* ============================================================================
 * Universal state modifiers
 * Apply to any card family: card, section-card, stat-card, action-card.
 * ============================================================================ */

/* --primary: highlight as primary action / important item (4px top accent).
 * Use for primary/highlight card states. */
.s360-ui-card--primary,
.s360-ui-section-card--primary{
  border-top:4px solid var(--s360-color-primary);
}

/* --disabled: dashed border + reduced opacity. Card visible but inactive.
 * Use for items pending deletion, archived items, locked features. */
.s360-ui-card--disabled,
.s360-ui-section-card--disabled,
.s360-ui-stat-card--disabled,
.s360-ui-action-card--disabled{
  border-style:dashed;
  opacity:.92;
}

/* --readonly: muted opacity. Card content visible but cannot be interacted with.
 * Use for view-only fields, system-managed values, archived previews. */
.s360-ui-card--readonly,
.s360-ui-section-card--readonly,
.s360-ui-stat-card--readonly,
.s360-ui-action-card--readonly{
  opacity:.78;
}

/* ============================================================================
 * Status modifier extensions
 * Extend status modifiers to non-stat-card families for status-encoded borders.
 * ============================================================================ */

/* --warning border (applies to all families, mirrors stat-card--warning) */
.s360-ui-card--warning,
.s360-ui-section-card--warning{
  border-color:var(--s360-color-border-warning,var(--s360-color-border-muted));
}

.s360-ui-stat-card__value{
  margin:0;
  color:var(--s360-color-text-heading);
  font-size:var(--s360-card-stat-value-size,30px);
  line-height:1;
  font-weight:var(--s360-font-weight-bold,700);
}

.s360-ui-stat-card__value--success{
  color:var(--s360-color-success-strong,var(--s360-color-success));
}

.s360-ui-stat-card__value--warning{
  color:var(--s360-color-warning-strong,var(--s360-color-warning));
}



/* Module-owned card rules live in their admin/portal CSS bundles.
 * Core keeps only neutral card family contracts and universal modifiers. */

/* Admissions card data-attribute support. */
.s360-ui-section-card[data-s360-admissions-card],
.s360-ui-card[data-s360-admissions-card]{
  box-sizing:border-box;
  min-width:0;
}

/* Portal/frontend runtime using data-s360-portal-card attributes. */
.s360-ui-card[data-s360-portal-card="login"]{
  max-width:460px;
  margin:auto;
}

.s360-ui-card[data-s360-portal-card="login"].s360-ui-form{
  gap:var(--s360-space-md, 16px);
}

.s360-portal-login-shell .s360-ui-card[data-s360-portal-card="login"]{
  padding:clamp(20px,4vw,32px);
  border-radius:var(--s360-component-card-radius);
  border:1px solid var(--s360-component-card-border-color);
  box-shadow:var(--s360-shadow-card,0 10px 28px rgba(15,23,42,.08));
}

.s360-ui-card[data-s360-portal-card="login"] .s360-ui-form-actions{
  padding-top:var(--s360-space-2xs, 4px);
}

.s360-ui-card[data-s360-portal-card="summary"],
.s360-ui-card[data-s360-portal-card="school-summary"],
.s360-ui-card[data-s360-portal-card="compact"]{
  min-width:0;
}

.s360-ui-card[data-s360-portal-card="compact"]{
  padding:var(--s360-card-core-padding-compact,var(--s360-component-card-padding-compact,14px));
}

.s360-ui-section-card[data-s360-portal-card="hero"]{
  padding:var(--s360-portal-phase5-card-padding,var(--s360-component-card-padding));
  border-radius:var(--s360-portal-phase5-radius,var(--s360-component-card-radius));
  background:
    radial-gradient(circle at 92% 8%, color-mix(in srgb,var(--s360-color-primary,#2271b1) 12%, transparent), transparent 18rem),
    linear-gradient(135deg,var(--s360-color-surface-raised,#fff),var(--s360-color-bg-soft,#f8fbff));
}

.s360-ui-section-card[data-s360-portal-card="toolbar"]{
  padding:var(--s360-component-card-padding);
}

.s360-frontend-portal-phase5 .s360-ui-section-card[data-s360-portal-card="hero"] .s360-cluster-between,
.s360-frontend-portal-phase5 .s360-ui-section-card[data-s360-portal-card="toolbar"] > .s360-cluster-between,
.s360-frontend-portal-phase5 #portal-payment-center > .s360-cluster-between,
.s360-frontend-portal-phase5 [id$="-documents"] > .s360-cluster-between,
.s360-frontend-portal-phase5 [id$="-document-requirements"] > .s360-cluster-between{
  align-items:flex-start;
  gap:var(--s360-portal-phase5-gap,var(--s360-space-md));
}

.s360-frontend-portal-phase5 .s360-ui-section-card[data-s360-portal-card="hero"] h2{
  overflow-wrap:anywhere;
}

.s360-ui-stat-card--portal{
  min-width:0;
  min-height:108px;
  color:var(--s360-color-text-heading);
  font-weight:700;
}

.s360-ui-section-card--calendar-portal{
  padding:var(--s360-component-card-padding);
}

/* Calendar event pill component rules live in assets/css/ui-system.css. */

/* Strict modern helper aliases after legacy card CSS cleanup. */
.s360-ui-grid{display:grid;gap:var(--s360-layout-grid-gap,var(--s360-space-md));grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));}
.s360-ui-grid--summary{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));}
.s360-ui-grid--wide{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));}
.s360-ui-grid--calendar{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));}
.s360-ui-card--compact{padding:var(--s360-component-card-padding-tight) var(--s360-component-card-padding-compact);}
.s360-ui-card__title-reset{margin:0;color:var(--s360-color-text-heading);}
.s360-ui-stat-card__label{margin:0;color:var(--s360-color-text-label,var(--s360-color-text-tertiary));font-size:var(--s360-font-size-sm);font-weight:var(--s360-font-weight-semibold);}
.s360-ui-stat-card__meta{margin:0;color:var(--s360-color-text-tertiary);font-size:var(--s360-font-size-xs);line-height:1.45;}
.s360-ui-stat-card__value--danger{color:var(--s360-color-danger-strong,var(--s360-color-danger));}
.s360-ui-section-card--settings-panel,
.s360-ui-section-card--toolbar{padding:var(--s360-ui-section-card-padding,var(--s360-component-card-padding));}

/* UI Phase 4B: canonical admin shell and neutral wrapper background.
 * All normal admin pages now include .s360-admin-wrapper. Keep the wrapper as
 * a structural shell only; module identity/background belongs inside cards,
 * headers, badges and controls, not on the page shell.
 */
body.wp-admin .wrap.s360-admin-wrapper {
    max-width: var(--s360-layout-admin-page-max, none);
    background: transparent ;
    background-image: none ;
}

body.wp-admin .wrap.s360-admin-wrapper:where(
    .s360-academic-phase-k,
    .school360-students-phase-k,
    .s360-calendar-phase-k,
    .s360-communication-phase-l,
    .s360-content-assets-phase-l,
    .s360-admissions-phase-g,
    .s360-custom-fields-phase-g,
    .s360-finance-phase-h,
    .s360-treasury-phase-h,
    .s360-expense-phase-h,
    .s360-billing-phase-h,
    .s360-accounting-phase-h,
    .s360-reports-phase-f,
    .s360-analytics-phase-f,
    .s360-reports-v2-phase-f,
    .s360-hr-phase-i,
    .s360-settings-phase-e,
    .s360-schools-phase-m,
    .s360-data-center-phase-m,
    .s360-compliance-phase-m,
    .s360-external-ecosystem-phase-m,
    .s360-teacher-workbench-phase-m,
    .s360-teacher-workbench-phase-n,
    .s360-own-access-phase-m,
    .school360-dashboard-phase-d,
    .school360-dashboard-phase-5
) {
    background: transparent ;
    background-image: none ;
    box-shadow: none ;
}


/* UI Phase 5A: admin forms, controls, buttons and tables compatibility layer.
 * Normal admin pages already share .s360-admin-wrapper. This layer gives
 * legacy WordPress/raw controls the same School 360 visual language without
 * changing form actions, names, nonces, routes, validation or JS hooks.
 */
body.wp-admin .s360-admin-wrapper :where(form):not(.s360-ui-form):not(.s360-ui-inline-form){
    max-width:100%;
}
body.wp-admin .s360-admin-wrapper :where(.form-table, table.form-table){
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    margin:0 0 var(--s360-space-md,16px);
}
body.wp-admin .s360-admin-wrapper :where(.form-table th){
    color:var(--s360-color-text-label,var(--s360-color-text-secondary));
    font-size:13px;
    font-weight:700;
    line-height:1.45;
    padding:14px 16px 14px 0;
    vertical-align:top;
}
body.wp-admin .s360-admin-wrapper :where(.form-table td){
    padding:12px 0;
    vertical-align:top;
}
body.wp-admin .s360-admin-wrapper :where(.form-table .description, .description){
    color:var(--s360-color-text-tertiary,#64748b);
    font-size:12px;
    line-height:1.5;
    margin-top:6px;
}
body.wp-admin .s360-admin-wrapper :where(input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="url"],input[type="tel"],select,textarea):not(.s360-ui-input):not(.s360-ui-select):not(.s360-ui-textarea):not(.s360-ui-control):not(.wp-color-picker):not(.wp-picker-clear):not(.button){
    max-width:100%;
    min-height:var(--s360-control-height-md,38px);
    border:var(--s360-control-border-width,1px) solid var(--s360-color-input-border,var(--s360-color-border,#cbd5e1));
    border-radius:var(--s360-control-radius,10px);
    background:var(--s360-color-input-bg,var(--s360-color-surface-raised,#fff));
    color:var(--s360-color-input-text,var(--s360-color-text-body,#1e293b));
    box-shadow:var(--s360-shadow-input,0 1px 2px rgba(15,23,42,.04));
    font-size:14px;
    line-height:1.45;
    padding:var(--s360-control-padding-y,8px) var(--s360-control-padding-x,12px);
    transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease,color .15s ease;
}
body.wp-admin .s360-admin-wrapper :where(select):not(.s360-ui-select):not(.s360-ui-control){
    padding-right:34px;
}
body.wp-admin .s360-admin-wrapper :where(textarea):not(.s360-ui-textarea):not(.s360-ui-control){
    min-height:108px;
    resize:vertical;
}
body.wp-admin .s360-admin-wrapper :where(input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="url"],input[type="tel"],select,textarea):not(.s360-ui-input):not(.s360-ui-select):not(.s360-ui-textarea):not(.s360-ui-control):not(.wp-color-picker):not(.button):hover{
    border-color:var(--s360-color-input-border-hover,var(--s360-color-border-strong,#94a3b8));
}
body.wp-admin .s360-admin-wrapper :where(input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="url"],input[type="tel"],select,textarea):not(.s360-ui-input):not(.s360-ui-select):not(.s360-ui-textarea):not(.s360-ui-control):not(.wp-color-picker):not(.button):focus,
body.wp-admin .s360-admin-wrapper :where(input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="url"],input[type="tel"],select,textarea):not(.s360-ui-input):not(.s360-ui-select):not(.s360-ui-textarea):not(.s360-ui-control):not(.wp-color-picker):not(.button):focus-visible{
    outline:none;
    border-color:var(--s360-color-input-border-focus,var(--s360-color-primary,#2271b1));
    box-shadow:var(--s360-shadow-input-focus,0 0 0 3px rgba(34,113,177,.16));
}
body.wp-admin .s360-admin-wrapper :where(input[type="checkbox"],input[type="radio"]):not(.s360-ui-control){
    accent-color:var(--s360-color-primary-strong,var(--s360-color-primary,#2271b1));
}
body.wp-admin .s360-admin-wrapper :where(.button,button.button,a.button,input[type="submit"].button):not(.nav-tab):not(.s360-ui-button){
    align-items:center;
    border-radius:var(--s360-radius-lg,10px);
    display:inline-flex;
    font-weight:700;
    justify-content:center;
    min-height:var(--s360-control-height-md,38px);
    padding:7px 14px;
    transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease;
}
body.wp-admin .s360-admin-wrapper :where(.button,button.button,a.button,input[type="submit"].button):not(.nav-tab):not(.s360-ui-button):hover{
    transform:translateY(-1px);
    box-shadow:var(--s360-component-button-shadow-hover,0 8px 18px rgba(15,23,42,.10));
}
body.wp-admin .s360-admin-wrapper :where(.button-primary):not(.s360-ui-button){
    background:var(--s360-color-primary-strong,var(--s360-color-primary,#2271b1));
    border-color:var(--s360-color-primary-strong,var(--s360-color-primary,#2271b1));
    color:var(--s360-color-surface-raised,#fff);
}
body.wp-admin .s360-admin-wrapper :where(.button-secondary):not(.s360-ui-button),
body.wp-admin .s360-admin-wrapper :where(.button):not(.button-primary):not(.button-link):not(.nav-tab):not(.s360-ui-button){
    background:var(--s360-color-surface-raised,#fff);
    border-color:var(--s360-color-border-strong,#cbd5e1);
    color:var(--s360-color-text-heading,#0f172a);
}
body.wp-admin .s360-admin-wrapper :where(table.widefat,table.wp-list-table,table.striped):not(.s360-ui-table){
    width:100%;
    border:var(--s360-table-border-width,1px) solid var(--s360-color-border-muted,#e2e8f0);
    border-collapse:separate;
    border-radius:var(--s360-table-radius,14px);
    border-spacing:0;
    overflow:hidden;
    background:var(--s360-color-surface-raised,#fff);
    box-shadow:var(--s360-table-shadow,0 12px 28px rgba(15,23,42,.06));
}
body.wp-admin .s360-admin-wrapper :where(table.widefat,table.wp-list-table,table.striped):not(.s360-ui-table) :where(th,td){
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
    color:var(--s360-color-text-body,#334155);
    padding:12px 14px;
    vertical-align:middle;
}
body.wp-admin .s360-admin-wrapper :where(table.widefat,table.wp-list-table,table.striped):not(.s360-ui-table) :where(th){
    background:var(--s360-table-head-bg,var(--s360-color-bg-subtle,#f8fafc));
    color:var(--s360-color-text-label,#475569);
    font-size:12px;
    font-weight:800;
    letter-spacing:.02em;
}
body.wp-admin .s360-admin-wrapper :where(table.widefat,table.wp-list-table,table.striped):not(.s360-ui-table) tbody tr:hover td{
    background:var(--s360-table-row-hover-bg,var(--s360-color-bg-subtle,#f8fafc));
}
body.wp-admin .s360-admin-wrapper :where(table.widefat,table.wp-list-table,table.striped):not(.s360-ui-table) tr:last-child :where(th,td){
    border-bottom:0;
}
@media (max-width:782px){
    body.wp-admin .s360-admin-wrapper :where(.form-table,.form-table tbody,.form-table tr,.form-table th,.form-table td){
        display:block;
        width:100%;
    }
    body.wp-admin .s360-admin-wrapper :where(.form-table th,.form-table td){
        padding:8px 0;
    }
    body.wp-admin .s360-admin-wrapper :where(.button,button.button,a.button,input[type="submit"].button):not(.nav-tab):not(.s360-ui-button){
        width:100%;
    }
}

/* UI Phase 5B: admin notices, badges, status chips and action rows compatibility layer.
 * This is scoped to the shared admin wrapper introduced in Phase 4. It aligns
 * legacy WordPress notices and module-specific status UI with the shared School
 * 360 visual language without changing markup, routes, actions, nonces or JS.
 */
body.wp-admin .s360-admin-wrapper :where(.notice,.updated,.error):not(.s360-ui-notice):not(.s360-unstyled-notice){
    border:var(--s360-component-notice-border-width,1px) solid var(--s360-color-border-muted,#e2e8f0);
    border-left:4px solid var(--s360-color-primary,#2271b1);
    border-radius:var(--s360-component-notice-radius,var(--s360-radius-xl,14px));
    background:var(--s360-color-surface-raised,#fff);
    box-shadow:var(--s360-shadow-soft,0 10px 24px rgba(15,23,42,.06));
    color:var(--s360-color-text-body,#334155);
    margin:var(--s360-space-md,16px) 0;
    padding:var(--s360-component-alert-padding-y,12px) var(--s360-component-alert-padding-x,14px);
}
body.wp-admin .s360-admin-wrapper :where(.notice,.updated,.error):not(.s360-ui-notice):not(.s360-unstyled-notice) :where(p){
    margin:.35em 0;
}
body.wp-admin .s360-admin-wrapper :where(.notice.notice-success,.updated):not(.s360-ui-notice):not(.s360-unstyled-notice){
    border-left-color:var(--s360-color-success,#16a34a);
    background:var(--s360-color-surface-success-soft,#f0fdf4);
}
body.wp-admin .s360-admin-wrapper :where(.notice.notice-warning):not(.s360-ui-notice):not(.s360-unstyled-notice){
    border-left-color:var(--s360-color-warning,#d97706);
    background:var(--s360-color-surface-warning-soft,#fffbeb);
}
body.wp-admin .s360-admin-wrapper :where(.notice.notice-error,.error):not(.s360-ui-notice):not(.s360-unstyled-notice){
    border-left-color:var(--s360-color-danger,#dc2626);
    background:var(--s360-color-danger-tint,#fef2f2);
}
body.wp-admin .s360-admin-wrapper :where(.notice.notice-info):not(.s360-ui-notice):not(.s360-unstyled-notice){
    border-left-color:var(--s360-color-info,#2563eb);
    background:var(--s360-color-info-surface,#eff6ff);
}
body.wp-admin .s360-admin-wrapper :where(.notice.is-dismissible):not(.s360-ui-notice):not(.s360-unstyled-notice){
    padding-right:42px;
}
body.wp-admin .s360-admin-wrapper :where(.s360-alert,.s360-status-callout,.s360-timetable-conflict-notice,.s360-admissions-notice-warning,.s360-expense-final-polish):not(.s360-ui-notice){
    border:var(--s360-component-notice-border-width,1px) solid var(--s360-color-border-muted,#e2e8f0);
    border-left:4px solid var(--s360-color-primary,#2271b1);
    border-radius:var(--s360-component-notice-radius,var(--s360-radius-xl,14px));
    background:var(--s360-color-surface-raised,#fff);
    box-shadow:var(--s360-shadow-soft,0 10px 24px rgba(15,23,42,.06));
    color:var(--s360-color-text-body,#334155);
    padding:var(--s360-component-alert-padding-y,12px) var(--s360-component-alert-padding-x,14px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-alert--success,.s360-status-callout.is-success,.s360-expense-final-polish.is-success){
    border-left-color:var(--s360-color-success,#16a34a);
    background:var(--s360-color-surface-success-soft,#f0fdf4);
}
body.wp-admin .s360-admin-wrapper :where(.s360-alert--warning,.s360-status-callout.is-warning,.s360-timetable-conflict-notice,.s360-admissions-notice-warning,.s360-expense-final-polish.is-warning){
    border-left-color:var(--s360-color-warning,#d97706);
    background:var(--s360-color-surface-warning-soft,#fffbeb);
}
body.wp-admin .s360-admin-wrapper :where(.s360-alert--danger,.s360-alert--error,.s360-status-callout.is-danger,.s360-status-callout.is-error){
    border-left-color:var(--s360-color-danger,#dc2626);
    background:var(--s360-color-danger-tint,#fef2f2);
}
body.wp-admin .s360-admin-wrapper :where(.s360-badge,.s360-badge-info,.s360-badge-success,.s360-badge-warning,.s360-badge-danger,.s360-badge-neutral,.s360-status-badge,.s360-status-pill,.s360-expense-status-pill,.s360-admissions-status-chip,.s360-hr-status-pill,.s360-report-chip,.s360-system-badge,.s360-qa-status,.s360-hr-portal-badge,.s360-hr-role-badge):not(.s360-ui-badge){
    align-items:center;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:var(--s360-component-pill-radius,999px);
    display:inline-flex;
    font-size:var(--s360-component-badge-font-size,12px);
    font-weight:700;
    gap:var(--s360-module-badge-gap,6px);
    line-height:1.2;
    min-height:var(--s360-component-badge-min-height,24px);
    padding:var(--s360-component-badge-padding-y,5px) var(--s360-component-badge-padding-x,10px);
    text-decoration:none;
    vertical-align:middle;
    white-space:nowrap;
    background:var(--s360-color-neutral-bg,#f8fafc);
    color:var(--s360-color-text-secondary,#475569);
}
body.wp-admin .s360-admin-wrapper :where(.s360-badge-success,.s360-badge--success,.s360-status-positive,.s360-status-paid,.s360-status-completed,.s360-status-approved,.s360-status-active,.s360-status-badge.is-published,.s360-qa-status-ok,.s360-hr-status-pill--success,.s360-hr-portal-badge-active,.s360-hr-portal-badge-approved,.s360-hr-portal-badge-completed){
    border-color:var(--s360-color-success-border,var(--s360-color-success,#16a34a));
    background:var(--s360-color-surface-success-soft,#f0fdf4);
    color:var(--s360-color-success-deep,#166534);
}
body.wp-admin .s360-admin-wrapper :where(.s360-badge-warning,.s360-badge--warning,.s360-status-pending,.s360-status-unpaid,.s360-status-partial,.s360-status-due_soon,.s360-status-due-soon,.s360-status-open,.s360-status-badge.is-draft,.s360-qa-status-warning,.s360-hr-status-pill--warning,.s360-expense-status-pill.is-warning){
    border-color:var(--s360-color-warning-border,var(--s360-color-warning,#d97706));
    background:var(--s360-color-surface-warning-soft,#fffbeb);
    color:var(--s360-color-warning-deep,#92400e);
}
body.wp-admin .s360-admin-wrapper :where(.s360-badge-danger,.s360-badge--danger,.s360-status-negative,.s360-status-overdue,.s360-status-rejected,.s360-status-badge.is-archived,.s360-hr-status-pill--danger){
    border-color:var(--s360-color-danger-border,var(--s360-color-danger,#dc2626));
    background:var(--s360-color-danger-tint,#fef2f2);
    color:var(--s360-color-danger-strong,#991b1b);
}
body.wp-admin .s360-admin-wrapper :where(.s360-badge-info,.s360-badge--info,.s360-status-returned,.s360-status-processing,.s360-status-pending_verification,.s360-hr-status-pill--neutral){
    border-color:var(--s360-color-info-border,var(--s360-color-info,#2563eb));
    background:var(--s360-color-info-surface,#eff6ff);
    color:var(--s360-color-info-chip,#1d4ed8);
}
body.wp-admin .s360-admin-wrapper :where(.s360-toolbar,.s360-actions,.s360-card-actions,.s360-page-actions,.s360-ui-page-actions,.s360-expense-status-actions,.s360-hr-actions,.s360-admissions-actions,.s360-finance-actions,.s360-report-actions,.s360-admin-actions):not(.s360-ui-toolbar){
    align-items:center;
    display:flex;
    flex-wrap:wrap;
    gap:var(--s360-component-toolbar-gap,8px);
    justify-content:flex-start;
}
body.wp-admin .s360-admin-wrapper :where(.s360-toolbar.is-end,.s360-actions.is-end,.s360-card-actions.is-end,.s360-page-actions.is-end,.s360-admin-actions.is-end){
    justify-content:flex-end;
}
body.wp-admin .s360-admin-wrapper :where(.tablenav):not(.s360-ui-toolbar){
    align-items:center;
    display:flex;
    flex-wrap:wrap;
    gap:var(--s360-component-toolbar-gap,8px);
    justify-content:space-between;
    min-height:44px;
}
body.wp-admin .s360-admin-wrapper :where(.tablenav .actions,.tablenav-pages){
    align-items:center;
    display:flex;
    flex-wrap:wrap;
    gap:var(--s360-component-toolbar-gap,8px);
}
@media (max-width:782px){
    body.wp-admin .s360-admin-wrapper :where(.s360-toolbar,.s360-actions,.s360-card-actions,.s360-page-actions,.s360-ui-page-actions,.s360-expense-status-actions,.s360-hr-actions,.s360-admissions-actions,.s360-finance-actions,.s360-report-actions,.s360-admin-actions,.tablenav):not(.s360-ui-toolbar){
        align-items:stretch;
        flex-direction:column;
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-badge,.s360-badge-info,.s360-badge-success,.s360-badge-warning,.s360-badge-danger,.s360-badge-neutral,.s360-status-badge,.s360-status-pill,.s360-expense-status-pill,.s360-admissions-status-chip,.s360-hr-status-pill,.s360-report-chip,.s360-system-badge,.s360-qa-status,.s360-hr-portal-badge,.s360-hr-role-badge):not(.s360-ui-badge){
        white-space:normal;
    }
}

/* UI Phase 5C: admin modals, dropdowns, filters, empty states and loading states compatibility layer.
 * Scoped to the shared admin wrapper introduced in Phase 4. This aligns existing
 * utility and module-specific UI surfaces without changing PHP markup, routes,
 * nonces, actions, permission checks, AJAX/REST handlers or JavaScript behavior.
 */
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal,.s360-modal,.school360-modal,.s360-builder-modal,.s360-expense-receipt-modal):not(.s360-unstyled-modal){
    color:var(--s360-color-text-body,#334155);
    font-family:inherit;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__dialog,.s360-modal__dialog,.school360-modal__dialog,.s360-builder-modal__dialog,.s360-expense-receipt-modal):not(.s360-unstyled-modal){
    background:var(--s360-color-surface-raised,#fff);
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:var(--s360-component-modal-radius,var(--s360-radius-2xl,18px));
    box-shadow:var(--s360-shadow-modal,0 24px 64px rgba(15,23,42,.22));
    overflow:hidden;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__header,.s360-modal__header,.school360-modal__header,.s360-builder-modal__header,.s360-expense-receipt-modal-head):not(.s360-unstyled-modal){
    align-items:center;
    background:var(--s360-color-surface-subtle,#f8fafc);
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
    display:flex;
    gap:var(--s360-space-sm,10px);
    justify-content:space-between;
    padding:var(--s360-component-modal-header-padding-y,16px) var(--s360-component-modal-header-padding-x,20px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__title,.s360-modal__title,.school360-modal__title,.s360-builder-modal__header h2,.s360-expense-receipt-modal-head h2):not(.s360-unstyled-modal *){
    color:var(--s360-color-text-heading,#0f172a);
    font-size:var(--s360-component-modal-title-size,18px);
    font-weight:800;
    line-height:1.25;
    margin:0;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__body,.s360-modal__body,.school360-modal__body,.s360-builder-modal__body):not(.s360-unstyled-modal){
    padding:var(--s360-component-modal-body-padding,var(--s360-space-xl,24px));
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__footer,.s360-modal__footer,.school360-modal__footer,.s360-builder-modal__footer):not(.s360-unstyled-modal){
    align-items:center;
    background:var(--s360-color-surface-subtle,#f8fafc);
    border-top:1px solid var(--s360-color-border-muted,#e2e8f0);
    display:flex;
    flex-wrap:wrap;
    gap:var(--s360-space-sm,10px);
    justify-content:flex-end;
    padding:var(--s360-component-modal-footer-padding-y,14px) var(--s360-component-modal-footer-padding-x,20px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__close,.s360-modal-close,.school360-modal-close):not(.s360-unstyled-modal *){
    align-items:center;
    background:transparent;
    border:0;
    border-radius:var(--s360-radius-md,8px);
    color:var(--s360-color-text-muted,#64748b);
    cursor:pointer;
    display:inline-flex;
    justify-content:center;
    min-height:32px;
    min-width:32px;
    padding:4px;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__close,.s360-modal-close,.school360-modal-close):hover:not(.s360-unstyled-modal *){
    background:var(--s360-color-surface-hover,#f1f5f9);
    color:var(--s360-color-text-heading,#0f172a);
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal-backdrop,.s360-builder-modal__backdrop,.s360-modal-backdrop,.school360-modal-backdrop):not(.s360-unstyled-modal){
    background:var(--s360-modal-backdrop-bg,rgba(15,23,42,.48));
    backdrop-filter:blur(2px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-dropdown,.s360-ui-dropdown,.school360-dropdown):not(.s360-unstyled-dropdown){
    position:relative;
}
body.wp-admin .s360-admin-wrapper :where(.s360-dropdown-trigger,.s360-ui-dropdown__trigger,.school360-dropdown-trigger):not(.s360-unstyled-dropdown *){
    align-items:center;
    display:inline-flex;
    gap:var(--s360-space-xs,6px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-dropdown-menu,.s360-ui-dropdown__menu,.school360-dropdown-menu):not(.s360-unstyled-dropdown *){
    background:var(--s360-color-surface-raised,#fff);
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:var(--s360-dropdown-radius,var(--s360-radius-xl,14px));
    box-shadow:var(--s360-shadow-dropdown,0 18px 44px rgba(15,23,42,.16));
    min-width:var(--s360-dropdown-min-width,180px);
    overflow:hidden;
    padding:var(--s360-space-xs,6px);
    z-index:var(--s360-z-dropdown,1000);
}
body.wp-admin .s360-admin-wrapper :where(.s360-dropdown-item,.s360-ui-dropdown__item,.school360-dropdown-item):not(.s360-unstyled-dropdown *){
    align-items:center;
    border-radius:var(--s360-radius-md,8px);
    color:var(--s360-color-text-body,#334155);
    display:flex;
    gap:var(--s360-space-xs,6px);
    line-height:1.35;
    padding:var(--s360-dropdown-item-padding-y,8px) var(--s360-dropdown-item-padding-x,10px);
    text-decoration:none;
    width:100%;
}
body.wp-admin .s360-admin-wrapper :where(.s360-dropdown-item,.s360-ui-dropdown__item,.school360-dropdown-item):hover:not(.s360-unstyled-dropdown *),
body.wp-admin .s360-admin-wrapper :where(.s360-dropdown-item.is-active,.s360-ui-dropdown__item--active,.school360-dropdown-item.is-active):not(.s360-unstyled-dropdown *){
    background:var(--s360-color-surface-hover,#f1f5f9);
    color:var(--s360-color-primary,#2271b1);
}
body.wp-admin .s360-admin-wrapper :where(.s360-dropdown-item.is-danger,.s360-ui-dropdown__item--danger,.school360-dropdown-item.is-danger):not(.s360-unstyled-dropdown *){
    color:var(--s360-color-danger-strong,#991b1b);
}
body.wp-admin .s360-admin-wrapper :where(.s360-filter-panel,.s360-ui-filter-shell,.s360-report-filter-panel,.s360-analytics-filter-panel,.s360-calendar-filter-section,.s360-finance-ledger-filters,.s360-hr-directory-filters,.s360-admissions-inbox-filters,.s360-gd-filters-grid,.s360-phase4-filterbar):not(.s360-unstyled-filter){
    background:var(--s360-color-surface-raised,#fff);
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:var(--s360-component-card-radius,var(--s360-radius-2xl,18px));
    box-shadow:var(--s360-shadow-soft,0 10px 24px rgba(15,23,42,.06));
    color:var(--s360-color-text-body,#334155);
    padding:var(--s360-component-filter-padding,var(--s360-space-lg,20px));
}
body.wp-admin .s360-admin-wrapper :where(.s360-filter-bar,.s360-calendar-filterbar,.s360-expense-filter-bar,.s360-expense-quick-filters,.s360-hr-filter-chips,.s360-fee-filter-pills,.s360-report-chip-row):not(.s360-unstyled-filter){
    align-items:center;
    display:flex;
    flex-wrap:wrap;
    gap:var(--s360-component-toolbar-gap,8px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-filter-grid,.s360-filter-grid-5,.s360-report-filter-grid,.s360-analytics-filter-grid,.s360-finance-ledger-filter-grid):not(.s360-unstyled-filter){
    display:grid;
    gap:var(--s360-component-filter-grid-gap,var(--s360-space-md,16px));
    grid-template-columns:repeat(auto-fit,minmax(var(--s360-component-filter-min-width,180px),1fr));
}
body.wp-admin .s360-admin-wrapper :where(.s360-filter-actions,.s360-report-filter-actions,.s360-analytics-filter-actions,.s360-finance-ledger-filter-actions,.s360-hr-filter-actions):not(.s360-unstyled-filter){
    align-items:flex-end;
    display:flex;
    flex-wrap:wrap;
    gap:var(--s360-component-toolbar-gap,8px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-empty-state,.s360-ui-empty-state,.s360-calendar-empty-state,.s360-report-empty-state,.s360-hr-empty-state,.s360-hr-portal-empty,.s360-builder-empty-state,.s360-builder-section-empty,.s360-layout-lane__empty,.s360-profile-table__empty,.s360-u-empty-center-lg,.s360-analytics-chart-empty):not(.s360-unstyled-empty){
    align-items:center;
    background:var(--s360-color-surface-subtle,#f8fafc);
    border:1px dashed var(--s360-color-border-muted,#e2e8f0);
    border-radius:var(--s360-component-empty-state-radius,var(--s360-radius-2xl,18px));
    color:var(--s360-color-text-secondary,#475569);
    display:flex;
    flex-direction:column;
    gap:var(--s360-space-sm,10px);
    justify-content:center;
    min-height:var(--s360-component-empty-state-min-height,120px);
    padding:var(--s360-component-empty-state-padding,var(--s360-space-xl,24px));
    text-align:center;
}
body.wp-admin .s360-admin-wrapper :where(.s360-empty-state h2,.s360-empty-state h3,.s360-empty-state h4,.s360-ui-empty-state__title,.s360-hr-empty-state h3,.s360-builder-empty-state h3,.s360-report-empty-state h3):not(.s360-unstyled-empty *){
    color:var(--s360-color-text-heading,#0f172a);
    margin:0;
}
body.wp-admin .s360-admin-wrapper :where(.s360-empty-state p,.s360-ui-empty-state__message,.s360-ui-empty-state__hint,.s360-hr-empty-state p,.s360-builder-empty-state p,.s360-report-empty-state p):not(.s360-unstyled-empty *){
    color:var(--s360-color-text-secondary,#475569);
    margin:0;
    max-width:60ch;
}
body.wp-admin .s360-admin-wrapper :where(.s360-loading,.s360-loading-state,.s360-skeleton,.s360-ui-skeleton,.s360-skeleton-line):not(.s360-unstyled-loading){
    background:linear-gradient(90deg,var(--s360-skeleton-bg,#f1f5f9),var(--s360-color-surface-raised,#fff),var(--s360-skeleton-bg,#f1f5f9));
    background-size:200% 100%;
    border-radius:var(--s360-skeleton-radius,var(--s360-radius-lg,12px));
    min-height:var(--s360-skeleton-min-height,16px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-loading-state):not(.s360-unstyled-loading){
    align-items:center;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    display:flex;
    gap:var(--s360-space-sm,10px);
    justify-content:center;
    padding:var(--s360-space-lg,20px);
}
@media (prefers-reduced-motion:no-preference){
    body.wp-admin .s360-admin-wrapper :where(.s360-loading,.s360-loading-state,.s360-skeleton,.s360-ui-skeleton,.s360-skeleton-line):not(.s360-unstyled-loading){
        animation:s360-admin-skeleton-pulse var(--s360-skeleton-animation-duration,1.4s) ease-in-out infinite;
    }
}
@keyframes s360-admin-skeleton-pulse{
    0%{background-position:200% 0;}
    100%{background-position:-200% 0;}
}
@media (max-width:782px){
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__footer,.s360-modal__footer,.school360-modal__footer,.s360-builder-modal__footer):not(.s360-unstyled-modal){
        align-items:stretch;
        flex-direction:column-reverse;
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-filter-panel,.s360-ui-filter-shell,.s360-report-filter-panel,.s360-analytics-filter-panel,.s360-calendar-filter-section,.s360-finance-ledger-filters,.s360-hr-directory-filters,.s360-admissions-inbox-filters,.s360-gd-filters-grid,.s360-phase4-filterbar):not(.s360-unstyled-filter){
        padding:var(--s360-space-md,16px);
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-filter-actions,.s360-report-filter-actions,.s360-analytics-filter-actions,.s360-finance-ledger-filter-actions,.s360-hr-filter-actions):not(.s360-unstyled-filter){
        align-items:stretch;
        flex-direction:column;
    }
}

/* UI Phase 5D: responsive, mobile and horizontal-overflow compatibility layer.
 * Scoped to the shared admin wrapper introduced in Phase 4. This pass keeps markup,
 * routing, permissions, nonces, AJAX/REST handlers and JavaScript behavior unchanged.
 */
body.wp-admin .s360-admin-wrapper,
body.wp-admin .s360-admin-wrapper * ,
body.wp-admin .s360-admin-wrapper *::before,
body.wp-admin .s360-admin-wrapper *::after{
    box-sizing:border-box;
}
body.wp-admin .s360-admin-wrapper{
    max-width:100%;
    min-width:0;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-page-header,.s360-ui-card,.s360-ui-section-card,.s360-card,.s360-panel,.s360-surface,.postbox,.s360-admin-shell,.s360-admin-content,.s360-layout,.s360-main,.s360-content):not(.s360-allow-overflow){
    max-width:100%;
    min-width:0;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-grid,.s360-grid,.s360-dashboard-grid,.s360-stat-grid,.s360-kpi-grid,.s360-card-grid,.s360-section-grid,.s360-settings-grid,.s360-hr-grid,.s360-finance-grid,.s360-expense-grid,.s360-report-grid,.s360-admissions-grid):not(.s360-allow-overflow){
    max-width:100%;
    min-width:0;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-tabs,.nav-tab-wrapper,.s360-ui-tabs__nav,.s360-tabs,.school360-tabs,.s360-report-tabs,.s360-academic-tabs,.s360-hr-nav):not(.s360-allow-overflow){
    max-width:100%;
    min-width:0;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-tabs__nav,.nav-tab-wrapper,.s360-tabs,.school360-tabs,.s360-report-tabs,.s360-academic-tabs,.s360-hr-nav):not(.s360-allow-overflow){
    flex-wrap:nowrap;
    white-space:nowrap;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-tabs__tab,.nav-tab,.s360-tab,.school360-tab,.s360-report-tab,.s360-academic-tab,.s360-hr-nav-item):not(.s360-allow-overflow){
    flex:0 0 auto;
}
body.wp-admin .s360-admin-wrapper :where(.s360-table-wrap,.s360-ui-table-wrap,.s360-table-responsive,.s360-table-scroll,.s360-data-table-wrap,.s360-report-table-wrap,.s360-finance-table-wrap,.s360-expense-table-wrap,.s360-hr-table-wrap,.s360-admissions-table-wrap,.s360-scroll-x,.tablenav-pages):not(.s360-allow-overflow){
    max-width:100%;
    overflow-x:auto;
    overflow-y:visible;
    -webkit-overflow-scrolling:touch;
}
body.wp-admin .s360-admin-wrapper :where(table,.widefat,.wp-list-table,.s360-table,.s360-data-table,.s360-report-table,.s360-finance-table,.s360-expense-table,.s360-hr-table,.s360-admissions-table):not(.s360-allow-overflow){
    max-width:100%;
}
body.wp-admin .s360-admin-wrapper :where(img,svg,canvas,video,iframe):not(.s360-allow-overflow){
    max-width:100%;
}
body.wp-admin .s360-admin-wrapper :where(input[type="text"],input[type="search"],input[type="email"],input[type="url"],input[type="tel"],input[type="number"],input[type="password"],input[type="date"],input[type="time"],input[type="datetime-local"],select,textarea):not(.s360-allow-overflow){
    max-width:100%;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__dialog,.s360-modal__dialog,.school360-modal__dialog,.s360-builder-modal__dialog,.s360-expense-receipt-modal):not(.s360-allow-overflow):not(.s360-unstyled-modal){
    max-height:calc(100dvh - 32px);
    max-width:calc(100vw - 32px);
    overflow:auto;
}
@media (max-width:960px){
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-grid,.s360-grid,.s360-dashboard-grid,.s360-stat-grid,.s360-kpi-grid,.s360-card-grid,.s360-section-grid,.s360-settings-grid,.s360-hr-grid,.s360-finance-grid,.s360-expense-grid,.s360-report-grid,.s360-admissions-grid):not(.s360-allow-overflow){
        grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--s360-responsive-grid-min,220px)),1fr));
    }
    body.wp-admin .s360-admin-wrapper :where(.widefat,.wp-list-table,.s360-table,.s360-data-table,.s360-report-table,.s360-finance-table,.s360-expense-table,.s360-hr-table,.s360-admissions-table):not(.s360-allow-overflow){
        display:block;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
        white-space:nowrap;
        width:100%;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-admin-wrapper{
        padding-inline:var(--s360-responsive-admin-padding-inline,0);
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-page-header,.s360-ui-card,.s360-ui-section-card,.s360-card,.s360-panel,.postbox):not(.s360-allow-overflow){
        border-radius:var(--s360-responsive-card-radius,var(--s360-radius-xl,14px));
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-tabs__nav,.nav-tab-wrapper,.s360-tabs,.school360-tabs,.s360-report-tabs,.s360-academic-tabs,.s360-hr-nav):not(.s360-allow-overflow){
        scroll-padding-inline:var(--s360-space-sm,12px);
        scroll-snap-type:x proximity;
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-tabs__tab,.nav-tab,.s360-tab,.school360-tab,.s360-report-tab,.s360-academic-tab,.s360-hr-nav-item):not(.s360-allow-overflow){
        scroll-snap-align:start;
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-modal__dialog,.s360-modal__dialog,.school360-modal__dialog,.s360-builder-modal__dialog,.s360-expense-receipt-modal):not(.s360-allow-overflow):not(.s360-unstyled-modal){
        max-height:calc(100dvh - 20px);
        max-width:calc(100vw - 20px);
    }
}
@media (max-width:600px){
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-page-header__actions,.s360-toolbar,.s360-actions,.s360-card-actions,.s360-page-actions,.s360-ui-page-actions,.s360-admin-actions,.s360-filter-actions,.s360-report-filter-actions,.s360-analytics-filter-actions,.s360-finance-ledger-filter-actions,.s360-hr-filter-actions):not(.s360-allow-overflow){
        align-items:stretch;
        flex-direction:column;
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-page-header__actions .button,.s360-toolbar .button,.s360-actions .button,.s360-card-actions .button,.s360-page-actions .button,.s360-admin-actions .button,.s360-filter-actions .button,.s360-ui-button):not(.s360-allow-overflow){
        justify-content:center;
        text-align:center;
        width:100%;
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-filter-grid,.s360-filter-grid-5,.s360-report-filter-grid,.s360-analytics-filter-grid,.s360-finance-ledger-filter-grid,.s360-ui-grid,.s360-grid):not(.s360-allow-overflow){
        grid-template-columns:1fr;
    }
}

/* v13.3 hotfix: unify page-level/main navigation tabs visually.
 * The markup contract is already `.s360-ui-main-tabs`; this late card-system
 * layer makes Admin Dashboard and grouped/module pages render the same
 * rounded card + pill-tab pattern, neutralizing older underline overrides.
 * Sub/workflow tabs remain controlled by `.s360-ui-sub-tabs` and are not changed.
 */
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-grouped-admin .s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-expense-phase-h .s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h .s360-ui-main-tabs{
    position:relative;
    top:auto;
    z-index:auto;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:var(--s360-space-xs, 8px);
    width:100%;
    max-width:none;
    min-width:0;
    margin:18px 0 22px;
    padding:var(--s360-space-xs, 8px);
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-bottom:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-radius:16px;
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.06));
    backdrop-filter:none;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .nav-tab,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-ui-tabs__tab,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-finance-tab-link,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-tab,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .school360-tab,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:38px;
    margin:0;
    padding:var(--s360-space-xs, 8px) var(--s360-space-sm, 12px);
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:999px;
    background:transparent;
    box-shadow:none;
    color:var(--s360-color-text-soft,var(--s360-color-text-muted,#64748b));
    font-size:13px;
    font-weight:700;
    line-height:1.3;
    text-align:center;
    text-decoration:none;
    white-space:nowrap;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .nav-tab:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .nav-tab:focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-ui-tabs__tab:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-ui-tabs__tab:focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-finance-tab-link:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-finance-tab-link:focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-tab:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .s360-tab:focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .school360-tab:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .school360-tab:focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab:focus-visible{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
    outline:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .nav-tab-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .is-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs .active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs [aria-current="page"],
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs [aria-selected="true"],
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab.nav-tab-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab.is-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab[aria-current="page"]{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    background:var(--s360-color-primary-soft,var(--s360-color-border-exact-f0f6fc,#f0f6fc));
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs,
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-grouped-admin .s360-ui-main-tabs,
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs,
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-expense-phase-h .s360-ui-main-tabs,
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h .s360-ui-main-tabs{
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
    }
}

/* v13.3 corrective alignment: Dashboard/Finance/HR use the same main-nav visual
 * as grouped admin pages/modules. Earlier fixes standardized the class contract,
 * but screenshots confirmed dashboard-, finance- and HR-specific selectors still
 * influenced color/spacing. Keep compatibility classes for JS and legacy CSS, but
 * make every .s360-ui-main-tabs strip render through this final shared contract.
 * Scope: page-level/main navigation only; .s360-ui-sub-tabs remain unchanged.
 */
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs){
    position:relative;
    top:auto;
    z-index:auto;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:var(--s360-space-xs, 8px);
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:18px 0 22px;
    padding:var(--s360-space-xs, 8px);
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-bottom:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-radius:16px;
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.06));
    backdrop-filter:none;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab,a,button){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:38px;
    min-width:0;
    width:auto;
    margin:0;
    padding:8px 12px;
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:999px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-primary,#2271b1);
    font-size:13px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:normal;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab:hover,.nav-tab:focus-visible,.s360-ui-tabs__tab:hover,.s360-ui-tabs__tab:focus-visible,.s360-finance-tab-link:hover,.s360-finance-tab-link:focus-visible,.s360-hr-nav-item:hover,.s360-hr-nav-item:focus-visible,.s360-tab:hover,.s360-tab:focus-visible,.school360-tab:hover,.school360-tab:focus-visible,a:hover,a:focus-visible,button:hover,button:focus-visible){
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
    outline:none;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]){
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    background:var(--s360-color-primary-soft,var(--s360-color-border-exact-f0f6fc,#f0f6fc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i nav.s360-hr-nav.s360-ui-main-tabs{
    margin:18px 0 22px;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation{
    display:block;
    min-height:0;
    margin:18px 0 22px;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    background-image:none;
    box-shadow:none;
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs){
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
    }
}

/* v13.3 final specificity guard: neutralize Dashboard, Finance and HR
 * module-specific main-tab selectors that carry more specificity than the generic
 * shared contract above. These selectors intentionally keep existing compatibility
 * class names while preserving the same grouped/module visual result.
 * Phase 7: priority flags were removed from this final guard. The selector
 * specificity plus card-system.css load order now carry the contract without
 * priority flags; keep Dashboard/Finance/HR navigation in QA for this phase.
 */
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs{
    position:relative;
    top:auto;
    z-index:auto;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:var(--s360-space-xs, 8px);
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:18px 0 22px;
    padding:var(--s360-space-xs, 8px);
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-bottom:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-radius:16px;
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.06));
    backdrop-filter:none;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > a.nav-tab.s360-finance-tab-link.s360-ui-tabs__tab,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > a.nav-tab.s360-hr-nav-item.s360-ui-tabs__tab{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:38px;
    min-width:0;
    width:auto;
    margin:0;
    padding:var(--s360-space-xs, 8px) var(--s360-space-sm, 12px);
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:999px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-primary,#2271b1);
    font-size:13px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:normal;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab:focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > a.nav-tab.s360-finance-tab-link.s360-ui-tabs__tab:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > a.nav-tab.s360-finance-tab-link.s360-ui-tabs__tab:focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > a.nav-tab.s360-hr-nav-item.s360-ui-tabs__tab:hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > a.nav-tab.s360-hr-nav-item.s360-ui-tabs__tab:focus-visible{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
    outline:none;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab.nav-tab-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab.is-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > a.nav-tab.s360-ui-tabs__tab[aria-current="page"],
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > a.nav-tab.s360-finance-tab-link.s360-ui-tabs__tab.nav-tab-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > a.nav-tab.s360-finance-tab-link.s360-ui-tabs__tab.is-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > a.nav-tab.s360-finance-tab-link.s360-ui-tabs__tab[aria-selected="true"],
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > a.nav-tab.s360-hr-nav-item.s360-ui-tabs__tab.nav-tab-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > a.nav-tab.s360-hr-nav-item.s360-ui-tabs__tab.is-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > a.nav-tab.s360-hr-nav-item.s360-ui-tabs__tab.s360-hr-nav-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > a.nav-tab.s360-hr-nav-item.s360-ui-tabs__tab[aria-current="page"]{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    background:var(--s360-color-primary-soft,var(--s360-color-border-exact-f0f6fc,#f0f6fc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs,
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs,
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs{
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
    }
}

/* Phase 6 relocated from ui-system.css: v13.3 UI/IX refinement v3: Admissions/System dashboard compact-card correction.
 * Scope: Dashboard → Admissions & Portal widget only.
 * Purpose: override the Phase-D four-column compact KPI grid when it lives inside
 * a half-width system panel, keep the panel content pinned to the top, and stop
 * long operational values such as `five_minutes` from escaping compact cards.
 */
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2{
  align-items:start;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel{
  align-self:start;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  height:auto;
  min-height:0;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel > .s360-ui-card__header{
  margin-top:0;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-admin-kpi-grid--compact{
  grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
  align-items:stretch;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-admin-kpi-grid--compact .s360-ui-stat-card,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-admin-kpi-grid--compact a.s360-ui-stat-card{
  min-width:0;
  max-width:100%;
  overflow:hidden;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-ui-stat-card--compact .s360-ui-stat-card__value,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 a.s360-ui-stat-card--compact .s360-ui-stat-card__value{
  display:block;
  max-width:100%;
  min-width:0;
  font-size:18px;
  line-height:1.12;
  letter-spacing:-.015em;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
  hyphens:auto;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-ui-stat-card--compact .s360-ui-stat-card__label,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 a.s360-ui-stat-card--compact .s360-ui-stat-card__label{
  max-width:100%;
  font-size:12px;
  line-height:1.32;
  overflow-wrap:anywhere;
  word-break:normal;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-ui-stat-card--compact .s360-ui-stat-card__helper,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 a.s360-ui-stat-card--compact .s360-ui-stat-card__helper{
  max-width:100%;
  font-size:11.5px;
  line-height:1.42;
  overflow-wrap:anywhere;
}
@media (min-width:1500px){
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-admin-kpi-grid--compact{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media (max-width:782px){
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-ui-stat-card--compact .s360-ui-stat-card__value,
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 a.s360-ui-stat-card--compact .s360-ui-stat-card__value{
    font-size:17px;
  }
}

/* Phase 6 relocated from ui-system.css: v13.3 UI/IX refinement v4: Phase5 half-width KPI grids.
 * Scope: Dashboard → Admissions & Portal widget only.
 * Purpose: keep the two-column dashboard section readable on large screens where
 * the Phase-D desktop override otherwise forces compact KPI cards into four
 * narrow columns. The System readiness cards stay in a 2x2 grid, and the
 * Admissions cards use three readable columns instead of four squeezed cards.
 */
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:first-child .s360-admin-kpi-grid--compact{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-admin-kpi-grid--compact{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--s360-space-sm, 12px);
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-ui-stat-card--compact,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 a.s360-ui-stat-card--compact{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:7px;
  min-width:0;
  overflow:hidden;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-ui-stat-card--compact .s360-ui-stat-card__value,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 a.s360-ui-stat-card--compact .s360-ui-stat-card__value,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-ui-stat-card--compact .s360-ui-stat-card__label,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 a.s360-ui-stat-card--compact .s360-ui-stat-card__label,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 .s360-ui-stat-card--compact .s360-ui-stat-card__helper,
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 a.s360-ui-stat-card--compact .s360-ui-stat-card__helper{
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  flex:0 1 auto;
  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-ui-stat-card--compact .s360-ui-stat-card__value{
  font-size:16px;
  line-height:1.18;
  letter-spacing:-.01em;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-ui-stat-card--compact .s360-ui-stat-card__label{
  font-size:12px;
  line-height:1.28;
}
.school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-ui-stat-card--compact .s360-ui-stat-card__helper{
  font-size:11.5px;
  line-height:1.38;
  overflow:visible;
  -webkit-line-clamp:unset;
}
@media (max-width:1200px){
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:first-child .s360-admin-kpi-grid--compact{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-admin-kpi-grid--compact{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media (max-width:1100px){
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:first-child .s360-admin-kpi-grid--compact,
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-admin-kpi-grid--compact{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:640px){
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:first-child .s360-admin-kpi-grid--compact,
  .school360-dashboard-phase-d .s360-admin-dashboard-phase5 > .s360-ui-grid--2 > .s360-admin-secondary-panel:last-child .s360-admin-kpi-grid--compact{
    grid-template-columns:1fr;
  }
}

/* v13.3 Phase 9A: grouped admin shell adoption for custom workspaces.
 * Goal: HR, Finance, Calendar & Events and Admin Dashboard now opt into the
 * same structural shell classes as grouped admin modules while preserving their
 * existing functional classes, routes, JS hooks and permissions.
 * Scope: layout/visual contract only; sub/workflow tabs remain unchanged.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell{
    max-width:none;
    width:auto;
    min-width:0;
    box-sizing:border-box;
    background:transparent;
    background-image:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell > :where(.s360-ui-page-header,.s360-grouped-admin__hero,.s360-grouped-admin__notice-slot,.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-admin-dashboard__top-surfaces,.s360-ui-main-tabs,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-hr-phase-i .s360-hr-shell > :where(.s360-ui-page-header,.s360-grouped-admin__hero,.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-ui-section-card--hr-navigation,.s360-hr-main){
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-hr-phase-i .s360-hr-shell{
    display:block;
    width:100%;
    max-width:none;
    min-width:0;
    margin-top:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-hr-phase-i .s360-ui-section-card--hr-navigation{
    margin:18px 0 22px;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    background-image:none;
    box-shadow:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k > .s360-calendar-workspace,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-admin-dashboard > .s360-admin-dashboard__workspace,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-finance-page,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-hr-phase-i .s360-hr-main{
    max-width:none;
    min-width:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin .s360-grouped-admin__hero.s360-ui-page-header{
    margin-top:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-tabs.s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-finance-phase-h .s360-finance-tabs.s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-hr-phase-i .s360-hr-nav.s360-ui-main-tabs,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__tabs.s360-ui-main-tabs{
    margin:18px 0 22px;
}


/* v13.3 Phase 9B: first-class grouped shell main navigation.
 * Custom Dashboard, Calendar, HR and Finance workspaces now expose their
 * page-level tab strip as the same grouped shell sibling used by the grouped
 * admin renderer. Functional module classes remain in place for JS/PHP hooks;
 * this block only normalizes spacing/width after the structural move.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:18px 0 22px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell > .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-hr-shell > .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
    align-self:stretch;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k > .s360-calendar-workspace.s360-grouped-admin__content,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d > .s360-admin-dashboard__workspace.s360-grouped-admin__content,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-hr-phase-i .s360-hr-main.s360-grouped-admin__content{
    margin-top:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-hr-phase-i .s360-hr-shell > nav.s360-hr-nav.s360-grouped-admin__main-tabs.s360-ui-main-tabs{
    margin:18px 0 22px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k > nav.s360-calendar-action-tabs.s360-grouped-admin__main-tabs.s360-ui-main-tabs{
    margin:18px 0 22px;
}


/* v13.3 Phase 9C: grouped shell parity hardening for remaining custom tab shells.
 * Scope: visual/layout contract only. Functional module classes remain intact;
 * sub/workflow tabs are still excluded by the `.s360-ui-sub-tabs` guard.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell > .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-hr-shell > .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__content > .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    width:100%;
    max-width:none;
    min-width:0;
    margin:18px 0 22px;
    padding:8px;
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-radius:16px;
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.06));
    box-sizing:border-box;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab,a,button){
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:38px;
    margin:0;
    padding:8px 12px;
    border:1px solid transparent;
    border-radius:999px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-primary,#2271b1);
    font-size:13px;
    font-weight:700;
    line-height:1.3;
    text-decoration:none;
    white-space:nowrap;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab:hover,.nav-tab:focus-visible,.s360-ui-tabs__tab:hover,.s360-ui-tabs__tab:focus-visible,.s360-finance-tab-link:hover,.s360-finance-tab-link:focus-visible,.s360-hr-nav-item:hover,.s360-hr-nav-item:focus-visible,.s360-tab:hover,.s360-tab:focus-visible,.school360-tab:hover,.school360-tab:focus-visible,a:hover,a:focus-visible,button:hover,button:focus-visible){
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
    outline:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"],.s360-hr-nav-active){
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    background:var(--s360-color-primary-soft,var(--s360-color-border-exact-f0f6fc,#f0f6fc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell > .s360-grouped-admin__content,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-hr-shell > .s360-grouped-admin__content{
    width:100%;
    max-width:none;
    min-width:0;
    margin-top:0;
    box-sizing:border-box;
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
    }
}

/* v13.3 Phase 9N: Admin Dashboard header school selector placement.
 * Moves the dashboard school selector into the unified page header while
 * keeping the existing switch-school control and nonce-backed URL workflow.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header--with-school-selector{
    align-items:center;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__current-school{
    font-weight:800;
    color:inherit;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header--with-school-selector .s360-ui-page-header__actions{
    flex:0 1 430px;
    width:auto;
    max-width:100%;
    align-items:center;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:var(--s360-space-sm, 12px);
    width:100%;
    max-width:430px;
    min-width:280px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector-title{
    flex:0 0 auto;
    color:var(--s360-color-primary,#2271b1);
    font-size:12px;
    line-height:1.35;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
    white-space:nowrap;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector .s360-admin-dashboard__school-switcher{
    flex:1 1 280px;
    width:100%;
    min-width:0;
    max-width:320px;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector .s360-admin-dashboard__school-switcher-label{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector .s360-admin-dashboard__school-switcher-select{
    width:100%;
    min-width:0;
    max-width:100%;
    min-height:38px;
    box-sizing:border-box;
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header--with-school-selector{
        align-items:stretch;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header--with-school-selector .s360-ui-page-header__actions{
        flex:1 1 auto;
        width:100%;
        justify-content:flex-start;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector{
        align-items:flex-start;
        justify-content:flex-start;
        flex-direction:column;
        gap:var(--s360-component-card-heading-gap, 6px);
        width:100%;
        max-width:100%;
        min-width:0;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector .s360-admin-dashboard__school-switcher{
        max-width:100%;
    }
}

/* v13.3 Phase 9O: Admin Dashboard mobile school selector compacting.
 * The Phase 9N header move reused the desktop flex-basis for the switcher.
 * On mobile the selector wrapper becomes a column, so that flex-basis turned
 * into vertical height. Reset it here to keep the select compact.
 */
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header--with-school-selector.s360-ui-page-header{
        gap:var(--s360-space-sm, 12px);
        padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-tight, 14px);
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector{
        gap:7px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector .s360-admin-dashboard__school-switcher{
        flex:0 0 auto;
        width:100%;
        max-width:100%;
        min-height:0;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header-school-selector .s360-admin-dashboard__school-switcher-select{
        display:block;
        width:100%;
        height:auto;
        min-height:40px;
        padding-top:7px;
        padding-bottom:7px;
        line-height:1.35;
    }
}
@media (max-width:480px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__header--with-school-selector.s360-ui-page-header{
        padding:var(--s360-space-sm, 12px);
    }
}

/* v13.3 Phase 9P: Admin Dashboard compact spacing polish.
 * Scope: visual spacing only. Keeps grouped shell and main tab contracts in
 * place while reducing the excessive whitespace visible around the dashboard
 * main tab strip and Expense readiness utility card.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
    margin:var(--s360-space-sm, 12px) 0 var(--s360-space-md, 16px);
    padding:6px;
    gap:var(--s360-component-card-heading-gap, 6px);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab,a,button){
    min-height:34px;
    padding:7px 11px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__top-surfaces{
    margin-bottom:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__utility-card--notification{
    min-height:72px;
    padding:var(--s360-space-sm, 12px) var(--s360-component-card-padding-compact, 16px);
    gap:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__utility-card--notification .s360-admin-dashboard__utility-copy{
    gap:var(--s360-component-card-heading-gap, 6px);
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
        margin:10px 0 14px;
        padding:6px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-dashboard__utility-card--notification{
        min-height:0;
        padding:var(--s360-space-sm, 12px) var(--s360-component-card-padding-tight, 14px);
    }
}

/* v13.3 Phase 9Q: main navigation compact outer spacing with roomier pills.
 * Scope: visual spacing only. Reduce the vertical gap around grouped main
 * navigation strips while giving the inner tab pills a bit more breathing room.
 * Sub/workflow tabs remain excluded by the `.s360-ui-sub-tabs` guard.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
    margin:8px 0 10px;
    padding:9px 10px;
    gap:8px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab,a,button){
    min-height:36px;
    padding:8px 13px;
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
        margin:8px 0 10px;
        padding:8px;
        gap:7px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs) :where(.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab,a,button){
        min-height:36px;
        padding:8px 12px;
    }
}

/* v13.3 Phase 9R: Admin Dashboard Operations subpanel alignment.
 * Scope: visual layout only for the Today / Daily Operations tab. The
 * secondary cards previously stretched to the height of the Daily priorities
 * card, which left the Attendance snapshot and Today's schedule content sitting
 * low with excessive blank space. Keep the cards top-aligned and compact while
 * preserving the existing dashboard data/rendering workflow.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel .s360-admin-today-subpanels{
    align-items:start;
    gap:var(--s360-space-md, 16px);
    margin-top:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel .s360-admin-today-subpanels > .s360-ui-dashboard-panel{
    align-self:start;
    height:auto;
    min-height:0;
    margin-bottom:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel .s360-admin-today-subpanels > .s360-ui-dashboard-panel > .s360-ui-card__body{
    gap:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__attendance .s360-admin-kpi-grid--compact{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__attendance .s360-ui-stat-card--compact{
    min-height:86px;
    padding:var(--s360-space-sm, 12px) 13px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__attendance .s360-ui-stat-card__value{
    font-size:22px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__attendance .s360-ui-stat-card__label,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__attendance .s360-ui-stat-card__helper{
    line-height:1.35;
}
@media (max-width:1280px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__attendance .s360-admin-kpi-grid--compact{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel .s360-admin-today-subpanels{
        gap:var(--s360-space-sm, 12px);
        margin-top:10px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__attendance .s360-admin-kpi-grid--compact{
        grid-template-columns:1fr;
    }
}

/* v13.3 Phase 9S: Admin Dashboard operations/finance-attendance polish.
 * Scope: visual CSS only. Keep Daily priorities shortcut cards the same width
 * inside the Operations tab, and square the top edge of the Finance & Attendance
 * coverage table only. Dashboard data, routing and workflows are unchanged.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__priorities .s360-admin-today-priority-list{
    display:grid;
    grid-template-columns:minmax(0,340px);
    justify-content:start;
    align-items:stretch;
    gap:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__priorities .s360-admin-today-priority-list .s360-admin-shortcut.s360-ui-dashboard-shortcut{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    width:100%;
    max-width:100%;
    min-height:74px;
    padding:var(--s360-space-sm, 12px) var(--s360-component-card-padding-tight, 14px);
    border-radius:12px;
    box-sizing:border-box;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__priorities .s360-admin-today-priority-list .s360-admin-shortcut__title,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__priorities .s360-admin-today-priority-list .s360-admin-shortcut__meta{
    display:block;
    width:100%;
    max-width:100%;
    overflow:visible;
    text-overflow:clip;
    white-space:normal;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__priorities .s360-admin-today-priority-list .s360-admin-shortcut__title + .s360-admin-shortcut__meta::before{
    content:none;
    margin:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d [data-s360-dashboard-widget="finance_attendance"] .s360-admin-finance-attendance__coverage-table{
    border-top-left-radius:0;
    border-top-right-radius:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d [data-s360-dashboard-widget="finance_attendance"] .s360-admin-finance-attendance__coverage-table table,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d [data-s360-dashboard-widget="finance_attendance"] .s360-admin-finance-attendance__coverage-table thead,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d [data-s360-dashboard-widget="finance_attendance"] .s360-admin-finance-attendance__coverage-table thead tr,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d [data-s360-dashboard-widget="finance_attendance"] .s360-admin-finance-attendance__coverage-table thead th:first-child,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d [data-s360-dashboard-widget="finance_attendance"] .s360-admin-finance-attendance__coverage-table thead th:last-child{
    border-top-left-radius:0;
    border-top-right-radius:0;
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d .s360-admin-today-panel__priorities .s360-admin-today-priority-list{
        grid-template-columns:1fr;
    }
}

/* Phase 9T: scoped table-header radius reset for Admin Dashboard Finance & Attendance coverage table. */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d [data-s360-dashboard-widget="finance_attendance"] .s360-admin-finance-attendance__coverage-table.s360-ui-table-wrap table thead th:first-child{
    border-top-left-radius:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.school360-dashboard-phase-d [data-s360-dashboard-widget="finance_attendance"] .s360-admin-finance-attendance__coverage-table.s360-ui-table-wrap table thead th:last-child{
    border-top-right-radius:0;
}

/* v13.3 Phase 9V: Calendar & Events admin workspace polish.
 * Scope: visual CSS only for the wp-admin Calendar & Events workspace. Modernizes
 * filter controls, events list, monthly calendar and create-event form without
 * changing calendar queries, form actions, nonces, permissions or data workflow.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-workspace{
    display:flex;
    flex-direction:column;
    gap:18px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-section,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-browser,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-tab-section{
    padding:var(--s360-component-card-padding, 20px) 22px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:18px;
    background:linear-gradient(180deg,var(--s360-color-surface-raised,#fff) 0%,var(--s360-color-bg-soft,#f8fbff) 100%);
    box-shadow:0 10px 28px rgba(15,23,42,.045);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-section > h2,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-browser-header h2,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-tab-section h2{
    margin:0 0 6px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:18px;
    line-height:1.25;
    font-weight:850;
    letter-spacing:-.02em;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-section > .description,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-browser-header .description{
    margin:0;
    max-width:760px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-form,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form{
    margin:18px 0 0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid{
    gap:16px 18px;
    align-items:end;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid > .s360-calendar-event-field,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-description{
    display:flex;
    flex-direction:column;
    gap:7px;
    min-width:0;
    margin:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field > label + br,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid > .s360-calendar-event-field > label + br,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-description > label + br{
    display:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k :where(.s360-calendar-filter-form,.s360-calendar-event-form) label strong{
    color:var(--s360-color-text-label,#1f2937);
    font-size:12px;
    font-weight:800;
    letter-spacing:.02em;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k :where(.s360-calendar-filter-form,.s360-calendar-event-form) :where(input[type="text"],input[type="email"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],select,textarea){
    width:100%;
    min-height:42px;
    padding:8px 12px;
    border:1px solid var(--s360-color-border-strong,#cbd5e1);
    border-radius:12px;
    background:var(--s360-color-surface-raised,#fff);
    color:var(--s360-color-text-heading,#0f172a);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.78);
    box-sizing:border-box;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k :where(.s360-calendar-filter-form,.s360-calendar-event-form) :where(input[type="text"],input[type="email"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],select,textarea):focus{
    border-color:var(--s360-color-primary,#2271b1);
    box-shadow:0 0 0 3px rgba(34,113,177,.14);
    outline:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-actions.s360-pt-lg{
    padding-top:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-actions,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-form-actions{
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-form-actions{
    margin:18px 0 0;
    padding-top:16px;
    border-top:1px solid var(--s360-color-border-muted,#e2e8f0);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .s360-ui-button,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:8px 14px;
    border:1px solid var(--s360-color-border-strong,#cbd5e1);
    border-radius:12px;
    background:var(--s360-color-surface-raised,#fff);
    color:var(--s360-color-primary,#2271b1);
    font-weight:800;
    text-decoration:none;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .s360-ui-button--primary,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .button-primary{
    border-color:var(--s360-color-primary,#2271b1);
    background:var(--s360-color-primary,#2271b1);
    color:#fff;
    box-shadow:0 10px 20px rgba(34,113,177,.16);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-browser{
    overflow-x:auto;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-browser-header{
    margin:0 0 18px;
    padding-bottom:16px;
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-view-toggle{
    justify-content:flex-end;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-toolbar{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    margin:0 0 16px;
    padding:10px 12px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:14px;
    background:var(--s360-color-bg-soft,#f8fbff);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-nav-label{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:14px;
    font-weight:850;
    min-width:110px;
    text-align:center;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-table{
    width:100%;
    min-width:860px;
    margin:0;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:16px;
    border-collapse:separate;
    border-spacing:0;
    table-layout:fixed;
    overflow:hidden;
    background:var(--s360-color-surface-raised,#fff);
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-table thead th{
    padding:11px 10px;
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
    background:var(--s360-color-bg-subtle,#f8fafc);
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    font-weight:850;
    letter-spacing:.04em;
    text-transform:uppercase;
    text-align:center;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-table tbody td{
    min-height:116px;
    height:116px;
    padding:10px;
    border-right:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
    background:var(--s360-color-surface-raised,#fff);
    vertical-align:top;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-table tbody td:last-child{
    border-right:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-table tbody tr:last-child td{
    border-bottom:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-table tbody td:empty{
    background:var(--s360-color-bg-soft,#f8fbff);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-cell > strong{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:26px;
    height:26px;
    margin-bottom:8px;
    border-radius:999px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:13px;
    font-weight:850;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
    margin:6px 0 0;
    padding:9px 10px;
    border:1px solid var(--s360-color-primary-soft-border,#bfdbfe);
    border-radius:12px;
    background:linear-gradient(180deg,var(--s360-color-primary-soft,#eff6ff) 0%,var(--s360-color-bg-soft,#f8fbff) 100%);
    box-shadow:0 8px 18px rgba(34,113,177,.09);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event .s360-event-type-badge{
    min-height:22px;
    padding:3px 8px;
    font-size:11px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-meeting-link{
    color:var(--s360-color-primary,#2271b1);
    font-size:12px;
    font-weight:800;
    line-height:1.35;
    text-decoration:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-title{
    margin:2px 0 12px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:16px;
    font-weight:850;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-table{
    width:100%;
    min-width:1120px;
    margin:0;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:14px;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    background:var(--s360-color-surface-raised,#fff);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-table thead th{
    padding:12px 10px;
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
    background:var(--s360-color-bg-subtle,#f8fafc);
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    font-weight:850;
    letter-spacing:.04em;
    text-transform:uppercase;
    vertical-align:middle;
    white-space:normal;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-table tbody td{
    padding:12px 10px;
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
    color:var(--s360-color-text-body,#334155);
    font-size:13px;
    line-height:1.45;
    vertical-align:middle;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-table tbody tr:hover td{
    background:var(--s360-color-bg-soft,#f8fbff);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-table tbody tr:last-child td{
    border-bottom:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-table .button-link-delete{
    color:var(--s360-color-danger,#b91c1c);
    font-weight:800;
    text-decoration:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-title{
    margin:0 0 18px;
    padding-bottom:14px;
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid{
    align-items:start;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid > .s360-calendar-event-field{
    padding:12px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:14px;
    background:var(--s360-color-surface-raised,#fff);
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid label:has(input[type="checkbox"]){
    display:flex;
    align-items:flex-start;
    gap:8px;
    color:var(--s360-color-text-body,#334155);
    font-weight:700;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-description{
    margin:18px 0 0;
}
@media (max-width:1080px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-section,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-browser,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-tab-section{
        padding:var(--s360-component-card-padding-compact, 16px);
        border-radius:16px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid{
        grid-template-columns:1fr;
        gap:12px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-browser-header,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-view-toggle,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-toolbar{
        align-items:stretch;
        justify-content:flex-start;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-view-toggle .s360-ui-button,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-toolbar .s360-ui-button{
        width:auto;
    }
}

/* v13.3 Phase 9W: Calendar & Events form/list refinement.
 * Scope: visual CSS only for Calendar & Events. Keeps calendar CRUD, filters,
 * nonces, routing and data workflow unchanged.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid{
    grid-template-columns:repeat(4,minmax(132px,1fr)) minmax(138px,max-content);
    gap:14px 16px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-actions{
    grid-column:5;
    grid-row:2;
    align-self:end;
    justify-content:flex-end;
    gap:8px;
    min-width:138px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-actions .s360-ui-button{
    min-width:64px;
    padding:8px 12px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    white-space:nowrap;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-form{
    display:inline-flex;
    margin:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:5px 10px;
    border:1px solid var(--s360-color-border-strong,#cbd5e1);
    border-radius:999px;
    background:var(--s360-color-surface-raised,#fff);
    color:var(--s360-color-primary,#2271b1);
    font-size:12px;
    font-weight:800;
    line-height:1.2;
    text-decoration:none;
    cursor:pointer;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-link--edit:hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-link--edit:focus{
    border-color:var(--s360-color-primary,#2271b1);
    background:var(--s360-color-primary-soft,#eff6ff);
    color:var(--s360-color-primary,#2271b1);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-link--delete{
    border-color:var(--s360-color-danger-border,#fecaca);
    background:var(--s360-color-danger-soft,#fef2f2);
    color:var(--s360-color-danger,#b91c1c);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-link--delete:hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-link--delete:focus{
    border-color:var(--s360-color-danger,#b91c1c);
    background:var(--s360-color-danger,#b91c1c);
    color:#fff;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid > .s360-calendar-event-field{
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
@media (max-width:1280px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field{
        grid-column:auto;
        grid-row:auto;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-actions{
        grid-column:1 / -1;
        grid-row:auto;
        justify-content:flex-end;
        min-width:0;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-actions{
        justify-content:flex-start;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-events-list-actions{
        justify-content:flex-start;
    }
}


/* v13.3 Phase 9X: Calendar & Events markup hardening.
 * Adds explicit filter/form field class contracts and removes reliance on nth-of-type
 * positioning. Visual-only; no DB, nonce, query, CRUD or routing workflow changes.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid{
    grid-template-columns:repeat(4,minmax(132px,1fr)) minmax(138px,max-content);
    gap:14px 16px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--type{grid-column:1;grid-row:1;}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--status{grid-column:2;grid-row:1;}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--schedule{grid-column:3;grid-row:1;}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--visibility{grid-column:4;grid-row:1;}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--recurrence{grid-column:1;grid-row:2;}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--class{grid-column:2;grid-row:2;}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--date-from{grid-column:3;grid-row:2;}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--date-to{grid-column:4;grid-row:2;}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--actions{
    grid-column:5;
    grid-row:2;
    align-self:end;
    justify-content:flex-end;
    gap:8px;
    min-width:138px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-form-grid > .s360-calendar-event-field{
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
@media (max-width:1280px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field{
        grid-column:auto;
        grid-row:auto;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--actions{
        grid-column:1 / -1;
        grid-row:auto;
        justify-content:flex-end;
        min-width:0;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-filter-field--actions{
        justify-content:flex-start;
    }
}

/* v13.3 Phase 9Z: Calendar today marker, square month grid, and event detail view polish.
 * Scope: Calendar & Events UI only. No DB, nonce, permission, CRUD, import/export or reminder workflow changes.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-table{
    border-radius:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-month-table :where(th,td){
    border-radius:0;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-today-summary{
    display:inline-flex;
    align-items:center;
    gap:var(--s360-space-xs, 8px);
    margin-left:auto;
    padding:7px 10px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    background:var(--s360-color-surface-raised,#fff);
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.2;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-today-summary strong{
    color:var(--s360-color-text-heading,#0f172a);
    font-weight:850;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-today-summary a{
    color:var(--s360-color-primary,#2271b1);
    font-weight:800;
    text-decoration:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-day-number,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-cell > strong{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:26px;
    height:26px;
    margin-bottom:8px;
    border-radius:999px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:13px;
    font-weight:850;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-cell--today{
    position:relative;
    background:linear-gradient(180deg,var(--s360-color-primary-soft,#eff6ff) 0%,var(--s360-color-surface-raised,#fff) 100%);
    box-shadow:inset 0 0 0 2px var(--s360-color-primary,#2271b1);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-cell--today .s360-calendar-day-number{
    background:var(--s360-color-primary,#2271b1);
    color:#fff;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-today-badge{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:3px 8px;
    border:1px solid var(--s360-color-primary-soft-border,#bfdbfe);
    border-radius:999px;
    background:var(--s360-color-primary-soft,#eff6ff);
    color:var(--s360-color-primary,#2271b1);
    font-size:11px;
    font-weight:850;
    letter-spacing:.02em;
    text-transform:uppercase;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event .s360-ui-button--small{
    min-height:26px;
    margin-top:2px;
    padding:4px 8px;
    border:1px solid var(--s360-color-border-strong,#cbd5e1);
    border-radius:999px;
    background:var(--s360-color-surface-raised,#fff);
    color:var(--s360-color-primary,#2271b1);
    font-size:11px;
    font-weight:800;
    text-decoration:none;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-link--view:hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-action-link--view:focus{
    border-color:var(--s360-color-primary,#2271b1);
    background:var(--s360-color-primary-soft,#eff6ff);
    color:var(--s360-color-primary,#2271b1);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-card{
    padding:22px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:18px;
    background:var(--s360-color-surface-raised,#fff);
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    padding-bottom:18px;
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-eyebrow{
    display:block;
    margin-bottom:6px;
    color:var(--s360-color-primary,#2271b1);
    font-size:12px;
    font-weight:850;
    letter-spacing:.05em;
    text-transform:uppercase;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-header h2{
    margin:0 0 10px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:22px;
    line-height:1.2;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-badges,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-actions{
    justify-content:flex-end;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:18px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-grid > div{
    padding:14px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:14px;
    background:var(--s360-color-bg-soft,#f8fbff);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-grid span{
    display:block;
    margin-bottom:5px;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.03em;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-grid strong{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:14px;
    font-weight:850;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-notes{
    margin-top:16px;
    padding:16px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:14px;
    background:var(--s360-color-surface-raised,#fff);
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-notes p{
    margin:0 0 10px;
}
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-notes p:last-child{
    margin-bottom:0;
}
@media (max-width:960px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-today-summary{
        width:100%;
        margin-left:0;
        justify-content:flex-start;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-header{
        flex-direction:column;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-actions{
        justify-content:flex-start;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:640px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-calendar-phase-k .s360-calendar-event-detail-grid{
        grid-template-columns:1fr;
    }
}

/* v13.3 Phase 10B: Academic visual baseline polish.
 * Scope: Academic admin workspaces only. Visual-only; no DB, nonce,
 * permission, CRUD, timetable, gradebook, or routing workflow changes.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k{
    --s360-academic-card-gap:16px;
    --s360-academic-card-padding:18px;
    --s360-academic-compact-padding:14px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-grouped-admin__hero{
    margin-bottom:12px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero{
    margin:0 0 14px;
    padding:14px 16px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:14px;
    background:var(--s360-color-surface-raised,#fff);
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero h2{
    margin:2px 0 4px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:18px;
    line-height:1.25;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero p{
    max-width:780px;
    color:var(--s360-color-text-muted,#64748b);
    font-size:13px;
    line-height:1.45;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-section-kicker{
    color:var(--s360-color-primary,#2271b1);
    font-size:10px;
    letter-spacing:.07em;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero-actions{
    gap:8px;
    align-items:center;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero-actions .s360-ui-button{
    min-height:34px;
    padding:7px 11px;
    border-radius:10px;
    font-size:12px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-kpi-grid,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-grid{
    gap:var(--s360-academic-card-gap);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-kpi-grid{
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    margin-top:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card{
    padding:var(--s360-academic-card-padding);
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:14px;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-stat-card{
    min-height:78px;
    padding:var(--s360-component-card-padding-compact, 16px);
    border-radius:14px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-stat-card__label{
    margin-bottom:5px;
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    letter-spacing:.035em;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-stat-card__value{
    font-size:24px;
    line-height:1;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-mt-lg{
    margin-top:14px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-mt-md{
    margin-top:10px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-readiness{
    grid-template-columns:minmax(220px,1fr) 76px minmax(240px,1.4fr);
    gap:14px;
    padding:16px;
    border-left:3px solid var(--s360-color-primary,#2271b1);
    border-radius:14px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-readiness-score{
    width:70px;
    height:70px;
    font-size:23px;
    box-shadow:inset 0 0 0 6px var(--s360-color-border-accent-soft,#dbeafe);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-readiness-list{
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:7px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-readiness-list li{
    min-height:34px;
    padding:7px 9px;
    border-radius:10px;
    font-size:12px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-readiness-list li span{
    width:20px;
    height:20px;
    font-size:11px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-section-heading{
    gap:var(--s360-space-sm, 12px);
    margin-bottom:var(--s360-space-sm, 12px);
    padding-bottom:var(--s360-space-sm, 12px);
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-section-heading h2,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card h2{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:17px;
    line-height:1.25;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-section-heading .description,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card .description{
    color:var(--s360-color-text-muted,#64748b);
    font-size:13px;
    line-height:1.45;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-workspace-tabs.s360-ui-sub-tabs,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k #s360-structure-tabs.s360-ui-sub-tabs{
    margin:12px 0 14px;
    padding:6px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:12px;
    background:var(--s360-color-bg-soft,#f8fafc);
    box-shadow:none;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-workspace-tabs.s360-ui-sub-tabs .s360-ui-tabs__tab,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k #s360-structure-tabs.s360-ui-sub-tabs .s360-ui-tabs__tab{
    min-height:32px;
    padding:7px 10px;
    border-radius:9px;
    font-size:12px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-two-col,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-grid,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-grid{
    gap:16px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-grid-auto-320{
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table{
    margin:0;
    border-collapse:separate;
    border-spacing:0 10px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table th,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table td{
    padding:0;
    vertical-align:top;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table th{
    width:170px;
    padding-top:8px;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    font-weight:800;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(input[type="text"],input[type="email"],input[type="number"],input[type="date"],input[type="time"],select,textarea).s360-ui-control,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(input[type="text"],input[type="email"],input[type="number"],input[type="date"],input[type="time"],select,textarea):not(.button):not(.s360-unstyled-control){
    min-height:36px;
    border:1px solid var(--s360-color-border-muted,#dbe3ef);
    border-radius:10px;
    background:var(--s360-color-surface-raised,#fff);
    box-shadow:none;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k textarea{
    min-height:84px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-profile-action-row,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-actions,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-form-actions{
    gap:8px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-button--small,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-button.s360-ui-button--secondary,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-button.s360-ui-button--primary{
    border-radius:10px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-button--small{
    min-height:30px;
    padding:5px 9px;
    font-size:12px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-ui-table-wrap,.s360-table-wrap){
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:0;
    background:var(--s360-color-surface-raised,#fff);
    overflow:auto;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-ui-table,.widefat){
    border-radius:0;
    overflow:hidden;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-ui-table,.widefat) thead th{
    background:var(--s360-color-bg-soft,#f8fafc);
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    font-weight:850;
    letter-spacing:.035em;
    text-transform:uppercase;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-ui-table,.widefat) tbody td{
    color:var(--s360-color-text-body,#334155);
    font-size:13px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-ui-table,.widefat) tbody tr:hover{
    background:var(--s360-color-primary-soft,#eff6ff);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-class-directory-grid{
    gap:12px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-class-directory-card,.s360-empty-state){
    border-radius:14px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-analytics-grid{
    gap:10px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-analytics-grid > div{
    padding:12px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:12px;
    background:var(--s360-color-bg-soft,#f8fafc);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-risk-list,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-qa-list{
    margin-bottom:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-risk-list li,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-qa-list li{
    margin-bottom:7px;
    line-height:1.45;
}

@media (max-width:960px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-readiness{
        grid-template-columns:1fr;
        display:grid;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero-actions{
        justify-content:flex-start;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-readiness{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table tbody,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table tr,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table th,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table td{
        display:block;
        width:100%;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table th{
        padding:0 0 6px;
    }
}

@media (max-width:640px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k{
        --s360-academic-card-padding:14px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero{
        padding:12px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-hero-actions .s360-ui-button{
        width:100%;
        justify-content:center;
    }
}

/* v13.3 Phase 10C: Academic forms/action polish.
 * Scope: Academic admin workspaces only. Visual-only; no DB, nonce,
 * permission, CRUD, timetable, gradebook, or routing workflow changes.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card{
    display:flex;
    flex-direction:column;
    gap:var(--s360-space-sm, 12px);
    min-height:100%;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-two-col,.s360-three-col,.s360-grid-2,.s360-grid-3) > .s360-ui-card{
    box-sizing:border-box;
    height:100%;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card > h2,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card > h2:first-child{
    margin:0 0 2px;
    padding-bottom:10px;
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card form{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card form > p,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card form > p{
    margin:0 0 11px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card form > p:last-child,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card form > p:last-child{
    margin-bottom:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card form > p > label,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card form > p > label{
    display:block;
    margin-bottom:6px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:12px;
    font-weight:800;
    line-height:1.25;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card form > p > label + br,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card form > p > label + br{
    display:none;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card .submit,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card .submit{
    margin:var(--s360-space-sm, 12px) 0 0;
    padding:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-action-card .button,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card .submit .button,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-inline-filter .button,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-form-inline .button,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-inline-form .button{
    min-height:34px;
    padding:6px var(--s360-space-sm, 12px);
    border-radius:10px;
    font-size:12px;
    font-weight:800;
    line-height:1.35;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-inline-filter,.s360-form-inline,.s360-inline-form){
    display:flex;
    flex-wrap:wrap;
    align-items:flex-end;
    gap:10px;
    margin:0 0 14px;
    padding:12px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:12px;
    background:var(--s360-color-bg-soft,#f8fafc);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-inline-filter,.s360-form-inline,.s360-inline-form) label{
    display:inline-flex;
    flex-direction:column;
    gap:5px;
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:12px;
    font-weight:800;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-inline-filter,.s360-form-inline,.s360-inline-form) :where(select,input[type="search"],input[type="text"],input[type="date"]){
    min-width:170px;
    max-width:260px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table .description{
    margin:5px 0 0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.4;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table tr + tr th,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-form-table tr + tr td{
    padding-top:2px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td form{
    margin:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td :where(.s360-u-flex-wrap-center-6,.s360-u-flex-end-8){
    justify-content:flex-start;
    gap:6px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td select{
    min-height:32px;
    max-width:190px;
    border-radius:9px;
    font-size:12px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-button--danger,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card .button-link-delete{
    border-color:var(--s360-color-danger-border,#fecaca);
    background:var(--s360-color-danger-soft,#fef2f2);
    color:var(--s360-color-danger,#b91c1c);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-button--danger:hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-card .button-link-delete:hover{
    border-color:var(--s360-color-danger,#dc2626);
    background:var(--s360-color-danger,#dc2626);
    color:#fff;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-class-directory-card .s360-ui-button,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td .s360-ui-button{
    white-space:nowrap;
}

@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-inline-filter,.s360-form-inline,.s360-inline-form){
        align-items:stretch;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-inline-filter,.s360-form-inline,.s360-inline-form) label,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-inline-filter,.s360-form-inline,.s360-inline-form) :where(select,input[type="search"],input[type="text"],input[type="date"]),
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k :where(.s360-inline-filter,.s360-form-inline,.s360-inline-form) .button{
        width:100%;
        max-width:none;
    }
}

/* School 360 Phase 10E: Academic Classes & Subjects split-view action polish. */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-view-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:0 0 14px;
    padding:14px 16px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-view-actions .description{
    margin:2px 0 0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-view-actions__buttons{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:8px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-action-grid{
    grid-template-columns:minmax(0,760px);
    gap:14px;
    align-items:start;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-action-grid > .s360-ui-card{
    width:100%;
}

@media (max-width:960px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-view-actions{
        align-items:flex-start;
        flex-direction:column;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-view-actions__buttons{
        justify-content:flex-start;
    }
}

@media (max-width:640px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-view-actions__buttons,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-l .s360-academic-view-actions__buttons .s360-ui-button{
        width:100%;
    }
}

/* v13.3 Phase 10I: Academic split-view final polish.
 * Scope: Academic admin workspaces only. Visual-only; no DB, nonce,
 * permission, CRUD, timetable, delivery, or gradebook workflow changes.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:0 0 14px;
    padding:14px 16px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:14px;
    background:linear-gradient(180deg,var(--s360-color-surface-raised,#fff),var(--s360-color-bg-soft,#f8fafc));
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.04));
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions h2{
    margin:0 0 3px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:17px;
    line-height:1.25;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions .description{
    margin:0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:13px;
    line-height:1.45;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions__buttons{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:8px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions__buttons .s360-ui-button{
    min-height:34px;
    padding:7px 12px;
    border-radius:10px;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-panel{
    margin-top:var(--s360-component-card-header-gap, 14px);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-panel > .s360-ui-card{
    max-width:960px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-panel > .s360-ui-card:only-child{
    margin-right:auto;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-panel .s360-ui-form-table{
    max-width:860px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-panel .s360-ui-card > h2:first-child{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--s360-space-sm, 12px);
    margin:0 0 var(--s360-space-sm, 12px);
    padding-bottom:var(--s360-space-sm, 12px);
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-panel .s360-ui-card form:last-child{
    margin-bottom:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-panel .submit{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--s360-space-xs, 8px);
    margin-top:var(--s360-component-card-header-gap, 14px);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-workspace-tabs.s360-ui-sub-tabs{
    margin-top:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td .row-actions,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td .s360-row-actions{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:6px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td .row-actions a,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td .s360-row-actions a{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:4px 8px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:8px;
    background:var(--s360-color-surface-raised,#fff);
    color:var(--s360-color-primary,#2271b1);
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td .row-actions a:hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-ui-table td .s360-row-actions a:hover{
    border-color:var(--s360-color-primary,#2271b1);
    background:var(--s360-color-primary-soft,#eff6ff);
}

@media (max-width:960px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions{
        align-items:flex-start;
        flex-direction:column;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions__buttons{
        justify-content:flex-start;
    }
}

@media (max-width:640px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions__buttons,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-actions__buttons .s360-ui-button{
        width:100%;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-academic-phase-k .s360-academic-view-panel > .s360-ui-card{
        max-width:none;
    }
}

/* School 360 Phase 10L: Exams & Gradebook overview polish.
 * Scope: Academic → Exams & Gradebook only. Visual/order polish; no DB, nonce,
 * permission, POST handler, grade calculation, or timetable workflow changes.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-overview-hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin:0 0 10px;
    padding:12px 14px;
    border-radius:12px;
    background:linear-gradient(180deg,var(--s360-color-surface-raised,#fff),var(--s360-color-bg-soft,#f8fafc));
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-overview-hero h2{
    margin:1px 0 3px;
    font-size:17px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-overview-hero p{
    max-width:680px;
    margin:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-workspace-tabs.s360-ui-sub-tabs{
    margin-top:10px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-control-panel--top{
    display:grid;
    grid-template-columns:minmax(220px,.9fr) minmax(320px,1.5fr);
    align-items:end;
    gap:var(--s360-space-md, 16px);
    margin-top:var(--s360-space-sm, 12px);
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
    border-left:3px solid var(--s360-color-primary,#2271b1);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-control-panel__copy .description{
    margin:var(--s360-space-2xs, 4px) 0 0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-class-filter{
    display:grid;
    grid-template-columns:minmax(220px,1fr) auto;
    align-items:end;
    gap:10px;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-class-filter label{
    display:flex;
    flex-direction:column;
    gap:5px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-class-filter select{
    width:100%;
    max-width:none;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-kpi-grid{
    grid-template-columns:repeat(4,minmax(140px,1fr));
    margin-top:var(--s360-component-card-header-gap, 14px);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-kpi-grid .s360-ui-stat-card,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview .s360-control-metric{
    min-height:70px;
    padding:var(--s360-component-card-padding-tight, 14px) 15px;
    border-left:3px solid var(--s360-color-primary-soft,#dbeafe);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-readiness{
    margin-top:14px;
    grid-template-columns:minmax(240px,1.1fr) 74px minmax(320px,1.5fr);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview{
    display:grid;
    grid-template-columns:minmax(220px,.75fr) minmax(420px,1.8fr);
    align-items:center;
    gap:16px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview .description{
    margin:4px 0 0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview .s360-control-metrics{
    display:grid;
    grid-template-columns:repeat(3,minmax(130px,1fr));
    gap:10px;
    margin:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview .s360-control-metric span{
    display:block;
    margin:0 0 5px;
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    font-weight:850;
    letter-spacing:.035em;
    text-transform:uppercase;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview .s360-control-metric strong{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:22px;
    line-height:1;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-analytics,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-qa-panel{
    padding:var(--s360-component-card-padding-compact, 16px);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-analytics .s360-section-heading,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-qa-panel .s360-section-heading{
    margin-bottom:10px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-qa-panel .s360-qa-list{
    display:grid;
    gap:var(--s360-space-xs, 8px);
    margin:0;
    padding-left:22px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-qa-panel .s360-qa-list li{
    margin:0;
    padding:var(--s360-space-xs, 8px) 10px;
    border:1px solid var(--s360-color-border-muted,#e2e8f0);
    border-radius:10px;
    background:var(--s360-color-surface-raised,#fff);
}

@media (max-width:1100px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-kpi-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-control-panel--top,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-readiness{
        grid-template-columns:1fr;
    }
}

@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-overview-hero{
        flex-direction:column;
        align-items:flex-start;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-control-panel--top,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-class-filter{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-class-filter .s360-ui-button{
        width:100%;
        justify-content:center;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview .s360-control-metrics{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:520px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-kpi-grid,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-l .s360-gradebook-assessment-overview .s360-control-metrics{
        grid-template-columns:1fr;
    }
}

/* School 360 Phase 10M: Exams & Gradebook overview control panel correction.
 * Scope: Academic → Exams & Gradebook → Overview workspace filter.
 * Keeps the filter compact and prevents the submit button from stretching full width on desktop.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-overview-hero{
    padding:10px 14px;
    margin-bottom:10px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-control-panel--top{
    grid-template-columns:minmax(260px,1fr) minmax(420px,auto);
    align-items:center;
    gap:18px;
    min-height:0;
    padding:var(--s360-component-card-padding-compact, 16px) 18px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-control-panel__copy h2{
    margin:0 0 6px;
    font-size:17px;
    line-height:1.2;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-control-panel__copy .description{
    max-width:620px;
    margin:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-class-filter{
    display:grid;
    grid-template-columns:minmax(220px,320px) auto;
    align-items:end;
    justify-content:end;
    gap:10px;
    justify-self:end;
    width:auto;
    max-width:520px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-class-filter__field{
    display:flex;
    flex-direction:column;
    gap:6px;
    min-width:220px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-class-filter__field label{
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    font-weight:800;
    line-height:1.2;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-class-filter select{
    min-height:38px;
    margin:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-class-filter__submit{
    min-height:38px;
    padding-inline:16px;
    white-space:nowrap;
}

@media (max-width:960px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-control-panel--top{
        grid-template-columns:1fr;
        align-items:stretch;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-class-filter{
        justify-content:start;
        justify-self:stretch;
        max-width:none;
    }
}

@media (max-width:620px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-class-filter{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-m .s360-gradebook-class-filter__submit{
        width:100%;
        justify-content:center;
    }
}

/* School 360 Phase 10N: Exams & Gradebook overview alignment and metric-card correction.
 * Scope: Academic → Exams & Gradebook → Overview.
 * Aligns the Workspace Filter controls and makes Assessment Overview metrics match the KPI card system.
 */
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-control-panel--top{
    grid-template-columns:minmax(300px,1fr) minmax(420px,520px);
    padding:var(--s360-component-card-padding-compact, 16px) var(--s360-space-lg, 24px) var(--s360-component-card-padding-compact, 16px) 18px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-class-filter{
    grid-template-columns:minmax(220px,300px) auto;
    justify-self:end;
    justify-content:end;
    align-items:end;
    gap:12px;
    width:auto;
    max-width:460px;
    margin-right:8px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-class-filter__submit{
    min-height:38px;
    padding-inline:18px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview{
    display:block;
    margin-top:14px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview__header{
    margin:0 0 10px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview__header h2{
    margin:0 0 4px;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview__header .description{
    margin:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview .s360-control-metrics{
    display:grid;
    grid-template-columns:repeat(3,minmax(160px,1fr));
    gap:var(--s360-space-sm, 12px);
    margin:0;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview .s360-control-metric{
    min-height:70px;
    padding:var(--s360-component-card-padding-tight, 14px) 15px;
    border-left:3px solid var(--s360-color-primary-soft,#dbeafe);
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview .s360-control-metrics span,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview .s360-control-metric__label{
    display:block;
    margin:0 0 var(--s360-space-xs, 8px);
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    font-weight:850;
    letter-spacing:.035em;
    line-height:1.25;
    text-transform:uppercase;
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview .s360-control-metric__value{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:22px;
    font-weight:800;
    line-height:1;
}

@media (max-width:1100px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-control-panel--top{
        grid-template-columns:minmax(240px,1fr) minmax(360px,440px);
        padding-right:var(--s360-component-card-padding, 20px);
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-class-filter{
        grid-template-columns:minmax(200px,1fr) auto;
        max-width:430px;
        margin-right:0;
    }
}

@media (max-width:960px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-control-panel--top{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-class-filter{
        justify-self:start;
        justify-content:start;
        max-width:520px;
        width:100%;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview .s360-control-metrics{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:620px){
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-class-filter,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview .s360-control-metrics{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-class-filter__submit{
        width:100%;
        justify-content:center;
    }
}

/* School 360 Phase 11C: Student Operations visual polish.
 * Scope: Students → Student Operations only.
 * Keeps existing student CRUD/workflow logic intact while improving overview, roster and empty workspace UI.
 */
body.wp-admin .s360-student-operations-phase-11c .s360-attendance-student-operations-page-header{
    margin-bottom:14px;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-subtabs{
    margin:0 0 16px;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-command-bar,
body.wp-admin .s360-student-operations-phase-11c .s360-student-workspace-empty{
    display:grid;
    grid-template-columns:minmax(280px,1fr) auto;
    align-items:center;
    gap:16px;
    margin-bottom:14px;
    padding:18px 20px;
    border-left:3px solid var(--s360-color-primary,#2563eb);
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-command-bar h2,
body.wp-admin .s360-student-operations-phase-11c .s360-student-workspace-empty h2{
    margin:0 0 5px;
    font-size:18px;
    line-height:1.25;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-command-bar p,
body.wp-admin .s360-student-operations-phase-11c .s360-student-workspace-empty p{
    margin:0;
    color:var(--s360-color-text-muted,#64748b);
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-command-bar__actions,
body.wp-admin .s360-student-operations-phase-11c .s360-student-workspace-empty__actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-kpi-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:var(--s360-space-sm, 12px);
    margin:0 0 var(--s360-space-md, 16px);
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-kpi{
    min-height:84px;
    padding:15px var(--s360-component-card-padding-compact, 16px);
    border-left:3px solid var(--s360-color-primary-soft,#dbeafe);
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-kpi .s360-ui-stat-card__value{
    margin:0 0 6px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:25px;
    font-weight:800;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-kpi .s360-ui-stat-card__label{
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    font-weight:800;
    letter-spacing:.035em;
    line-height:1.25;
    text-transform:uppercase;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-card-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--s360-space-md, 16px);
    margin-bottom:var(--s360-component-card-header-gap, 14px);
    padding-bottom:var(--s360-space-sm, 12px);
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-card-heading h2{
    margin:0 0 5px;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-card-heading p{
    margin:0;
    color:var(--s360-color-text-muted,#64748b);
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-roster-filter{
    display:grid;
    grid-template-columns:repeat(4,minmax(160px,1fr)) auto;
    align-items:end;
    gap:12px;
    margin:0;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-filter-field label{
    display:flex;
    flex-direction:column;
    gap:6px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:12px;
    font-weight:700;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-filter-field br{
    display:none;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-filter-field :where(select,input[type="search"]){
    width:100%;
    min-height:38px;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-filter-submit{
    min-height:38px;
    white-space:nowrap;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-roster-table{
    margin-top:14px;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-roster-table table{
    margin:0;
}

body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-roster-table td:last-child,
body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-roster-table th:last-child{
    text-align:right;
    white-space:nowrap;
}

@media (max-width:1180px){
    body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-roster-filter{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-filter-submit{
        justify-self:start;
    }
}

@media (max-width:782px){
    body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-command-bar,
    body.wp-admin .s360-student-operations-phase-11c .s360-student-workspace-empty{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-command-bar__actions,
    body.wp-admin .s360-student-operations-phase-11c .s360-student-workspace-empty__actions{
        justify-content:flex-start;
    }
    body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-card-heading{
        flex-direction:column;
        align-items:stretch;
    }
    body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-roster-filter{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-filter-submit,
    body.wp-admin .s360-student-operations-phase-11c .s360-student-ops-command-bar__actions .s360-ui-button,
    body.wp-admin .s360-student-operations-phase-11c .s360-student-workspace-empty__actions .s360-ui-button{
        width:100%;
        justify-content:center;
    }
}

/* v13.3 Phase 11G: unified Students sub-navigation tabs.
 * Scope: Students module inner/workflow navigation only. This normalizes
 * Attendance, Student Operations, Bulk Actions & Rollover, and Transport
 * without changing main grouped shell tabs or workflow behavior.
 */
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs{
    position:relative;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:18px 0 22px;
    padding:8px;
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-bottom:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-radius:16px;
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.06));
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:38px;
    min-width:0;
    width:auto;
    margin:0;
    padding:8px 12px;
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:999px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-primary,#2271b1);
    font-size:13px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:normal;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):focus-visible{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
    outline:none;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"],
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"]{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    background:var(--s360-color-primary-soft,var(--s360-color-border-exact-f0f6fc,#f0f6fc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs,
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs{
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
        scroll-snap-type:x proximity;
    }
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab),
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
        scroll-snap-align:start;
    }
}

/* v13.3 Phase 12A: unified Academic sub-navigation tabs.
 * Scope: Academic module inner/workflow navigation only. This normalizes
 * Classes & Subjects, Timetable, Academic Delivery, Academic Structure,
 * and Exams & Gradebook without changing main grouped shell tabs or workflow behavior.
 */
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs{
    position:relative;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:18px 0 22px;
    padding:8px;
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-bottom:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-radius:16px;
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.06));
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
}
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:38px;
    min-width:0;
    width:auto;
    margin:0;
    padding:8px 12px;
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:999px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-primary,#2271b1);
    font-size:13px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:normal;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    transform:none;
}
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):hover,
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):focus-visible{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
    outline:none;
    transform:none;
}
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"]{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1));
    background:var(--s360-color-primary-soft,var(--s360-color-border-exact-f0f6fc,#f0f6fc));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:none;
}
@media (max-width:782px){
    body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs{
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
        scroll-snap-type:x proximity;
    }
    body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
        scroll-snap-align:start;
    }
}

/* v13.3 Phase 12B: visually separate sub-navigation from main grouped tabs.
 * Scope: Students and Academic inner/workflow navigation only.
 * Intent: keep the same shared subnav contract, but make sub-tabs read as
 * secondary navigation by using a muted rail, compact rectangular tabs,
 * and a subtle left accent instead of the main-tab pill/card treatment.
 */
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs,
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs{
    gap:var(--s360-component-card-heading-gap, 6px);
    margin:var(--s360-space-sm, 12px) 0 18px;
    padding:7px var(--s360-space-xs, 8px) 7px 10px;
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-left:4px solid var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    border-radius:12px;
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}

body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab),
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
    min-height:32px;
    padding:6px 10px;
    border:1px solid transparent;
    border-radius:9px;
    background:transparent;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    font-weight:700;
    letter-spacing:.01em;
}

body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):focus-visible,
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):hover,
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):focus-visible{
    border-color:var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 2px rgba(15,23,42,.05);
}

body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"],
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"],
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-academic-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"]{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    border-bottom-color:var(--s360-color-primary,#2271b1);
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 3px rgba(15,23,42,.08);
}

/* v13.3 Phase 13A: unified People sub-navigation tabs.
 * Scope: People module inner/workflow navigation only. This normalizes
 * User Management, Roles & Permissions, and Teacher Workbench section tabs
 * without changing main grouped shell tabs or save handlers.
 */
body.wp-admin .s360-people-subnav.s360-ui-sub-tabs{
    position:relative;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:var(--s360-component-card-heading-gap, 6px);
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:var(--s360-space-sm, 12px) 0 18px;
    padding:7px var(--s360-space-xs, 8px) 7px 10px;
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-left:4px solid var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    border-radius:12px;
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
}
body.wp-admin .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:32px;
    min-width:0;
    width:auto;
    margin:0;
    padding:6px 10px;
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:9px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:.01em;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    transform:none;
}
body.wp-admin .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):hover,
body.wp-admin .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):focus-visible{
    border-color:var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 2px rgba(15,23,42,.05);
    outline:none;
}
body.wp-admin .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"]{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    border-bottom-color:var(--s360-color-primary,#2271b1);
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 3px rgba(15,23,42,.08);
}
body.wp-admin .s360-people-subnav.s360-people-subnav--nested{
    margin-top:0;
    margin-bottom:16px;
    border-left-color:var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
}
@media (max-width:782px){
    body.wp-admin .s360-people-subnav.s360-ui-sub-tabs{
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
        scroll-snap-type:x proximity;
    }
    body.wp-admin .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
        scroll-snap-align:start;
    }
}


/* v13.3 Phase 14E/14F: People runtime screenshot polish.
 * Scope: People KPI grids and Teacher Workbench layout only.
 * Keeps main navigation, sub-navigation contract, DB, handlers, and permissions unchanged.
 */
body.wp-admin .s360-people-workspace .s360-people-kpi-grid.s360-grouped-admin__top-surfaces,
body.wp-admin .s360-people-workspace .s360-people-permissions-kpi-grid.s360-grouped-admin__top-surfaces{
    display:grid;
    gap:var(--s360-space-sm,12px);
    align-items:stretch;
    width:100%;
    margin:0 0 var(--s360-space-md,16px);
}
body.wp-admin .s360-people-users-workspace .s360-people-kpi-grid.s360-grouped-admin__top-surfaces{
    grid-template-columns:repeat(6,minmax(128px,1fr));
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid.s360-grouped-admin__top-surfaces{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
body.wp-admin .s360-people-kpi-grid .s360-ui-stat-card,
body.wp-admin .s360-people-permissions-kpi-grid .s360-ui-stat-card{
    min-height:88px;
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
    justify-content:flex-start;
    overflow:visible;
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}
body.wp-admin .s360-people-kpi-grid .s360-people-summary-card{
    gap:5px;
}
body.wp-admin .s360-people-kpi-grid .s360-people-summary-card__label{
    order:0;
    color:var(--s360-color-text-muted,#475569);
    font-size:11px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.035em;
    text-transform:uppercase;
}
body.wp-admin .s360-people-kpi-grid .s360-people-summary-card__value,
body.wp-admin .s360-people-permissions-kpi-grid .s360-stat-number strong{
    font-size:clamp(22px,1.55vw,28px);
    line-height:1.05;
}
body.wp-admin .s360-people-kpi-grid .s360-people-summary-card__value{
    order:1;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-people-kpi-grid .s360-people-summary-card--context .s360-people-summary-card__value{
    font-size:clamp(15px,1.15vw,18px);
    line-height:1.22;
}
body.wp-admin .s360-people-kpi-grid .s360-people-summary-card__helper{
    order:2;
    color:var(--s360-color-text-tertiary,#64748b);
    font-size:12px;
    line-height:1.35;
}
body.wp-admin .s360-people-users-workspace .s360-people-workflow-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:var(--s360-space-md,16px);
}
body.wp-admin .s360-people-users-workspace .s360-people-workflow-card{
    min-height:148px;
    padding:var(--s360-component-card-padding-compact, 16px) 18px;
    justify-content:space-between;
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}
body.wp-admin .s360-people-users-workspace .s360-people-workflow-card h3{
    margin:0 0 var(--s360-space-xs, 8px);
    font-size:16px;
    line-height:1.25;
}
body.wp-admin .s360-people-users-workspace .s360-people-workflow-card p{
    margin-top:0;
    font-size:13px;
    line-height:1.45;
}
body.wp-admin .s360-people-users-workspace .s360-people-workflow-card .s360-ui-button{
    min-height:32px;
    padding:6px 10px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters{
    display:grid;
    grid-template-columns:minmax(220px,1.2fr) minmax(170px,.75fr) minmax(220px,1fr) auto;
    gap:var(--s360-space-md,16px);
    align-items:end;
    padding:var(--s360-space-md,16px);
    margin:0 0 var(--s360-space-lg,24px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters select,
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters input[type="date"]{
    width:100%;
    max-width:100%;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filter--actions{
    display:flex;
    align-items:end;
    justify-content:flex-start;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-cluster-between{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:var(--s360-space-lg,24px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid{
    min-width:min(100%,520px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:var(--s360-space-md,16px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card{
    min-height:170px;
    justify-content:space-between;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card .s360-ui-button{
    width:100%;
    justify-content:center;
}
@media (max-width:1360px){
    body.wp-admin .s360-people-users-workspace .s360-people-kpi-grid.s360-grouped-admin__top-surfaces{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media (max-width:1280px){
    body.wp-admin .s360-people-users-workspace .s360-people-workflow-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:1080px){
    body.wp-admin .s360-people-users-workspace .s360-people-kpi-grid.s360-grouped-admin__top-surfaces,
    body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid.s360-grouped-admin__top-surfaces{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-cluster-between{
        flex-direction:column;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid{
        min-width:0;
        width:100%;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-people-users-workspace .s360-people-kpi-grid.s360-grouped-admin__top-surfaces,
    body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid.s360-grouped-admin__top-surfaces,
    body.wp-admin .s360-people-users-workspace .s360-people-workflow-grid,
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters,
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-grid{
        grid-template-columns:1fr;
    }
}


/* v13.3 TW-CSS-01: Teacher Workbench compact visual polish.
 * Scope: People > Teacher Workbench only. This tightens the inner
 * workbench header, workflow tabs, filter toolbar, and teacher summary card
 * without touching routes, permissions, DB state, PHP renderers, or JS.
 */
body.wp-admin .s360-teacher-workbench-phase-n > .s360-teacher-workbench-page-header.s360-ui-page-header{
    margin:0 0 var(--s360-space-sm, 12px);
    padding:var(--s360-space-sm, 12px) var(--s360-component-card-padding-compact, 16px);
}
body.wp-admin .s360-teacher-workbench-phase-n > .s360-teacher-workbench-page-header .s360-ui-page-header__main{
    gap:4px;
}
body.wp-admin .s360-teacher-workbench-phase-n > .s360-teacher-workbench-page-header .s360-ui-page-header__description{
    max-width:min(72ch,100%);
    line-height:1.4;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-people-subnav.s360-ui-sub-tabs{
    margin:10px 0 14px;
    padding:6px 7px;
    border-left-color:var(--s360-color-primary,#2271b1);
    background:linear-gradient(180deg,rgba(248,250,252,.96),rgba(255,255,255,.98));
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
    min-height:30px;
    padding:5px 10px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-teacher-workbench-phase-n .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"]{
    box-shadow:0 1px 3px rgba(37,99,235,.12);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));
    gap:var(--s360-space-sm,12px);
    padding:14px;
    margin:0 0 18px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filter--actions{
    justify-content:flex-end;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filter--actions .s360-ui-button,
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filter--actions .button{
    min-height:34px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters + .s360-ui-card{
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
    margin-bottom:18px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters + .s360-ui-card > .s360-cluster-between{
    align-items:center;
    gap:var(--s360-space-md,16px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters + .s360-ui-card h2{
    font-size:16px;
    line-height:1.25;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters + .s360-ui-card p{
    font-size:12px;
    line-height:1.4;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid{
    grid-template-columns:repeat(4,minmax(92px,1fr));
    gap:10px;
    min-width:min(100%,480px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid > .s360-ui-card{
    min-height:64px;
    padding:10px var(--s360-space-sm, 12px);
    justify-content:center;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid .s360-ui-stat-card__value{
    font-size:clamp(20px,1.45vw,26px);
    line-height:1;
}
@media (max-width:1080px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters + .s360-ui-card > .s360-cluster-between{
        align-items:stretch;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid{
        min-width:0;
        width:100%;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-teacher-workbench-phase-n > .s360-teacher-workbench-page-header.s360-ui-page-header{
        padding:12px;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filters{
        grid-template-columns:1fr;
        gap:10px;
        padding:12px;
        margin-bottom:14px;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filter--actions{
        justify-content:stretch;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filter--actions .s360-ui-button,
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-filter--actions .button{
        width:100%;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:520px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid{
        grid-template-columns:1fr;
    }
}

/* v13.3 Phase 14A: unified Communication sub-navigation tabs.
 * Scope: Communication Center inner/workflow navigation only. This makes
 * Overview, Messages, Announcements, Broadcast, Planning, Notifications,
 * and Activity read as secondary tabs under the Communication main section.
 */
body.wp-admin .s360-communication-subnav.s360-ui-sub-tabs{
    position:relative;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:var(--s360-component-card-heading-gap, 6px);
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:var(--s360-space-sm, 12px) 0 18px;
    padding:7px var(--s360-space-xs, 8px) 7px 10px;
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-left:4px solid var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    border-radius:12px;
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
}
body.wp-admin .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:32px;
    min-width:0;
    width:auto;
    margin:0;
    padding:6px 10px;
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:9px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:.01em;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    transform:none;
}
body.wp-admin .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):hover,
body.wp-admin .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab):focus-visible{
    border-color:var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 2px rgba(15,23,42,.05);
    outline:none;
}
body.wp-admin .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab).is-active,
body.wp-admin .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab)[aria-current="page"]{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    border-bottom-color:var(--s360-color-primary,#2271b1);
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 3px rgba(15,23,42,.08);
}
@media (max-width:782px){
    body.wp-admin .s360-communication-subnav.s360-ui-sub-tabs{
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
        scroll-snap-type:x proximity;
    }
    body.wp-admin .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,.s360-ui-tabs__tab,.nav-tab){
        scroll-snap-align:start;
    }
}

/* v13.3 Phase 14G: People > User Management users directory polish.
 * Scope: existing users directory header, role filter, and row action buttons.
 * Keeps permissions, handlers, routes, nonces, and data queries unchanged except for a GET role filter.
 */
body.wp-admin .s360-people-users-workspace .s360-people-users-directory{
    margin:0 0 var(--s360-space-xl,32px);
}
body.wp-admin .s360-people-users-workspace .s360-people-directory-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--s360-space-md,16px);
    margin:0 0 var(--s360-space-sm,12px);
    padding:0 var(--s360-space-xs,8px);
}
body.wp-admin .s360-people-users-workspace .s360-people-directory-header h2{
    margin:0;
    font-size:18px;
    line-height:1.25;
}
body.wp-admin .s360-people-users-workspace .s360-people-directory-header .description{
    margin-bottom:0;
}
body.wp-admin .s360-people-users-workspace .s360-people-role-filter{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    min-width:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
}
body.wp-admin .s360-people-users-workspace .s360-people-role-filter label{
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    font-weight:800;
    line-height:1.2;
    white-space:nowrap;
}
body.wp-admin .s360-people-users-workspace .s360-people-role-filter__controls{
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
}
body.wp-admin .s360-people-users-workspace .s360-people-role-filter select{
    width:190px;
    min-height:34px;
}
body.wp-admin .s360-people-users-workspace .s360-people-users-table-wrap{
    margin:0;
    padding:0;
    overflow-x:auto;
}
body.wp-admin .s360-people-users-workspace .s360-people-directory-count{
    margin:0 0 8px;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
}
body.wp-admin .s360-people-users-workspace .s360-people-users-table th:last-child,
body.wp-admin .s360-people-users-workspace .s360-people-users-table td.s360-people-user-actions-cell{
    width:300px;
    min-width:260px;
}
body.wp-admin .s360-people-users-workspace .s360-people-row-actions{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:7px;
    max-width:100%;
}
body.wp-admin .s360-people-users-workspace .s360-people-row-actions__core,
body.wp-admin .s360-people-users-workspace .s360-user-quick-actions--compact .s360-user-quick-actions__buttons{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:6px;
    max-width:100%;
}
body.wp-admin .s360-people-users-workspace .s360-user-quick-actions--compact{
    margin:0;
    max-width:100%;
}
body.wp-admin .s360-people-users-workspace .s360-user-quick-actions--compact .s360-ui-button{
    min-height:28px;
    padding:4px 8px;
    border-radius:8px;
    font-size:11px;
    line-height:1.2;
    white-space:nowrap;
}
body.wp-admin .s360-people-users-workspace .s360-people-row-actions__core .s360-ui-button{
    min-height:28px;
    padding:4px 8px;
    border-radius:8px;
    font-size:11px;
    line-height:1.2;
}
@media (max-width:1080px){
    body.wp-admin .s360-people-users-workspace .s360-people-directory-header{
        align-items:stretch;
        flex-direction:column;
    }
    body.wp-admin .s360-people-users-workspace .s360-people-role-filter{
        justify-content:flex-start;
        width:100%;
        padding:10px 12px;
        border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
        border-radius:12px;
        background:var(--s360-color-bg-subtle,#f8fafc);
    }
    body.wp-admin .s360-people-users-workspace .s360-people-role-filter__controls{
        justify-content:flex-start;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-people-users-workspace .s360-people-role-filter{
        align-items:stretch;
        flex-direction:column;
    }
    body.wp-admin .s360-people-users-workspace .s360-people-role-filter__controls{
        flex-wrap:wrap;
    }
    body.wp-admin .s360-people-users-workspace .s360-people-role-filter select,
    body.wp-admin .s360-people-users-workspace .s360-people-role-filter .s360-ui-button{
        width:100%;
    }
    body.wp-admin .s360-people-users-workspace .s360-people-users-table th:last-child,
    body.wp-admin .s360-people-users-workspace .s360-people-users-table td.s360-people-user-actions-cell{
        width:auto;
        min-width:220px;
    }
}

/* v13.3 Phase 14I: People > User Management form width polish.
 * Scope: create user, parent link, portal access, and parent invite forms.
 * Keeps routes, handlers, nonces, permissions, and data logic unchanged.
 */
body.wp-admin .s360-people-users-workspace .s360-people-form-card{
    padding:var(--s360-space-lg, 24px) 28px;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card > h2,
body.wp-admin .s360-people-users-workspace .s360-people-form-card > p{
    max-width:820px;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table{
    width:min(100%,900px);
    max-width:900px;
    table-layout:fixed;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table th{
    width:190px;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table td{
    width:auto;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table :where(input[type="text"],input[type="email"],input[type="password"],input[type="url"],input[type="tel"],select,textarea,.s360-ui-input,.s360-ui-select,.s360-ui-textarea,.s360-ui-control){
    width:min(100%,640px);
    max-width:640px;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table :where(input[type="date"]){
    width:min(100%,220px);
    max-width:220px;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table :where(input[type="number"],.s360-ui-input--small){
    width:min(100%,160px);
    max-width:160px;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table .description{
    max-width:640px;
}
body.wp-admin .s360-people-users-workspace .s360-people-form-card p.submit{
    margin-left:190px;
    padding-left:var(--s360-space-sm, 12px);
}
@media (max-width:782px){
    body.wp-admin .s360-people-users-workspace .s360-people-form-card{
        padding:18px var(--s360-component-card-padding-compact, 16px);
    }
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table{
        display:block;
        width:100%;
        max-width:100%;
        table-layout:auto;
    }
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table tbody,
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table tr,
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table th,
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table td{
        display:block;
        width:100%;
        max-width:100%;
    }
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table th{
        padding-bottom:var(--s360-space-2xs, 4px);
    }
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table td{
        padding-bottom:var(--s360-space-sm, 12px);
    }
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table :where(input[type="text"],input[type="email"],input[type="password"],input[type="url"],input[type="tel"],input[type="date"],input[type="number"],select,textarea,.s360-ui-input,.s360-ui-select,.s360-ui-textarea,.s360-ui-control),
    body.wp-admin .s360-people-users-workspace .s360-people-form-card .s360-ui-form-table .description{
        width:100%;
        max-width:100%;
    }
    body.wp-admin .s360-people-users-workspace .s360-people-form-card p.submit{
        margin-left:0;
        padding-left:0;
    }
}

/* v13.3 Phase 14J: People > User Management Current Portal Links table shell polish.
 * Removes the extra outer card shell and softens the auto table toolbar so it reads as
 * one table surface instead of a card inside another card.
 */
body.wp-admin .s360-people-users-workspace .s360-people-current-links-directory{
    margin:0 0 var(--s360-space-xl,32px);
    padding:0 var(--s360-space-xs,8px);
}
body.wp-admin .s360-people-users-workspace .s360-people-current-links-directory > h2{
    margin:0 0 var(--s360-space-sm,12px);
    font-size:18px;
    line-height:1.25;
}
body.wp-admin .s360-people-users-workspace .s360-people-current-links-directory > .description{
    margin:0 0 var(--s360-space-sm,12px);
}
body.wp-admin .s360-people-users-workspace .s360-people-current-links-table-wrap{
    margin:0;
}
body.wp-admin .s360-people-users-workspace .s360-people-current-links-table-wrap > .s360-ui-table-toolbar{
    padding:12px 14px 10px;
    border-bottom:0;
    border-radius:0;
    background:var(--s360-color-surface-raised,#fff);
}
body.wp-admin .s360-people-users-workspace .s360-people-current-links-table-wrap > .s360-ui-table-toolbar:first-child{
    border-top-left-radius:calc(var(--s360-table-radius,12px) - 1px);
    border-top-right-radius:calc(var(--s360-table-radius,12px) - 1px);
}
body.wp-admin .s360-people-users-workspace .s360-people-current-links-table-wrap > .s360-ui-table-toolbar + table thead th{
    border-top:0;
}
@media (max-width:782px){
    body.wp-admin .s360-people-users-workspace .s360-people-current-links-directory{
        padding:0;
    }
}

/* v13.3 Phase 14K: Roles & Permissions audit layout polish.
 * Scope: People > Roles & Permissions cards and Role Audit table only.
 * Keeps permission logic, queries, handlers, and save flows unchanged.
 */
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid.s360-grouped-admin__top-surfaces,
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-audit-grid{
    gap:var(--s360-space-sm,12px);
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-ui-stat-card,
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-mini-card{
    min-height:72px;
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
    justify-content:flex-start;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-ui-stat-card h3,
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-mini-card h3{
    margin:0 0 6px;
    font-size:15px;
    line-height:1.25;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-ui-stat-card .description,
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-mini-card .description{
    margin:0 0 var(--s360-space-xs, 8px);
    font-size:12px;
    line-height:1.4;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-mini-card p,
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-ui-stat-card p{
    margin:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-mini-card strong,
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-stat-number strong{
    font-size:clamp(18px,1.35vw,24px);
    line-height:1.05;
}

/* v13.3 PERM-MATRIX-KPI-03: align KPI description and value on one row.
 * Scope: People > Roles & Permissions top overview cards only.
 * Keeps PHP markup, permission logic, routes, and data unchanged.
 */
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-ui-stat-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
        "title title"
        "description number";
    align-items:start;
    column-gap:var(--s360-space-sm,12px);
    row-gap:var(--s360-component-card-heading-gap, 6px);
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-ui-stat-card h3{
    grid-area:title;
    min-width:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-ui-stat-card .description{
    grid-area:description;
    min-width:0;
    margin:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-kpi-grid .s360-stat-number{
    grid-area:number;
    justify-self:end;
    align-self:start;
    margin:0;
    text-align:right;
    white-space:nowrap;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-audit-actions{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:var(--s360-space-sm,12px);
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table-wrap .s360-ui-table-wrap{
    border:1px solid var(--s360-color-border-muted,#d7dee8);
    border-radius:16px;
    overflow:hidden;
    background:var(--s360-color-surface,#ffffff);
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table-wrap .s360-ui-table-toolbar{
    padding:10px 14px;
    border-bottom:1px solid var(--s360-color-border-subtle,#e7edf4);
    background:var(--s360-color-surface-raised,#f8fafc);
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table thead th,
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table tbody td{
    vertical-align:middle;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table thead th:nth-child(1),
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table tbody td:nth-child(1){
    width:260px;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table thead th:nth-child(2),
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table tbody td:nth-child(2){
    width:120px;
    white-space:nowrap;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-module{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px 10px;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-module__name{
    font-weight:700;
    color:var(--s360-color-text-heading,#0f172a);
    white-space:nowrap;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-module__meta{
    display:inline-flex;
    align-items:center;
    padding:2px 8px;
    border-radius:999px;
    background:var(--s360-color-surface-raised,#f1f5f9);
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.35;
    white-space:nowrap;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-coverage{
    display:inline-flex;
    align-items:center;
    gap:4px;
    white-space:nowrap;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-badges{
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    gap:6px;
    overflow-x:auto;
    padding-bottom:2px;
    scrollbar-width:thin;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-badges .s360-badge{
    flex:0 0 auto;
    white-space:nowrap;
}
@media (max-width:1080px){
    body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-audit-actions{
        justify-content:flex-start;
    }
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table thead th:nth-child(1),
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table tbody td:nth-child(1){
        width:220px;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-module{
        align-items:flex-start;
    }
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-badges{
        flex-wrap:wrap;
        overflow-x:visible;
    }
}

/* v13.3 Phase 14L: Roles & Permissions follow-up polish.
 * Scope: People > Roles & Permissions role audit and matrix overview only.
 */
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-scope-toolbar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:12px;
    margin:0 0 var(--s360-space-md,16px);
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-scope-form{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-scope-form select{
    min-width:min(100%,420px);
    max-width:100%;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-editor-link{
    min-height:34px;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-mini-card--role strong{
    font-size:clamp(16px,1.05vw,20px);
    line-height:1.18;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permissions-mini-card--role code{
    font-size:11px;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-badges{
    flex-wrap:wrap;
    overflow-x:visible;
    row-gap:6px;
    max-height:none;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-badges .s360-badge{
    white-space:nowrap;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-head{
    gap:12px;
    align-items:flex-start;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-head h3{
    font-size:clamp(17px,1.25vw,22px);
    line-height:1.12;
    margin:0 0 4px;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-count strong{
    font-size:clamp(19px,1.4vw,26px);
    line-height:1.05;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-count span{
    font-size:10px;
    letter-spacing:.035em;
}
@media (max-width:782px){
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-scope-toolbar,
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-scope-form{
        align-items:stretch;
        flex-direction:column;
    }
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-scope-form select,
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-scope-form .s360-ui-button,
    body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-editor-link{
        width:100%;
        justify-content:center;
    }
}
body.wp-admin .s360-people-permissions-workspace .s360-people-role-audit-table-wrap.s360-ui-table-wrap{
    border:1px solid var(--s360-color-border-muted,#d7dee8);
    border-radius:16px;
    overflow:hidden;
    background:var(--s360-color-surface,#ffffff);
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}

/* v13.3 Phase 14M: Roles & Permissions editor/matrix follow-up polish.
 * Scope: People > Roles & Permissions Permission Editor and Matrix Overview only.
 * Keeps permission save flow, nonces, handlers, and data logic unchanged.
 */
body.wp-admin .s360-people-permissions-workspace .s360-ui-section-card--overview > h2.s360-mt-xl{
    margin-top:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-grid{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));
    gap:18px;
}
body.wp-admin .s360-people-permissions-workspace .s360-ui-card--role-overview{
    padding:0;
    justify-content:flex-start;
    overflow:hidden;
}
body.wp-admin .s360-people-permissions-workspace .s360-ui-card--role-overview .s360-overview-row{
    padding:18px var(--s360-component-card-padding, 20px);
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-head{
    gap:12px;
    min-width:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-head > div:first-child{
    min-width:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-head h3{
    font-size:clamp(16px,1.05vw,19px);
    line-height:1.16;
    margin:0 0 4px;
    overflow-wrap:anywhere;
    word-break:normal;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-count{
    flex:0 0 auto;
    min-width:72px;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-count strong{
    font-size:clamp(18px,1.1vw,23px);
    line-height:1.05;
}
body.wp-admin .s360-people-permissions-workspace .s360-role-overview-count span{
    font-size:11px;
    line-height:1.25;
    letter-spacing:.035em;
}
body.wp-admin .s360-people-permissions-workspace .s360-ui-card--role-overview code{
    display:inline-block;
    max-width:100%;
    font-size:10.5px;
    white-space:normal;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permission-editor-card{
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permission-editor-card > h2,
body.wp-admin .s360-people-permissions-workspace .s360-people-permission-editor-card > .description{
    margin-left:0;
    margin-right:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permission-editor-card > h2{
    margin-top:0;
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permission-editor-card > .s360-ui-table-wrap{
    margin-top:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permission-editor-card .s360-ui-table-wrap{
    border:1px solid var(--s360-color-border-muted,#d7dee8);
    border-radius:16px;
    overflow:hidden;
    background:var(--s360-color-surface,#ffffff);
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}
body.wp-admin .s360-people-permissions-workspace .s360-people-permission-editor-card .s360-ui-table-toolbar{
    border-bottom:1px solid var(--s360-color-border-subtle,#e7edf4);
    background:var(--s360-color-surface-raised,#f8fafc);
}
@media (max-width:782px){
    body.wp-admin .s360-people-permissions-workspace .s360-ui-card--role-overview .s360-overview-row{
        padding:var(--s360-component-card-padding-compact, 16px);
    }
    body.wp-admin .s360-people-permissions-workspace .s360-role-overview-head{
        align-items:flex-start;
    }
    body.wp-admin .s360-people-permissions-workspace .s360-role-overview-head h3{
        font-size:16px;
    }
}

/* v13.3 TW-CSS-02: Teacher Workbench overview shortcut clarity.
 * Scope: Overview-only Teacher Workbench shortcut cards. The primary workflow
 * tabs remain the navigation; these cards are visually softened so they read as
 * dashboard shortcuts/status cards instead of a duplicated second tab bar.
 */
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-shortcuts-panel{
    padding:var(--s360-component-card-padding-compact, 16px) 18px 18px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-shortcuts-panel__header{
    align-items:flex-start;
    margin-bottom:var(--s360-component-card-header-gap, 14px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-shortcuts-panel__header h2{
    font-size:17px;
    line-height:1.25;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-shortcuts-panel__header p{
    max-width:72ch;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-grid{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));
    gap:12px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card{
    min-height:150px;
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
    justify-content:flex-start;
    gap:var(--s360-space-xs, 8px);
    background:linear-gradient(180deg,rgba(248,250,252,.92),rgba(255,255,255,.98));
    box-shadow:0 1px 2px rgba(15,23,42,.035);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card .s360-ui-stat-card__value{
    margin:0;
    color:var(--s360-color-text,#0f172a);
    font-size:clamp(22px,1.6vw,28px);
    line-height:1.05;
    letter-spacing:-.02em;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card h3{
    margin:0;
    color:var(--s360-color-text,#0f172a);
    font-size:14px;
    line-height:1.25;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card p{
    margin:2px 0 var(--s360-space-xs, 8px);
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card .s360-ui-button{
    width:auto;
    align-self:flex-start;
    min-height:28px;
    margin-top:auto;
    padding:var(--s360-space-2xs, 4px) 10px;
    font-size:12px;
    line-height:1.2;
}
@media (max-width:782px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-shortcuts-panel{
        padding:var(--s360-component-card-padding-tight, 14px);
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-grid{
        grid-template-columns:1fr;
    }
}

/* v13.3 TW-CSS-03: Teacher Workbench overview density and signal layout.
 * Scope: People > Teacher Workbench > Overview only. This reduces the
 * shortcut metric typography and places the roster snapshot and operations
 * queue into one balanced desktop signal grid.
 */
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card .s360-ui-stat-card__value{
    font-size:clamp(18px,1.2vw,22px);
    line-height:1.1;
    letter-spacing:-.015em;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card{
    min-height:138px;
    padding:var(--s360-space-sm, 12px) var(--s360-component-card-padding-tight, 14px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);
    gap:var(--s360-space-md,16px);
    align-items:stretch;
    margin:0 0 var(--s360-space-lg,24px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid > .s360-ui-card{
    min-width:0;
    margin-bottom:0;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid h2{
    font-size:16px;
    line-height:1.25;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid p{
    max-width:72ch;
    font-size:12px;
    line-height:1.45;
    color:var(--s360-color-text-muted,#475569);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid .s360-table-scroll{
    margin-top:12px;
    border:1px solid var(--s360-color-border,#d8e2ef);
    border-radius:12px;
    background:var(--s360-color-surface,#fff);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid .s360-ui-table{
    margin:0;
    min-width:640px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid .s360-ui-table th{
    font-size:11px;
    line-height:1.25;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid .s360-ui-table td{
    vertical-align:middle;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-roster-snapshot-card .s360-cluster-between{
    align-items:flex-start;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-roster-snapshot-card .s360-ui-button,
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-operations-queue-card .s360-ui-button{
    white-space:nowrap;
}
@media (max-width:1280px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid{
        grid-template-columns:1fr;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card .s360-ui-stat-card__value{
        font-size:20px;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid{
        gap:12px;
        margin-bottom:18px;
    }
}

/* v13.3 TW-CSS-04: Teacher Workbench overview micro cleanup.
 * Scope: People > Teacher Workbench > Overview only. Reduce the visual weight
 * of shortcut metric labels and remove the extra inner border around signal
 * tables so the outer card remains the single visible container border.
 */
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card .s360-ui-stat-card__value{
    font-size:clamp(15px,.9vw,17px);
    line-height:1.15;
    letter-spacing:-.01em;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-overview-signal-grid .s360-table-scroll{
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    padding-bottom:0;
}
@media (max-width:782px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-workflow-card .s360-ui-stat-card__value{
        font-size:16px;
    }
}

/* v13.3 STAT-INLINE-01: Shared stat/KPI inline metric row.
 * Scope: WordPress admin stat cards that expose the standard
 * .s360-ui-stat-card__value + label pattern. Keeps PHP markup, routes,
 * permissions, data queries, and JS unchanged.
 */
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value):has(> .s360-ui-stat-card__label),
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value + div:not([class])),
body.wp-admin .s360-admin-wrapper .s360-grid-4-stat > .s360-ui-card:has(> .s360-ui-stat-card__value + div:not([class])){
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    grid-template-areas:
        "value label"
        "helper helper"
        "meta meta"
        "delta delta"
        "footer footer"
        "action action";
    align-items:baseline;
    justify-content:start;
    column-gap:var(--s360-space-xs, 8px);
    row-gap:var(--s360-space-2xs, 4px);
}
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value):has(> .s360-ui-stat-card__label) > .s360-ui-stat-card__value,
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value + div:not([class])) > .s360-ui-stat-card__value,
body.wp-admin .s360-admin-wrapper .s360-grid-4-stat > .s360-ui-card:has(> .s360-ui-stat-card__value + div:not([class])) > .s360-ui-stat-card__value{
    grid-area:value;
    margin:0;
    align-self:baseline;
}
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value):has(> .s360-ui-stat-card__label) > .s360-ui-stat-card__label,
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value + div:not([class])) > .s360-ui-stat-card__value + div:not([class]),
body.wp-admin .s360-admin-wrapper .s360-grid-4-stat > .s360-ui-card:has(> .s360-ui-stat-card__value + div:not([class])) > .s360-ui-stat-card__value + div:not([class]){
    grid-area:label;
    min-width:0;
    margin:0;
    align-self:baseline;
    color:var(--s360-color-text-label,var(--s360-color-text-muted,#475569));
    font-size:12px;
    line-height:1.25;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value):has(> .s360-ui-stat-card__label) > :where(.s360-ui-stat-card__helper,.s360-ui-stat-card__meta,small),
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value + div:not([class])) > :where(.s360-ui-stat-card__helper,.s360-ui-stat-card__meta,small),
body.wp-admin .s360-admin-wrapper .s360-grid-4-stat > .s360-ui-card:has(> .s360-ui-stat-card__value + div:not([class])) > :where(.s360-ui-stat-card__helper,.s360-ui-stat-card__meta,small){
    grid-area:helper;
    grid-column:1/-1;
}
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value):has(> .s360-ui-stat-card__label) > .s360-ui-stat-card__delta,
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value + div:not([class])) > .s360-ui-stat-card__delta{
    grid-area:delta;
    grid-column:1/-1;
}
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value):has(> .s360-ui-stat-card__label) > .s360-ui-stat-card__footer,
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value + div:not([class])) > .s360-ui-stat-card__footer{
    grid-area:footer;
    grid-column:1/-1;
}
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value):has(> .s360-ui-stat-card__label) > .s360-ui-stat-card__action,
body.wp-admin .s360-admin-wrapper .s360-ui-stat-card:has(> .s360-ui-stat-card__value + div:not([class])) > .s360-ui-stat-card__action{
    grid-area:action;
    grid-column:1/-1;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-stats-grid > .s360-ui-card:has(> .s360-ui-stat-card__value + div:not([class])){
    min-height:60px;
    padding:10px var(--s360-space-sm, 12px);
}

/* v13.3 TW-COMM-01: Teacher Workbench Communication layout correction.
 * Scope: People > Teacher Workbench > Communication only. Removes the empty
 * left column from the generic two-column shell and turns Communication into a
 * main action-center + utility sidebar layout without changing handlers,
 * permissions, routes, DB queries, or JavaScript.
 */
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-layout{
    display:block;
    width:100%;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-empty{
    display:none;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-content{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,360px);
    gap:var(--s360-space-md,16px);
    align-items:start;
    width:100%;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-content > .s360-ui-card{
    min-width:0;
    margin-bottom:0;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-action-center-card{
    grid-column:1;
    grid-row:1;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card{
    grid-column:2;
    grid-row:1;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-messages-card,
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-announcements-card{
    grid-column:1;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-notifications-card{
    grid-column:2;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-content h2{
    font-size:16px;
    line-height:1.25;
    margin-top:0;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-content p{
    max-width:72ch;
    font-size:12px;
    line-height:1.45;
    color:var(--s360-color-text-muted,#475569);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card .s360-grid-2-compact{
    grid-template-columns:1fr;
    gap:var(--s360-space-xs, 8px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card .s360-ui-button{
    justify-content:center;
    min-height:34px;
    white-space:normal;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-action-form-stack{
    gap:var(--s360-space-md,16px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-action-form-card{
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
    justify-content:flex-start;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-action-form-card h3{
    font-size:14px;
    line-height:1.25;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-content .s360-ui-table{
    margin:0;
}
@media (max-width:1280px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-content{
        grid-template-columns:minmax(0,1fr) minmax(260px,320px);
    }
}
@media (max-width:960px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-content{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-action-center-card,
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card,
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-messages-card,
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-announcements-card,
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-notifications-card{
        grid-column:1;
        grid-row:auto;
    }
}
body.wp-admin .s360-teacher-workbench-phase-n :where(.s360-teacher-workbench-recent-messages-card,.s360-teacher-workbench-recent-announcements-card,.s360-teacher-workbench-recent-notifications-card){
    overflow-x:auto;
}
body.wp-admin .s360-teacher-workbench-phase-n :where(.s360-teacher-workbench-recent-messages-card,.s360-teacher-workbench-recent-announcements-card,.s360-teacher-workbench-recent-notifications-card) .s360-ui-table{
    min-width:420px;
}

/* v13.3 TW-COMM-02: Teacher Workbench Communication horizontal quick actions.
 * Scope: People > Teacher Workbench > Communication only. Converts Quick
 * Actions from a narrow vertical sidebar into a full-width horizontal action
 * bar and keeps Recent Notifications as a full-width horizontal content card.
 * No PHP handlers, routes, permissions, DB queries, or JavaScript are changed.
 */
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-communication-content{
    grid-template-columns:minmax(0,1fr);
    gap:var(--s360-space-md,16px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-action-center-card{
    grid-column:1;
    grid-row:1;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card{
    grid-column:1;
    grid-row:2;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    column-gap:var(--s360-space-md,16px);
    row-gap:10px;
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card h2{
    margin:0;
    white-space:nowrap;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card .s360-grid-2-compact{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    gap:var(--s360-space-xs, 8px);
    min-width:0;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card .s360-ui-button{
    min-height:32px;
    justify-content:center;
    white-space:nowrap;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card form{
    margin:0;
    display:flex;
    justify-content:flex-end;
    min-width:max-content;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-messages-card{
    grid-column:1;
    grid-row:3;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-announcements-card{
    grid-column:1;
    grid-row:4;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-notifications-card{
    grid-column:1;
    grid-row:5;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-recent-notifications-card .s360-ui-table{
    min-width:0;
    width:100%;
}
@media (max-width:1280px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card{
        grid-template-columns:1fr;
        align-items:stretch;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card h2{
        white-space:normal;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card form{
        justify-content:flex-start;
        min-width:0;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card .s360-grid-2-compact{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-quick-actions-card .s360-ui-button{
        white-space:normal;
    }
}

/* v13.3 TW-ALERTS-01: Teacher Workbench Alerts & Insights layout polish.
 * Scope: People > Teacher Workbench > Alerts & Insights only. Removes the
 * empty left column from the generic two-column shell, places alert/automation/
 * insight cards in a single horizontal content flow, and keeps wide tables
 * contained without changing handlers, permissions, routes, DB queries, or JS.
 */
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-layout{
    display:block;
    width:100%;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-empty{
    display:none;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-content{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:var(--s360-space-md,16px);
    align-items:start;
    width:100%;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-content > .s360-ui-card{
    min-width:0;
    margin-bottom:0;
    justify-content:flex-start;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-content h2{
    font-size:16px;
    line-height:1.25;
    margin-top:0;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-content p{
    max-width:82ch;
    font-size:12px;
    line-height:1.45;
    color:var(--s360-color-text-muted,#475569);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-active-alerts-card{
    grid-row:1;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-automation-actions-card{
    grid-row:2;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-performance-insights-card{
    grid-row:3;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-content .s360-table-scroll{
    width:100%;
    overflow-x:auto;
    border:0;
    box-shadow:none;
    background:transparent;
    padding:0;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-content .s360-ui-table{
    margin:0;
    width:100%;
}
body.wp-admin .s360-teacher-workbench-phase-n :where(.s360-teacher-workbench-active-alerts-card,.s360-teacher-workbench-automation-actions-card) .s360-ui-table{
    min-width:720px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-performance-insights-card .s360-ui-table{
    min-width:920px;
}
@media (max-width:782px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-alerts-content{
        gap:var(--s360-space-sm,12px);
    }
    body.wp-admin .s360-teacher-workbench-phase-n :where(.s360-teacher-workbench-active-alerts-card,.s360-teacher-workbench-automation-actions-card) .s360-ui-table{
        min-width:640px;
    }
}

/* v13.3 TW-PROFILE-01: Teacher Workbench profile identity line.
 * Scope: shared Teacher Workbench context card across all workbench subtabs.
 * Keeps profile data, permissions, routes, DB queries, handlers, and JS unchanged.
 */
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-context-card .s360-teacher-workbench-context-card__summary{
    min-width:0;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-profile-line{
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:4px 14px;
    margin:0 0 8px;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-profile-line h2{
    min-width:0;
    margin:0;
    font-size:16px;
    line-height:1.25;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-profile-line__meta{
    display:inline-flex;
    align-items:baseline;
    gap:4px;
    min-width:0;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.25;
    white-space:normal;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-profile-line__meta strong{
    color:var(--s360-color-text-strong,var(--s360-color-text,#1f2937));
    font-weight:var(--s360-font-weight-semibold,600);
}
@media (max-width:782px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-profile-line{
        gap:3px 10px;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-profile-line h2{
        flex-basis:100%;
    }
}


/* v13.3 PERM-NOTICE-01: keep permission safety callouts inside the Roles & Permissions content area.
 * These are intentionally not WordPress `.notice` elements so they do not read
 * like global People workspace notices above the main People tabs.
 */
body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callouts{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));
    gap:10px;
    margin:-4px 0 var(--s360-space-md,16px);
}
body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callout{
    display:flex;
    align-items:flex-start;
    gap:8px;
    min-width:0;
    padding:9px 11px;
    border:1px solid var(--s360-color-border,#d9e2ec);
    border-left:3px solid var(--s360-color-primary,#2271b1);
    border-radius:var(--s360-radius-md,10px);
    background:var(--s360-color-surface,#fff);
    color:var(--s360-color-text,#0f172a);
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}
body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callout strong{
    flex:0 0 auto;
    max-width:42%;
    color:var(--s360-color-heading,#0f172a);
    font-size:12px;
    font-weight:800;
    line-height:1.35;
}
body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callout span{
    min-width:0;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.4;
}
body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callout--info{
    border-left-color:var(--s360-color-primary,#2271b1);
    background:linear-gradient(180deg,rgba(239,246,255,.76),rgba(255,255,255,.98));
}
body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callout--warning{
    border-left-color:var(--s360-color-warning,#d97706);
    background:linear-gradient(180deg,rgba(255,251,235,.82),rgba(255,255,255,.98));
}
body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callout--audit{
    border-left-color:var(--s360-color-info,#0ea5e9);
    background:linear-gradient(180deg,rgba(240,249,255,.78),rgba(255,255,255,.98));
}
@media (max-width:782px){
    body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callout{
        flex-direction:column;
        gap:3px;
    }
    body.wp-admin .s360-people-permissions-workspace .s360-permission-safety-callout strong{
        max-width:100%;
    }
}


/* v13.3 TW-NOTICE-01: scoped Teacher Workbench preview safety callout.
 * Replaces the generic WordPress `.notice` presentation so preview mode reads
 * like a contextual Teacher Workbench callout instead of a global People notice.
 */
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-safety-callouts{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:10px;
    margin:-2px 0 var(--s360-space-md,16px);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-safety-callout{
    display:flex;
    align-items:flex-start;
    gap:8px;
    max-width:min(100%,760px);
    min-width:0;
    padding:9px 11px;
    border:1px solid var(--s360-color-border,#d9e2ec);
    border-left:3px solid var(--s360-color-primary,#2271b1);
    border-radius:var(--s360-radius-md,10px);
    background:linear-gradient(180deg,rgba(239,246,255,.76),rgba(255,255,255,.98));
    color:var(--s360-color-text,#0f172a);
    box-shadow:0 1px 2px rgba(15,23,42,.04);
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-safety-callout strong{
    flex:0 0 auto;
    max-width:42%;
    color:var(--s360-color-heading,#0f172a);
    font-size:12px;
    font-weight:800;
    line-height:1.35;
}
body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-safety-callout span{
    min-width:0;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.4;
}
@media (max-width:782px){
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-safety-callout{
        flex-direction:column;
        gap:3px;
        max-width:100%;
    }
    body.wp-admin .s360-teacher-workbench-phase-n .s360-teacher-workbench-safety-callout strong{
        max-width:100%;
    }
}

/* v13.3 COMM-UI-01: Communication Overview density/dashboard cleanup.
 * Scope: Communication Center Overview only. Keeps routes, permissions,
 * delivery handlers, notification handlers, and data queries unchanged.
 */
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-kpi-grid{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));
    gap:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-shortcuts-panel{
    display:block;
    padding:var(--s360-component-card-padding-compact, 16px) 18px 18px;
}
body.wp-admin .s360-communication-overview-phase-m .s360-section-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--s360-space-sm, 12px);
    margin:0 0 var(--s360-component-card-header-gap, 14px);
}
body.wp-admin .s360-communication-overview-phase-m .s360-section-heading h2{
    margin:0;
    font-size:17px;
    line-height:1.25;
}
body.wp-admin .s360-communication-overview-phase-m .s360-section-heading p{
    max-width:46rem;
    margin:2px 0 0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-shortcuts-grid{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));
    gap:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-shortcuts-grid .s360-communication-workflow-card{
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    gap:var(--s360-space-xs, 8px);
    min-height:0;
    padding:var(--s360-component-card-padding-tight, 14px);
    box-shadow:var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.05));
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-shortcuts-grid .s360-communication-workflow-card > strong{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:14px;
    line-height:1.3;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-shortcuts-grid .s360-communication-workflow-card p{
    margin:0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-shortcuts-grid .s360-communication-workflow-card .s360-ui-button,
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-shortcuts-grid .s360-communication-workflow-card .button{
    align-self:flex-start;
    margin-top:auto;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance{
    display:block;
    padding:0;
    overflow:hidden;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance > summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--s360-space-sm, 12px);
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
    cursor:pointer;
    color:var(--s360-color-text-heading,#0f172a);
    font-weight:700;
    list-style-position:inside;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance > summary::marker{
    color:var(--s360-color-primary,#2271b1);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance > summary .description{
    max-width:48rem;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    font-weight:500;
    line-height:1.4;
    text-align:right;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance[open] > summary{
    border-bottom:1px solid var(--s360-color-border-muted,#e2e8f0);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    padding:16px;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance-section h3{
    margin:0 0 10px;
    font-size:13px;
    line-height:1.3;
    text-transform:uppercase;
    letter-spacing:.04em;
    color:var(--s360-color-text-muted,#64748b);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance-section .s360-ui-grid{
    grid-template-columns:1fr;
    gap:10px;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance-section .s360-ui-card--compact{
    padding:var(--s360-space-sm, 12px);
    box-shadow:none;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance-section .s360-ui-card--compact p{
    margin:6px 0 0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));
    gap:16px;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-card{
    display:block;
    padding:var(--s360-component-card-padding-compact, 16px);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-card h2{
    margin:0 0 var(--s360-space-sm, 12px);
    font-size:16px;
    line-height:1.3;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-card .s360-list{
    margin:0;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-card .s360-list li{
    padding:10px 0;
    border-top:1px solid var(--s360-color-border-subtle,#eef2f7);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-card .s360-list li:first-child{
    padding-top:0;
    border-top:0;
}
@media (max-width:900px){
    body.wp-admin .s360-communication-overview-phase-m .s360-section-heading,
    body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance > summary{
        flex-direction:column;
        align-items:flex-start;
    }
    body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance > summary .description{
        text-align:left;
    }
    body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance-grid{
        grid-template-columns:1fr;
    }
}

/* v13.3 COMM-UI-02: Communication Overview guidance placement and recent item readability.
 * Scope: Communication Center Overview only. Reorders PHP output and adds
 * structured subject/sender/body styling without changing handlers or queries.
 */
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance{
    margin-top:12px;
    margin-bottom:16px;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-list{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin:0;
    padding:0;
    list-style:none;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-list .s360-communication-overview-recent-item,
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-list .s360-communication-overview-recent-item:first-child{
    margin:0;
    padding:12px;
    border:1px solid var(--s360-color-border-subtle,#eef2f7);
    border-radius:12px;
    background:var(--s360-color-surface,#fff);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-head,
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-body{
    display:grid;
    grid-template-columns:72px minmax(0,1fr);
    gap:10px;
    min-width:0;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-head strong{
    min-width:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:13px;
    font-weight:800;
    line-height:1.35;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-label{
    color:var(--s360-color-text-muted,#64748b);
    font-size:10px;
    font-weight:800;
    line-height:1.4;
    letter-spacing:.04em;
    text-transform:uppercase;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-meta{
    display:grid;
    grid-template-columns:72px minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    min-width:0;
    margin-top:6px;
    color:var(--s360-color-text,#334155);
    font-size:12px;
    line-height:1.35;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-meta > span:not(.s360-communication-overview-recent-label):not(.s360-communication-overview-recent-date){
    min-width:0;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-date{
    justify-self:end;
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    white-space:nowrap;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-body{
    margin:8px 0 0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-body span:last-child{
    min-width:0;
    overflow-wrap:anywhere;
}
@media (max-width:782px){
    body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-head,
    body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-body,
    body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-meta{
        grid-template-columns:1fr;
        gap:3px;
    }
    body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-date{
        justify-self:start;
    }
}

/* v13.3 COMM-UI-03: compact Communication guidance notice and cleaner recent activity rows.
 * Scope: Communication Center Overview only. Keeps guidance as a collapsible
 * notice and removes explicit Subject/Sender/Body labels from recent items.
 */
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance{
    margin:8px 0 12px;
    border-left:4px solid var(--s360-color-primary,#2271b1);
    border-radius:10px;
    box-shadow:none;
    background:var(--s360-color-surface-subtle,#f8fafc);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance > summary{
    padding:9px var(--s360-space-sm, 12px);
    min-height:0;
    gap:var(--s360-space-xs, 8px);
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance > summary span:first-child{
    font-size:13px;
    line-height:1.3;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance > summary .description{
    font-size:11px;
    line-height:1.35;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance-grid{
    gap:12px;
    padding:12px;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-guidance-section .s360-ui-card--compact{
    padding:10px;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-list{
    gap:0;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-list .s360-communication-overview-recent-item,
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-list .s360-communication-overview-recent-item:first-child{
    padding:11px 0;
    border:0;
    border-bottom:1px solid var(--s360-color-border-subtle,#eef2f7);
    border-radius:0;
    background:transparent;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-list .s360-communication-overview-recent-item:first-child{
    padding-top:0;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-list .s360-communication-overview-recent-item:last-child{
    padding-bottom:0;
    border-bottom:0;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
    gap:10px;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-body{
    display:block;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-head strong{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:13px;
    font-weight:800;
    line-height:1.35;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-meta{
    display:block;
    margin-top:4px;
    color:var(--s360-color-text,#475569);
    font-size:12px;
    line-height:1.35;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-body{
    margin:5px 0 0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-date{
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    line-height:1.35;
    white-space:nowrap;
}
@media (max-width:782px){
    body.wp-admin .s360-communication-overview-phase-m .s360-communication-overview-recent-head{
        grid-template-columns:1fr;
        gap:3px;
    }
}

/* v13.3 COMM-MSG-01: Messages overview mailbox list, cleaner inbox, and modern compose form.
 * Scope: Communication Center > Messages only. Keeps handlers, routes,
 * permissions, nonces, and message queries unchanged.
 */
body.wp-admin .s360-messages-phase-m .s360-message-section-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--s360-space-sm, 12px);
    margin:0 0 var(--s360-component-card-header-gap, 14px);
}
body.wp-admin .s360-messages-phase-m .s360-message-section-header h2{
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:17px;
    line-height:1.25;
}
body.wp-admin .s360-messages-phase-m .s360-message-section-header p{
    margin:var(--s360-space-2xs, 4px) 0 0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin .s360-messages-phase-m .s360-message-section-header > span{
    flex:0 0 auto;
    padding:var(--s360-space-2xs, 4px) 9px;
    border-radius:999px;
    background:var(--s360-color-bg-subtle,#f1f5f9);
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    font-weight:800;
    line-height:1.3;
    white-space:nowrap;
}
body.wp-admin .s360-messages-phase-m .s360-message-recent-card{
    padding:18px;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-list{
    display:flex;
    flex-direction:column;
    gap:0;
    margin:0;
    padding:0;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item{
    display:grid;
    grid-template-columns:10px minmax(0,1fr) auto;
    gap:12px;
    align-items:start;
    padding:13px 0;
    border-bottom:1px solid var(--s360-color-border-subtle,#eef2f7);
    color:inherit;
    text-decoration:none;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item:first-child{
    padding-top:0;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item:last-child{
    padding-bottom:0;
    border-bottom:0;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item:hover,
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item:focus-visible{
    color:inherit;
    text-decoration:none;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item:hover .s360-message-mailbox-subject,
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item:focus-visible .s360-message-mailbox-subject{
    color:var(--s360-color-primary,#2271b1);
    text-decoration:underline;
    text-underline-offset:2px;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-status{
    width:8px;
    height:8px;
    margin-top:5px;
    border-radius:999px;
    background:var(--s360-color-border-muted,#dbe5f0);
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item.is-unread .s360-message-mailbox-status{
    background:var(--s360-color-primary,#2271b1);
    box-shadow:0 0 0 3px rgba(34,113,177,.12);
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-main{
    display:flex;
    flex-direction:column;
    gap:3px;
    min-width:0;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-subject{
    min-width:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:13px;
    font-weight:800;
    line-height:1.35;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-meta{
    color:var(--s360-color-text,#475569);
    font-size:12px;
    font-weight:600;
    line-height:1.35;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-preview{
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
    overflow-wrap:anywhere;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-side{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:7px;
    min-width:78px;
}
body.wp-admin .s360-messages-phase-m .s360-message-mailbox-date{
    color:var(--s360-color-text-muted,#64748b);
    font-size:11px;
    line-height:1.35;
    white-space:nowrap;
}
body.wp-admin .s360-messages-phase-m .s360-message-inbox-card{
    padding:18px;
}
body.wp-admin .s360-messages-phase-m .s360-message-inbox-card .s360-ui-table-wrap{
    border:0;
    border-radius:0;
    box-shadow:none;
    background:transparent;
}
body.wp-admin .s360-messages-phase-m .s360-message-inbox-card .s360-ui-table-wrap > .s360-ui-table-toolbar:first-child{
    border-radius:0;
}
body.wp-admin .s360-messages-phase-m .s360-message-inbox-card .s360-ui-table--communication{
    border:0;
    border-radius:0;
    box-shadow:none;
}
body.wp-admin .s360-messages-phase-m .s360-message-inbox-card .s360-ui-table--communication :where(th,td):first-child{
    padding-left:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-messages-phase-m .s360-message-inbox-card .s360-ui-table--communication :where(th,td):last-child{
    padding-right:var(--s360-space-sm, 12px);
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-card{
    max-width:940px;
    padding:22px;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin:0 0 18px;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-header h2{
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:18px;
    line-height:1.25;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-header p{
    margin:5px 0 0;
    max-width:42rem;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-form{
    display:flex;
    flex-direction:column;
    gap:16px;
    margin:0;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-field{
    display:flex;
    flex-direction:column;
    gap:6px;
    min-width:0;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-field > label{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:12px;
    font-weight:800;
    line-height:1.35;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-field :where(input[type="text"],select){
    width:100%;
    max-width:none;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-field--editor{
    gap:8px;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-editor-shell{
    overflow:hidden;
    border:1px solid var(--s360-color-border-muted,#dbe5f0);
    border-radius:12px;
    background:var(--s360-color-surface,#fff);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-editor-shell :where(.wp-editor-wrap,.wp-editor-container){
    border:0;
    box-shadow:none;
}
body.wp-admin .s360-messages-phase-m .s360-message-compose-actions{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
}
@media (max-width:782px){
    body.wp-admin .s360-messages-phase-m .s360-message-section-header,
    body.wp-admin .s360-messages-phase-m .s360-message-compose-header{
        flex-direction:column;
        align-items:flex-start;
    }
    body.wp-admin .s360-messages-phase-m .s360-message-mailbox-item{
        grid-template-columns:10px minmax(0,1fr);
    }
    body.wp-admin .s360-messages-phase-m .s360-message-mailbox-side{
        grid-column:2;
        align-items:flex-start;
        min-width:0;
    }
    body.wp-admin .s360-messages-phase-m .s360-message-compose-grid{
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-messages-phase-m .s360-message-compose-card{
        padding:var(--s360-component-card-padding-compact, 16px);
    }
}

/* COMM-SPLIT-01: nested Communication workflow pages */
body.wp-admin .s360-communication-phase-m .s360-communication-subnav--nested{
    margin-top:14px;
    margin-bottom:14px;
}
body.wp-admin .s360-communication-phase-m .s360-communication-subpage-body{
    max-width:1180px;
}
body.wp-admin .s360-communication-phase-m .s360-communication-form-card{
    padding:var(--s360-component-card-padding, 20px);
}
body.wp-admin .s360-communication-phase-m .s360-communication-form-card .s360-ui-form-grid{
    width:100%;
}
body.wp-admin .s360-communication-phase-m .s360-communication-form-card :where(input[type="text"],input[type="datetime-local"],select,textarea){
    max-width:100%;
}

/* COMM-SEND-01: modernized Communication send/create forms */
body.wp-admin .s360-communication-phase-m .s360-communication-subpage-body{
    align-items:start;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-card{
    width:100%;
    max-width:1040px;
    padding:var(--s360-space-lg, 24px);
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-card h2{
    margin:0 0 var(--s360-space-md, 16px);
    color:var(--s360-color-text-heading,#0f172a);
    font-size:18px;
    line-height:1.25;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-card > p{
    margin:0 0 18px;
    max-width:48rem;
    color:var(--s360-color-text-muted,#64748b);
    font-size:13px;
    line-height:1.5;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form{
    display:flex;
    flex-direction:column;
    gap:18px;
    margin:0;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid{
    display:block;
    width:100%;
    margin:0;
    border:0;
    background:transparent;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid tbody{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px 18px;
    width:100%;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid tr{
    display:flex;
    flex-direction:column;
    gap:7px;
    min-width:0;
    padding:0;
    border:0;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid tr.s360-communication-editor-row{
    grid-column:1 / -1;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid th,
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid td{
    display:block;
    width:auto;
    min-width:0;
    padding:0 !important;
    border:0;
    background:transparent;
    vertical-align:top;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid th{
    color:var(--s360-color-text-heading,#0f172a);
    font-size:12px;
    font-weight:800;
    line-height:1.35;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid th label{
    display:inline-flex;
    align-items:center;
    gap:6px;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form :where(input[type="text"],input[type="datetime-local"],select,textarea){
    width:100%;
    max-width:none;
    min-height:40px;
    border-radius:10px;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form textarea{
    min-height:104px;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .description{
    margin:6px 0 0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.4;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form label:has(input[type="checkbox"]){
    display:flex;
    align-items:flex-start;
    gap:8px;
    margin:0 0 7px;
    color:var(--s360-color-text,#334155);
    font-size:13px;
    line-height:1.35;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form label:has(input[type="checkbox"]):last-child{
    margin-bottom:0;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form :where(.wp-editor-wrap,.wp-editor-container){
    max-width:100%;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .wp-editor-wrap{
    border:1px solid var(--s360-color-border-muted,#dbe5f0);
    border-radius:12px;
    overflow:hidden;
    background:var(--s360-color-surface,#fff);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .wp-editor-container{
    border:0;
    box-shadow:none;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .wp-editor-tools{
    padding:8px 10px 0;
    background:var(--s360-color-surface-muted,#f8fafc);
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .mce-toolbar-grp,
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .quicktags-toolbar{
    border-left:0;
    border-right:0;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form > .s360-ui-button,
body.wp-admin .s360-communication-phase-m .s360-communication-send-form > .button,
body.wp-admin .s360-communication-phase-m .s360-communication-send-form > button{
    align-self:flex-start;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form > .s360-ui-button + .s360-ui-button,
body.wp-admin .s360-communication-phase-m .s360-communication-send-form > .button + .button,
body.wp-admin .s360-communication-phase-m .s360-communication-send-form > button + button{
    margin-left:8px;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-audience-preview,
body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-communication-audience-preview{
    margin-top:2px;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-notes{
    align-self:start;
    padding:22px;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-notes h2{
    margin:0 0 14px;
    font-size:17px;
    line-height:1.25;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-notes .s360-list{
    margin:0;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-card--audience{
    max-width:none;
}
body.wp-admin .s360-communication-phase-m .s360-communication-send-card--audience .s360-ui-form-grid tbody{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (max-width:960px){
    body.wp-admin .s360-communication-phase-m .s360-communication-send-card{
        max-width:none;
    }
    body.wp-admin .s360-communication-phase-m .s360-communication-send-form .s360-ui-form-grid tbody,
    body.wp-admin .s360-communication-phase-m .s360-communication-send-card--audience .s360-ui-form-grid tbody{
        grid-template-columns:1fr;
    }
}
@media (max-width:782px){
    body.wp-admin .s360-communication-phase-m .s360-communication-send-card,
    body.wp-admin .s360-communication-phase-m .s360-communication-send-notes{
        padding:16px;
    }
}

/* v13.3 approved UI/IX Phase 1: unified sub/workflow tabs.
 * Scope: every `.s360-ui-sub-tabs` navigation strip across modules/pages.
 * Goal: one compact secondary visual contract for Students, Academic,
 * People, Communication, Admissions, Custom Fields, HR profile, Schools,
 * Settings, System, Transport and template-driven sub tabs.
 * Main/page-level tabs remain guarded by `.s360-ui-main-tabs`.
 */
.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
body.wp-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
body.wp-admin .s360-tailwind-foundation .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
body.wp-admin .s360-admin-wrapper .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
body.wp-admin .s360-grouped-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs){
    position:relative;
    top:auto;
    z-index:auto;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:6px;
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:12px 0 18px;
    padding:6px;
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-left:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-bottom:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-radius:12px;
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
    backdrop-filter:none;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
    transform:none;
}
.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
body.wp-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
body.wp-admin .s360-tailwind-foundation .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
body.wp-admin .s360-admin-wrapper .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
body.wp-admin .s360-grouped-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:34px;
    min-width:0;
    width:auto;
    max-width:none;
    margin:0;
    padding:7px 11px;
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:9px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-text-muted,var(--s360-color-text-secondary,#475569));
    font-size:12px;
    font-weight:700;
    line-height:1.25;
    letter-spacing:.01em;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    cursor:pointer;
    transform:none;
}
.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):hover,
.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):focus-visible,
body.wp-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):hover,
body.wp-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):focus-visible,
body.wp-admin .s360-tailwind-foundation .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):hover,
body.wp-admin .s360-tailwind-foundation .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):focus-visible,
body.wp-admin .s360-admin-wrapper .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):hover,
body.wp-admin .s360-admin-wrapper .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):focus-visible,
body.wp-admin .s360-grouped-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):hover,
body.wp-admin .s360-grouped-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):focus-visible{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 2px rgba(15,23,42,.05);
    outline:none;
    transform:none;
}
.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,.s360-hr-profile-tab-active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,.s360-hr-profile-tab-active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin .s360-tailwind-foundation .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,.s360-hr-profile-tab-active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin .s360-admin-wrapper .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,.s360-hr-profile-tab-active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin .s360-grouped-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,.s360-hr-profile-tab-active,[aria-current="page"],[aria-selected="true"]){
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 3px rgba(15,23,42,.08);
}
.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.disabled,[disabled],[aria-disabled="true"]),
body.wp-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.disabled,[disabled],[aria-disabled="true"]),
body.wp-admin .s360-tailwind-foundation .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.disabled,[disabled],[aria-disabled="true"]),
body.wp-admin .s360-admin-wrapper .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.disabled,[disabled],[aria-disabled="true"]),
body.wp-admin .s360-grouped-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.disabled,[disabled],[aria-disabled="true"]){
    cursor:not-allowed;
    opacity:.58;
    box-shadow:none;
}
@media (max-width:782px){
    .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
    body.wp-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
    body.wp-admin .s360-tailwind-foundation .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
    body.wp-admin .s360-admin-wrapper .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
    body.wp-admin .s360-grouped-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs){
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
        scroll-snap-type:x proximity;
    }
    .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
    body.wp-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
    body.wp-admin .s360-tailwind-foundation .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
    body.wp-admin .s360-admin-wrapper .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
    body.wp-admin .s360-grouped-admin .s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab){
        scroll-snap-align:start;
    }
}

/* v13.3 approved UI/IX Phase 1.1: Students sub-tabs visual alignment.
 * Scope: Students-owned workflow subnav aliases that have stronger legacy
 * specificity than the global Phase 1 `.s360-ui-sub-tabs` contract.
 * This keeps Students/Attendance/Transport sub-tabs visually identical to
 * the approved unified secondary sub-tab style without changing markup or JS.
 */
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs){
    position:relative;
    top:auto;
    z-index:auto;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:6px;
    width:100%;
    max-width:none;
    min-width:0;
    box-sizing:border-box;
    margin:12px 0 18px;
    padding:6px;
    border:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-left:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-bottom:1px solid var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0));
    border-radius:12px;
    background:var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc));
    background-image:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
    backdrop-filter:none;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab),
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:34px;
    min-width:0;
    width:auto;
    max-width:none;
    margin:0;
    padding:7px 11px;
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:9px;
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-color-text-muted,var(--s360-color-text-secondary,#475569));
    font-size:12px;
    font-weight:700;
    line-height:1.25;
    letter-spacing:.01em;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    cursor:pointer;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):hover,
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):focus-visible,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):hover,
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):focus-visible{
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe));
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 2px rgba(15,23,42,.05);
    outline:none;
    transform:none;
}
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]){
    border-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    border-bottom-color:var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe));
    background:var(--s360-color-surface,var(--s360-color-white,#fff));
    background-image:none;
    color:var(--s360-color-primary,#2271b1);
    box-shadow:0 1px 3px rgba(15,23,42,.08);
}
@media (max-width:782px){
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs),
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs){
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-space-sm,12px);
        scroll-snap-type:x proximity;
    }
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab),
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-students-subnav.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab),
    body.wp-admin .s360-tailwind-foundation.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab),
    body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-page-shell .s360-student-ops-subtabs.s360-ui-sub-tabs.s360-ui-tabs__nav:not(.s360-ui-main-tabs) > :is(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab){
        scroll-snap-align:start;
    }
}
/* v13.3 approved UI/IX Forms Phase 1.1: unified admin form visual alignment.
 * Scope: CSS-only final compatibility layer for existing School 360 admin forms.
 * Goal: normalize raw/helper controls, table-style create/edit forms, HR employee
 * forms, card forms, filters and inline action rows without changing PHP markup,
 * form actions, field names, nonces, validation, JS hooks or database behavior.
 */
body.wp-admin .s360-admin-wrapper :where(.s360-ui-form,.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-form-grid,.s360-ui-form-grid,.s360-ui-form-table,.form-table){
    box-sizing:border-box;
    max-width:100%;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-field,.s360-form-field,.school360-form-field,.s360-ui-field,.s360-field){
    display:flex;
    flex-direction:column;
    gap:var(--s360-form-field-gap,6px);
    min-width:0;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-field,.s360-form-field,.school360-form-field,.s360-ui-field,.s360-field) > :where(label,.s360-ui-form-label,.s360-form-label),
body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-table,.form-table,table.s360-ui-form-grid--table) th,
body.wp-admin .s360-admin-wrapper :where(.s360-filter-bar,.s360-filter-grid,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form) label{
    color:var(--s360-color-form-label,var(--s360-color-text-label,#475569));
    font-size:12px;
    font-weight:800;
    letter-spacing:.035em;
    line-height:1.35;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form,.s360-form-grid,.s360-ui-form-grid,.s360-filter-bar,.s360-filter-grid,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],input[type="tel"],select,textarea,.s360-ui-control,.s360-ui-input,.s360-ui-select,.s360-ui-textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(.wp-color-picker):not(.wp-picker-clear):not(.button):not(.s360-unstyled-control){
    box-sizing:border-box;
    max-width:100%;
    min-width:0;
    min-height:var(--s360-control-height-md,38px);
    border:var(--s360-control-border-width,1px) solid var(--s360-color-input-border,var(--s360-color-border,#cbd5e1));
    border-radius:var(--s360-control-radius,10px);
    background:var(--s360-color-input-bg,var(--s360-color-surface-raised,#fff));
    color:var(--s360-color-input-text,var(--s360-color-text-body,#1e293b));
    box-shadow:var(--s360-shadow-input,0 1px 2px rgba(15,23,42,.04));
    font-size:14px;
    line-height:1.45;
    padding:var(--s360-control-padding-y,8px) var(--s360-control-padding-x,12px);
    transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease,color .15s ease;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form,.s360-form-grid,.s360-ui-form-grid,.s360-filter-bar,.s360-filter-grid,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form) :where(select,.s360-ui-select):not(.s360-unstyled-control){
    padding-right:34px;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form,.s360-form-grid,.s360-ui-form-grid) :where(textarea,.s360-ui-textarea):not(.s360-unstyled-control){
    min-height:108px;
    resize:vertical;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form,.s360-form-grid,.s360-ui-form-grid,.s360-filter-bar,.s360-filter-grid,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],input[type="tel"],select,textarea,.s360-ui-control,.s360-ui-input,.s360-ui-select,.s360-ui-textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(.wp-color-picker):not(.wp-picker-clear):not(.button):not(.s360-unstyled-control):hover{
    border-color:var(--s360-color-input-border-hover,var(--s360-color-border-strong,#94a3b8));
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form,.s360-form-grid,.s360-ui-form-grid,.s360-filter-bar,.s360-filter-grid,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],input[type="tel"],select,textarea,.s360-ui-control,.s360-ui-input,.s360-ui-select,.s360-ui-textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(.wp-color-picker):not(.wp-picker-clear):not(.button):not(.s360-unstyled-control):focus,
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form,.s360-form-grid,.s360-ui-form-grid,.s360-filter-bar,.s360-filter-grid,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],input[type="tel"],select,textarea,.s360-ui-control,.s360-ui-input,.s360-ui-select,.s360-ui-textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(.wp-color-picker):not(.wp-picker-clear):not(.button):not(.s360-unstyled-control):focus-visible{
    outline:none;
    border-color:var(--s360-color-input-border-focus,var(--s360-color-primary,#2271b1));
    box-shadow:var(--s360-shadow-input-focus,0 0 0 3px rgba(34,113,177,.16));
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form,.s360-form-grid,.s360-ui-form-grid) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],input[type="tel"],select,textarea,.s360-ui-control,.s360-ui-input,.s360-ui-select,.s360-ui-textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):disabled,
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form,.s360-form-grid,.s360-ui-form-grid) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],input[type="tel"],select,textarea,.s360-ui-control,.s360-ui-input,.s360-ui-select,.s360-ui-textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"])[readonly]{
    background:var(--s360-color-input-disabled-bg,var(--s360-color-bg-subtle,#f8fafc));
    border-color:var(--s360-color-input-disabled-border,var(--s360-color-border-muted,#e2e8f0));
    color:var(--s360-color-input-disabled-text,var(--s360-color-text-tertiary,#64748b));
    cursor:not-allowed;
    box-shadow:none;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,.s360-ui-form) :where(input[type="checkbox"],input[type="radio"]):not(.s360-unstyled-control){
    accent-color:var(--s360-color-primary-strong,var(--s360-color-primary,#2271b1));
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-grid,.s360-form-grid,.s360-form-grid-2,.s360-filter-grid){
    display:grid;
    gap:var(--s360-form-row-gap,14px);
    min-width:0;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-grid,.s360-form-grid,.s360-form-grid-2):not(table){
    grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-grid--single,.s360-form-grid--single){
    grid-template-columns:1fr;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-actions,.s360-form-actions,.s360-card-actions,form > .submit){
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--s360-form-actions-gap,10px);
    margin:var(--s360-space-md,16px) 0 0;
    padding:0;
}
body.wp-admin .s360-admin-wrapper :where(.s360-filter-bar,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form){
    display:flex;
    flex-wrap:wrap;
    align-items:flex-end;
    gap:var(--s360-form-actions-gap,10px);
    max-width:100%;
}
body.wp-admin .s360-admin-wrapper :where(.s360-filter-bar,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form) :where(input:not([type]),input[type="text"],input[type="search"],input[type="date"],input[type="number"],select){
    width:auto;
    flex:1 1 180px;
}
body.wp-admin .s360-admin-wrapper :where(.s360-inline-form,.s360-ui-inline-form,.s360-inline-action-form,.s360-u-inline){
    display:inline-flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    max-width:100%;
}
body.wp-admin .s360-admin-wrapper :where(.s360-inline-form,.s360-ui-inline-form,.s360-inline-action-form,.s360-u-inline) :where(input:not([type]),input[type="text"],input[type="number"],input[type="date"],select){
    width:auto;
    min-width:120px;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table){
    display:block;
    width:100%;
    margin:0;
    border-collapse:separate;
    border-spacing:0;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table caption){
    display:block;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table tbody){
    display:grid;
    gap:12px;
    width:100%;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table tr){
    display:grid;
    grid-template-columns:minmax(120px,160px) minmax(0,1fr);
    gap:12px 18px;
    align-items:start;
    width:100%;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table th){
    display:block;
    width:auto;
    padding:9px 0 0;
    vertical-align:top;
    color:var(--s360-color-form-label,var(--s360-color-text-label,#475569));
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table td){
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    min-width:0;
    padding:0;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table td) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="date"],select):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(.wp-color-picker):not(.button){
    flex:1 1 180px;
    width:auto;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table td) :where(input[size="6"],input[name="currency"]){
    flex:0 1 96px;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table td) :where(textarea,.s360-ui-textarea){
    flex:1 1 100%;
    width:100%;
    min-height:110px;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(.s360-ui-section-card--hr-panel form > p:has(input,.s360-ui-control,select,textarea,.s360-ui-button,.button),.s360-ui-card--hr-legacy-panel form > .inside > p:has(input,.s360-ui-control,select,textarea,.s360-ui-button,.button)){
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--s360-space-xs, 8px);
    margin:0 0 var(--s360-space-sm,12px);
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(.s360-ui-section-card--hr-panel form > p:has(input,.s360-ui-control,select,textarea,.s360-ui-button,.button),.s360-ui-card--hr-legacy-panel form > .inside > p:has(input,.s360-ui-control,select,textarea,.s360-ui-button,.button)) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="date"],input[type="time"],select):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(.button){
    flex:1 1 180px;
    width:auto;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(.s360-ui-section-card--hr-panel form > p:has(textarea),.s360-ui-card--hr-legacy-panel form > .inside > p:has(textarea)){
    align-items:stretch;
}
body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(.s360-ui-section-card--hr-panel form > p:has(textarea),.s360-ui-card--hr-legacy-panel form > .inside > p:has(textarea)) :where(textarea,.s360-ui-textarea){
    flex:1 1 100%;
    width:100%;
}
@media (max-width:782px){
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-grid,.s360-form-grid,.s360-form-grid-2,.s360-filter-grid){
        grid-template-columns:1fr;
    }
    body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table tr){
        grid-template-columns:1fr;
        gap:6px;
    }
    body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table th){
        padding:0;
    }
    body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table td),
    body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(.s360-ui-section-card--hr-panel form > p:has(input,.s360-ui-control,select,textarea,.s360-ui-button,.button),.s360-ui-card--hr-legacy-panel form > .inside > p:has(input,.s360-ui-control,select,textarea,.s360-ui-button,.button)){
        flex-direction:column;
        align-items:stretch;
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-form-actions,.s360-form-actions,.s360-card-actions,form > .submit),
    body.wp-admin .s360-admin-wrapper :where(.s360-filter-bar,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form),
    body.wp-admin .s360-admin-wrapper :where(.s360-inline-form,.s360-ui-inline-form,.s360-inline-action-form,.s360-u-inline){
        align-items:stretch;
    }
    body.wp-admin .s360-admin-wrapper :where(.s360-filter-bar,.s360-report-filter-form,.s360-expense-report-filter-form,.s360-calendar-filter-form) :where(input:not([type]),input[type="text"],input[type="search"],input[type="date"],input[type="number"],select),
    body.wp-admin .s360-admin-wrapper :where(.s360-inline-form,.s360-ui-inline-form,.s360-inline-action-form,.s360-u-inline) :where(input:not([type]),input[type="text"],input[type="number"],input[type="date"],select),
    body.wp-admin .s360-tailwind-foundation.s360-hr-phase-i :where(table.s360-ui-form-grid--table td) :where(input:not([type]),input[type="text"],input[type="email"],input[type="number"],input[type="date"],select):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not(.wp-color-picker):not(.button){
        flex:1 1 auto;
        width:100%;
    }
}

/* v13.3 approved UI/IX Forms Width Phase 1.2: unified form width rhythm.
 * Scope: CSS-only final compatibility layer for form layout width.
 * Goal: give create/edit/profile/composition forms one predictable readable width
 * while keeping filter bars, bulk actions, table actions and inline toolbar forms
 * full-width/auto-width. No PHP markup, field names, actions, nonces, JS hooks,
 * validation or database behavior is changed.
 */
body.wp-admin .s360-admin-wrapper{
    --s360-form-readable-max-width:820px;
    --s360-form-grid-readable-max-width:960px;
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,form.s360-ui-form,form.s360-form-grid,form.s360-ui-form-grid,form.s360-form-grid-2,form.s360-admissions-review-form,form.s360-admissions-status-form,form.s360-admissions-interview-response-form,form.s360-admissions-document-upload-form,form.s360-admissions-parent-response-form,form.s360-calendar-event-form,form.s360-communication-send-form,form.s360-custom-field-form,form.s360-document-form,form.s360-import-form,form.s360-installment-plan-form,form.s360-layout-board-form,form.s360-message-compose-form,form.s360-parent-pay-form,form.s360-parent-workflow-form,form.s360-portal-upload-form,form.s360-template-pack-form,form.s360-hr-portal-form):not(.s360-filter-bar):not(.s360-filter-grid):not(.s360-filter-panel):not(.s360-report-filter-form):not(.s360-expense-report-filter-form):not(.s360-calendar-filter-form):not(.s360-audit-filter-form):not(.s360-phase4-filterbar):not(.s360-hr-directory-filters):not(.s360-student-ops-roster-filter):not(.s360-gradebook-class-filter):not(.s360-inline-filter):not(.s360-teacher-workbench-filters):not(.s360-report-filter-grid):not(.s360-analytics-filter-grid):not(.s360-bulk-actions-form):not(.s360-payment-table-actions):not(.s360-inline-form):not(.s360-ui-inline-form):not(.s360-inline-action-form):not(.s360-form-inline):not(.s360-u-inline):not(.s360-u-inline-block):not(.s360-u-inline-chip-space-sm):not(.s360-form-width-full):not(.s360-ui-form--wide):not(.s360-layout-board-toolbar):not(.s360-field-toolbar){
    box-sizing:border-box;
    width:100%;
    max-width:var(--s360-form-readable-max-width,820px);
    margin-inline-start:0;
    margin-inline-end:auto;
}
body.wp-admin .s360-admin-wrapper :where(form.s360-ui-form-grid,form.s360-form-grid,form.s360-form-grid-2,form.s360-admissions-review-form,form.s360-calendar-event-form,form.s360-communication-send-form,form.s360-custom-field-form,form.s360-document-form,form.s360-import-form,form.s360-installment-plan-form,form.s360-layout-board-form,form.s360-message-compose-form,form.s360-parent-workflow-form,form.s360-template-pack-form):not(.s360-filter-bar):not(.s360-filter-grid):not(.s360-filter-panel):not(.s360-report-filter-form):not(.s360-expense-report-filter-form):not(.s360-calendar-filter-form):not(.s360-audit-filter-form):not(.s360-phase4-filterbar):not(.s360-hr-directory-filters):not(.s360-student-ops-roster-filter):not(.s360-gradebook-class-filter):not(.s360-inline-filter):not(.s360-teacher-workbench-filters):not(.s360-report-filter-grid):not(.s360-analytics-filter-grid):not(.s360-bulk-actions-form):not(.s360-payment-table-actions):not(.s360-inline-form):not(.s360-ui-inline-form):not(.s360-inline-action-form):not(.s360-form-inline):not(.s360-u-inline):not(.s360-u-inline-block):not(.s360-u-inline-chip-space-sm):not(.s360-form-width-full):not(.s360-ui-form--wide):not(.s360-layout-board-toolbar):not(.s360-field-toolbar){
    max-width:var(--s360-form-grid-readable-max-width,960px);
}
body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,form.s360-ui-form):not(.s360-filter-bar):not(.s360-filter-grid):not(.s360-filter-panel):not(.s360-report-filter-form):not(.s360-expense-report-filter-form):not(.s360-calendar-filter-form):not(.s360-audit-filter-form):not(.s360-phase4-filterbar):not(.s360-hr-directory-filters):not(.s360-student-ops-roster-filter):not(.s360-gradebook-class-filter):not(.s360-inline-filter):not(.s360-teacher-workbench-filters):not(.s360-report-filter-grid):not(.s360-analytics-filter-grid):not(.s360-bulk-actions-form):not(.s360-payment-table-actions):not(.s360-inline-form):not(.s360-ui-inline-form):not(.s360-inline-action-form):not(.s360-form-inline):not(.s360-u-inline):not(.s360-u-inline-block):not(.s360-u-inline-chip-space-sm):not(.s360-form-width-full):not(.s360-ui-form--wide):not(.s360-layout-board-toolbar):not(.s360-field-toolbar) :where(.form-table,.s360-ui-form-table,table.s360-ui-form-grid--table){
    width:100%;
    max-width:100%;
}
body.wp-admin .s360-admin-wrapper :where(.s360-filter-panel form,.s360-field-toolbar form,.s360-layout-board-toolbar form,.s360-table-actions form,.s360-ui-table form,.s360-data-table form,.s360-table form,.wp-list-table form,table form,form.s360-filter-bar,form.s360-filter-grid,form.s360-report-filter-form,form.s360-expense-report-filter-form,form.s360-calendar-filter-form,form.s360-audit-filter-form,form.s360-phase4-filterbar,form.s360-hr-directory-filters,form.s360-student-ops-roster-filter,form.s360-gradebook-class-filter,form.s360-inline-filter,form.s360-teacher-workbench-filters,form.s360-report-filter-grid,form.s360-analytics-filter-grid,form.s360-bulk-actions-form,form.s360-payment-table-actions,form.s360-inline-form,form.s360-ui-inline-form,form.s360-inline-action-form,form.s360-form-inline,form.s360-u-inline,form.s360-u-inline-block,form.s360-u-inline-chip-space-sm,form.s360-form-width-full,form.s360-ui-form--wide){
    max-width:100%;
}
@media (max-width:782px){
    body.wp-admin .s360-admin-wrapper :where(.s360-ui-card form,.s360-ui-section-card form,[data-s360-hr-panel] form,form.s360-ui-form,form.s360-form-grid,form.s360-ui-form-grid,form.s360-form-grid-2,form.s360-admissions-review-form,form.s360-admissions-status-form,form.s360-admissions-interview-response-form,form.s360-admissions-document-upload-form,form.s360-admissions-parent-response-form,form.s360-calendar-event-form,form.s360-communication-send-form,form.s360-custom-field-form,form.s360-document-form,form.s360-import-form,form.s360-installment-plan-form,form.s360-layout-board-form,form.s360-message-compose-form,form.s360-parent-pay-form,form.s360-parent-workflow-form,form.s360-portal-upload-form,form.s360-template-pack-form,form.s360-hr-portal-form){
        max-width:100%;
    }
}
body.wp-admin .s360-admin-wrapper :where(.s360-table-actions form,.s360-ui-table form,.s360-data-table form,.s360-table form,.wp-list-table form,table form,form.s360-payment-table-actions,form.s360-inline-form,form.s360-ui-inline-form,form.s360-inline-action-form,form.s360-form-inline,form.s360-u-inline,form.s360-u-inline-block,form.s360-u-inline-chip-space-sm){
    width:auto;
}
/* v13.3 approved UI/IX Page Shell Phase 1: unified admin body/page shell.
 * Scope: CSS-only final compatibility layer for admin module page wrappers.
 * Goal: give modern module pages one predictable outer width, gutter and stack
 * rhythm while preserving the existing PHP routes, module classes, tabs, forms,
 * tables, JS hooks, permissions and database behavior.
 */
body.wp-admin .wrap.s360-admin-wrapper{
    --s360-page-shell-max-width:1440px;
    --s360-page-shell-gutter-inline:20px;
    --s360-page-shell-gutter-inline-start:2px;
    --s360-page-shell-top-offset:16px;
    --s360-page-shell-stack-gap:14px;
    --s360-page-shell-mobile-gutter:12px;
}
body.wp-admin .wrap.s360-admin-wrapper:where(.s360-page-shell,.s360-grouped-admin,.s360-tailwind-foundation,.s360-wrap){
    box-sizing:border-box;
    width:auto;
    max-width:var(--s360-page-shell-max-width,1440px);
    min-width:0;
    margin-top:var(--s360-page-shell-top-offset,16px);
    margin-inline-start:var(--s360-page-shell-gutter-inline-start,2px);
    margin-inline-end:var(--s360-page-shell-gutter-inline,20px);
    background:transparent;
    background-image:none;
}
body.wp-admin .wrap.s360-admin-wrapper:where(.s360-page-shell,.s360-grouped-admin,.s360-tailwind-foundation,.s360-wrap) > :where(.s360-ui-page-header,.s360-page-hero,.s360-grouped-admin__hero,.s360-grouped-admin__notice-slot,.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-admin-dashboard__top-surfaces,.s360-readiness-hero,.s360-settings-hero,.s360-system-hero,.s360-ui-tabs__nav,.s360-ui-main-tabs,.s360-grouped-admin__main-tabs,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell,.s360-ui-card,.s360-ui-section-card){
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
}
body.wp-admin .wrap.s360-admin-wrapper:where(.s360-page-shell,.s360-grouped-admin,.s360-tailwind-foundation,.s360-wrap) > :where(.s360-ui-page-header,.s360-page-hero,.s360-grouped-admin__hero):first-child{
    margin-top:0;
}
body.wp-admin .wrap.s360-admin-wrapper:where(.s360-page-shell,.s360-grouped-admin,.s360-tailwind-foundation,.s360-wrap) > :where(.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-admin-dashboard__top-surfaces,.s360-readiness-hero,.s360-settings-hero,.s360-system-hero){
    margin-block-start:var(--s360-page-shell-stack-gap,14px);
    margin-block-end:0;
}
body.wp-admin .wrap.s360-admin-wrapper:where(.s360-page-shell,.s360-grouped-admin,.s360-tailwind-foundation,.s360-wrap) > :where(.s360-ui-main-tabs,.s360-grouped-admin__main-tabs):not(.s360-ui-sub-tabs){
    margin-block-start:var(--s360-page-shell-stack-gap,14px);
    margin-block-end:0;
}
body.wp-admin .wrap.s360-admin-wrapper:where(.s360-page-shell,.s360-grouped-admin,.s360-tailwind-foundation,.s360-wrap) > :where(.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace){
    margin-block-start:var(--s360-page-shell-stack-gap,14px);
    margin-block-end:0;
}
body.wp-admin .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-hr-shell{
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
    margin:0;
}
body.wp-admin .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-hr-shell > :where(.s360-ui-page-header,.s360-grouped-admin__hero,.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-ui-main-tabs,.s360-grouped-admin__main-tabs,.s360-hr-main,.s360-grouped-admin__content){
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
}
body.wp-admin .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-hr-shell > :where(.s360-ui-main-tabs,.s360-grouped-admin__main-tabs):not(.s360-ui-sub-tabs),
body.wp-admin .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-hr-shell > :where(.s360-hr-main,.s360-grouped-admin__content){
    margin-block-start:var(--s360-page-shell-stack-gap,14px);
    margin-block-end:0;
}
body.wp-admin .wrap.s360-admin-wrapper :where(.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-main,.s360-ui-section-card,.s360-ui-card,.s360-ui-grid,.s360-ui-form-grid,.s360-form-grid,table.widefat,.wp-list-table){
    min-width:0;
}
body.wp-admin .wrap.s360-admin-wrapper :where(.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-main) > :where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel,.s360-ui-grid,.s360-table-responsive,.s360-table-scroll,.s360-overflow-x-auto){
    max-width:100%;
}
@media (min-width:1500px){
    body.wp-admin .wrap.s360-admin-wrapper:where(.s360-page-shell,.s360-grouped-admin,.s360-tailwind-foundation,.s360-wrap){
        margin-inline-end:auto;
    }
}
@media (max-width:782px){
    body.wp-admin .wrap.s360-admin-wrapper{
        --s360-page-shell-gutter-inline:var(--s360-page-shell-mobile-gutter,12px);
        --s360-page-shell-gutter-inline-start:var(--s360-page-shell-mobile-gutter,12px);
        --s360-page-shell-top-offset:12px;
        --s360-page-shell-stack-gap:12px;
    }
    body.wp-admin .wrap.s360-admin-wrapper:where(.s360-page-shell,.s360-grouped-admin,.s360-tailwind-foundation,.s360-wrap){
        max-width:none;
        margin-inline-start:var(--s360-page-shell-gutter-inline-start,12px);
        margin-inline-end:var(--s360-page-shell-gutter-inline,12px);
    }
}


/* v13.3 approved UI/IX Page Shell Phase 1.1: enforce unified admin body shell.
 * Scope: CSS-only correction for real WordPress admin wrapper combinations.
 * Problem fixed: legacy full-width layers and .s360-grouped-fullwidth wrappers could keep
 * module pages visually wider than the approved School 360 shell width.
 * Contract: every School 360 admin page whose top-level wrapper carries
 * .wrap.s360-admin-wrapper uses the same max-width/gutter shell. Inner cards,
 * tables, filters and toolbars keep their existing component-level sizing.
 */
body.wp-admin{
    --s360-page-shell-max-width:1440px;
    --s360-page-shell-gutter-inline:20px;
    --s360-page-shell-gutter-inline-start:2px;
    --s360-page-shell-top-offset:16px;
    --s360-page-shell-stack-gap:var(--s360-component-card-header-gap, 14px);
    --s360-page-shell-mobile-gutter:12px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-wrap,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-page-shell,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-grouped-admin,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-grouped-fullwidth,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-tailwind-foundation,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-tailwind-foundation,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-wrap,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-ui-shell,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-student-workspace,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-page,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-wrap,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-hr-wrap{
    box-sizing:border-box;
    width:auto;
    inline-size:auto;
    max-width:var(--s360-page-shell-max-width,1440px);
    max-width:min(var(--s360-page-shell-max-width,1440px), calc(100% - var(--s360-page-shell-gutter-inline-start,2px) - var(--s360-page-shell-gutter-inline,20px)));
    max-inline-size:var(--s360-page-shell-max-width,1440px);
    max-inline-size:min(var(--s360-page-shell-max-width,1440px), calc(100% - var(--s360-page-shell-gutter-inline-start,2px) - var(--s360-page-shell-gutter-inline,20px)));
    min-width:0;
    margin-block-start:var(--s360-page-shell-top-offset,16px);
    margin-inline-start:var(--s360-page-shell-gutter-inline-start,2px);
    margin-inline-end:auto;
    background:transparent;
    background-image:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-grouped-fullwidth,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-page-shell.s360-grouped-fullwidth,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-grouped-admin.s360-grouped-fullwidth{
    width:auto;
    inline-size:auto;
    max-width:var(--s360-page-shell-max-width,1440px);
    max-width:min(var(--s360-page-shell-max-width,1440px), calc(100% - var(--s360-page-shell-gutter-inline-start,2px) - var(--s360-page-shell-gutter-inline,20px)));
    max-inline-size:var(--s360-page-shell-max-width,1440px);
    max-inline-size:min(var(--s360-page-shell-max-width,1440px), calc(100% - var(--s360-page-shell-gutter-inline-start,2px) - var(--s360-page-shell-gutter-inline,20px)));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper > :where(.s360-ui-page-header,.s360-page-hero,.s360-grouped-admin__hero,.s360-grouped-admin__notice-slot,.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-admin-dashboard__top-surfaces,.s360-readiness-hero,.s360-settings-hero,.s360-system-hero,.s360-ui-tabs__nav,.s360-ui-main-tabs,.s360-grouped-admin__main-tabs,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell,.s360-ui-card,.s360-ui-section-card){
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper > :where(.s360-ui-page-header,.s360-page-hero,.s360-grouped-admin__hero):first-child{
    margin-top:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper > :where(.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-admin-dashboard__top-surfaces,.s360-readiness-hero,.s360-settings-hero,.s360-system-hero,.s360-ui-main-tabs,.s360-grouped-admin__main-tabs,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace):not(:first-child){
    margin-block-start:var(--s360-page-shell-stack-gap,14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-hr-shell,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-hr-shell{
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
    margin-inline-start:0;
    margin-inline-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-main,.s360-ui-section-card,.s360-ui-card,.s360-ui-grid,.s360-ui-form-grid,.s360-form-grid,table.widefat,.wp-list-table){
    min-width:0;
}
@media (min-width:1500px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
        margin-inline-end:auto;
    }
}
@media (max-width:782px){
    body.wp-admin{
        --s360-page-shell-gutter-inline:var(--s360-page-shell-mobile-gutter,12px);
        --s360-page-shell-gutter-inline-start:var(--s360-page-shell-mobile-gutter,12px);
        --s360-page-shell-top-offset:12px;
        --s360-page-shell-stack-gap:12px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-grouped-fullwidth{
        max-width:calc(100% - var(--s360-page-shell-gutter-inline-start,12px) - var(--s360-page-shell-gutter-inline,12px));
        max-inline-size:calc(100% - var(--s360-page-shell-gutter-inline-start,12px) - var(--s360-page-shell-gutter-inline,12px));
        margin-inline-start:var(--s360-page-shell-gutter-inline-start,12px);
        margin-inline-end:var(--s360-page-shell-gutter-inline,12px);
    }
}

/* v13.3 approved UI/IX Admin Dashboard Polish Phase 1: compact vertical rhythm.
 * Scope: CSS-only final compatibility layer for the admin dashboard workspace.
 * Goal: reduce the visual spacing between the page header, utility card row,
 * main dashboard tabs and active widget panel without changing PHP renderers,
 * data queries, routes, permissions, forms, tabs, widgets or JavaScript hooks.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard{
    --s360-dashboard-polish-stack-gap:10px;
    --s360-dashboard-polish-tight-gap:var(--s360-space-xs, 8px);
    --s360-dashboard-polish-widget-gap:var(--s360-space-sm, 12px);
    --s360-dashboard-polish-inner-gap:var(--s360-component-card-header-gap, 14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > :where(.s360-admin-dashboard__header,.s360-ui-page-header,.s360-grouped-admin__hero):first-child{
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > .s360-admin-dashboard__top-surfaces,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > .s360-grouped-admin__top-surfaces{
    gap:var(--s360-dashboard-polish-tight-gap,8px);
    margin-block-start:var(--s360-dashboard-polish-stack-gap,10px);
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__utility-card{
    min-height:88px;
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__utility-card--notification,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__utility-card--school{
    min-height:80px;
    gap:var(--s360-space-sm, 12px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > nav.s360-admin-dashboard__tabs.s360-ui-main-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > .s360-admin-dashboard__tabs.s360-ui-main-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
    margin-block-start:var(--s360-dashboard-polish-stack-gap,10px);
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > .s360-admin-dashboard__workspace,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > .s360-grouped-admin__content.s360-admin-dashboard__workspace{
    margin-block-start:var(--s360-dashboard-polish-stack-gap,10px);
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel{
    display:grid;
    gap:var(--s360-dashboard-polish-widget-gap,12px);
    width:100%;
    max-width:100%;
    min-width:0;
    margin:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-mt-lg,.s360-ui-card,.s360-ui-dashboard-panel,.s360-admin-panel){
    margin-block-start:0;
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel .s360-ui-dashboard-panel{
    margin-bottom:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel :where(.s360-ui-grid,.s360-admin-kpi-grid,.s360-admin-kpi-grid--compact,.s360-admin-today-subpanels){
    gap:var(--s360-dashboard-polish-inner-gap,14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel :where(.s360-mt-lg):not(:first-child){
    margin-top:var(--s360-dashboard-polish-inner-gap,14px);
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard{
        --s360-dashboard-polish-stack-gap:var(--s360-space-xs, 8px);
        --s360-dashboard-polish-tight-gap:var(--s360-space-xs, 8px);
        --s360-dashboard-polish-widget-gap:10px;
        --s360-dashboard-polish-inner-gap:var(--s360-space-sm, 12px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__utility-card,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__utility-card--notification,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__utility-card--school{
        min-height:0;
        padding:var(--s360-space-sm, 12px) var(--s360-component-card-padding-tight, 14px);
    }
}

/* v13.3 approved UI/IX Admin Dashboard Density Phase 2: compact inner panel spacing.
 * Scope: CSS-only dashboard card/panel density layer.
 * Goal: reduce the unused internal whitespace inside dashboard widget panels such as
 * Role Profile and Admin Action Center while preserving the unified card, tab, form
 * and page shell standards. No PHP renderers, widget data, routes, permissions or JS
 * hooks are changed.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard{
    --s360-dashboard-density-panel-padding-y:var(--s360-component-card-padding-tight, 14px);
    --s360-dashboard-density-panel-padding-x:var(--s360-component-card-padding-compact, 16px);
    --s360-dashboard-density-panel-header-gap:5px;
    --s360-dashboard-density-panel-header-padding-bottom:var(--s360-space-xs, 8px);
    --s360-dashboard-density-panel-body-gap:10px;
    --s360-dashboard-density-grid-gap:10px;
    --s360-dashboard-density-stat-gap:var(--s360-space-2xs, 4px);
    --s360-dashboard-density-stat-padding-y:var(--s360-space-sm, 12px);
    --s360-dashboard-density-stat-padding-x:var(--s360-component-card-padding-tight, 14px);
    --s360-dashboard-density-stat-min-height:88px;
    --s360-dashboard-density-attention-min-height:98px;
    --s360-dashboard-density-shortcut-padding-y:10px;
    --s360-dashboard-density-shortcut-padding-x:var(--s360-space-sm, 12px);
    --s360-dashboard-density-shortcut-min-height:54px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-ui-dashboard-panel,.s360-ui-card.s360-admin-panel){
    padding:var(--s360-dashboard-density-panel-padding-y,14px) var(--s360-dashboard-density-panel-padding-x,16px);
    min-height:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-ui-dashboard-panel,.s360-ui-card.s360-admin-panel) > .s360-ui-card__header{
    gap:var(--s360-dashboard-density-panel-header-gap,5px);
    padding-block-end:var(--s360-dashboard-density-panel-header-padding-bottom,8px);
    margin-block-end:var(--s360-dashboard-density-panel-body-gap,10px);
    min-height:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-ui-dashboard-panel,.s360-ui-card.s360-admin-panel) > .s360-ui-card__header .s360-ui-card__heading{
    display:flex;
    flex-direction:column;
    gap:2px;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-ui-dashboard-panel,.s360-ui-card.s360-admin-panel) > .s360-ui-card__header .s360-ui-card__title{
    line-height:1.25;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-ui-dashboard-panel,.s360-ui-card.s360-admin-panel) > .s360-ui-card__header .s360-ui-card__subtitle{
    margin-block-start:0;
    line-height:1.35;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel :where(.s360-ui-card__body,.s360-ui-dashboard-panel__body){
    gap:var(--s360-dashboard-density-panel-body-gap,10px);
    min-height:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel :where(.s360-ui-card__body,.s360-ui-dashboard-panel__body) > :where(.s360-mt-md,.s360-mt-lg):first-child{
    margin-block-start:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel :where(.s360-ui-card__body,.s360-ui-dashboard-panel__body) > :where(.s360-mt-md,.s360-mt-lg):not(:first-child){
    margin-block-start:var(--s360-dashboard-density-panel-body-gap,10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel :where(.s360-ui-grid,.s360-admin-kpi-grid,.s360-admin-kpi-grid--compact,.s360-admin-attention-grid,.s360-admin-shortcuts,.s360-ui-dashboard-shortcuts){
    gap:var(--s360-dashboard-density-grid-gap,10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel :where(.s360-admin-kpi-grid,.s360-admin-kpi-grid--compact) .s360-ui-stat-card{
    gap:var(--s360-dashboard-density-stat-gap,4px);
    min-height:var(--s360-dashboard-density-stat-min-height,88px);
    padding:var(--s360-dashboard-density-stat-padding-y,12px) var(--s360-dashboard-density-stat-padding-x,14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel .s360-admin-attention-grid .s360-ui-stat-card,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel .s360-admin-attention-grid a.s360-ui-stat-card{
    min-height:var(--s360-dashboard-density-attention-min-height,98px);
    padding:var(--s360-dashboard-density-stat-padding-y,12px) var(--s360-dashboard-density-stat-padding-x,14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel .s360-ui-stat-card__value{
    line-height:1;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel .s360-ui-stat-card__label{
    line-height:1.25;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel .s360-ui-stat-card__helper{
    line-height:1.35;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel .s360-admin-attention-grid .s360-ui-stat-card__action{
    padding-block-start:var(--s360-space-2xs, 4px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel :where(.s360-admin-shortcut,.s360-ui-dashboard-shortcut){
    min-height:var(--s360-dashboard-density-shortcut-min-height,54px);
    padding:var(--s360-dashboard-density-shortcut-padding-y,10px) var(--s360-dashboard-density-shortcut-padding-x,12px);
    gap:var(--s360-space-2xs, 4px);
    justify-content:flex-start;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel .s360-admin-panel__note{
    margin-block-start:var(--s360-dashboard-density-panel-body-gap,10px);
    line-height:1.35;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard{
        --s360-dashboard-density-panel-padding-y:var(--s360-space-sm, 12px);
        --s360-dashboard-density-panel-padding-x:var(--s360-space-sm, 12px);
        --s360-dashboard-density-panel-header-padding-bottom:var(--s360-space-xs, 8px);
        --s360-dashboard-density-panel-body-gap:var(--s360-space-xs, 8px);
        --s360-dashboard-density-grid-gap:var(--s360-space-xs, 8px);
        --s360-dashboard-density-stat-min-height:0;
        --s360-dashboard-density-attention-min-height:0;
        --s360-dashboard-density-shortcut-min-height:0;
    }
}

/* v13.3 approved UI/IX Admin Dashboard Density Phase 2.1: Role Profile row gap tightening.
 * Scope: CSS-only dashboard role profile spacing layer.
 * Goal: reduce the vertical space between the top KPI card row and the lower
 * shortcut/action card row inside the Executive Admin Dashboard panel. This is
 * intentionally scoped to the role profile widget so global cards, forms, tabs,
 * page shell and other dashboard widgets keep their existing behavior.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard{
    --s360-dashboard-density-role-profile-row-gap:var(--s360-space-2xs, 4px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-role-profile[data-s360-dashboard-widget="role_profile"] > .s360-ui-card__body,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-role-profile > .s360-ui-card__body,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-role-profile > .s360-ui-dashboard-panel__body{
    gap:var(--s360-dashboard-density-role-profile-row-gap,4px);
    row-gap:var(--s360-dashboard-density-role-profile-row-gap,4px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-role-profile > .s360-ui-card__body > :where(.s360-admin-kpi-grid,.s360-admin-kpi-grid--compact),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-role-profile > .s360-ui-dashboard-panel__body > :where(.s360-admin-kpi-grid,.s360-admin-kpi-grid--compact){
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-role-profile > .s360-ui-card__body > :where(.s360-admin-shortcuts,.s360-ui-dashboard-shortcuts,.s360-mt-md),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-role-profile > .s360-ui-dashboard-panel__body > :where(.s360-admin-shortcuts,.s360-ui-dashboard-shortcuts,.s360-mt-md){
    margin-block-start:0;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard{
        --s360-dashboard-density-role-profile-row-gap:var(--s360-space-2xs, 4px);
    }
}

/* v13.3 approved UI/IX Admin Dashboard Density Phase 2.2: full-width dashboard widget panels.
 * Scope: CSS-only dashboard tab-panel width alignment.
 * Goal: make full-span dashboard widgets such as Today / Daily Operations and
 * Admissions Pipeline & System Readiness use the same width as the unified
 * dashboard body shell. This corrects legacy dashboard/card width behavior
 * without changing renderers, data queries, routes, permissions, tabs, forms,
 * cards, JavaScript or database logic.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > .s360-admin-dashboard__workspace,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard > .s360-grouped-admin__content.s360-admin-dashboard__workspace{
    box-sizing:border-box;
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel{
    box-sizing:border-box;
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
    min-width:0;
    grid-template-columns:minmax(0,1fr);
    justify-items:stretch;
    align-items:start;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where([data-s360-dashboard-widget-span="4"],.s360-admin-today-panel,.s360-admin-dashboard-phase5){
    box-sizing:border-box;
    display:block;
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
    min-width:0;
    justify-self:stretch;
    align-self:start;
    grid-column:1 / -1;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where([data-s360-dashboard-widget="today_operations"], [data-s360-dashboard-widget="admissions_health"]){
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where([data-s360-dashboard-widget="today_operations"], [data-s360-dashboard-widget="admissions_health"]) > :where(.s360-ui-card__body,.s360-ui-dashboard-panel__body),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where([data-s360-dashboard-widget="today_operations"], [data-s360-dashboard-widget="admissions_health"]) :where(.s360-ui-grid,.s360-admin-kpi-grid,.s360-admin-kpi-grid--compact,.s360-admin-today-subpanels,.s360-admin-secondary-panel){
    box-sizing:border-box;
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
    min-width:0;
}

/* v13.3 approved UI/IX Admin Dashboard Finance & Attendance Nested Card Fix Phase 2.3.
 * Scope: CSS-only dashboard finance/attendance widget layer.
 * Goal: remove the duplicate nested card/shell feeling inside the Finance &
 * Attendance Focus dashboard tab by treating Finance snapshot and Attendance
 * coverage as inner sections of the same parent panel. Table, KPI, shortcut,
 * renderer, permission, data query, route, tab, form and database logic remain
 * unchanged.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard{
    --s360-dashboard-finance-nested-section-gap:var(--s360-space-sm, 12px);
    --s360-dashboard-finance-nested-header-gap:var(--s360-component-card-heading-gap, 6px);
    --s360-dashboard-finance-nested-divider:1px solid var(--s360-color-border-subtle,#e5e7eb);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-finance-attendance-panel,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > [data-s360-dashboard-widget="finance_attendance"].s360-admin-finance-attendance-panel{
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-finance-attendance-panel > .s360-ui-grid,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > [data-s360-dashboard-widget="finance_attendance"].s360-admin-finance-attendance-panel > .s360-ui-grid{
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
    min-width:0;
    gap:var(--s360-dashboard-finance-nested-section-gap,12px);
    align-items:start;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-finance-attendance-panel > .s360-ui-grid > .s360-admin-secondary-panel,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > [data-s360-dashboard-widget="finance_attendance"].s360-admin-finance-attendance-panel > .s360-ui-grid > .s360-admin-secondary-panel{
    box-sizing:border-box;
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
    min-width:0;
    min-height:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-finance-attendance-panel > .s360-ui-grid > .s360-admin-secondary-panel > .s360-ui-card__header,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > [data-s360-dashboard-widget="finance_attendance"].s360-admin-finance-attendance-panel > .s360-ui-grid > .s360-admin-secondary-panel > .s360-ui-card__header{
    gap:var(--s360-dashboard-finance-nested-header-gap,6px);
    padding-block-end:var(--s360-space-xs, 8px);
    margin-block-end:10px;
    border-block-end:var(--s360-dashboard-finance-nested-divider,1px solid var(--s360-color-border-subtle,#e5e7eb));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-finance-attendance-panel > .s360-ui-grid > .s360-admin-secondary-panel > .s360-ui-card__header .s360-ui-card__subtitle,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > [data-s360-dashboard-widget="finance_attendance"].s360-admin-finance-attendance-panel > .s360-ui-grid > .s360-admin-secondary-panel > .s360-ui-card__header .s360-ui-card__subtitle{
    margin-block-start:2px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-finance-attendance-panel .s360-admin-finance-attendance__coverage-table,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > [data-s360-dashboard-widget="finance_attendance"].s360-admin-finance-attendance-panel .s360-admin-finance-attendance__coverage-table{
    margin-block-start:0;
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > .s360-admin-finance-attendance-panel .s360-admin-finance-attendance__attendance .s360-admin-shortcuts,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > [data-s360-dashboard-widget="finance_attendance"].s360-admin-finance-attendance-panel .s360-admin-finance-attendance__attendance .s360-admin-shortcuts{
    margin-block-start:10px;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard{
        --s360-dashboard-finance-nested-section-gap:10px;
    }
}

/* v13.3 approved UI/IX Calendar & Events Density Phase 1.
 * Scope: CSS-only Calendar & Events admin workspace layer.
 * Goal: keep the outer Calendar workspace shell, but reduce nested-card/double-shell
 * feeling by treating filter, browser, form/import/export/reminder and detail panels
 * as compact inner sections. Calendar CRUD, filters, import/export, reminders,
 * nonces, permissions, tables and routing logic remain unchanged.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
    --s360-calendar-workspace-padding-y:var(--s360-component-card-padding-compact, 16px);
    --s360-calendar-workspace-padding-x:18px;
    --s360-calendar-workspace-gap:var(--s360-space-sm, 12px);
    --s360-calendar-inner-section-padding-y:var(--s360-space-sm, 12px);
    --s360-calendar-inner-header-gap:var(--s360-space-2xs, 4px);
    --s360-calendar-inner-divider:1px solid var(--s360-color-border-subtle,#e5e7eb);
    --s360-calendar-control-height:38px;
    --s360-calendar-compact-card-gap:10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-ui-card,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace.s360-grouped-admin__content{
    display:flex;
    flex-direction:column;
    gap:var(--s360-calendar-workspace-gap,12px);
    padding:var(--s360-calendar-workspace-padding-y,16px) var(--s360-calendar-workspace-padding-x,18px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
    gap:var(--s360-calendar-compact-card-gap,10px);
    margin-block-end:var(--s360-calendar-workspace-gap,12px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
    min-height:76px;
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > :where(.s360-calendar-filter-section,.s360-calendar-browser,.s360-calendar-tab-section,.s360-calendar-event-detail-card){
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    margin:0;
    padding:var(--s360-calendar-inner-section-padding-y,12px) 0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > :where(.s360-calendar-filter-section,.s360-calendar-browser,.s360-calendar-tab-section,.s360-calendar-event-detail-card) + :where(.s360-calendar-filter-section,.s360-calendar-browser,.s360-calendar-tab-section,.s360-calendar-event-detail-card),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > .s360-calendar-stats-grid + :where(.s360-calendar-filter-section,.s360-calendar-browser,.s360-calendar-tab-section,.s360-calendar-event-detail-card){
    border-block-start:var(--s360-calendar-inner-divider,1px solid var(--s360-color-border-subtle,#e5e7eb));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section > h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-title,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-header h2{
    margin-block-end:var(--s360-calendar-inner-header-gap,4px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section > .description,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header .description{
    margin-block-start:0;
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-form,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form{
    margin-block-start:12px;
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-grid{
    gap:10px 12px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-grid > .s360-calendar-event-field,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description{
    gap:5px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-form,.s360-calendar-event-form) :where(input[type="text"],input[type="email"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],select,textarea){
    min-height:var(--s360-calendar-control-height,38px);
    padding:7px 11px;
    border-radius:10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-form-actions{
    gap:8px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-form-actions{
    margin-block-start:12px;
    padding-block-start:12px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .s360-ui-button,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .button{
    min-height:32px;
    padding:6px 12px;
    border-radius:10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header{
    margin-block-end:12px;
    padding-block-end:10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
    gap:8px;
    margin-block-end:10px;
    padding:8px 10px;
    border-radius:12px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-title{
    margin-block-end:8px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-title{
    padding-block-end:10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-grid,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-notes{
    margin-block-start:12px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-card{
    padding-block:var(--s360-component-card-padding-tight, 14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-header{
    gap:12px;
    padding-block-end:12px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-grid{
    gap:10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-grid > div,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-notes{
    padding:12px;
    border-radius:12px;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
        --s360-calendar-workspace-padding-y:14px;
        --s360-calendar-workspace-padding-x:14px;
        --s360-calendar-workspace-gap:10px;
        --s360-calendar-inner-section-padding-y:10px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
        min-height:68px;
        padding:var(--s360-space-sm, 12px) var(--s360-component-card-padding-tight, 14px);
    }
}

/* v13.3 approved UI/IX Calendar & Events Spacing Phase 1.1.
 * Scope: Calendar & Events admin page only. Tightens the vertical rhythm between
 * the page header, Expense readiness utility row, main tabs and workspace, and
 * aligns Calendar stat-card labels and values on one row.
 * No PHP, JS, DB, nonce, permission, CRUD, import/export or reminder changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
    --s360-page-shell-stack-gap:var(--s360-space-xs, 8px);
    --s360-calendar-workspace-gap:var(--s360-space-xs, 8px);
    --s360-calendar-compact-card-gap:var(--s360-space-xs, 8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > :where(.s360-calendar-header-utility-grid,.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-admin-dashboard__top-surfaces):not(:first-child),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > nav.s360-calendar-action-tabs.s360-ui-main-tabs.s360-grouped-admin__main-tabs:not(.s360-ui-sub-tabs),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-grouped-admin__content{
    margin-block-start:var(--s360-page-shell-stack-gap,8px);
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-page-header.s360-ui-page-header,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-header-utility-grid.s360-grouped-admin__top-surfaces,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > nav.s360-calendar-action-tabs.s360-ui-main-tabs{
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > nav.s360-calendar-action-tabs.s360-ui-main-tabs.s360-grouped-admin__main-tabs:not(.s360-ui-sub-tabs){
    padding-block:7px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-ui-card,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace.s360-grouped-admin__content{
    padding-block-start:var(--s360-component-card-padding-tight, 14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
    gap:var(--s360-space-xs, 8px);
    margin-block-end:var(--s360-space-xs, 8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-height:52px;
    padding:var(--s360-space-sm, 12px) var(--s360-component-card-padding-tight, 14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > .description{
    flex:1 1 auto;
    min-width:0;
    margin:0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.25;
    font-weight:700;
    white-space:normal;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > h2{
    flex:0 0 auto;
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:24px;
    line-height:1;
    font-weight:850;
    letter-spacing:-.035em;
    text-align:end;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
        --s360-page-shell-stack-gap:8px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
        min-height:48px;
        padding:10px var(--s360-space-sm, 12px);
    }
}

/* v13.3 approved UI/IX Calendar & Events Filter Fix Phase 1.2.
 * Scope: Calendar & Events admin Events Filter only. Restores compact filter
 * controls after spacing density work made select/date fields appear too tall.
 * No PHP, JS, DB, nonce, permission, CRUD, import/export or reminder changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-form{
    width:100%;
    max-width:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field{
    align-self:start;
    min-height:0;
    height:auto;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field :where(select,input[type="date"],input[type="text"],input[type="search"],input[type="number"]){
    display:block;
    flex:0 0 auto;
    width:100%;
    max-width:100%;
    height:36px;
    min-height:36px;
    max-height:36px;
    padding-block:6px;
    padding-inline:10px;
    line-height:1.25;
    box-sizing:border-box;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field select{
    appearance:auto;
    padding-inline-end:28px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field > label{
    margin:0;
    line-height:1.25;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions{
    align-self:end;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field :where(select,input[type="date"],input[type="text"],input[type="search"],input[type="number"]){
        height:38px;
        min-height:38px;
        max-height:38px;
    }
}

/* v13.3 approved UI/IX Calendar & Events Filter Breathing Phase 1.3.
 * Scope: Calendar & Events admin Events Filter only. Adds a little breathing room
 * after Phase 1.2 restored compact select/date controls but made the filter feel
 * too dense. Keeps CRUD, filter query parameters, nonces, permissions and routing unchanged.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
    padding-block:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section > h2{
    margin-block-end:var(--s360-space-2xs, 4px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section > .description{
    margin-block-end:0;
    max-width:780px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-form{
    margin-block-start:14px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
    grid-template-columns:repeat(4,minmax(168px,1fr)) minmax(168px,max-content);
    gap:14px 18px;
    align-items:end;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field{
    gap:6px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field > label{
    margin:0;
    line-height:1.3;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field :where(select,input[type="date"],input[type="text"],input[type="search"],input[type="number"]){
    height:38px;
    min-height:38px;
    max-height:38px;
    padding-block:7px;
    padding-inline:12px;
    border-radius:10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
    align-self:end;
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    min-width:168px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .s360-ui-button,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .button{
    min-width:72px;
    min-height:36px;
    padding:7px 12px;
    white-space:nowrap;
}
@media (max-width:1280px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px 16px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions{
        grid-column:auto;
        grid-row:auto;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
        grid-column:1 / -1;
        justify-content:flex-start;
        min-width:0;
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
        padding-block:var(--s360-space-sm, 12px) var(--s360-component-card-padding-tight, 14px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:1fr;
        gap:12px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
        flex-wrap:wrap;
    }
}


/* v13.3 approved UI/IX Calendar & Events KPI Chart Cards Phase 1.4.
 * Scope: Calendar & Events admin Events stat cards only. Reworks the six
 * Calendar KPI cards so the label sits top-left, the number sits bottom-left,
 * and an event-related mini visual/chart sits on the right.
 * No PHP, JS, DB, CRUD, filter, import/export, reminder, permission or nonce changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(260px,1fr));
    gap:var(--s360-component-card-header-gap, 14px) var(--s360-space-md, 16px);
    margin-block:0 var(--s360-component-card-header-gap, 14px);
    padding:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(88px,124px);
    grid-template-rows:auto 1fr;
    align-items:stretch;
    justify-content:stretch;
    gap:var(--s360-component-card-heading-gap, 6px) var(--s360-space-md, 16px);
    min-height:108px;
    padding:18px var(--s360-component-card-padding, 20px) 18px 22px;
    overflow:hidden;
    background:linear-gradient(180deg,var(--s360-color-surface-raised,#fff) 0%,var(--s360-color-bg-subtle,#f8fafc) 100%);
    border:1px solid var(--s360-color-border-muted,#dbe4ef);
    border-inline-start:4px solid var(--s360-calendar-kpi-accent,#7c8cff);
    border-radius:16px;
    box-shadow:0 12px 26px rgba(15,23,42,.06);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > .description{
    grid-column:1;
    grid-row:1;
    align-self:start;
    min-width:0;
    margin:0;
    color:var(--s360-color-text-muted,#475569);
    font-size:13px;
    line-height:1.25;
    font-weight:700;
    letter-spacing:-.01em;
    white-space:normal;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > h2{
    grid-column:1;
    grid-row:2;
    align-self:end;
    justify-self:start;
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:38px;
    line-height:.95;
    font-weight:850;
    letter-spacing:-.055em;
    text-align:start;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::after{
    content:"";
    grid-column:2;
    grid-row:1 / span 2;
    align-self:center;
    justify-self:end;
    width:min(124px,100%);
    height:76px;
    opacity:.96;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    filter:drop-shadow(0 10px 18px rgba(15,23,42,.08));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(1){
    --s360-calendar-kpi-accent:#7c8cff;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(1)::after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 120 90%22%3E %3Cdefs%3E %3ClinearGradient id=%22bg%22 x1=%220%22 y1=%220%22 x2=%220%22 y2=%221%22%3E %3Cstop offset=%220%22 stop-color=%22#eaf3ff%22/%3E %3Cstop offset=%221%22 stop-color=%22#f8fbff%22/%3E %3C/linearGradient%3E %3C/defs%3E %3Crect x=%2212%22 y=%2210%22 width=%2296%22 height=%2272%22 rx=%2212%22 fill=%22url(#bg)%22 stroke=%22#bfdbfe%22 stroke-width=%222%22/%3E %3Crect x=%2212%22 y=%2210%22 width=%2296%22 height=%2218%22 rx=%2212%22 fill=%22#dbeafe%22/%3E %3Cpath d=%22M12 24h96%22 stroke=%22#bfdbfe%22 stroke-width=%222%22/%3E %3Cg fill=%22#1d78d2%22%3E %3Crect x=%2231%22 y=%224%22 width=%225%22 height=%2216%22 rx=%222%22/%3E %3Crect x=%2258%22 y=%224%22 width=%225%22 height=%2216%22 rx=%222%22/%3E %3Crect x=%2285%22 y=%224%22 width=%225%22 height=%2216%22 rx=%222%22/%3E %3C/g%3E %3Cg fill=%22#e2e8f0%22%3E %3Crect x=%2225%22 y=%2237%22 width=%2212%22 height=%2212%22 rx=%222%22/%3E%3Crect x=%2243%22 y=%2237%22 width=%2212%22 height=%2212%22 rx=%222%22/%3E%3Crect x=%2261%22 y=%2237%22 width=%2212%22 height=%2212%22 rx=%222%22/%3E%3Crect x=%2279%22 y=%2237%22 width=%2212%22 height=%2212%22 rx=%222%22/%3E %3Crect x=%2225%22 y=%2255%22 width=%2212%22 height=%2212%22 rx=%222%22/%3E%3Crect x=%2243%22 y=%2255%22 width=%2212%22 height=%2212%22 rx=%222%22/%3E%3Crect x=%2261%22 y=%2255%22 width=%2212%22 height=%2212%22 rx=%222%22/%3E%3Crect x=%2279%22 y=%2255%22 width=%2212%22 height=%2212%22 rx=%222%22/%3E %3C/g%3E %3Crect x=%2261%22 y=%2237%22 width=%2212%22 height=%2212%22 rx=%222%22 fill=%22#2f80ed%22/%3E %3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(2){
    --s360-calendar-kpi-accent:#2f80ed;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(2)::after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 130 72%22%3E %3Cdefs%3E %3ClinearGradient id=%22fill%22 x1=%220%22 y1=%220%22 x2=%220%22 y2=%221%22%3E %3Cstop offset=%220%22 stop-color=%22#93c5fd%22 stop-opacity=%22.45%22/%3E %3Cstop offset=%221%22 stop-color=%22#93c5fd%22 stop-opacity=%220%22/%3E %3C/linearGradient%3E %3C/defs%3E %3Cpath d=%22M10 55 L25 35 L42 47 L60 30 L77 43 L94 18 L112 33 L122 31 L122 64 L10 64 Z%22 fill=%22url(#fill)%22/%3E %3Cpath d=%22M10 55 L25 35 L42 47 L60 30 L77 43 L94 18 L112 33 L122 31%22 fill=%22none%22 stroke=%22#2f80ed%22 stroke-width=%224%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E %3Cg fill=%22#2f80ed%22%3E%3Ccircle cx=%2225%22 cy=%2235%22 r=%224%22/%3E%3Ccircle cx=%2260%22 cy=%2230%22 r=%224%22/%3E%3Ccircle cx=%2294%22 cy=%2218%22 r=%224%22/%3E%3Ccircle cx=%22122%22 cy=%2231%22 r=%224%22/%3E%3C/g%3E %3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(3){
    --s360-calendar-kpi-accent:#9b8cff;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(3)::after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 130 72%22%3E %3Cdefs%3E%3ClinearGradient id=%22bar%22 x1=%220%22 y1=%220%22 x2=%220%22 y2=%221%22%3E%3Cstop offset=%220%22 stop-color=%22#9b8cff%22/%3E%3Cstop offset=%221%22 stop-color=%22#c4b5fd%22/%3E%3C/linearGradient%3E%3C/defs%3E %3Cpath d=%22M10 64H122%22 stroke=%22#e2e8f0%22 stroke-width=%222%22 stroke-dasharray=%224 4%22/%3E %3Cg fill=%22url(#bar)%22%3E %3Crect x=%2224%22 y=%2223%22 width=%2210%22 height=%2241%22 rx=%223%22/%3E %3Crect x=%2243%22 y=%2251%22 width=%2210%22 height=%2213%22 rx=%223%22/%3E %3Crect x=%2262%22 y=%2239%22 width=%2210%22 height=%2225%22 rx=%223%22/%3E %3Crect x=%2281%22 y=%2222%22 width=%2210%22 height=%2242%22 rx=%223%22/%3E %3Crect x=%22100%22 y=%2246%22 width=%2210%22 height=%2218%22 rx=%223%22/%3E %3C/g%3E %3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(4){
    --s360-calendar-kpi-accent:#25a244;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(4)::after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 96 96%22%3E %3Ccircle cx=%2248%22 cy=%2248%22 r=%2238%22 fill=%22#eaf8ee%22/%3E %3Cpath d=%22M29 43a21 21 0 0 1 35-12l5 5%22 fill=%22none%22 stroke=%22#25a244%22 stroke-width=%226%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E %3Cpath d=%22M69 20v16H53%22 fill=%22none%22 stroke=%22#25a244%22 stroke-width=%226%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E %3Cpath d=%22M67 53a21 21 0 0 1-35 12l-5-5%22 fill=%22none%22 stroke=%22#25a244%22 stroke-width=%226%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E %3Cpath d=%22M27 76V60h16%22 fill=%22none%22 stroke=%22#25a244%22 stroke-width=%226%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E %3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(5){
    --s360-calendar-kpi-accent:#f5a43d;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(5)::after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 96 96%22%3E %3Ccircle cx=%2248%22 cy=%2248%22 r=%2238%22 fill=%22#fff1df%22/%3E %3Cpath d=%22M31 62h34l-5-8V42c0-10-5-17-12-17S36 32 36 42v12l-5 8Z%22 fill=%22none%22 stroke=%22#f5a43d%22 stroke-width=%225%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E %3Cpath d=%22M43 68c2 4 8 4 10 0%22 fill=%22none%22 stroke=%22#f5a43d%22 stroke-width=%225%22 stroke-linecap=%22round%22/%3E %3Ccircle cx=%2268%22 cy=%2226%22 r=%2212%22 fill=%22#ffb45c%22/%3E %3Ccircle cx=%2268%22 cy=%2226%22 r=%225%22 fill=%22#fff%22/%3E %3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(6){
    --s360-calendar-kpi-accent:#00aaa5;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(6)::after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 96 96%22%3E %3Ccircle cx=%2248%22 cy=%2248%22 r=%2238%22 fill=%22#e4fbf8%22/%3E %3Cg fill=%22#00aaa5%22%3E %3Ccircle cx=%2248%22 cy=%2237%22 r=%2210%22/%3E %3Ccircle cx=%2230%22 cy=%2243%22 r=%228%22 opacity=%22.9%22/%3E %3Ccircle cx=%2266%22 cy=%2243%22 r=%228%22 opacity=%22.9%22/%3E %3Cpath d=%22M29 64c4-10 33-10 38 0 2 5-2 8-6 8H35c-5 0-8-3-6-8Z%22/%3E %3Cpath d=%22M16 67c3-10 18-13 28-5-2 3-3 6-2 10H21c-4 0-7-2-5-5Z%22 opacity=%22.75%22/%3E %3Cpath d=%22M52 62c10-8 25-5 28 5 2 3-1 5-5 5H54c1-4 0-7-2-10Z%22 opacity=%22.75%22/%3E %3C/g%3E %3C/svg%3E");
}
@media (max-width:1180px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
        grid-template-columns:1fr;
        gap:10px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
        grid-template-columns:minmax(0,1fr) 82px;
        min-height:90px;
        padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
        border-radius:14px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > h2{
        font-size:32px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::after{
        width:82px;
        height:58px;
    }
}


/* v13.3 approved UI/IX Calendar & Events KPI Chart Cards Phase 1.5 hotfix.
 * Scope: Calendar & Events stat cards only. Fixes Phase 1.4 visual assets so
 * the right-side event charts/icons reliably render in browsers by using fully
 * encoded SVG data URIs and explicit pseudo-element display/positioning.
 * No PHP, JS, DB, CRUD, filter, import/export, reminder, permission or nonce changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
    grid-template-columns:repeat(3,minmax(280px,1fr));
    gap:var(--s360-space-md, 16px) 18px;
    margin-block:0 var(--s360-component-card-header-gap, 14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
    position:relative;
    min-height:112px;
    padding:18px 156px 18px 22px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--s360-component-card-header-gap, 14px);
    background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
    border:1px solid var(--s360-color-border-muted,#dbe4ef);
    border-inline-start:4px solid var(--s360-calendar-kpi-accent,#7c8cff);
    border-radius:16px;
    box-shadow:0 12px 26px rgba(15,23,42,.055);
    overflow:hidden;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > .description{
    margin:0;
    max-width:100%;
    color:var(--s360-color-text-muted,#475569);
    font-size:13px;
    line-height:1.25;
    font-weight:750;
    letter-spacing:-.01em;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > h2{
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:38px;
    line-height:.95;
    font-weight:850;
    letter-spacing:-.055em;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::after{
    content:"";
    display:block;
    position:absolute;
    z-index:1;
    right:22px;
    top:50%;
    transform:translateY(-50%);
    width:116px;
    height:76px;
    pointer-events:none;
    opacity:.98;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    filter:drop-shadow(0 10px 18px rgba(15,23,42,.08));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(1){--s360-calendar-kpi-accent:#7c8cff;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(2){--s360-calendar-kpi-accent:#2f80ed;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(3){--s360-calendar-kpi-accent:#9b8cff;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(4){--s360-calendar-kpi-accent:#25a244;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(5){--s360-calendar-kpi-accent:#f5a43d;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(6){--s360-calendar-kpi-accent:#00aaa5;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(1)::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20132%2084%22%3E%0A%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23edf6ff%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23ffffff%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%3Crect%20x%3D%2216%22%20y%3D%228%22%20width%3D%22100%22%20height%3D%2268%22%20rx%3D%2213%22%20fill%3D%22url%28%23g%29%22%20stroke%3D%22%23bdd7ff%22%20stroke-width%3D%222%22%2F%3E%0A%3Crect%20x%3D%2216%22%20y%3D%228%22%20width%3D%22100%22%20height%3D%2218%22%20rx%3D%2213%22%20fill%3D%22%23dbeafe%22%2F%3E%0A%3Cpath%20d%3D%22M16%2026h100%22%20stroke%3D%22%23bdd7ff%22%20stroke-width%3D%222%22%2F%3E%0A%3Cg%20fill%3D%22%232f80ed%22%3E%3Crect%20x%3D%2234%22%20y%3D%222%22%20width%3D%225%22%20height%3D%2215%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2264%22%20y%3D%222%22%20width%3D%225%22%20height%3D%2215%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2294%22%20y%3D%222%22%20width%3D%225%22%20height%3D%2215%22%20rx%3D%222%22%2F%3E%3C%2Fg%3E%0A%3Cg%20fill%3D%22%23e2e8f0%22%3E%3Crect%20x%3D%2228%22%20y%3D%2236%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2248%22%20y%3D%2236%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2268%22%20y%3D%2236%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2288%22%20y%3D%2236%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2228%22%20y%3D%2255%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2248%22%20y%3D%2255%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2268%22%20y%3D%2255%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%2288%22%20y%3D%2255%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3C%2Fg%3E%0A%3Crect%20x%3D%2268%22%20y%3D%2236%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%232f80ed%22%2F%3E%0A%3C%2Fsvg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(2)::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20132%2078%22%3E%0A%3Cdefs%3E%3ClinearGradient%20id%3D%22a%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%2393c5fd%22%20stop-opacity%3D%220.48%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2393c5fd%22%20stop-opacity%3D%220%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%3Cpath%20d%3D%22M8%2060%20L24%2039%20L41%2050%20L58%2032%20L76%2046%20L95%2020%20L113%2035%20L124%2033%20L124%2070%20L8%2070%20Z%22%20fill%3D%22url%28%23a%29%22%2F%3E%0A%3Cpath%20d%3D%22M8%2060%20L24%2039%20L41%2050%20L58%2032%20L76%2046%20L95%2020%20L113%2035%20L124%2033%22%20fill%3D%22none%22%20stroke%3D%22%232f80ed%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3Cg%20fill%3D%22%232f80ed%22%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2239%22%20r%3D%224%22%2F%3E%3Ccircle%20cx%3D%2258%22%20cy%3D%2232%22%20r%3D%224%22%2F%3E%3Ccircle%20cx%3D%2295%22%20cy%3D%2220%22%20r%3D%224%22%2F%3E%3Ccircle%20cx%3D%22124%22%20cy%3D%2233%22%20r%3D%224%22%2F%3E%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(3)::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20132%2078%22%3E%0A%3Cdefs%3E%3ClinearGradient%20id%3D%22b%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%238b7cf6%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23c4b5fd%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%3Cpath%20d%3D%22M10%2067H124%22%20stroke%3D%22%23e2e8f0%22%20stroke-width%3D%222%22%20stroke-dasharray%3D%224%205%22%2F%3E%0A%3Cg%20fill%3D%22url%28%23b%29%22%3E%3Crect%20x%3D%2224%22%20y%3D%2225%22%20width%3D%2210%22%20height%3D%2242%22%20rx%3D%223%22%2F%3E%3Crect%20x%3D%2243%22%20y%3D%2253%22%20width%3D%2210%22%20height%3D%2214%22%20rx%3D%223%22%2F%3E%3Crect%20x%3D%2262%22%20y%3D%2241%22%20width%3D%2210%22%20height%3D%2226%22%20rx%3D%223%22%2F%3E%3Crect%20x%3D%2282%22%20y%3D%2223%22%20width%3D%2210%22%20height%3D%2244%22%20rx%3D%223%22%2F%3E%3Crect%20x%3D%22102%22%20y%3D%2248%22%20width%3D%2210%22%20height%3D%2219%22%20rx%3D%223%22%2F%3E%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(4)::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%3Ccircle%20cx%3D%2248%22%20cy%3D%2248%22%20r%3D%2238%22%20fill%3D%22%23eaf8ee%22%2F%3E%0A%3Cpath%20d%3D%22M29%2043a21%2021%200%200%201%2035-12l5%205%22%20fill%3D%22none%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3Cpath%20d%3D%22M69%2020v16H53%22%20fill%3D%22none%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3Cpath%20d%3D%22M67%2053a21%2021%200%200%201-35%2012l-5-5%22%20fill%3D%22none%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3Cpath%20d%3D%22M27%2076V60h16%22%20fill%3D%22none%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(5)::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%3Ccircle%20cx%3D%2248%22%20cy%3D%2248%22%20r%3D%2238%22%20fill%3D%22%23fff1df%22%2F%3E%0A%3Cpath%20d%3D%22M31%2062h34l-5-8V42c0-10-5-17-12-17S36%2032%2036%2042v12l-5%208Z%22%20fill%3D%22none%22%20stroke%3D%22%23f5a43d%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3Cpath%20d%3D%22M43%2068c2%204%208%204%2010%200%22%20fill%3D%22none%22%20stroke%3D%22%23f5a43d%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3Ccircle%20cx%3D%2268%22%20cy%3D%2226%22%20r%3D%2212%22%20fill%3D%22%23ffb45c%22%2F%3E%0A%3Ccircle%20cx%3D%2268%22%20cy%3D%2226%22%20r%3D%225%22%20fill%3D%22%23ffffff%22%2F%3E%0A%3C%2Fsvg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card:nth-child(6)::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%3Ccircle%20cx%3D%2248%22%20cy%3D%2248%22%20r%3D%2238%22%20fill%3D%22%23e4fbf8%22%2F%3E%0A%3Cg%20fill%3D%22%2300aaa5%22%3E%3Ccircle%20cx%3D%2248%22%20cy%3D%2237%22%20r%3D%2210%22%2F%3E%3Ccircle%20cx%3D%2230%22%20cy%3D%2243%22%20r%3D%228%22%20opacity%3D%220.9%22%2F%3E%3Ccircle%20cx%3D%2266%22%20cy%3D%2243%22%20r%3D%228%22%20opacity%3D%220.9%22%2F%3E%3Cpath%20d%3D%22M29%2064c4-10%2033-10%2038%200%202%205-2%208-6%208H35c-5%200-8-3-6-8Z%22%2F%3E%3Cpath%20d%3D%22M16%2067c3-10%2018-13%2028-5-2%203-3%206-2%2010H21c-4%200-7-2-5-5Z%22%20opacity%3D%220.75%22%2F%3E%3Cpath%20d%3D%22M52%2062c10-8%2025-5%2028%205%202%203-1%205-5%205H54c1-4%200-7-2-10Z%22%20opacity%3D%220.75%22%2F%3E%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}

@media (max-width:1180px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
        grid-template-columns:1fr;
        gap:var(--s360-space-sm, 12px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
        min-height:96px;
        padding:15px 104px 15px var(--s360-component-card-padding-compact, 16px);
        border-radius:14px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > h2{
        font-size:32px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::after{
        right:14px;
        width:82px;
        height:58px;
    }
}

/* v13.3 approved UI/IX Calendar & Events KPI Visual Alignment Phase 1.6.
 * Scope: Calendar & Events KPI stat cards only. Refines the previous visual
 * treatment so cards match the approved reference more closely: description
 * top-left, value on the second line left, and a smaller right-side chart/icon.
 * No PHP, JS, DB, nonce, permission, CRUD, filter, import/export or reminder changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
    grid-template-columns:repeat(3,minmax(260px,1fr));
    gap:var(--s360-space-sm, 12px) var(--s360-component-card-header-gap, 14px);
    margin-block:0 var(--s360-space-sm, 12px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
    position:relative;
    min-height:86px;
    padding:var(--s360-component-card-padding-tight, 14px) 88px var(--s360-component-card-padding-tight, 14px) 18px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:var(--s360-space-xs, 8px);
    overflow:hidden;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > .description{
    margin:0;
    max-width:100%;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.25;
    font-weight:700;
    letter-spacing:-.008em;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > .s360-ui-stat-card__value{
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:22px;
    line-height:1;
    font-weight:820;
    letter-spacing:-.035em;
    text-align:left;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::after{
    right:18px;
    top:50%;
    transform:translateY(-50%);
    width:58px;
    height:42px;
    opacity:.96;
    filter:none;
}
@media (max-width:1180px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
        grid-template-columns:1fr;
        gap:10px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
        min-height:82px;
        padding:13px 74px 13px var(--s360-component-card-padding-compact, 16px);
        border-radius:14px;
        gap:7px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > h2,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > .s360-ui-stat-card__value{
        font-size:22px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::after{
        right:14px;
        width:48px;
        height:34px;
    }
}


/* v13.3 approved UI/IX Calendar & Events KPI Alignment Fix Phase 1.7.
 * Scope: Calendar & Events KPI stat cards only. Forces value placement to the
 * left below the description, keeps the right chart small, and normalizes the
 * left accent so it renders as one consistent border instead of a double-color edge.
 * No PHP, JS, DB, nonce, permission, CRUD, filter, import/export or reminder changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) 58px;
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:var(--s360-component-card-header-gap, 14px);
    row-gap:var(--s360-space-xs, 8px);
    min-height:78px;
    padding:var(--s360-component-card-padding-tight, 14px) 18px var(--s360-component-card-padding-tight, 14px) 18px;
    border:1px solid var(--s360-color-border-muted,#dbe4ef);
    border-left:4px solid var(--s360-calendar-kpi-accent,#7c8cff);
    border-inline-start:4px solid var(--s360-calendar-kpi-accent,#7c8cff);
    box-shadow:0 8px 18px rgba(15,23,42,.045);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > .description{
    grid-column:1;
    grid-row:1;
    align-self:end;
    justify-self:start;
    width:auto;
    margin:0;
    max-width:100%;
    text-align:left;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card > .s360-ui-stat-card__value{
    grid-column:1;
    grid-row:2;
    align-self:start;
    justify-self:start;
    display:block;
    width:auto;
    min-width:0;
    margin:0;
    padding:0;
    text-align:left;
    font-size:22px;
    line-height:1;
    font-weight:820;
    letter-spacing:-.035em;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::after{
    grid-column:2;
    grid-row:1 / span 2;
    position:static;
    justify-self:end;
    align-self:center;
    transform:none;
    width:54px;
    height:38px;
    opacity:.94;
    filter:none;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
        grid-template-columns:minmax(0,1fr) 48px;
        min-height:74px;
        padding:13px var(--s360-component-card-padding-compact, 16px);
        column-gap:var(--s360-space-sm, 12px);
        row-gap:7px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::after{
        width:46px;
        height:32px;
    }
}

/* v13.3 approved UI/IX Calendar & Events KPI Border Neutral Phase 1.8.
 * Scope: Calendar & Events KPI stat cards only. Removes the colored left
 * accent strip so the left border matches the right border.
 * No PHP, JS, DB, nonce, permission, CRUD, filter, import/export or reminder changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
    border-inline-start:1px solid var(--s360-color-border-muted,#dbe4ef);
}

/* v13.3 approved UI/IX Calendar & Events KPI Border Strip Remove Phase 1.9.
 * Scope: Calendar & Events KPI stat cards only. Removes the legacy ::before
 * accent strip from the stat-card family so the left edge matches the right
 * edge visually. No PHP, JS, DB, nonce, permission, CRUD, filter, import/export
 * or reminder changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card::before{
    content:none;
    display:none;
    width:0;
    background:transparent;
    opacity:0;
}

/* v13.3 approved UI/IX Calendar & Events Table/List Polish Phase 2.0.
 * Scope: Calendar & Events admin page only. Splits the Events workspace into
 * independent cards: statistics, filter, and events calendar/list. Also polishes
 * the events table/list and toolbar density. PHP change is structural markup only;
 * no CRUD, permissions, nonce, import/export, reminder, filter query, JS or DB changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-grouped-admin__content,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace.s360-grouped-admin__content{
    display:grid;
    gap:var(--s360-component-card-header-gap, 14px);
    width:100%;
    max-width:100%;
    min-width:0;
    padding:0;
    margin:0;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > :where(.s360-calendar-statistics-section,.s360-calendar-filter-section,.s360-calendar-browser,.s360-calendar-tab-section,.s360-calendar-event-detail-card){
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
    margin:0;
    padding:18px;
    background:var(--s360-color-surface-raised,#fff);
    border:1px solid var(--s360-color-border-muted,#dbe4ef);
    border-radius:16px;
    box-shadow:0 8px 22px rgba(15,23,42,.045);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section{
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section .s360-calendar-stats-grid{
    margin:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
    padding:18px var(--s360-component-card-padding, 20px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser{
    padding:18px 20px 20px;
    overflow-x:auto;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section > h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-title{
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:16px;
    line-height:1.25;
    font-weight:800;
    letter-spacing:-.015em;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section > .description,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header .description{
    margin:var(--s360-space-2xs, 4px) 0 0;
    font-size:12px;
    line-height:1.45;
    color:var(--s360-color-text-muted,#64748b);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:14px;
    padding-block-end:12px;
    margin-block-end:12px;
    border-block-end:1px solid var(--s360-color-border-subtle,#e5edf5);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-view-toggle{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:8px;
    margin:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
    display:flex;
    align-items:center;
    gap:10px;
    width:100%;
    min-width:0;
    margin:0 0 12px;
    padding:10px 12px;
    border:1px solid var(--s360-color-border-subtle,#e5edf5);
    border-radius:12px;
    background:var(--s360-color-surface,#f8fafc);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-nav-label{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding-inline:8px;
    font-size:13px;
    color:var(--s360-color-text-heading,#0f172a);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-today-summary{
    margin-inline-start:auto;
    display:flex;
    align-items:center;
    gap:var(--s360-space-xs, 8px);
    min-width:0;
    padding:6px 10px;
    border:1px solid var(--s360-color-border-subtle,#e5edf5);
    border-radius:10px;
    background:#fff;
    font-size:12px;
    color:var(--s360-color-text-muted,#64748b);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-month-table,.s360-calendar-events-list-table){
    width:100%;
    min-width:980px;
    border:1px solid var(--s360-color-border-subtle,#e5edf5);
    border-radius:14px;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    background:#fff;
    box-shadow:0 6px 16px rgba(15,23,42,.035);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-month-table,.s360-calendar-events-list-table) thead th{
    padding:11px 12px;
    background:var(--s360-color-surface,#f8fafc);
    border-block-end:1px solid var(--s360-color-border-subtle,#e5edf5);
    color:var(--s360-color-text-heading,#1e293b);
    font-size:11px;
    line-height:1.25;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.025em;
    white-space:nowrap;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-month-table,.s360-calendar-events-list-table) tbody td{
    padding:11px 12px;
    border-block-end:1px solid var(--s360-color-border-subtle,#e5edf5);
    vertical-align:top;
    font-size:12px;
    line-height:1.45;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-month-table,.s360-calendar-events-list-table) tbody tr:last-child td{
    border-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table tbody tr:hover td{
    background:var(--s360-color-surface,#f8fafc);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    min-width:120px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-link{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:4px 8px;
    border:1px solid var(--s360-color-border-subtle,#e5edf5);
    border-radius:999px;
    background:#fff;
    color:var(--s360-color-primary,#0073aa);
    font-size:11px;
    line-height:1;
    font-weight:750;
    text-decoration:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-link:hover{
    border-color:var(--s360-color-primary,#0073aa);
    background:var(--s360-color-primary-soft,#eaf4ff);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-form{
    margin:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-link--delete{
    color:var(--s360-color-danger,#b42318);
    cursor:pointer;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-grouped-admin__content,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace.s360-grouped-admin__content{
        gap:12px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > :where(.s360-calendar-statistics-section,.s360-calendar-filter-section,.s360-calendar-browser,.s360-calendar-tab-section,.s360-calendar-event-detail-card){
        padding:var(--s360-component-card-padding-tight, 14px);
        border-radius:14px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
        align-items:stretch;
        flex-direction:column;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-today-summary{
        margin-inline-start:0;
        flex-wrap:wrap;
    }
}

/* v13.3 approved UI/IX Calendar & Events Section/Table Cleanup Phase 2.1.
 * Scope: Calendar & Events admin Events screen only. Removes the double-card
 * feeling from Events List, removes unnecessary bottom borders from the
 * Events/Calendar toolbar/header, removes section border/shadow from the
 * statistics and filter sections, and gives the Events Filter more breathing room.
 * No PHP, JS, DB, CRUD, filter query, import/export, reminder, permission or nonce changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
    border:0;
    box-shadow:none;
    background:transparent;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section{
    padding:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
    padding:18px 22px var(--s360-component-card-padding, 20px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-form{
    margin-block-start:16px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
    grid-template-columns:repeat(4,minmax(172px,1fr)) minmax(88px,max-content);
    gap:18px 20px;
    align-items:end;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field{
    gap:7px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:stretch;
    justify-content:flex-end;
    gap:8px;
    min-width:88px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .s360-ui-button,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .button{
    width:100%;
    min-width:76px;
    justify-content:center;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header{
    padding-block-end:0;
    margin-block-end:14px;
    border-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
    border:0;
    border-block-end:0;
    box-shadow:none;
    background:transparent;
    padding:8px 0;
    margin-block-end:12px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-title{
    border:0;
    border-block-end:0;
    padding-block-end:0;
    margin-block:0 10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table{
    border:0;
    border-radius:0;
    box-shadow:none;
    background:transparent;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table thead th:first-child,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table tbody td:first-child{
    padding-inline-start:14px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table thead th:last-child,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table tbody td:last-child{
    padding-inline-end:14px;
}
@media (max-width:1280px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
        grid-column:1 / -1;
        align-items:flex-start;
        min-width:0;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .s360-ui-button,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .button{
        width:auto;
        min-width:86px;
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
        padding:var(--s360-component-card-padding-tight, 14px) 0 var(--s360-component-card-padding-compact, 16px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:1fr;
        gap:14px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .s360-ui-button,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .button{
        width:100%;
    }
}

/* v13.3 approved UI/IX Calendar & Events Section Card Border Restore Phase 2.2.
 * Scope: Calendar & Events admin Events screen only. Restores card borders for
 * Calendar statistics and Events Filter sections while keeping their shadows removed.
 * No PHP, JS, DB, CRUD, filter query, import/export, reminder, permission or nonce changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
    background:var(--s360-color-surface-raised,#fff);
    border:1px solid var(--s360-color-border-muted,#dbe4ef);
    border-radius:16px;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section{
    padding:var(--s360-component-card-padding-tight, 14px) var(--s360-component-card-padding-compact, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
    padding:var(--s360-component-card-padding, 20px) var(--s360-space-lg, 24px) 22px;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
        border-radius:14px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section{
        padding:var(--s360-component-card-padding-compact, 16px);
    }
}

/* v13.3 approved UI/IX Admin Dashboard KPI Grid Restore Phase 2.4.
 * Scope: Admin Dashboard direct KPI/stat grid widgets only.
 * Fix: Calendar/dashboard width work made direct dashboard KPI grids render as
 * block-level containers, causing each stat card to become full-width. Restore
 * the internal 4/3/2-column grid behavior while preserving full-width widget
 * spans for panels such as Role Profile, Operations, Admissions, and Finance.
 * No PHP, JS, DB, renderer, permission, route, form, tab or Calendar logic changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-admin-kpi-grid,.s360-ui-grid)[data-s360-dashboard-widget]{
    display:grid;
    box-sizing:border-box;
    width:100%;
    inline-size:100%;
    max-width:100%;
    max-inline-size:100%;
    min-width:0;
    justify-self:stretch;
    grid-column:1 / -1;
    gap:var(--s360-dashboard-density-grid-gap,var(--s360-dashboard-polish-inner-gap,14px));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-admin-kpi-grid,.s360-ui-grid).s360-ui-grid--4[data-s360-dashboard-widget]{
    grid-template-columns:repeat(4,minmax(0,1fr));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-admin-kpi-grid,.s360-ui-grid).s360-ui-grid--3[data-s360-dashboard-widget]{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-admin-kpi-grid,.s360-ui-grid).s360-ui-grid--2[data-s360-dashboard-widget]{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-admin-kpi-grid,.s360-ui-grid)[data-s360-dashboard-widget] > .s360-ui-stat-card{
    width:auto;
    inline-size:auto;
    max-width:100%;
    justify-self:stretch;
}
@media (max-width:1180px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-admin-kpi-grid,.s360-ui-grid).s360-ui-grid--4[data-s360-dashboard-widget],
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-admin-kpi-grid,.s360-ui-grid).s360-ui-grid--3[data-s360-dashboard-widget]{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard .s360-admin-dashboard__tab-panel > :where(.s360-admin-kpi-grid,.s360-ui-grid)[data-s360-dashboard-widget]{
        grid-template-columns:1fr;
        gap:10px;
    }
}

/* v13.5 UI/IX Unified Navigation Tabs CSS Consolidation.
 * Scope: canonical `.s360-ui-main-tabs` and `.s360-ui-sub-tabs` tab rows inside
 * the School 360 admin wrapper, plus known WordPress/module bridge aliases that
 * already carry the canonical classes.
 * Goal: make one main-tab visual contract and one sub-tab visual contract win at
 * the final card-system layer without changing PHP markup, JavaScript behavior,
 * routes, permissions, nonces, REST/AJAX/admin-post handlers or database logic.
 * Legacy `.nav-tab*` classes remain bridge compatibility classes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-tabs__nav.s360-ui-main-tabs:not(.s360-ui-sub-tabs),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper nav.s360-ui-main-tabs:not(.s360-ui-sub-tabs),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-expense-phase-h nav.s360-expense-tabs.s360-ui-main-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs{
    position:relative;
    top:auto;
    z-index:auto;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:var(--s360-tabs-main-gap,8px);
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
    margin:var(--s360-tabs-main-margin,18px 0 22px);
    padding:var(--s360-tabs-main-padding,8px);
    border:1px solid var(--s360-tabs-main-border,var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0)));
    border-bottom:1px solid var(--s360-tabs-main-border,var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0)));
    border-radius:var(--s360-tabs-main-radius,16px);
    background:var(--s360-tabs-main-bg,var(--s360-color-surface,var(--s360-color-white,#fff)));
    background-image:none;
    box-shadow:var(--s360-tabs-main-shadow,var(--s360-shadow-sm,0 1px 2px rgba(15,23,42,.06)));
    backdrop-filter:none;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
    transform:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs) > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-expense-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-expense-phase-h nav.s360-expense-tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-expense-tab-link),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-hr-nav-item){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:var(--s360-tabs-main-item-min-height,38px);
    min-width:0;
    width:auto;
    max-width:none;
    margin:0;
    padding:var(--s360-tabs-main-item-padding,8px 12px);
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:var(--s360-tabs-main-item-radius,999px);
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-tabs-main-text,var(--s360-color-primary,#2271b1));
    font-size:var(--s360-tabs-main-font-size,13px);
    font-weight:700;
    line-height:1.3;
    letter-spacing:normal;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    cursor:pointer;
    transform:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs) > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-expense-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs) > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-expense-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-expense-phase-h nav.s360-expense-tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-expense-tab-link):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-expense-phase-h nav.s360-expense-tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-expense-tab-link):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-hr-nav-item):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-hr-nav-item):focus-visible{
    border-color:var(--s360-tabs-main-hover-border,var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe)));
    border-bottom-color:var(--s360-tabs-main-hover-border,var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe)));
    background:var(--s360-tabs-main-hover-bg,var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc)));
    background-image:none;
    color:var(--s360-tabs-main-hover-text,var(--s360-color-primary,#2271b1));
    box-shadow:none;
    outline:none;
    transform:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs) > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link,.s360-expense-tab-link,.s360-hr-nav-item,.s360-tab,.school360-tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-finance-tab-link):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-expense-phase-h nav.s360-expense-tabs.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-expense-tab-link):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > :where(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-hr-nav-item):focus-visible{
    outline:2px solid var(--s360-tabs-focus-ring,var(--s360-color-primary,#2271b1));
    outline-offset:2px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs) > :is(.nav-tab-active,.is-active,.active,.s360-hr-nav-active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-dashboard-phase-d nav.s360-admin-dashboard__tabs.s360-ui-main-tabs > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-finance-phase-h nav.s360-finance-tabs.s360-ui-main-tabs > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-expense-phase-h nav.s360-expense-tabs.s360-ui-main-tabs > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-hr-phase-i .s360-ui-section-card--hr-navigation nav.s360-hr-nav.s360-ui-main-tabs > :is(.nav-tab-active,.is-active,.active,.s360-hr-nav-active,[aria-current="page"],[aria-selected="true"]){
    border-color:var(--s360-tabs-main-active-border,var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1)));
    border-bottom-color:var(--s360-tabs-main-active-border,var(--s360-color-primary-soft-border,var(--s360-color-primary,#2271b1)));
    background:var(--s360-tabs-main-active-bg,var(--s360-color-primary-soft,var(--s360-color-border-exact-f0f6fc,#f0f6fc)));
    background-image:none;
    color:var(--s360-tabs-main-active-text,var(--s360-color-primary,#2271b1));
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-sub-tabs:not(.s360-ui-main-tabs),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-tabs__nav.s360-ui-sub-tabs:not(.s360-ui-main-tabs),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper nav.s360-ui-sub-tabs:not(.s360-ui-main-tabs),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-people-subnav.s360-ui-sub-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-communication-subnav.s360-ui-sub-tabs,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-hr-profile-tabs.s360-ui-sub-tabs{
    position:relative;
    top:auto;
    z-index:auto;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:var(--s360-tabs-sub-gap,6px);
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
    margin:var(--s360-tabs-sub-margin,12px 0 18px);
    padding:var(--s360-tabs-sub-padding,6px);
    border:1px solid var(--s360-tabs-sub-border,var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0)));
    border-bottom:1px solid var(--s360-tabs-sub-border,var(--s360-color-border-muted,var(--s360-color-border,#dbe5f0)));
    border-radius:var(--s360-tabs-sub-radius,12px);
    background:var(--s360-tabs-sub-bg,var(--s360-color-bg-subtle,var(--s360-color-bg,#f8fafc)));
    background-image:none;
    box-shadow:var(--s360-tabs-sub-shadow,inset 0 1px 0 rgba(255,255,255,.75));
    backdrop-filter:none;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    white-space:nowrap;
    transform:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-sub-tabs:not(.s360-ui-main-tabs) > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-hr-profile-tabs.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-hr-profile-tab){
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:var(--s360-tabs-sub-item-min-height,34px);
    min-width:0;
    width:auto;
    max-width:none;
    margin:0;
    padding:var(--s360-tabs-sub-item-padding,7px 11px);
    border:1px solid transparent;
    border-bottom:1px solid transparent;
    border-radius:var(--s360-tabs-sub-item-radius,9px);
    background:transparent;
    background-image:none;
    box-shadow:none;
    color:var(--s360-tabs-sub-text,var(--s360-color-text-muted,var(--s360-color-text-secondary,#475569)));
    font-size:var(--s360-tabs-sub-font-size,12px);
    font-weight:700;
    line-height:1.25;
    letter-spacing:.01em;
    text-align:center;
    text-decoration:none;
    text-transform:none;
    white-space:nowrap;
    cursor:pointer;
    transform:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-sub-tabs:not(.s360-ui-main-tabs) > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-sub-tabs:not(.s360-ui-main-tabs) > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-hr-profile-tabs.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-hr-profile-tab):hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-hr-profile-tabs.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-hr-profile-tab):focus-visible{
    border-color:var(--s360-tabs-sub-hover-border,var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe)));
    border-bottom-color:var(--s360-tabs-sub-hover-border,var(--s360-color-primary-soft-border,var(--s360-color-border,#bfdbfe)));
    background:var(--s360-tabs-sub-hover-bg,var(--s360-color-surface,var(--s360-color-white,#fff)));
    background-image:none;
    color:var(--s360-tabs-sub-hover-text,var(--s360-color-primary,#2271b1));
    box-shadow:var(--s360-tabs-sub-hover-shadow,0 1px 2px rgba(15,23,42,.05));
    outline:none;
    transform:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-sub-tabs:not(.s360-ui-main-tabs) > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-school-tab,.s360-system-tab,.s360-builder-tab,.s360-admin-nav-pill,.s360-hr-profile-tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-people-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-communication-subnav.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab):focus-visible,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-hr-profile-tabs.s360-ui-sub-tabs > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-hr-profile-tab):focus-visible{
    outline:2px solid var(--s360-tabs-focus-ring,var(--s360-color-primary,#2271b1));
    outline-offset:2px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-sub-tabs:not(.s360-ui-main-tabs) > :is(.nav-tab-active,.is-active,.active,.s360-hr-profile-tab-active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-students-subnav.s360-ui-sub-tabs > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-student-ops-subtabs.s360-ui-sub-tabs > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-people-subnav.s360-ui-sub-tabs > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-communication-subnav.s360-ui-sub-tabs > :is(.nav-tab-active,.is-active,.active,[aria-current="page"],[aria-selected="true"]),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-hr-profile-tabs.s360-ui-sub-tabs > :is(.nav-tab-active,.is-active,.active,.s360-hr-profile-tab-active,[aria-current="page"],[aria-selected="true"]){
    border-color:var(--s360-tabs-sub-active-border,var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe)));
    border-bottom-color:var(--s360-tabs-sub-active-border,var(--s360-color-primary-soft-border,var(--s360-color-primary,#bfdbfe)));
    background:var(--s360-tabs-sub-active-bg,var(--s360-color-surface,var(--s360-color-white,#fff)));
    background-image:none;
    color:var(--s360-tabs-sub-active-text,var(--s360-color-primary,#2271b1));
    box-shadow:var(--s360-tabs-sub-active-shadow,0 1px 3px rgba(15,23,42,.08));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-main-tabs,.s360-ui-sub-tabs) > :is(.disabled,[disabled],[aria-disabled="true"]){
    cursor:not-allowed;
    opacity:.58;
    box-shadow:none;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-main-tabs:not(.s360-ui-sub-tabs),
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper .s360-ui-sub-tabs:not(.s360-ui-main-tabs){
        flex-wrap:nowrap;
        scroll-padding-inline:var(--s360-tabs-mobile-scroll-padding,var(--s360-space-sm,12px));
        scroll-snap-type:x proximity;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-main-tabs,.s360-ui-sub-tabs) > :where(a,button,span,div,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-finance-tab-link,.s360-expense-tab-link,.s360-hr-nav-item,.s360-hr-profile-tab){
        scroll-snap-align:start;
    }
}

/* v13.5 UI/IX Unified Body Shell Phase 3: CSS shell consolidation.
 * Scope: CSS-only final layer for the body/page shell contract introduced by
 * docs/UIIX_UNIFIED_BODY_SHELL_STANDARD_V13_5.md.
 * Contract: .wrap.s360-admin-wrapper is the outer WordPress admin boundary,
 * .s360-page-shell is the canonical page shell, .s360-ui-shell is an optional
 * inner workspace shell, and legacy/module shell classes remain bridge hooks.
 * This layer intentionally does not alter PHP routes, JS hooks, data flows,
 * capabilities, nonces, forms, SQL, REST/AJAX/admin-post handlers or database
 * schema.
 */
body.wp-admin{
    --s360-body-shell-max-width:var(--s360-page-shell-max-width,1440px);
    --s360-body-shell-gutter-start:var(--s360-page-shell-gutter-inline-start,2px);
    --s360-body-shell-gutter-end:var(--s360-page-shell-gutter-inline,20px);
    --s360-body-shell-top-offset:var(--s360-page-shell-top-offset,16px);
    --s360-body-shell-stack-gap:var(--s360-page-shell-stack-gap,14px);
    --s360-body-shell-mobile-gutter:var(--s360-page-shell-mobile-gutter,12px);
    --s360-body-shell-surface:transparent;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
    box-sizing:border-box;
    display:block;
    width:auto;
    inline-size:auto;
    max-width:var(--s360-body-shell-max-width,1440px);
    max-width:min(var(--s360-body-shell-max-width,1440px), calc(100% - var(--s360-body-shell-gutter-start,2px) - var(--s360-body-shell-gutter-end,20px)));
    max-inline-size:var(--s360-body-shell-max-width,1440px);
    max-inline-size:min(var(--s360-body-shell-max-width,1440px), calc(100% - var(--s360-body-shell-gutter-start,2px) - var(--s360-body-shell-gutter-end,20px)));
    min-width:0;
    margin-block-start:var(--s360-body-shell-top-offset,16px);
    margin-block-end:0;
    margin-inline-start:var(--s360-body-shell-gutter-start,2px);
    margin-inline-end:auto;
    padding:0;
    background:var(--s360-body-shell-surface,transparent);
    background-image:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-page-shell,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-grouped-admin,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-wrap,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-wrap,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-tailwind-foundation,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.school360-tailwind-foundation{
    width:auto;
    inline-size:auto;
    max-width:var(--s360-body-shell-max-width,1440px);
    max-width:min(var(--s360-body-shell-max-width,1440px), calc(100% - var(--s360-body-shell-gutter-start,2px) - var(--s360-body-shell-gutter-end,20px)));
    max-inline-size:var(--s360-body-shell-max-width,1440px);
    max-inline-size:min(var(--s360-body-shell-max-width,1440px), calc(100% - var(--s360-body-shell-gutter-start,2px) - var(--s360-body-shell-gutter-end,20px)));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-page-shell--workspace,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-page-shell--fullwidth,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-grouped-fullwidth,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admin-dashboard,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-finance-page,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-workspace,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-student-workspace,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-admissions-workspace,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-people-workspace{
    width:auto;
    inline-size:auto;
    max-width:var(--s360-body-shell-max-width,1440px);
    max-width:min(var(--s360-body-shell-max-width,1440px), calc(100% - var(--s360-body-shell-gutter-start,2px) - var(--s360-body-shell-gutter-end,20px)));
    max-inline-size:var(--s360-body-shell-max-width,1440px);
    max-inline-size:min(var(--s360-body-shell-max-width,1440px), calc(100% - var(--s360-body-shell-gutter-start,2px) - var(--s360-body-shell-gutter-end,20px)));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper > :where(.s360-page-shell__header,.s360-ui-page-header,.s360-page-hero,.s360-grouped-admin__hero,.s360-readiness-hero,.s360-settings-hero,.s360-system-hero,.s360-grouped-admin__notice-slot,.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-admin-dashboard__top-surfaces,.s360-ui-tabs,.s360-ui-tabs__nav,.s360-ui-main-tabs,.s360-grouped-admin__main-tabs,.s360-page-shell__body,.s360-ui-shell,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell,.s360-hr-main,.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel){
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper > :where(.s360-page-shell__header,.s360-ui-page-header,.s360-page-hero,.s360-grouped-admin__hero,.s360-readiness-hero,.s360-settings-hero,.s360-system-hero):first-child{
    margin-block-start:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper > :where(.s360-page-shell__header,.s360-ui-page-header,.s360-page-hero,.s360-grouped-admin__hero,.s360-readiness-hero,.s360-settings-hero,.s360-system-hero,.s360-grouped-admin__notice-slot,.s360-grouped-admin__top-surfaces,.s360-ui-header-utility-grid,.s360-admin-dashboard__top-surfaces,.s360-ui-tabs__nav,.s360-ui-main-tabs,.s360-grouped-admin__main-tabs,.s360-page-shell__body,.s360-ui-shell,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell,.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel):not(:first-child){
    margin-block-start:var(--s360-body-shell-stack-gap,14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper > :where(.s360-page-shell__body,.s360-ui-shell,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell,.s360-hr-main){
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-shell,.s360-page-shell__body,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell,.s360-hr-main){
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-shell,.s360-page-shell__body,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell,.s360-hr-main) > :where(.wrap,.s360-wrap,.school360-wrap,.s360-page-shell,.s360-ui-shell,.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel,.s360-ui-grid,.s360-grid,.s360-table-responsive,.s360-table-scroll,.s360-overflow-x-auto){
    box-sizing:border-box;
    max-width:100%;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-shell,.s360-page-shell__body,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell,.s360-hr-main) > :where(.wrap,.s360-wrap,.school360-wrap):not(.s360-admin-wrapper){
    margin-inline-start:0;
    margin-inline-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(table.widefat,.wp-list-table,.s360-ui-table,.s360-data-table,.s360-table,.s360-ui-grid,.s360-grid,.s360-form-grid,.s360-ui-form-grid,.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel){
    max-width:100%;
    min-width:0;
}
@media (min-width:1500px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
        margin-inline-end:auto;
    }
}
@media (max-width:782px){
    body.wp-admin{
        --s360-body-shell-gutter-start:var(--s360-body-shell-mobile-gutter,12px);
        --s360-body-shell-gutter-end:var(--s360-body-shell-mobile-gutter,12px);
        --s360-body-shell-top-offset:12px;
        --s360-body-shell-stack-gap:12px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
        max-width:calc(100% - var(--s360-body-shell-gutter-start,12px) - var(--s360-body-shell-gutter-end,12px));
        max-inline-size:calc(100% - var(--s360-body-shell-gutter-start,12px) - var(--s360-body-shell-gutter-end,12px));
        margin-inline-start:var(--s360-body-shell-gutter-start,12px);
        margin-inline-end:var(--s360-body-shell-gutter-end,12px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper > :where(.s360-ui-tabs__nav,.s360-ui-main-tabs,.s360-grouped-admin__main-tabs,.s360-page-shell__body,.s360-ui-shell,.s360-grouped-admin__content,.s360-admin-dashboard__workspace,.s360-calendar-workspace,.s360-hr-shell){
        max-width:100%;
        overflow-wrap:anywhere;
    }
}

/* v13.5 UI/IX Unified Blocks / Sections / Cards Phase 3: CSS consolidation.
 * Scope: CSS-only final layer for the canonical card/block/section contract
 * documented in docs/UIIX_UNIFIED_BLOCKS_SECTIONS_CARDS_STANDARD_V13_5.md.
 * This layer strengthens shared card rhythm, header/body/footer structure,
 * stat/action card overflow safety, and table/grid containment without changing
 * PHP routes, JavaScript hooks, permissions, nonces, REST/AJAX/admin-post
 * handlers, form actions, SQL, database schema or business workflows.
 */
:root{
    --s360-cards-consolidated-stack-gap:var(--s360-component-card-stack-gap,var(--s360-space-md,16px));
    --s360-cards-consolidated-header-gap:var(--s360-space-sm,12px);
    --s360-cards-consolidated-title-size:var(--s360-font-size-lg,18px);
    --s360-cards-consolidated-subtitle-size:var(--s360-font-size-sm,13px);
    --s360-cards-consolidated-footer-gap:var(--s360-component-toolbar-gap,var(--s360-space-sm,12px));
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel,.s360-ui-stat-card,.s360-admin-dashboard__utility-card,.s360-ui-action-card){
    box-sizing:border-box;
    max-width:100%;
    min-width:0;
    overflow-wrap:anywhere;
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__header,.s360-ui-section-card__header,.s360-ui-dashboard-panel__header){
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--s360-cards-consolidated-header-gap,12px);
    min-width:0;
    margin:0;
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__header,.s360-ui-section-card__header,.s360-ui-dashboard-panel__header) > :where(.s360-ui-card__heading,.s360-ui-section-card__heading,.s360-ui-dashboard-panel__heading){
    min-width:0;
}
:where(.s360-ui-card__title,.s360-ui-section-card__title,.s360-ui-dashboard-panel__title){
    margin:0;
    color:var(--s360-color-text-heading,#111827);
    font-size:var(--s360-cards-consolidated-title-size,18px);
    font-weight:var(--s360-font-weight-bold,700);
    line-height:1.3;
}
:where(.s360-ui-card__subtitle,.s360-ui-section-card__subtitle,.s360-ui-dashboard-panel__subtitle){
    margin:.25rem 0 0;
    color:var(--s360-color-text-tertiary,#64748b);
    font-size:var(--s360-cards-consolidated-subtitle-size,13px);
    line-height:1.55;
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__body,.s360-ui-section-card__body,.s360-ui-dashboard-panel__body){
    min-width:0;
    margin:0;
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__header,.s360-ui-section-card__header,.s360-ui-dashboard-panel__header) + :where(.s360-ui-card__body,.s360-ui-section-card__body,.s360-ui-dashboard-panel__body),
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__body,.s360-ui-section-card__body,.s360-ui-dashboard-panel__body) + :where(.s360-ui-card__footer,.s360-ui-section-card__footer,.s360-ui-dashboard-panel__footer){
    margin-block-start:var(--s360-cards-consolidated-stack-gap,16px);
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__footer,.s360-ui-section-card__footer,.s360-ui-dashboard-panel__footer){
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:var(--s360-cards-consolidated-footer-gap,12px);
    min-width:0;
    margin-block-end:0;
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(h1,h2,h3,h4,p,ul,ol,dl,table,form,.s360-ui-grid,.s360-grid):first-child{
    margin-block-start:0;
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(h1,h2,h3,h4,p,ul,ol,dl,table,form,.s360-ui-grid,.s360-grid):last-child{
    margin-block-end:0;
}
:where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) :where(.widefat,.wp-list-table,table,.s360-ui-table,.s360-data-table,.s360-table,.s360-table-scroll,.s360-table-responsive,.s360-ui-grid,.s360-grid,.s360-form-grid,.s360-ui-form-grid){
    max-width:100%;
    min-width:0;
}
:where(.s360-ui-stat-card) > :where(.s360-ui-stat-card__value,.s360-ui-stat-card__label,.s360-ui-stat-card__meta,.s360-ui-stat-card__helper,.s360-ui-stat-card__delta,.s360-ui-stat-card__footer,.s360-ui-stat-card__action){
    min-width:0;
}
:where(.s360-ui-stat-card__label,.s360-ui-stat-card__meta,.s360-ui-stat-card__helper){
    overflow-wrap:anywhere;
}
:where(.s360-admin-dashboard__utility-card) > *,
:where(.s360-ui-action-card) > *{
    min-width:0;
}
:where(.s360-ui-action-card__actions){
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--s360-cards-consolidated-footer-gap,12px);
    min-width:0;
}
:where(.s360-ui-action-card[href],button.s360-ui-action-card,[role="button"].s360-ui-action-card,.s360-admin-dashboard__utility-card[href],button.s360-admin-dashboard__utility-card,[role="button"].s360-admin-dashboard__utility-card){
    cursor:pointer;
}
:where(.s360-ui-action-card[href],button.s360-ui-action-card,[role="button"].s360-ui-action-card,.s360-admin-dashboard__utility-card[href],button.s360-admin-dashboard__utility-card,[role="button"].s360-admin-dashboard__utility-card):focus-visible{
    outline:2px solid var(--s360-color-primary,#2271b1);
    outline-offset:2px;
}
@media (max-width:782px){
    :where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__header,.s360-ui-section-card__header,.s360-ui-dashboard-panel__header),
    :where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__footer,.s360-ui-section-card__footer,.s360-ui-dashboard-panel__footer){
        flex-direction:column;
        align-items:stretch;
    }
}

/* v13.5 UI/IX Unified Spacing Phase 3: Admin compact density alignment.
 * Scope: CSS-only admin density layer for School 360 admin pages/modules.
 * Goal: make non-dashboard admin modules use the same compact visual rhythm as
 * the dashboard: tighter card padding, grid gaps, stat/action spacing and shell
 * stack spacing. Public/portal pages, PHP renderers, JS hooks, permissions,
 * nonce, REST/AJAX, database and business workflows remain unchanged.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
    --s360-admin-compact-density-panel-padding-y:var(--s360-component-card-padding-tight, 14px);
    --s360-admin-compact-density-panel-padding-x:var(--s360-component-card-padding-compact, 16px);
    --s360-admin-compact-density-mobile-panel-padding-y:var(--s360-space-sm, 12px);
    --s360-admin-compact-density-mobile-panel-padding-x:var(--s360-space-sm, 12px);
    --s360-admin-compact-density-shell-stack-gap:10px;
    --s360-admin-compact-density-mobile-shell-stack-gap:var(--s360-space-xs, 8px);
    --s360-admin-compact-density-card-stack-gap:10px;
    --s360-admin-compact-density-header-gap:var(--s360-space-xs, 8px);
    --s360-admin-compact-density-footer-gap:var(--s360-space-xs, 8px);
    --s360-admin-compact-density-grid-gap:10px;
    --s360-admin-compact-density-grid-gap-lg:var(--s360-space-sm, 12px);
    --s360-admin-compact-density-stat-padding-y:var(--s360-space-sm, 12px);
    --s360-admin-compact-density-stat-padding-x:var(--s360-component-card-padding-tight, 14px);
    --s360-admin-compact-density-stat-gap:var(--s360-space-2xs, 4px);
    --s360-admin-compact-density-action-padding-y:10px;
    --s360-admin-compact-density-action-padding-x:var(--s360-space-sm, 12px);
    --s360-admin-compact-density-action-gap:var(--s360-space-2xs, 4px);
    --s360-page-shell-stack-gap:var(--s360-admin-compact-density-shell-stack-gap, 10px);
    --s360-body-shell-stack-gap:var(--s360-admin-compact-density-shell-stack-gap, 10px);
    --s360-layout-grid-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-layout-grid-gap-lg:var(--s360-admin-compact-density-grid-gap-lg, 12px);
    --s360-card-core-padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
    --s360-ui-section-card-padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
    --s360-card-stat-padding:var(--s360-admin-compact-density-stat-padding-y, 12px) var(--s360-admin-compact-density-stat-padding-x, 14px);
    --s360-card-stat-gap:var(--s360-admin-compact-density-stat-gap, 4px);
    --s360-card-action-padding:var(--s360-admin-compact-density-action-padding-y, 10px) var(--s360-admin-compact-density-action-padding-x, 12px);
    --s360-card-action-gap:var(--s360-admin-compact-density-action-gap, 4px);
    --s360-card-utility-padding-y:var(--s360-admin-compact-density-panel-padding-y, 14px);
    --s360-card-utility-padding-x:var(--s360-admin-compact-density-panel-padding-x, 16px);
    --s360-card-utility-gap:var(--s360-space-sm, 12px);
    --s360-cards-consolidated-stack-gap:var(--s360-admin-compact-density-card-stack-gap, 10px);
    --s360-cards-consolidated-header-gap:var(--s360-admin-compact-density-header-gap, 8px);
    --s360-cards-consolidated-footer-gap:var(--s360-admin-compact-density-footer-gap, 8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel):not(.s360-ui-stat-card):not(.s360-ui-action-card):not(.s360-admin-dashboard__utility-card){
    padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-stat-card){
    gap:var(--s360-admin-compact-density-stat-gap, 4px);
    padding:var(--s360-admin-compact-density-stat-padding-y, 12px) var(--s360-admin-compact-density-stat-padding-x, 14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-action-card,.s360-admin-shortcut.s360-ui-dashboard-shortcut){
    gap:var(--s360-admin-compact-density-action-gap, 4px);
    padding:var(--s360-admin-compact-density-action-padding-y, 10px) var(--s360-admin-compact-density-action-padding-x, 12px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-admin-dashboard__utility-card){
    gap:var(--s360-card-utility-gap, 12px);
    padding:var(--s360-card-utility-padding-y, 14px) var(--s360-card-utility-padding-x, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-grid,.s360-grid,.s360-dashboard-grid,.s360-stat-grid,.s360-kpi-grid,.s360-card-grid,.s360-section-grid,.s360-settings-grid,.s360-hr-grid,.s360-finance-grid,.s360-expense-grid,.s360-report-grid,.s360-admissions-grid,.s360-admin-kpi-grid,.s360-admin-kpi-grid--compact,.s360-admin-attention-grid,.s360-admin-shortcuts,.s360-ui-dashboard-shortcuts,.s360-admin-today-subpanels){
    gap:var(--s360-admin-compact-density-grid-gap, 10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__header,.s360-ui-section-card__header,.s360-ui-dashboard-panel__header) + :where(.s360-ui-card__body,.s360-ui-section-card__body,.s360-ui-dashboard-panel__body),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-card,.s360-ui-section-card,.s360-ui-dashboard-panel) > :where(.s360-ui-card__body,.s360-ui-section-card__body,.s360-ui-dashboard-panel__body) + :where(.s360-ui-card__footer,.s360-ui-section-card__footer,.s360-ui-dashboard-panel__footer){
    margin-block-start:var(--s360-admin-compact-density-card-stack-gap, 10px);
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
        --s360-admin-compact-density-panel-padding-y:var(--s360-admin-compact-density-mobile-panel-padding-y, 12px);
        --s360-admin-compact-density-panel-padding-x:var(--s360-admin-compact-density-mobile-panel-padding-x, 12px);
        --s360-admin-compact-density-shell-stack-gap:var(--s360-admin-compact-density-mobile-shell-stack-gap, 8px);
        --s360-admin-compact-density-card-stack-gap:var(--s360-space-xs, 8px);
        --s360-admin-compact-density-header-gap:var(--s360-space-xs, 8px);
        --s360-admin-compact-density-footer-gap:var(--s360-space-xs, 8px);
        --s360-admin-compact-density-grid-gap:var(--s360-space-xs, 8px);
        --s360-admin-compact-density-grid-gap-lg:10px;
        --s360-admin-compact-density-stat-padding-y:10px;
        --s360-admin-compact-density-stat-padding-x:var(--s360-space-sm, 12px);
        --s360-admin-compact-density-action-padding-y:10px;
        --s360-admin-compact-density-action-padding-x:var(--s360-space-sm, 12px);
    }
}

/* v13.5 UI/IX Unified Spacing Phase 4: compact density coverage audit + fix.
 * Scope: CSS-only admin coverage layer for School 360 admin pages/modules.
 * Goal: extend dashboard-like compact spacing to module-specific/legacy phase
 * wrappers and surfaces that do not fully inherit the Phase 3 canonical card
 * density variables. Public/portal pages, print views, PHP renderers, JS hooks,
 * permissions, nonce, REST/AJAX, database and business workflows remain unchanged.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
    --s360-admin-compact-density-page-bottom-padding:var(--s360-component-card-padding-compact, 16px);
    --s360-admin-compact-density-large-token:var(--s360-space-sm, 12px);
    --s360-admin-compact-density-xl-token:var(--s360-component-card-padding-compact, 16px);
    --s360-admin-compact-density-2xl-token:24px;
    --s360-space-lg:var(--s360-admin-compact-density-large-token, 12px);
    --s360-space-xl:var(--s360-admin-compact-density-xl-token, 16px);
    --s360-space-2xl:var(--s360-admin-compact-density-2xl-token, 24px);
    --sui-spacing-school-lg:var(--s360-admin-compact-density-large-token, 12px);
    --sui-spacing-school-xl:var(--s360-admin-compact-density-xl-token, 16px);
    --sui-spacing-school-2xl:var(--s360-admin-compact-density-2xl-token, 24px);
    --s360-layout-page-gap:var(--s360-admin-compact-density-grid-gap-lg, 12px);
    --s360-layout-grid-gap-lg:var(--s360-admin-compact-density-grid-gap-lg, 12px);
    --s360-layout-sidebar-gap:var(--s360-admin-compact-density-grid-gap-lg, 12px);
    --s360-module-stack-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-module-section-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-dashboard-workspace-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-admissions-workspace-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-secondary-page-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-profile-header-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-profile-section-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-profile-tabs-padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
    --s360-component-filter-padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
    --s360-component-empty-state-padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
    --s360-component-modal-body-padding:var(--s360-admin-compact-density-grid-gap-lg, 12px) var(--s360-admin-compact-density-panel-padding-x, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-settings-phase-e,
    .s360-reports-phase-f,
    .s360-analytics-phase-f,
    .s360-reports-v2-phase-f,
    .s360-admissions-phase-g,
    .s360-custom-fields-phase-g,
    .s360-finance-phase-h,
    .s360-treasury-phase-h,
    .s360-expense-phase-h,
    .s360-billing-phase-h,
    .s360-accounting-phase-h,
    .s360-hr-phase-i,
    .s360-academic-phase-k,
    .school360-students-phase-k,
    .s360-calendar-phase-k,
    .s360-communication-phase-l,
    .s360-content-assets-phase-l,
    .s360-own-access-phase-m,
    .s360-teacher-workbench-phase-m,
    .s360-compliance-phase-m,
    .s360-data-center-phase-m,
    .s360-schools-phase-m,
    .s360-external-ecosystem-phase-m
){
    padding-bottom:var(--s360-admin-compact-density-page-bottom-padding, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-page-hero,
    .s360-ui-page-header,
    .s360-admissions-page-header,
    .s360-admissions-detail-header,
    .s360-admin-student-page-header,
    .s360-reports-hero,
    .s360-analytics-hero,
    .s360-hr-header,
    .s360-hr-profile-hero,
    .s360-hr-overview-hero,
    .s360-communication-center-shortcode
){
    gap:var(--s360-admin-compact-density-grid-gap, 10px);
    margin-block-end:var(--s360-admin-compact-density-grid-gap, 10px);
    padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-system-panel,
    .s360-school-panel,
    .s360-ui-admin-panel,
    .s360-builder-panel,
    .s360-custom-fields-builder,
    .s360-custom-fields-hero,
    .s360-library-insight-panel,
    .s360-layout-board,
    .s360-template-preview,
    .s360-report-kpi-panel,
    .s360-report-insight-panel,
    .s360-report-empty-state,
    .s360-analytics-kpi,
    .s360-analytics-chart-panel,
    .s360-analytics-risk-summary,
    .s360-finance-section-title,
    .s360-expense-status-center,
    .s360-ui-card--expense-detail,
    .s360-hr-quick-dock,
    .s360-hr-side-panel__surface,
    .s360-hr-panel,
    .s360-hr-card,
    .s360-calendar-statistics-section,
    .s360-calendar-filter-section,
    .s360-calendar-browser,
    .s360-filter-panel,
    .s360-ui-filter-shell,
    .s360-report-filter-panel,
    .s360-analytics-filter-panel,
    .s360-finance-ledger-filters,
    .s360-calendar-filter-form,
    .s360-report-filter-form,
    .s360-expense-report-filter-form
){
    padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-filter-bar,
    .s360-field-toolbar,
    .s360-cf-library-toolbar,
    .s360-template-toolbar,
    .s360-layout-board-toolbar,
    .s360-layout-board-toolbar-secondary,
    .s360-library-selection-bar,
    .s360-finance-toolbar,
    .s360-report-toolbar,
    .s360-hr-toolbar,
    .s360-calendar-toolbar,
    .s360-action-toolbar
){
    gap:var(--s360-admin-compact-density-grid-gap, 10px);
    margin-block-end:var(--s360-admin-compact-density-grid-gap, 10px);
    padding:var(--s360-admin-compact-density-mobile-panel-padding-y, 12px) var(--s360-admin-compact-density-panel-padding-x, 16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-grid,
    .s360-grid,
    .s360-two-col,
    .s360-summary-grid,
    .s360-flag-grid,
    .s360-form-grid,
    .s360-form-grid-2,
    .s360-custom-fields-layout,
    .s360-admissions-actions-layout,
    .s360-report-kpi-grid,
    .s360-report-exec-grid,
    .s360-report-insight-grid,
    .s360-analytics-kpis,
    .s360-analytics-quality-grid,
    .s360-analytics-risk-summary,
    .s360-analytics-chart-grid,
    .s360-finance-kpi-grid,
    .s360-finance-grid,
    .s360-expense-grid,
    .s360-approval-command-grid,
    .s360-audit-command-grid,
    .s360-masterdata-grid,
    .s360-settings-qa-grid,
    .s360-admissions-builder-grid,
    .s360-hr-command-grid,
    .s360-hr-profile-grid,
    .s360-hr-kpi-grid,
    .s360-hr-grid,
    .s360-calendar-stats-grid,
    .s360-detail-grid,
    .s360-admin-attention-grid,
    .s360-admin-today-subpanels
){
    gap:var(--s360-admin-compact-density-grid-gap, 10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-tailwind-foundation .nav-tab-wrapper,
    .s360-tailwind-foundation .s360-ui-tabs,
    .s360-school-tabs,
    .s360-system-tabs,
    .s360-finance-tabs,
    .s360-expense-workspace-tabs,
    .s360-student-workspace__tabs,
    .s360-calendar-action-tabs,
    .s360-hr-nav,
    .s360-people-subnav
){
    margin:var(--s360-admin-compact-density-grid-gap, 10px) 0 var(--s360-admin-compact-density-grid-gap, 10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-module-stack,
    .s360-ui-module-section,
    .s360-finance-tab-panel,
    .s360-custom-fields-workspace,
    .s360-academic-workspace,
    .s360-hr-main,
    .s360-calendar-workspace,
    .s360-communication-center,
    .s360-content-assets-phase-l
) > * + *{
    margin-block-start:var(--s360-admin-compact-density-grid-gap, 10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.postbox .inside):not(.s360-unstyled-panel){
    padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
        .s360-page-hero,
        .s360-ui-page-header,
        .s360-admissions-page-header,
        .s360-admissions-detail-header,
        .s360-admin-student-page-header,
        .s360-reports-hero,
        .s360-analytics-hero,
        .s360-hr-header,
        .s360-hr-profile-hero,
        .s360-hr-overview-hero,
        .s360-communication-center-shortcode,
        .s360-system-panel,
        .s360-school-panel,
        .s360-ui-admin-panel,
        .s360-builder-panel,
        .s360-custom-fields-builder,
        .s360-custom-fields-hero,
        .s360-library-insight-panel,
        .s360-layout-board,
        .s360-template-preview,
        .s360-report-kpi-panel,
        .s360-report-insight-panel,
        .s360-report-empty-state,
        .s360-analytics-kpi,
        .s360-analytics-chart-panel,
        .s360-finance-section-title,
        .s360-expense-status-center,
        .s360-hr-quick-dock,
        .s360-hr-side-panel__surface,
        .s360-hr-panel,
        .s360-hr-card,
        .s360-calendar-statistics-section,
        .s360-calendar-filter-section,
        .s360-calendar-browser,
        .s360-filter-panel,
        .s360-ui-filter-shell,
        .s360-report-filter-panel,
        .s360-analytics-filter-panel,
        .s360-finance-ledger-filters
    ){
        padding:var(--s360-admin-compact-density-mobile-panel-padding-y, 12px) var(--s360-admin-compact-density-mobile-panel-padding-x, 12px);
    }
}

/* v13.5 UIIX Unified Spacing Phase 5: targeted module density overrides.
 * Scope: admin-only spacing coverage for HR, Content & Assets, Finance
 * navigation surfaces, Admissions, Communication, Students and Academic.
 * Intent: make remaining module-specific wrappers follow the same compact
 * dashboard-like rhythm without PHP/JS/DB/workflow changes and without
 * using priority overrides.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
){
    --s360-target-density-gap:var(--s360-admin-compact-density-grid-gap, 10px);
    --s360-target-density-gap-sm:var(--s360-admin-compact-density-mobile-grid-gap, 8px);
    --s360-target-density-panel-padding:var(--s360-admin-compact-density-panel-padding-y, 14px) var(--s360-admin-compact-density-panel-padding-x, 16px);
    --s360-target-density-mobile-panel-padding:var(--s360-admin-compact-density-mobile-panel-padding-y, 12px) var(--s360-admin-compact-density-mobile-panel-padding-x, 12px);
    --s360-target-density-stat-padding:var(--s360-admin-compact-density-stat-padding-y, 12px) var(--s360-admin-compact-density-stat-padding-x, 14px);
    --s360-target-density-action-padding:var(--s360-admin-compact-density-action-padding-y, 10px) var(--s360-admin-compact-density-action-padding-x, 12px);
    --s360-academic-card-gap:var(--s360-target-density-gap);
    --s360-academic-card-padding:var(--s360-target-density-panel-padding);
    --s360-academic-compact-padding:var(--s360-admin-compact-density-panel-padding-y, 14px);
    --s360-hr-panel-gap:var(--s360-target-density-gap);
    --s360-hr-card-padding:var(--s360-target-density-panel-padding);
    --s360-content-assets-gap:var(--s360-target-density-gap);
    --s360-communication-card-gap:var(--s360-target-density-gap);
    --s360-students-card-gap:var(--s360-target-density-gap);
    --s360-admissions-card-gap:var(--s360-target-density-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) > :is(
    .s360-grouped-admin__hero,
    .s360-ui-page-header,
    .s360-page-hero,
    .s360-grouped-admin__main-tabs,
    .s360-ui-main-tabs,
    .s360-grouped-admin__content,
    .s360-ui-shell,
    .s360-page-shell__body,
    .s360-hr-shell
):not(:first-child){
    margin-block-start:var(--s360-target-density-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(
    .s360-grouped-admin__content,
    .s360-ui-shell,
    .s360-page-shell__body,
    .s360-hr-shell,
    .s360-hr-main,
    .s360-academic-workspace,
    .s360-student-workspace,
    .s360-student-ops-workspace,
    .s360-content-assets-phase-l,
    .s360-communication-center,
    .s360-admissions-workspace,
    .s360-finance-page,
    .s360-finance-tab-panel
) > :is(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel,
    .s360-page-hero,
    .s360-ui-page-header,
    .s360-academic-hero,
    .s360-academic-subnav,
    .s360-academic-kpi-grid,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-students-subnav,
    .s360-student-ops-command-bar,
    .s360-student-panel,
    .s360-student-panels,
    .s360-admissions-section,
    .s360-admissions-queue-panel,
    .s360-admissions-command-panel,
    .s360-admissions-status-grid,
    .s360-admissions-section-grid,
    .s360-communication-form-card,
    .s360-communication-send-card,
    .s360-communication-workflow-card,
    .s360-communication-overview-shortcuts-panel,
    .s360-gd-form-panel,
    .s360-gd-list-shell,
    .s360-gd-layout,
    .s360-gd-filters-grid,
    .s360-document-panel-head,
    .s360-hr-panel,
    .s360-hr-card,
    .s360-hr-quick-dock,
    .s360-hr-side-panel__surface,
    .s360-ui-section-card--hr-navigation,
    .s360-finance-tabs,
    .s360-finance-section-title,
    .s360-finance-kpi-grid,
    .s360-finance-grid,
    .s360-finance-analytics-panel
):not(:first-child){
    margin-block-start:var(--s360-target-density-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(
    .s360-grouped-admin__hero.s360-ui-page-header,
    .s360-page-hero,
    .s360-ui-page-header,
    .s360-academic-hero,
    .s360-admissions-page-header,
    .s360-admissions-detail-header,
    .s360-admin-student-page-header,
    .s360-hr-header,
    .s360-hr-profile-hero,
    .s360-hr-overview-hero,
    .s360-content-assets-hero,
    .s360-communication-center-shortcode
){
    gap:var(--s360-target-density-gap);
    margin-block-end:var(--s360-target-density-gap);
    padding:var(--s360-target-density-panel-padding);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(
    .s360-ui-main-tabs,
    .s360-grouped-admin__main-tabs,
    .s360-finance-tabs,
    .s360-expense-workspace-tabs,
    .s360-hr-nav,
    .s360-academic-subnav,
    .s360-students-subnav,
    .s360-student-ops-subtabs,
    .s360-communication-subnav,
    .s360-people-subnav
){
    gap:var(--s360-target-density-gap-sm);
    margin:var(--s360-target-density-gap) 0;
    padding:var(--s360-target-density-gap-sm);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(
    .s360-ui-main-tabs,
    .s360-grouped-admin__main-tabs,
    .s360-finance-tabs,
    .s360-expense-workspace-tabs,
    .s360-hr-nav,
    .s360-academic-subnav,
    .s360-students-subnav,
    .s360-student-ops-subtabs,
    .s360-communication-subnav,
    .s360-people-subnav
) > :is(a,button,.nav-tab,.s360-ui-tabs__tab,.s360-tab,.school360-tab,.s360-finance-tab-link,.s360-hr-nav-item){
    min-height:32px;
    padding:6px 10px;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel,
    .s360-system-panel,
    .s360-school-panel,
    .s360-ui-admin-panel,
    .s360-builder-panel,
    .s360-custom-fields-builder,
    .s360-finance-section-title,
    .s360-finance-analytics-panel,
    .s360-finance-tab-panel,
    .s360-admissions-section,
    .s360-admissions-queue-panel,
    .s360-admissions-command-panel,
    .s360-communication-form-card,
    .s360-communication-send-card,
    .s360-communication-workflow-card,
    .s360-communication-overview-shortcuts-panel,
    .s360-gd-form-panel,
    .s360-gd-list-shell,
    .s360-document-panel-head,
    .s360-hr-panel,
    .s360-hr-card,
    .s360-hr-quick-dock,
    .s360-hr-side-panel__surface,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-student-panel,
    .s360-student-ops-command-bar
):not(.s360-density-comfortable):not(.s360-spacing-legacy){
    padding:var(--s360-target-density-panel-padding);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(
    .s360-ui-stat-card,
    .s360-admin-dashboard__utility-card,
    .s360-academic-kpi-grid .s360-ui-card,
    .s360-academic-kpi-grid .s360-ui-stat-card,
    .s360-finance-kpi-grid .s360-ui-card,
    .s360-finance-kpi-grid .s360-ui-stat-card,
    .s360-student-ops-kpi,
    .s360-admissions-status-grid .s360-ui-card,
    .s360-hr-kpi-grid .s360-ui-card,
    .s360-hr-kpi-grid .s360-ui-stat-card
):not(.s360-density-comfortable):not(.s360-spacing-legacy){
    padding:var(--s360-target-density-stat-padding);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(
    .s360-ui-action-card,
    .s360-ui-action-card--finance,
    .s360-ui-action-card--hr-command,
    .s360-ui-action-card--hr-workflow,
    .s360-communication-overview-shortcuts-panel .s360-ui-action-card,
    .s360-admissions-command-panel .s360-ui-action-card,
    .s360-student-ops-command-bar .s360-ui-action-card
):not(.s360-density-comfortable):not(.s360-spacing-legacy){
    gap:var(--s360-target-density-gap-sm);
    padding:var(--s360-target-density-action-padding);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(
    .s360-ui-grid,
    .s360-grid,
    .s360-kpi-grid,
    .s360-card-grid,
    .s360-section-grid,
    .s360-finance-kpi-grid,
    .s360-finance-grid,
    .s360-admissions-status-grid,
    .s360-admissions-section-grid,
    .s360-communication-grid,
    .s360-gd-layout,
    .s360-gd-filters-grid,
    .s360-hr-grid,
    .s360-hr-kpi-grid,
    .s360-academic-kpi-grid,
    .s360-academic-readiness,
    .s360-student-panels,
    .s360-student-ops-kpi-grid
){
    gap:var(--s360-target-density-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(.s360-mt-lg,.s360-mt-md){
    margin-top:var(--s360-target-density-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(h1,h2,h3,p):first-child{
    margin-block-start:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
    .s360-hr-phase-i,
    .s360-content-assets-phase-l,
    .s360-finance-phase-h,
    .s360-admissions-phase-g,
    .s360-communication-phase-l,
    .school360-students-phase-k,
    .s360-academic-phase-k
) :is(h1,h2,h3,p):last-child{
    margin-block-end:0;
}

@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
        .s360-hr-phase-i,
        .s360-content-assets-phase-l,
        .s360-finance-phase-h,
        .s360-admissions-phase-g,
        .s360-communication-phase-l,
        .school360-students-phase-k,
        .s360-academic-phase-k
    ) :is(
        .s360-grouped-admin__hero.s360-ui-page-header,
        .s360-page-hero,
        .s360-ui-page-header,
        .s360-academic-hero,
        .s360-admissions-page-header,
        .s360-admissions-detail-header,
        .s360-admin-student-page-header,
        .s360-hr-header,
        .s360-hr-profile-hero,
        .s360-hr-overview-hero,
        .s360-content-assets-hero,
        .s360-communication-center-shortcode,
        .s360-ui-card,
        .s360-ui-section-card,
        .s360-ui-dashboard-panel,
        .s360-finance-section-title,
        .s360-finance-analytics-panel,
        .s360-admissions-section,
        .s360-admissions-queue-panel,
        .s360-admissions-command-panel,
        .s360-communication-form-card,
        .s360-communication-send-card,
        .s360-communication-workflow-card,
        .s360-gd-form-panel,
        .s360-gd-list-shell,
        .s360-document-panel-head,
        .s360-hr-panel,
        .s360-hr-card,
        .s360-hr-quick-dock,
        .s360-hr-side-panel__surface,
        .s360-academic-readiness,
        .s360-academic-analytics,
        .s360-academic-qa-panel,
        .s360-class-directory-card,
        .s360-class-panel,
        .s360-student-panel,
        .s360-student-ops-command-bar
    ):not(.s360-density-comfortable):not(.s360-spacing-legacy){
        padding:var(--s360-target-density-mobile-panel-padding);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper:is(
        .s360-hr-phase-i,
        .s360-content-assets-phase-l,
        .s360-finance-phase-h,
        .s360-admissions-phase-g,
        .s360-communication-phase-l,
        .school360-students-phase-k,
        .s360-academic-phase-k
    ) :is(
        .s360-ui-main-tabs,
        .s360-grouped-admin__main-tabs,
        .s360-finance-tabs,
        .s360-expense-workspace-tabs,
        .s360-hr-nav,
        .s360-academic-subnav,
        .s360-students-subnav,
        .s360-student-ops-subtabs,
        .s360-communication-subnav,
        .s360-people-subnav
    ){
        margin:var(--s360-target-density-gap-sm) 0;
        padding:var(--s360-target-density-gap-sm);
    }
}

/* UI-IX Unified Card Surface — Phase 3: CSS Token Consolidation
 * Runtime scope: CSS-only card surface token bridge for v13.5.
 * Purpose: route canonical and remaining module-specific card surfaces through
 * shared border, shadow, radius, hover, active, focus and accent variables.
 */
:root{
    --s360-card-border-width:1px;
    --s360-card-border-style:solid;
    --s360-card-border-color:var(--s360-color-border-muted,var(--s360-color-border,#dcdcde));
    --s360-card-hover-border-color:var(--s360-color-border-accent,var(--s360-color-primary,#2271b1));
    --s360-card-radius:var(--s360-component-card-radius,var(--s360-radius-lg,10px));
    --s360-card-shadow:var(--s360-component-card-shadow,var(--s360-shadow-sm,0 1px 2px rgba(0,0,0,.04)));
    --s360-card-hover-shadow:var(--s360-dashboard-card-hover-shadow,var(--s360-shadow-floating,var(--s360-shadow-md,0 4px 12px rgba(0,0,0,.06))));
    --s360-card-active-border-color:var(--s360-color-primary,var(--s360-color-primary-strong,#2271b1));
    --s360-card-active-shadow:0 0 0 1px var(--s360-card-active-border-color,var(--s360-color-primary,#2271b1));
    --s360-card-accent-width:3px;
    --s360-card-accent-color:var(--s360-color-primary,var(--s360-color-primary-strong,#2271b1));
    --s360-card-focus-ring:var(--s360-focus-ring,0 0 0 3px rgba(59,130,246,.12));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
    --s360-card-core-border-color:var(--s360-card-border-color);
    --s360-card-core-radius:var(--s360-card-radius);
    --s360-card-core-shadow:var(--s360-card-shadow);
    --s360-ui-section-card-border-color:var(--s360-card-border-color);
    --s360-ui-section-card-radius:var(--s360-card-radius);
    --s360-ui-section-card-shadow:var(--s360-card-shadow);
    --s360-dashboard-panel-border-color:var(--s360-card-border-color);
    --s360-dashboard-panel-radius:var(--s360-card-radius);
    --s360-dashboard-panel-soft-shadow:var(--s360-card-shadow);
    --s360-card-action-border-color:var(--s360-card-border-color);
    --s360-card-action-radius:var(--s360-card-radius);
    --s360-card-action-shadow:var(--s360-card-shadow);
    --s360-card-utility-border-color:var(--s360-card-border-color);
    --s360-card-utility-radius:var(--s360-card-radius);
    --s360-card-utility-shadow:var(--s360-card-shadow);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel
):not(.s360-surface-legacy){
    border-width:var(--s360-card-border-width);
    border-style:var(--s360-card-border-style);
    border-color:var(--s360-card-border-color);
    border-radius:var(--s360-card-radius);
    box-shadow:var(--s360-card-shadow);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-stat-card):not(.s360-surface-legacy){
    border-width:var(--s360-card-border-width);
    border-style:var(--s360-card-border-style);
    border-color:var(--s360-card-stat-border-color,var(--s360-card-border-color));
    border-radius:var(--s360-card-stat-radius,var(--s360-card-radius,var(--s360-radius-3xl,16px)));
    box-shadow:var(--s360-card-stat-shadow,var(--s360-shadow-xl,var(--s360-card-shadow)));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-admin-dashboard__utility-card):not(.s360-surface-legacy){
    border-width:var(--s360-card-border-width);
    border-style:var(--s360-card-border-style);
    border-color:var(--s360-card-utility-border-color,var(--s360-card-border-color));
    border-radius:var(--s360-card-utility-radius,var(--s360-card-radius));
    box-shadow:var(--s360-card-utility-shadow,var(--s360-card-shadow));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-action-card,.s360-admin-shortcut.s360-ui-dashboard-shortcut):not(.s360-surface-legacy){
    border-width:var(--s360-card-border-width);
    border-style:var(--s360-card-border-style);
    border-color:var(--s360-card-action-border-color,var(--s360-card-border-color));
    border-radius:var(--s360-card-action-radius,var(--s360-card-radius));
    box-shadow:var(--s360-card-action-shadow,var(--s360-card-shadow));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    a.s360-ui-card,
    a.s360-ui-section-card,
    a.s360-ui-stat-card,
    a.s360-ui-action-card,
    button.s360-ui-action-card,
    [role="button"].s360-ui-card,
    [role="button"].s360-ui-section-card,
    [role="button"].s360-ui-action-card,
    .s360-admin-dashboard__utility-card,
    .s360-admin-shortcut.s360-ui-dashboard-shortcut
):not(.s360-surface-legacy):hover{
    border-color:var(--s360-card-hover-border-color);
    box-shadow:var(--s360-card-hover-shadow);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    a.s360-ui-card,
    a.s360-ui-section-card,
    a.s360-ui-stat-card,
    a.s360-ui-action-card,
    button.s360-ui-action-card,
    [role="button"].s360-ui-card,
    [role="button"].s360-ui-section-card,
    [role="button"].s360-ui-action-card,
    .s360-admin-dashboard__utility-card,
    .s360-admin-shortcut.s360-ui-dashboard-shortcut
):not(.s360-surface-legacy):focus-visible{
    outline:2px solid transparent;
    box-shadow:var(--s360-card-focus-ring), var(--s360-card-hover-shadow);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-stat-card,
    .s360-ui-action-card,
    .s360-admin-dashboard__utility-card,
    .s360-ui-dashboard-panel
):where(.is-active,[aria-selected="true"],[aria-current="page"],.is-selected):not(.s360-surface-legacy){
    border-color:var(--s360-card-active-border-color);
    box-shadow:var(--s360-card-active-shadow);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--primary,
    .s360-ui-section-card--primary,
    .s360-ui-stat-card--primary,
    .s360-ui-action-card--primary
){
    --s360-card-border-color:var(--s360-color-border-accent,var(--s360-color-primary));
    --s360-card-accent-color:var(--s360-color-primary,var(--s360-color-primary-strong));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--info,
    .s360-ui-section-card--info,
    .s360-ui-stat-card--info,
    .s360-ui-action-card--info
){
    --s360-card-border-color:var(--s360-color-border-info,var(--s360-color-border-accent));
    --s360-card-accent-color:var(--s360-color-info-strong,var(--s360-color-primary));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--success,
    .s360-ui-section-card--success,
    .s360-ui-stat-card--success,
    .s360-ui-action-card--success
){
    --s360-card-border-color:var(--s360-color-border-success,var(--s360-color-success));
    --s360-card-accent-color:var(--s360-color-success,var(--s360-color-success-strong));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--warning,
    .s360-ui-section-card--warning,
    .s360-ui-stat-card--warning,
    .s360-ui-action-card--warning
){
    --s360-card-border-color:var(--s360-color-border-warning,var(--s360-color-warning));
    --s360-card-accent-color:var(--s360-color-warning,var(--s360-color-warning-strong));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--danger,
    .s360-ui-section-card--danger,
    .s360-ui-stat-card--danger,
    .s360-ui-action-card--danger
){
    --s360-card-border-color:var(--s360-color-border-danger,var(--s360-color-danger));
    --s360-card-accent-color:var(--s360-color-danger,var(--s360-color-danger-strong));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--readonly,
    .s360-ui-section-card--readonly,
    .s360-ui-stat-card--readonly,
    .s360-ui-action-card--readonly
){
    --s360-card-border-color:var(--s360-color-readonly-border,var(--s360-color-border-subtle));
    --s360-card-shadow:none;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--disabled,
    .s360-ui-section-card--disabled,
    .s360-ui-stat-card--disabled,
    .s360-ui-action-card--disabled
){
    --s360-card-border-color:var(--s360-color-disabled-border,var(--s360-color-border-muted));
    --s360-card-shadow:none;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--accent,
    .s360-ui-section-card--accent,
    .s360-ui-stat-card--accent,
    .s360-ui-action-card--accent,
    .s360-ui-card--accent-primary,
    .s360-ui-section-card--accent-primary,
    .s360-ui-stat-card--accent-primary,
    .s360-ui-action-card--accent-primary,
    .s360-ui-card--accent-info,
    .s360-ui-section-card--accent-info,
    .s360-ui-stat-card--accent-info,
    .s360-ui-action-card--accent-info,
    .s360-ui-card--accent-success,
    .s360-ui-section-card--accent-success,
    .s360-ui-stat-card--accent-success,
    .s360-ui-action-card--accent-success,
    .s360-ui-card--accent-warning,
    .s360-ui-section-card--accent-warning,
    .s360-ui-stat-card--accent-warning,
    .s360-ui-action-card--accent-warning,
    .s360-ui-card--accent-danger,
    .s360-ui-section-card--accent-danger,
    .s360-ui-stat-card--accent-danger,
    .s360-ui-action-card--accent-danger
):not(.s360-surface-legacy){
    border-inline-start-width:var(--s360-card-accent-width);
    border-inline-start-style:var(--s360-card-border-style);
    border-inline-start-color:var(--s360-card-accent-color);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-card--accent-info,.s360-ui-section-card--accent-info,.s360-ui-stat-card--accent-info,.s360-ui-action-card--accent-info){
    --s360-card-accent-color:var(--s360-color-info-strong,var(--s360-color-primary));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-card--accent-success,.s360-ui-section-card--accent-success,.s360-ui-stat-card--accent-success,.s360-ui-action-card--accent-success){
    --s360-card-accent-color:var(--s360-color-success,var(--s360-color-success-strong));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-card--accent-warning,.s360-ui-section-card--accent-warning,.s360-ui-stat-card--accent-warning,.s360-ui-action-card--accent-warning){
    --s360-card-accent-color:var(--s360-color-warning,var(--s360-color-warning-strong));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(.s360-ui-card--accent-danger,.s360-ui-section-card--accent-danger,.s360-ui-stat-card--accent-danger,.s360-ui-action-card--accent-danger){
    --s360-card-accent-color:var(--s360-color-danger,var(--s360-color-danger-strong));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-system-panel,
    .s360-school-panel,
    .s360-ui-admin-panel,
    .s360-builder-panel,
    .s360-custom-fields-builder,
    .s360-finance-analytics-panel,
    .s360-finance-tab-panel,
    .s360-admissions-section,
    .s360-admissions-queue-panel,
    .s360-admissions-command-panel,
    .s360-communication-form-card,
    .s360-communication-send-card,
    .s360-communication-workflow-card,
    .s360-communication-overview-shortcuts-panel,
    .s360-gd-form-panel,
    .s360-gd-list-shell,
    .s360-document-panel-head,
    .s360-hr-panel,
    .s360-hr-card,
    .s360-hr-quick-dock,
    .s360-hr-side-panel__surface,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-student-panel,
    .s360-student-ops-command-bar,
    .postbox
):not(.s360-surface-legacy){
    border-width:var(--s360-card-border-width);
    border-style:var(--s360-card-border-style);
    border-color:var(--s360-card-border-color);
    border-radius:var(--s360-card-radius);
    box-shadow:var(--s360-card-shadow);
}

/* UI-IX Unified Card Surface — Phase 4: Flat Default Card Surface
 * Runtime scope: CSS-only admin card surface refinement for v13.5.
 * Purpose: keep the shared border/radius contract, but make default card
 * surfaces flat by default. Elevation is reserved for hover, focus and
 * active/selected states.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
    --s360-card-flat-shadow:none;
    --s360-card-shadow:var(--s360-card-flat-shadow);
    --s360-card-core-shadow:var(--s360-card-flat-shadow);
    --s360-ui-section-card-shadow:var(--s360-card-flat-shadow);
    --s360-dashboard-panel-soft-shadow:var(--s360-card-flat-shadow);
    --s360-card-stat-shadow:var(--s360-card-flat-shadow);
    --s360-card-action-shadow:var(--s360-card-flat-shadow);
    --s360-card-utility-shadow:var(--s360-card-flat-shadow);
    --s360-card-hover-shadow:var(--s360-card-soft-hover-shadow,0 2px 6px rgba(15,23,42,.08));
    --s360-card-active-shadow:0 0 0 1px var(--s360-card-active-border-color,var(--s360-color-primary,#2271b1));
    --s360-card-focus-ring:var(--s360-focus-ring,0 0 0 3px rgba(59,130,246,.12));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-stat-card,
    .s360-admin-dashboard__utility-card,
    .s360-ui-action-card,
    .s360-ui-dashboard-panel,
    .s360-admin-shortcut.s360-ui-dashboard-shortcut,
    .s360-system-panel,
    .s360-school-panel,
    .s360-ui-admin-panel,
    .s360-builder-panel,
    .s360-custom-fields-builder,
    .s360-finance-analytics-panel,
    .s360-finance-tab-panel,
    .s360-admissions-section,
    .s360-admissions-queue-panel,
    .s360-admissions-command-panel,
    .s360-communication-form-card,
    .s360-communication-send-card,
    .s360-communication-workflow-card,
    .s360-communication-overview-shortcuts-panel,
    .s360-gd-form-panel,
    .s360-gd-list-shell,
    .s360-document-panel-head,
    .s360-hr-panel,
    .s360-hr-card,
    .s360-hr-quick-dock,
    .s360-hr-side-panel__surface,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-student-panel,
    .s360-student-ops-command-bar,
    .postbox
):not(.s360-surface-legacy):not(:hover):not(:focus-visible):not(.is-active):not(.is-selected):not([aria-selected="true"]):not([aria-current="page"]){
    box-shadow:var(--s360-card-flat-shadow);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    a.s360-ui-card,
    a.s360-ui-section-card,
    a.s360-ui-stat-card,
    a.s360-ui-action-card,
    button.s360-ui-action-card,
    [role="button"].s360-ui-card,
    [role="button"].s360-ui-section-card,
    [role="button"].s360-ui-action-card,
    .s360-admin-dashboard__utility-card,
    .s360-admin-shortcut.s360-ui-dashboard-shortcut
):not(.s360-surface-legacy):hover{
    box-shadow:var(--s360-card-hover-shadow);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    a.s360-ui-card,
    a.s360-ui-section-card,
    a.s360-ui-stat-card,
    a.s360-ui-action-card,
    button.s360-ui-action-card,
    [role="button"].s360-ui-card,
    [role="button"].s360-ui-section-card,
    [role="button"].s360-ui-action-card,
    .s360-admin-dashboard__utility-card,
    .s360-admin-shortcut.s360-ui-dashboard-shortcut
):not(.s360-surface-legacy):focus-visible{
    box-shadow:var(--s360-card-focus-ring), var(--s360-card-hover-shadow);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-stat-card,
    .s360-ui-action-card,
    .s360-admin-dashboard__utility-card,
    .s360-ui-dashboard-panel
):where(.is-active,[aria-selected="true"],[aria-current="page"],.is-selected):not(.s360-surface-legacy){
    box-shadow:var(--s360-card-active-shadow);
}

/* UI-IX Unified Card Surface — Phase 5: Background Token Consolidation
 * Runtime scope: CSS-only admin card surface refinement for v13.5.
 * Purpose: centralize default card backgrounds through unified variables and
 * bridge remaining module-specific card/panel backgrounds into the same
 * surface contract. Status/semantic surfaces remain token-driven exceptions.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper{
    --s360-card-background:var(--s360-color-surface-raised,var(--s360-color-surface,#fff));
    --s360-card-background-muted:var(--s360-color-bg-subtle,#f8fafc);
    --s360-card-background-soft:var(--s360-color-bg-soft,#f8fbff);
    --s360-card-background-hover:var(--s360-color-bg-subtle,#f8fafc);
    --s360-card-background-active:var(--s360-color-primary-soft,var(--s360-color-bg-soft,#eff6ff));
    --s360-card-background-info:var(--s360-color-surface-info-soft,var(--s360-color-info-surface,#eef6ff));
    --s360-card-background-success:var(--s360-color-surface-success-soft,var(--s360-color-success-surface,#edfaef));
    --s360-card-background-warning:var(--s360-color-surface-warning-soft,var(--s360-color-warning-surface,#fff8e5));
    --s360-card-background-danger:var(--s360-color-surface-danger-soft,var(--s360-color-danger-surface,#fde8e8));
    --s360-card-background-readonly:var(--s360-color-readonly-surface,var(--s360-color-bg-subtle,#f8fafc));
    --s360-card-background-disabled:var(--s360-color-disabled-surface,var(--s360-color-surface-contrast,#f9fafb));
    --s360-card-core-bg:var(--s360-card-background);
    --s360-ui-section-card-bg:var(--s360-card-background);
    --s360-card-action-bg:var(--s360-card-action-background,var(--s360-card-background));
    --s360-card-stat-bg:var(--s360-card-stat-background,var(--s360-card-background-muted));
    --s360-card-utility-bg:var(--s360-card-utility-background,var(--s360-card-background-muted));
    --s360-dashboard-panel-bg:var(--s360-card-background);
    --s360-module-card-bg:var(--s360-card-background);
    --s360-secondary-panel-bg:var(--s360-card-background);
    --s360-secondary-stat-bg:var(--s360-card-background-muted);
    --s360-admissions-panel-bg:var(--s360-card-background);
    --s360-admissions-panel-muted-bg:var(--s360-card-background-muted);
    --s360-builder-panel-bg:var(--s360-card-background);
    --s360-builder-panel-muted-bg:var(--s360-card-background-muted);
    --s360-profile-section-card-bg:var(--s360-card-background);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel,
    .s360-system-panel,
    .s360-school-panel,
    .s360-ui-admin-panel,
    .s360-builder-panel,
    .s360-custom-fields-builder,
    .s360-finance-analytics-panel,
    .s360-finance-tab-panel,
    .s360-admissions-section,
    .s360-admissions-queue-panel,
    .s360-admissions-command-panel,
    .s360-communication-form-card,
    .s360-communication-send-card,
    .s360-communication-workflow-card,
    .s360-communication-overview-shortcuts-panel,
    .s360-gd-form-panel,
    .s360-gd-list-shell,
    .s360-document-panel-head,
    .s360-hr-panel,
    .s360-hr-card,
    .s360-hr-quick-dock,
    .s360-hr-side-panel__surface,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-student-panel,
    .s360-student-ops-command-bar,
    .postbox
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-stat-card
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-stat-background,var(--s360-card-background-muted));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-admin-dashboard__utility-card,
    .s360-admin-shortcut.s360-ui-dashboard-shortcut
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-utility-background,var(--s360-card-background-muted));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-action-card
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-action-background,var(--s360-card-background));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--primary,
    .s360-ui-section-card--primary,
    .s360-ui-stat-card--primary,
    .s360-ui-action-card--primary
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background-active);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--info,
    .s360-ui-section-card--info,
    .s360-ui-stat-card--info,
    .s360-ui-action-card--info
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background-info);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--success,
    .s360-ui-section-card--success,
    .s360-ui-stat-card--success,
    .s360-ui-action-card--success
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background-success);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--warning,
    .s360-ui-section-card--warning,
    .s360-ui-stat-card--warning,
    .s360-ui-action-card--warning
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background-warning);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--danger,
    .s360-ui-section-card--danger,
    .s360-ui-stat-card--danger,
    .s360-ui-action-card--danger
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background-danger);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--readonly,
    .s360-ui-section-card--readonly,
    .s360-ui-stat-card--readonly,
    .s360-ui-action-card--readonly
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background-readonly);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card--disabled,
    .s360-ui-section-card--disabled,
    .s360-ui-stat-card--disabled,
    .s360-ui-action-card--disabled
):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background-disabled);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    a.s360-ui-card,
    a.s360-ui-section-card,
    a.s360-ui-stat-card,
    a.s360-ui-action-card,
    button.s360-ui-action-card,
    [role="button"].s360-ui-card,
    [role="button"].s360-ui-section-card,
    [role="button"].s360-ui-action-card,
    .s360-admin-dashboard__utility-card,
    .s360-admin-shortcut.s360-ui-dashboard-shortcut
):not(.s360-surface-legacy):not(.s360-card-background-legacy):hover{
    background:var(--s360-card-background-hover);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-stat-card,
    .s360-ui-action-card,
    .s360-admin-dashboard__utility-card,
    .s360-ui-dashboard-panel
):where(.is-active,[aria-selected="true"],[aria-current="page"],.is-selected):not(.s360-surface-legacy):not(.s360-card-background-legacy){
    background:var(--s360-card-background-active);
}



/* v13.5 UI-IX Calendar & Events Polish Phase 1: CSS-only compact/surface cleanup.
 * Scope: Calendar & Events admin page only.
 * Goal: align Calendar filter, browser, list, month table and event form surfaces with
 * dashboard-like compact spacing and flat bordered card surface, without changing
 * PHP, JavaScript, CRUD, import/export, reminders, nonces, permissions or routes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
    --s360-calendar-polish-workspace-gap:var(--s360-admin-density-grid-gap,var(--s360-space-xs,8px));
    --s360-calendar-polish-section-padding-y:var(--s360-space-sm,12px);
    --s360-calendar-polish-section-gap:var(--s360-admin-density-grid-gap,10px);
    --s360-calendar-polish-field-gap:var(--s360-space-2xs,4px);
    --s360-calendar-polish-grid-row-gap:var(--s360-admin-density-grid-gap,10px);
    --s360-calendar-polish-grid-column-gap:var(--s360-space-sm,12px);
    --s360-calendar-polish-control-height:36px;
    --s360-calendar-polish-control-padding-y:6px;
    --s360-calendar-polish-control-padding-x:10px;
    --s360-calendar-polish-toolbar-padding-y:7px;
    --s360-calendar-polish-toolbar-padding-x:10px;
    --s360-calendar-polish-table-cell-padding:8px;
    --s360-calendar-polish-table-header-padding-y:8px;
    --s360-calendar-polish-table-header-padding-x:8px;
    --s360-calendar-polish-month-cell-height:104px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-ui-card,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace.s360-grouped-admin__content{
    gap:var(--s360-calendar-polish-workspace-gap,8px);
    padding:var(--s360-admin-density-panel-padding-y,14px) var(--s360-admin-density-panel-padding-x,16px);
    background:var(--s360-card-background);
    border-color:var(--s360-card-border-color);
    box-shadow:var(--s360-card-shadow,none);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid{
    gap:var(--s360-calendar-polish-section-gap,10px);
    margin-block-end:var(--s360-calendar-polish-workspace-gap,8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
    min-height:50px;
    padding:var(--s360-admin-density-stat-padding-y,12px) var(--s360-admin-density-stat-padding-x,14px);
    box-shadow:var(--s360-card-shadow,none);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > :where(.s360-calendar-filter-section,.s360-calendar-browser,.s360-calendar-tab-section,.s360-calendar-event-detail-card){
    margin:0;
    padding:var(--s360-calendar-polish-section-padding-y,12px) 0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section > h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-title,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-header h2{
    margin-block-end:var(--s360-space-2xs,4px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-form,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form{
    margin-block-start:var(--s360-calendar-polish-section-gap,10px);
    margin-block-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-grid{
    gap:var(--s360-calendar-polish-grid-row-gap,10px) var(--s360-calendar-polish-grid-column-gap,12px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-grid > .s360-calendar-event-field,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description{
    gap:var(--s360-calendar-polish-field-gap,4px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-form,.s360-calendar-event-form) :where(input[type="text"],input[type="email"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="url"],select,textarea),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field :where(select,input[type="date"],input[type="text"],input[type="search"],input[type="number"]){
    min-height:var(--s360-calendar-polish-control-height,36px);
    height:auto;
    padding:var(--s360-calendar-polish-control-padding-y,6px) var(--s360-calendar-polish-control-padding-x,10px);
    border-radius:var(--s360-control-radius,10px);
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-form-actions,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-view-toggle,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
    gap:var(--s360-space-xs,8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-form-actions{
    margin-block-start:var(--s360-calendar-polish-section-gap,10px);
    padding-block-start:var(--s360-calendar-polish-section-gap,10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .s360-ui-button,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .button{
    min-height:32px;
    padding:6px 10px;
    border-radius:var(--s360-control-radius,10px);
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .s360-ui-button:hover,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .button:hover{
    box-shadow:var(--s360-card-hover-shadow,0 2px 6px rgba(15,23,42,.08));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .s360-ui-button--primary,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k :where(.s360-calendar-filter-actions,.s360-calendar-form-actions,.s360-calendar-view-toggle,.s360-calendar-month-toolbar) .button-primary{
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header{
    margin-block-end:var(--s360-calendar-polish-section-gap,10px);
    padding-block-end:var(--s360-space-xs,8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
    margin-block-end:var(--s360-space-xs,8px);
    padding:var(--s360-calendar-polish-toolbar-padding-y,7px) var(--s360-calendar-polish-toolbar-padding-x,10px);
    border-radius:var(--s360-card-radius,12px);
    background:var(--s360-card-background-muted);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-table,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table{
    border-radius:var(--s360-card-radius,12px);
    background:var(--s360-card-background);
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-table thead th,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table thead th{
    padding:var(--s360-calendar-polish-table-header-padding-y,8px) var(--s360-calendar-polish-table-header-padding-x,8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-table tbody td{
    min-height:var(--s360-calendar-polish-month-cell-height,104px);
    height:var(--s360-calendar-polish-month-cell-height,104px);
    padding:var(--s360-calendar-polish-table-cell-padding,8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-events-list-table tbody td{
    padding:var(--s360-calendar-polish-table-cell-padding,8px) 10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-cell > strong{
    width:24px;
    height:24px;
    margin-block-end:var(--s360-space-xs,8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event{
    gap:var(--s360-space-2xs,4px);
    margin-block-start:var(--s360-space-2xs,4px);
    padding:7px 8px;
    border-color:var(--s360-card-border-color);
    border-radius:var(--s360-card-radius,12px);
    background:var(--s360-card-background-info);
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-title{
    margin-block-end:var(--s360-calendar-polish-section-gap,10px);
    padding-block-end:var(--s360-space-xs,8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-grid > .s360-calendar-event-field,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-grid > div,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-notes{
    padding:var(--s360-space-xs,8px) var(--s360-space-sm,12px);
    border-color:var(--s360-card-border-color);
    border-radius:var(--s360-card-radius,12px);
    background:var(--s360-card-background-muted);
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-grid,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-notes{
    margin-block-start:var(--s360-calendar-polish-section-gap,10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-detail-header{
    gap:var(--s360-calendar-polish-section-gap,10px);
    padding-block-end:var(--s360-calendar-polish-section-gap,10px);
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
        --s360-calendar-polish-workspace-gap:var(--s360-space-xs,8px);
        --s360-calendar-polish-section-padding-y:var(--s360-space-xs,8px);
        --s360-calendar-polish-grid-row-gap:var(--s360-space-xs,8px);
        --s360-calendar-polish-grid-column-gap:var(--s360-space-xs,8px);
        --s360-calendar-polish-control-height:38px;
        --s360-calendar-polish-month-cell-height:96px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-ui-card,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace.s360-grouped-admin__content{
        padding:var(--s360-admin-density-mobile-panel-padding-y,12px) var(--s360-admin-density-mobile-panel-padding-x,12px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card{
        min-height:46px;
        padding:10px var(--s360-space-sm,12px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-grid{
        gap:var(--s360-calendar-polish-grid-row-gap,8px);
    }
}

/* v13.5 UI-IX Calendar & Events Polish Phase 2: Filter and Calendar Card Repair.
 * Scope: Calendar & Events admin page only.
 * Goal: make Events Filter and Events Calendar/List render as independent full-width cards,
 * restore calendar table layout stability, and keep the Today summary in one horizontal row.
 * No PHP, JavaScript, DB, CRUD, import/export, reminders, nonces, permissions or route changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
    --s360-calendar-card-padding-y:var(--s360-admin-density-panel-padding-y,14px);
    --s360-calendar-card-padding-x:var(--s360-admin-density-panel-padding-x,16px);
    --s360-calendar-card-gap:var(--s360-admin-density-grid-gap,10px);
    --s360-calendar-card-radius:var(--s360-card-radius,12px);
    --s360-calendar-filter-action-width:92px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-ui-card,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace.s360-grouped-admin__content{
    padding:0;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
    gap:var(--s360-calendar-card-gap,10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > :where(.s360-calendar-statistics-section,.s360-calendar-filter-section,.s360-calendar-browser,.s360-calendar-tab-section,.s360-calendar-event-detail-card){
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser{
    display:block;
    inline-size:100%;
    margin:0;
    padding:var(--s360-calendar-card-padding-y,14px) var(--s360-calendar-card-padding-x,16px);
    background:var(--s360-card-background,#fff);
    border:var(--s360-card-border-width,1px) var(--s360-card-border-style,solid) var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:var(--s360-calendar-card-radius,12px);
    box-shadow:var(--s360-card-shadow,none);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-form{
    width:100%;
    max-width:100%;
    margin-block-start:var(--s360-calendar-card-gap,10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
    display:grid;
    width:100%;
    max-width:100%;
    min-width:0;
    grid-template-columns:repeat(4,minmax(0,1fr)) minmax(var(--s360-calendar-filter-action-width,92px),max-content);
    gap:var(--s360-calendar-card-gap,10px) var(--s360-calendar-polish-grid-column-gap,var(--s360-space-sm,12px));
    align-items:end;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field{
    width:100%;
    min-width:0;
    margin:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field :where(select,input[type="date"],input[type="text"],input[type="search"],input[type="number"]){
    width:100%;
    max-width:100%;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
    width:100%;
    min-width:var(--s360-calendar-filter-action-width,92px);
    padding-top:0;
    gap:var(--s360-space-2xs,4px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .s360-ui-button,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .button{
    width:100%;
    min-width:0;
    white-space:nowrap;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser{
    overflow:visible;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser-header{
    align-items:center;
    padding-block-end:var(--s360-space-xs,8px);
    margin-block-end:var(--s360-calendar-card-gap,10px);
    border-block-end:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
    display:grid;
    grid-template-columns:auto minmax(140px,1fr) auto auto;
    align-items:center;
    gap:var(--s360-space-xs,8px);
    margin:0 0 var(--s360-calendar-card-gap,10px);
    padding:var(--s360-calendar-polish-toolbar-padding-y,7px) var(--s360-calendar-polish-toolbar-padding-x,10px);
    background:var(--s360-card-background-muted,var(--s360-color-surface,#f8fafc));
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:var(--s360-calendar-card-radius,12px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-nav-label{
    justify-content:flex-start;
    min-width:0;
    padding-inline:var(--s360-space-xs,8px);
    white-space:nowrap;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-today-summary{
    display:inline-flex;
    flex-direction:row;
    align-items:center;
    justify-content:center;
    gap:var(--s360-space-xs,8px);
    width:auto;
    max-width:max-content;
    min-width:0;
    margin:0;
    padding:6px 10px;
    white-space:nowrap;
    background:var(--s360-card-background,#fff);
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:var(--s360-control-radius,10px);
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-today-summary :where(.s360-calendar-today-label,strong,a){
    display:inline-flex;
    align-items:center;
    line-height:1.2;
    white-space:nowrap;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-table{
    width:100%;
    min-width:0;
    table-layout:fixed;
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:var(--s360-calendar-card-radius,12px);
    overflow:hidden;
    background:var(--s360-card-background,#fff);
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-table tbody td{
    min-width:0;
    word-break:normal;
    overflow-wrap:anywhere;
    vertical-align:top;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-cell--today{
    background:var(--s360-card-background-info,var(--s360-color-primary-soft,#eaf4ff));
    box-shadow:inset 0 0 0 1px var(--s360-card-active-border-color,var(--s360-color-primary,#2271b1));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--s360-space-2xs,4px);
}
@media (max-width:1280px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
        grid-column:1 / -1;
        align-items:flex-start;
        min-width:0;
        max-width:220px;
    }
}
@media (max-width:960px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
        grid-template-columns:auto 1fr auto;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-today-summary{
        grid-column:1 / -1;
        justify-self:start;
        max-width:100%;
        flex-wrap:wrap;
        white-space:normal;
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-section,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser{
        padding:var(--s360-admin-density-mobile-panel-padding-y,12px) var(--s360-admin-density-mobile-panel-padding-x,12px);
        border-radius:var(--s360-card-radius,12px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:1fr;
        gap:var(--s360-space-xs,8px);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
        max-width:none;
        align-items:stretch;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
        grid-template-columns:1fr;
        align-items:stretch;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-today-summary{
        justify-self:stretch;
        justify-content:flex-start;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser{
        overflow-x:auto;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-table{
        min-width:760px;
    }
}


/* v13.5 UI-IX Calendar & Events Polish Phase 3: Filter Buttons Alignment + Calendar Toolbar Separation.
 * Scope: Calendar & Events admin page only.
 * Goal: align Events Filter actions with the second-row fields and add visible spacing
 * between the generated calendar table toolbar and the calendar grid.
 * No PHP, JavaScript, DB, CRUD, filter query, import/export, reminders, nonces,
 * permissions or route changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
    --s360-calendar-filter-action-inline-width:174px;
    --s360-calendar-toolbar-bottom-gap:var(--s360-admin-density-grid-gap,10px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) minmax(var(--s360-calendar-filter-action-inline-width,174px),max-content);
    align-items:end;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--type{grid-column:1;grid-row:1;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--status{grid-column:2;grid-row:1;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--schedule{grid-column:3;grid-row:1;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--visibility{grid-column:4;grid-row:1;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--recurrence{grid-column:1;grid-row:2;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--class{grid-column:2;grid-row:2;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--date-from{grid-column:3;grid-row:2;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--date-to{grid-column:4;grid-row:2;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
    grid-column:5;
    grid-row:2;
    align-self:end;
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:end;
    justify-content:flex-start;
    width:auto;
    min-width:var(--s360-calendar-filter-action-inline-width,174px);
    max-width:none;
    margin:0;
    padding-top:0;
    gap:var(--s360-space-xs,8px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .s360-ui-button,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .button{
    width:auto;
    min-width:78px;
    min-height:var(--s360-calendar-polish-control-height,36px);
    padding-inline:var(--s360-space-sm,12px);
    white-space:nowrap;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-toolbar{
    margin-block-end:var(--s360-calendar-toolbar-bottom-gap,10px);
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:var(--s360-calendar-card-radius,12px);
    background:var(--s360-card-background-muted,var(--s360-color-surface,#f8fafc));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-toolbar + .s360-calendar-month-table,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-toolbar + table.s360-calendar-month-table{
    margin-block-start:0;
}
@media (max-width:1280px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid > .s360-calendar-filter-field{
        grid-column:auto;
        grid-row:auto;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-field--actions,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
        grid-column:1 / -1;
        grid-row:auto;
        min-width:0;
        align-items:center;
        justify-content:flex-start;
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-grid{
        grid-template-columns:1fr;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions{
        flex-direction:column;
        align-items:stretch;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .s360-ui-button,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-filter-actions .button{
        width:100%;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-toolbar{
        margin-block-end:var(--s360-space-xs,8px);
    }
}


/* UI-IX Calendar & Events Polish Phase 4 — Remove Table Toolbar + Nav/Stats Spacing.
 * Scope: Calendar & Events admin page only.
 * Goals:
 * - Hide the generated s360-ui-table-toolbar inside the Calendar browser; it duplicates
 *   the Calendar view controls and is not needed for the month grid/list surface.
 * - Add a stable visual gap between the Calendar action navigation tabs and the
 *   Calendar statistics cards/workspace below it.
 * No PHP, JS, DB, nonce, permission, CRUD, import/export, reminder, URL/query or workflow changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
    --s360-calendar-nav-stats-gap:var(--s360-space-md,16px);
    --s360-calendar-month-grid-gap:var(--s360-space-sm,12px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > nav.s360-calendar-action-tabs.s360-ui-main-tabs.s360-grouped-admin__main-tabs:not(.s360-ui-sub-tabs){
    margin-block-end:var(--s360-calendar-nav-stats-gap,16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-grouped-admin__content,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k > .s360-calendar-workspace.s360-ui-card{
    margin-block-start:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-wrap > .s360-ui-table-toolbar{
    display:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-wrap > table.s360-calendar-month-table,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-wrap > .s360-calendar-month-table{
    margin-block-start:var(--s360-calendar-month-grid-gap,12px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-month-toolbar{
    margin-block-end:var(--s360-calendar-month-grid-gap,12px);
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
        --s360-calendar-nav-stats-gap:var(--s360-space-sm,12px);
        --s360-calendar-month-grid-gap:var(--s360-space-xs,8px);
    }
}

/* UI-IX Calendar & Events Polish Phase 5 — Remove Nested Calendar Grid Border.
 * Scope: Calendar & Events admin page only.
 * Goal: remove the extra nested table/card border around the month calendar grid
 * after the generated table toolbar was hidden in Phase 4. The Calendar browser
 * card remains the main surface; the month grid keeps only internal day-cell
 * dividers and the today-cell highlight.
 * No PHP, JS, DB, nonce, permission, CRUD, import/export, reminder, URL/query or workflow changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
    --s360-calendar-month-grid-border:0;
    --s360-calendar-month-grid-radius:0;
    --s360-calendar-month-grid-background:transparent;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-wrap{
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    padding:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-wrap > table.s360-calendar-month-table,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser table.s360-calendar-month-table,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table{
    border:var(--s360-calendar-month-grid-border,0);
    border-radius:var(--s360-calendar-month-grid-radius,0);
    background:var(--s360-calendar-month-grid-background,transparent);
    box-shadow:none;
    overflow:visible;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table thead th:first-child,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table tbody td:first-child{
    border-inline-start:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table thead th:last-child,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table tbody td:last-child{
    border-inline-end:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table tbody tr:last-child td{
    border-block-end:0;
}

/* UI-IX Calendar & Events Polish Phase 6 — Restore Calendar Grid Outline.
 * Scope: Calendar & Events admin page only.
 * Goal: restore a thin calendar-grid outline like the requested reference image,
 * without bringing back the nested table-toolbar/card shell removed in Phase 5.
 * The table wrapper stays transparent; only the month grid itself receives a
 * neutral border, internal dividers, and flat surface. Today highlight remains.
 * No PHP, JS, DB, nonce, permission, CRUD, import/export, reminder, URL/query or workflow changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k{
    --s360-calendar-month-grid-border-color:var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    --s360-calendar-month-grid-border:1px solid var(--s360-calendar-month-grid-border-color);
    --s360-calendar-month-grid-radius:0;
    --s360-calendar-month-grid-background:var(--s360-card-background,#fff);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-ui-table-wrap > table.s360-calendar-month-table,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser table.s360-calendar-month-table,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table{
    border:var(--s360-calendar-month-grid-border);
    border-radius:var(--s360-calendar-month-grid-radius,0);
    border-collapse:separate;
    border-spacing:0;
    background:var(--s360-calendar-month-grid-background,#fff);
    box-shadow:none;
    overflow:hidden;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table thead th,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-browser .s360-calendar-month-table tbody td{
    border-color:var(--s360-calendar-month-grid-border-color);
}

/* UI-IX Academic Polish Phase 1 — CSS-only shell / hero / subnav / stat cleanup.
 * Scope: Academic admin module only (.s360-academic-phase-k).
 * Goals: flatten Academic hero/card surfaces, align subnav and KPI/stat spacing
 * with the compact dashboard-like density standard, and reduce remaining
 * Academic-specific shadow/background drift. No PHP, JS, DB, nonce,
 * permission, route, form/action, query or workflow changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k{
    --s360-academic-polish-gap:var(--s360-target-density-gap,var(--s360-space-xs,10px));
    --s360-academic-polish-gap-sm:var(--s360-target-density-gap-sm,var(--s360-space-2xs,8px));
    --s360-academic-polish-panel-padding:var(--s360-target-density-panel-padding,14px 16px);
    --s360-academic-polish-mobile-panel-padding:var(--s360-target-density-mobile-panel-padding,12px 12px);
    --s360-academic-polish-stat-padding:var(--s360-target-density-stat-padding,12px 14px);
    --s360-academic-polish-action-padding:var(--s360-target-density-action-padding,10px 12px);
    --s360-academic-polish-border-color:var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    --s360-academic-polish-radius:var(--s360-card-radius,var(--s360-radius-lg,12px));
    --s360-academic-polish-surface:var(--s360-card-background,var(--s360-color-surface-raised,#fff));
    --s360-academic-polish-muted-surface:var(--s360-card-background-muted,var(--s360-color-bg-subtle,#f8fafc));
    --s360-academic-card-gap:var(--s360-academic-polish-gap);
    --s360-academic-card-padding:var(--s360-academic-polish-panel-padding);
    --s360-academic-compact-padding:12px;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k > .s360-grouped-admin__hero{
    margin-block-end:var(--s360-academic-polish-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-academic-hero,
    .s360-academic-view-actions,
    .s360-gradebook-overview-hero
){
    gap:var(--s360-academic-polish-gap);
    margin:0 0 var(--s360-academic-polish-gap);
    padding:var(--s360-academic-polish-panel-padding);
    border:1px solid var(--s360-academic-polish-border-color);
    border-radius:var(--s360-academic-polish-radius);
    background:var(--s360-academic-polish-surface);
    box-shadow:none;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-academic-hero h2,
    .s360-gradebook-overview-hero h2,
    .s360-academic-view-actions h2
){
    margin-block:0 3px;
    font-size:17px;
    line-height:1.25;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-academic-hero p,
    .s360-gradebook-overview-hero p,
    .s360-academic-view-actions .description
){
    margin-block:0;
    font-size:12px;
    line-height:1.4;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-workspace-tabs.s360-ui-sub-tabs,
    #s360-structure-tabs.s360-ui-sub-tabs,
    .s360-academic-subnav
){
    gap:var(--s360-academic-polish-gap-sm);
    margin:var(--s360-academic-polish-gap) 0;
    padding:var(--s360-academic-polish-gap-sm);
    border:1px solid var(--s360-academic-polish-border-color);
    border-radius:var(--s360-academic-polish-radius);
    background:var(--s360-academic-polish-muted-surface);
    box-shadow:none;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-workspace-tabs.s360-ui-sub-tabs,
    #s360-structure-tabs.s360-ui-sub-tabs,
    .s360-academic-subnav
) :where(.s360-ui-tabs__tab,.nav-tab,a,button){
    min-height:30px;
    padding:6px 10px;
    border-radius:9px;
    font-size:12px;
    line-height:1.3;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-academic-kpi-grid,
    .s360-ui-grid,
    .s360-grid,
    .s360-two-col,
    .s360-three-col,
    .s360-class-directory-grid,
    .s360-analytics-grid,
    .s360-gradebook-kpi-grid,
    .s360-gradebook-dashboard,
    .s360-gradebook-assessment-overview .s360-control-metrics,
    .s360-timetable-planner-board
){
    gap:var(--s360-academic-polish-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-timetable-control-panel,
    .s360-timetable-planner-board,
    .s360-timetable-day-column,
    .s360-timetable-slot-panel,
    .s360-gradebook-control-panel--top,
    .s360-gradebook-class-filter,
    .s360-gradebook-assessment-overview,
    .s360-gradebook-readiness,
    .s360-gradebook-analytics,
    .s360-gradebook-qa-panel
):not(.s360-density-comfortable):not(.s360-spacing-legacy):not(.s360-surface-legacy){
    padding:var(--s360-academic-polish-panel-padding);
    border-color:var(--s360-academic-polish-border-color);
    border-radius:var(--s360-academic-polish-radius);
    background:var(--s360-academic-polish-surface);
    box-shadow:none;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-ui-stat-card,
    .s360-academic-kpi-grid > .s360-ui-card,
    .s360-academic-kpi-grid > .s360-ui-stat-card,
    .s360-gradebook-kpi-grid .s360-ui-stat-card,
    .s360-gradebook-kpi-grid .s360-ui-card,
    .s360-gradebook-assessment-overview .s360-control-metric
):not(.s360-density-comfortable):not(.s360-spacing-legacy):not(.s360-surface-legacy){
    min-height:64px;
    padding:var(--s360-academic-polish-stat-padding);
    border-color:var(--s360-academic-polish-border-color);
    border-radius:var(--s360-academic-polish-radius);
    background:var(--s360-card-stat-background,var(--s360-academic-polish-muted-surface));
    box-shadow:none;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-ui-stat-card__label{
    margin-block-end:4px;
    font-size:10px;
    letter-spacing:.03em;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-ui-stat-card__value{
    font-size:22px;
    line-height:1;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-readiness{
    grid-template-columns:minmax(200px,1fr) 64px minmax(220px,1.35fr);
    gap:var(--s360-academic-polish-gap);
    border-left:3px solid var(--s360-card-accent-color,var(--s360-color-primary,#2271b1));
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-readiness-score{
    width:62px;
    height:62px;
    font-size:20px;
    box-shadow:inset 0 0 0 5px var(--s360-color-border-accent-soft,#dbeafe);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-readiness-list{
    gap:var(--s360-academic-polish-gap-sm);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-readiness-list li{
    min-height:30px;
    margin-block-end:0;
    padding:6px 8px;
    border-radius:9px;
    font-size:12px;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-section-heading{
    gap:var(--s360-academic-polish-gap-sm);
    margin-block-end:var(--s360-academic-polish-gap);
    padding-block-end:var(--s360-academic-polish-gap-sm);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-inline-filter,
    .s360-form-inline,
    .s360-inline-form,
    .s360-gradebook-class-filter
){
    gap:var(--s360-academic-polish-gap);
    margin:0 0 var(--s360-academic-polish-gap);
    padding:var(--s360-academic-polish-panel-padding);
    border-color:var(--s360-academic-polish-border-color);
    border-radius:var(--s360-academic-polish-radius);
    background:var(--s360-academic-polish-muted-surface);
    box-shadow:none;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-ui-action-card,
    .s360-academic-hero-actions .s360-ui-button,
    .s360-academic-view-actions__buttons .s360-ui-button,
    .s360-form-actions .s360-ui-button
){
    gap:var(--s360-academic-polish-gap-sm);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-ui-action-card:not(.s360-density-comfortable):not(.s360-spacing-legacy){
    padding:var(--s360-academic-polish-action-padding);
}

@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
        .s360-academic-hero,
        .s360-academic-view-actions,
        .s360-gradebook-overview-hero,
        .s360-ui-card,
        .s360-ui-section-card,
        .s360-ui-dashboard-panel,
        .s360-academic-readiness,
        .s360-academic-analytics,
        .s360-academic-qa-panel,
        .s360-class-directory-card,
        .s360-class-panel,
        .s360-timetable-control-panel,
        .s360-timetable-planner-board,
        .s360-timetable-day-column,
        .s360-timetable-slot-panel,
        .s360-gradebook-control-panel--top,
        .s360-gradebook-class-filter,
        .s360-gradebook-assessment-overview,
        .s360-gradebook-readiness,
        .s360-gradebook-analytics,
        .s360-gradebook-qa-panel
    ):not(.s360-density-comfortable):not(.s360-spacing-legacy):not(.s360-surface-legacy){
        padding:var(--s360-academic-polish-mobile-panel-padding);
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-readiness{
        grid-template-columns:1fr;
    }
}

/* UI-IX Academic Polish Phase 2 — Inter-card spacing alignment.
 * Scope: Academic admin module only (.s360-academic-phase-k).
 * Goal: reduce vertical spacing between Academic cards/sections to match the
 * compact dashboard-like density rhythm while preserving card padding,
 * borders, backgrounds, PHP markup, JavaScript and all Academic workflows.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k{
    --s360-academic-inter-card-gap:var(--s360-dashboard-density-gap,var(--s360-target-density-gap,10px));
    --s360-academic-inter-card-gap-sm:var(--s360-target-density-gap-sm,8px);
    --s360-academic-inter-card-gap-mobile:var(--s360-target-density-mobile-gap,8px);
    --s360-academic-section-stack-gap:var(--s360-academic-inter-card-gap);
    --s360-body-shell-stack-gap:var(--s360-academic-inter-card-gap);
    --s360-page-shell-stack-gap:var(--s360-academic-inter-card-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k > :where(
    .s360-grouped-admin__hero,
    .s360-grouped-admin__top-surfaces,
    .s360-ui-header-utility-grid,
    .s360-ui-main-tabs,
    .s360-grouped-admin__main-tabs,
    .s360-grouped-admin__content,
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel
){
    margin-block-start:0;
    margin-block-end:0;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k > :where(
    .s360-grouped-admin__hero,
    .s360-grouped-admin__top-surfaces,
    .s360-ui-header-utility-grid,
    .s360-ui-main-tabs,
    .s360-grouped-admin__main-tabs,
    .s360-grouped-admin__content,
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel
):not(:first-child){
    margin-block-start:var(--s360-academic-inter-card-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k > .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs),
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-grouped-admin__content > .s360-grouped-admin__main-tabs.s360-ui-main-tabs:not(.s360-ui-sub-tabs){
    margin-block:var(--s360-academic-inter-card-gap) 0;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k > .s360-grouped-admin__content,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-grouped-admin__content{
    row-gap:var(--s360-academic-inter-card-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-grouped-admin__content > :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel,
    .s360-ui-grid,
    .s360-grid,
    .s360-academic-hero,
    .s360-academic-view-actions,
    .s360-workspace-tabs,
    .s360-academic-subnav,
    .s360-academic-kpi-grid,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-grid,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-class-profile,
    .s360-academic-action-grid,
    .s360-timetable-control-panel,
    .s360-timetable-planner-board,
    .s360-gradebook-control-panel,
    .s360-gradebook-dashboard,
    .s360-gradebook-assessment-overview
){
    margin-block-start:0;
    margin-block-end:0;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-grouped-admin__content > :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel,
    .s360-ui-grid,
    .s360-grid,
    .s360-academic-hero,
    .s360-academic-view-actions,
    .s360-workspace-tabs,
    .s360-academic-subnav,
    .s360-academic-kpi-grid,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-grid,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-class-profile,
    .s360-academic-action-grid,
    .s360-timetable-control-panel,
    .s360-timetable-planner-board,
    .s360-gradebook-control-panel,
    .s360-gradebook-dashboard,
    .s360-gradebook-assessment-overview
) + :where(
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel,
    .s360-ui-grid,
    .s360-grid,
    .s360-academic-hero,
    .s360-academic-view-actions,
    .s360-workspace-tabs,
    .s360-academic-subnav,
    .s360-academic-kpi-grid,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-grid,
    .s360-class-directory-card,
    .s360-class-panel,
    .s360-class-profile,
    .s360-academic-action-grid,
    .s360-timetable-control-panel,
    .s360-timetable-planner-board,
    .s360-gradebook-control-panel,
    .s360-gradebook-dashboard,
    .s360-gradebook-assessment-overview
){
    margin-block-start:var(--s360-academic-inter-card-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-academic-hero,
    .s360-academic-view-actions,
    .s360-gradebook-overview-hero,
    .s360-workspace-tabs.s360-ui-sub-tabs,
    #s360-structure-tabs.s360-ui-sub-tabs,
    .s360-academic-subnav,
    .s360-inline-filter,
    .s360-form-inline,
    .s360-inline-form,
    .s360-gradebook-class-filter
){
    margin-block-start:0;
    margin-block-end:0;
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-mt-lg,
    .s360-mt-md
){
    margin-top:var(--s360-academic-inter-card-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-mt-sm{
    margin-top:var(--s360-academic-inter-card-gap-sm);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-gap-lg,
    .s360-gap-md,
    .s360-academic-kpi-grid,
    .s360-class-directory-grid,
    .s360-academic-action-grid,
    .s360-gradebook-kpi-grid,
    .s360-gradebook-dashboard,
    .s360-timetable-planner-board,
    .s360-analytics-grid
){
    gap:var(--s360-academic-inter-card-gap);
}

body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-section-heading,
    .s360-academic-hero-actions,
    .s360-academic-view-actions__buttons,
    .s360-readiness-list
){
    gap:var(--s360-academic-inter-card-gap-sm);
}

@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k{
        --s360-academic-inter-card-gap:var(--s360-academic-inter-card-gap-mobile);
        --s360-body-shell-stack-gap:var(--s360-academic-inter-card-gap-mobile);
        --s360-page-shell-stack-gap:var(--s360-academic-inter-card-gap-mobile);
    }
}


/* UI-IX Academic Polish Phase 3 — Dashboard-matched inter-card spacing.
 * Scope: Academic admin module only (.s360-academic-phase-k), including nested
 * grouped page renderers used by Classes & Subjects, Timetable, Delivery and
 * Gradebook. Goal: use the actual Dashboard density rhythm for vertical card/
 * section spacing rather than the wider historic Academic stack margins.
 * Runtime scope: CSS-only; no PHP, JS, DB, permissions, nonce, route, form,
 * query or Academic workflow changes.
 */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k{
    --s360-academic-dashboard-stack-gap:10px;
    --s360-academic-dashboard-stack-gap-sm:8px;
    --s360-academic-dashboard-stack-gap-xs:4px;
    --s360-academic-inter-card-gap:var(--s360-academic-dashboard-stack-gap);
    --s360-academic-section-stack-gap:var(--s360-academic-dashboard-stack-gap);
    --s360-body-shell-stack-gap:var(--s360-academic-dashboard-stack-gap);
    --s360-page-shell-stack-gap:var(--s360-academic-dashboard-stack-gap);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k > *{
    margin-block-start:0;
    margin-block-end:0;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k > * + *{
    margin-block-start:var(--s360-academic-dashboard-stack-gap);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-grouped-admin__content{
    display:block;
    margin-block-start:0;
    row-gap:var(--s360-academic-dashboard-stack-gap);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-grouped-admin__content > *{
    margin-block-start:0;
    margin-block-end:0;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-grouped-admin__content > * + *{
    margin-block-start:var(--s360-academic-dashboard-stack-gap);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-grouped-admin__content > .wrap.s360-admin-wrapper.s360-academic-phase-k{
    margin:var(--s360-academic-dashboard-stack-gap) 0 0;
    padding-block-start:0;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-grouped-admin__hero,
    .s360-grouped-admin__top-surfaces,
    .s360-admin-dashboard__top-surfaces,
    .s360-ui-header-utility-grid,
    .s360-ui-main-tabs,
    .s360-grouped-admin__main-tabs,
    .s360-academic-page-header,
    .s360-academic-hero,
    .s360-academic-subnav,
    .s360-workspace-tabs,
    .s360-ui-tabs__nav,
    .s360-academic-kpi-grid,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-grid,
    .s360-class-panel,
    .s360-class-profile,
    .s360-timetable-control-panel,
    .s360-timetable-planner-board,
    .s360-gradebook-control-panel,
    .s360-gradebook-dashboard,
    .s360-gradebook-assessment-overview,
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel
){
    margin-block-start:0;
    margin-block-end:0;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-grouped-admin__hero,
    .s360-grouped-admin__top-surfaces,
    .s360-admin-dashboard__top-surfaces,
    .s360-ui-header-utility-grid,
    .s360-ui-main-tabs,
    .s360-grouped-admin__main-tabs,
    .s360-academic-page-header,
    .s360-academic-hero,
    .s360-academic-subnav,
    .s360-workspace-tabs,
    .s360-ui-tabs__nav,
    .s360-academic-kpi-grid,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-grid,
    .s360-class-panel,
    .s360-class-profile,
    .s360-timetable-control-panel,
    .s360-timetable-planner-board,
    .s360-gradebook-control-panel,
    .s360-gradebook-dashboard,
    .s360-gradebook-assessment-overview,
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel
) + :where(
    .s360-grouped-admin__hero,
    .s360-grouped-admin__top-surfaces,
    .s360-admin-dashboard__top-surfaces,
    .s360-ui-header-utility-grid,
    .s360-ui-main-tabs,
    .s360-grouped-admin__main-tabs,
    .s360-academic-page-header,
    .s360-academic-hero,
    .s360-academic-subnav,
    .s360-workspace-tabs,
    .s360-ui-tabs__nav,
    .s360-academic-kpi-grid,
    .s360-academic-readiness,
    .s360-academic-analytics,
    .s360-academic-qa-panel,
    .s360-class-directory-grid,
    .s360-class-panel,
    .s360-class-profile,
    .s360-timetable-control-panel,
    .s360-timetable-planner-board,
    .s360-gradebook-control-panel,
    .s360-gradebook-dashboard,
    .s360-gradebook-assessment-overview,
    .s360-ui-card,
    .s360-ui-section-card,
    .s360-ui-dashboard-panel
){
    margin-block-start:var(--s360-academic-dashboard-stack-gap);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-mt-lg,.s360-mt-md){
    margin-top:var(--s360-academic-dashboard-stack-gap);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-mt-sm,.s360-section-heading,.s360-academic-hero-actions,.s360-academic-view-actions__buttons,.s360-readiness-list){
    gap:var(--s360-academic-dashboard-stack-gap-sm);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(
    .s360-academic-kpi-grid,
    .s360-class-directory-grid,
    .s360-academic-action-grid,
    .s360-gradebook-kpi-grid,
    .s360-gradebook-dashboard,
    .s360-timetable-planner-board,
    .s360-analytics-grid,
    .s360-ui-grid,
    .s360-grid
){
    gap:var(--s360-academic-dashboard-stack-gap);
}

@media (max-width:782px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k{
        --s360-academic-dashboard-stack-gap:8px;
        --s360-academic-dashboard-stack-gap-sm:4px;
        --s360-body-shell-stack-gap:var(--s360-academic-dashboard-stack-gap);
        --s360-page-shell-stack-gap:var(--s360-academic-dashboard-stack-gap);
    }
}


/* UI-IX Academic Polish Phase 4 — KPI cards + registry cards alignment.
 * Scope: Academic Classes & Subjects overview only. Makes Academic statistic
 * cards follow the Calendar & Events KPI pattern (description top-left, value
 * bottom-left, visual chart/icon right) and wraps Classes Registry/Subjects
 * tables in canonical CSS cards. No DB, permission, nonce, REST/AJAX, URL,
 * form/action, JS or Academic workflow behavior changes.
 */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k{
    --s360-academic-kpi-chart-width:52px;
    --s360-academic-kpi-chart-height:34px;
    --s360-academic-table-card-padding:var(--s360-target-density-panel-padding,14px 16px);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid{
    grid-template-columns:repeat(5,minmax(160px,1fr));
    gap:var(--s360-academic-dashboard-stack-gap,10px);
    align-items:stretch;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:space-between;
    min-height:78px;
    padding:12px calc(var(--s360-academic-kpi-chart-width) + 28px) 12px 16px;
    gap:var(--s360-academic-dashboard-stack-gap-sm,8px);
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-inline-start:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:var(--s360-card-radius,var(--s360-radius-lg,12px));
    background:var(--s360-card-background-muted,var(--s360-color-bg-subtle,#f8fafc));
    box-shadow:none;
    overflow:hidden;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card::before{
    content:none;
    display:none;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card::after{
    content:"";
    position:absolute;
    right:14px;
    top:50%;
    width:var(--s360-academic-kpi-chart-width);
    height:var(--s360-academic-kpi-chart-height);
    transform:translateY(-50%);
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    opacity:.95;
    pointer-events:none;
    filter:none;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card > .description,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card > .s360-ui-stat-card__label{
    order:1;
    margin:0;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.25;
    font-weight:750;
    letter-spacing:-.01em;
    text-align:left;
    text-transform:none;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card > h2,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card > .s360-ui-stat-card__value{
    order:2;
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:24px;
    line-height:1;
    font-weight:850;
    letter-spacing:-.045em;
    text-align:left;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card--classes::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2272%22%20height%3D%2236%22%20rx%3D%229%22%20fill%3D%22%23eef6ff%22%20stroke%3D%22%23bfdbfe%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M20%2035h10V23H20v12Zm19%200h10V17H39v18Zm19%200h10V27H58v8Z%22%20fill%3D%22%232f80ed%22%20opacity%3D%22.9%22%2F%3E%3C%2Fsvg%3E");}
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card--subjects::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Cpath%20d%3D%22M8%2042h72%22%20stroke%3D%22%23e2e8f0%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M10%2038%2024%2026l14%206%2014-17%2014%2012%2012-16%22%20fill%3D%22none%22%20stroke%3D%22%237c8cff%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2226%22%20r%3D%223.5%22%20fill%3D%22%237c8cff%22%2F%3E%3Ccircle%20cx%3D%2252%22%20cy%3D%2215%22%20r%3D%223.5%22%20fill%3D%22%237c8cff%22%2F%3E%3Ccircle%20cx%3D%2278%22%20cy%3D%2211%22%20r%3D%223.5%22%20fill%3D%22%237c8cff%22%2F%3E%3C%2Fsvg%3E");}
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card--students::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Ccircle%20cx%3D%2244%22%20cy%3D%2221%22%20r%3D%229%22%20fill%3D%22%2300aaa5%22%2F%3E%3Ccircle%20cx%3D%2225%22%20cy%3D%2225%22%20r%3D%227%22%20fill%3D%22%2300aaa5%22%20opacity%3D%22.65%22%2F%3E%3Ccircle%20cx%3D%2263%22%20cy%3D%2225%22%20r%3D%227%22%20fill%3D%22%2300aaa5%22%20opacity%3D%22.65%22%2F%3E%3Cpath%20d%3D%22M25%2043c4-12%2034-12%2038%200%201.8%205-1%207-6%207H31c-5%200-8-2-6-7Z%22%20fill%3D%22%23ccfbf1%22%2F%3E%3Cpath%20d%3D%22M35%2043c3-10%2015-10%2018%200%22%20fill%3D%22none%22%20stroke%3D%22%2300aaa5%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");}
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card--teachers::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Cpath%20d%3D%22M15%2041c0-16%2010-26%2024-30%22%20fill%3D%22none%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M18%2022h16v16H18z%22%20fill%3D%22%23dcfce7%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M50%2041c0-16%2010-26%2024-30%22%20fill%3D%22none%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M53%2022h16v16H53z%22%20fill%3D%22%23dcfce7%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");}
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card--links::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Cpath%20d%3D%22M34%2020h-8c-8%200-14%206-14%2014s6%2014%2014%2014h12%22%20fill%3D%22none%22%20stroke%3D%22%23f59e0b%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M54%2034h8c8%200%2014-6%2014-14S70%206%2062%206H50%22%20fill%3D%22none%22%20stroke%3D%22%23f59e0b%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M31%2027h26%22%20fill%3D%22none%22%20stroke%3D%22%23fbbf24%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-academic-registry-card,.s360-academic-subjects-card){
    display:block;
    padding:var(--s360-academic-table-card-padding);
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:var(--s360-card-radius,var(--s360-radius-lg,12px));
    background:var(--s360-card-background,var(--s360-color-surface-raised,#fff));
    box-shadow:var(--s360-card-shadow,none);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-academic-registry-card,.s360-academic-subjects-card) > h2{
    margin:0 0 var(--s360-academic-dashboard-stack-gap,10px);
    font-size:16px;
    line-height:1.25;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-table-card__body{
    overflow-x:auto;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-academic-registry-card,.s360-academic-subjects-card) .s360-ui-table{
    margin:0;
    width:100%;
}

@media (max-width:1180px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid{
        grid-template-columns:repeat(2,minmax(220px,1fr));
    }
}

@media (max-width:782px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k{
        --s360-academic-kpi-chart-width:44px;
        --s360-academic-kpi-chart-height:30px;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid{
        grid-template-columns:1fr;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card{
        min-height:70px;
        padding:10px calc(var(--s360-academic-kpi-chart-width) + 24px) 10px 12px;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-academic-registry-card,.s360-academic-subjects-card){
        padding:var(--s360-target-density-mobile-panel-padding,12px 12px);
    }
}

/* ========================================================================== 
   UI/IX Academic Polish Phase 5 — Timetable/Delivery/Gradebook KPI cards
   --------------------------------------------------------------------------
   Scope: Academic admin workspaces only. Align timetable, academic delivery,
   and exams/gradebook stat cards with Calendar-style compact KPI cards.
   ========================================================================== */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-timetable-kpi-grid,.s360-delivery-kpi-grid,.s360-gradebook-kpi-grid){
    grid-template-columns:repeat(4,minmax(180px,1fr));
    gap:var(--s360-academic-dashboard-stack-gap,10px);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-timetable-kpi-grid,.s360-delivery-kpi-grid,.s360-gradebook-kpi-grid) > .s360-academic-stat-card{
    min-height:78px;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--timetables::after,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--sections::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Crect%20x%3D%2210%22%20y%3D%2210%22%20width%3D%2268%22%20height%3D%2238%22%20rx%3D%229%22%20fill%3D%22%23eff6ff%22%20stroke%3D%22%23bfdbfe%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M22%2020h44M22%2030h44M22%2040h30%22%20stroke%3D%22%232f80ed%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--slots::after,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--assessments::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Cpath%20d%3D%22M8%2042h72%22%20stroke%3D%22%23e2e8f0%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M12%2038%2025%2024l13%207%2014-16%2013%2011%2011-14%22%20fill%3D%22none%22%20stroke%3D%22%232f80ed%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2225%22%20cy%3D%2224%22%20r%3D%223.5%22%20fill%3D%22%232f80ed%22%2F%3E%3Ccircle%20cx%3D%2252%22%20cy%3D%2215%22%20r%3D%223.5%22%20fill%3D%22%232f80ed%22%2F%3E%3Ccircle%20cx%3D%2276%22%20cy%3D%2212%22%20r%3D%223.5%22%20fill%3D%22%232f80ed%22%2F%3E%3C%2Fsvg%3E");
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--active::after,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--published::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Cpath%20d%3D%22M16%2030c0-12%208-20%2020-20s20%208%2020%2020-8%2020-20%2020-20-8-20-20Z%22%20fill%3D%22%23dcfce7%22%2F%3E%3Cpath%20d%3D%22M26%2030l8%208%2018-20%22%20fill%3D%22none%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M62%2014v26M72%2022v18%22%20stroke%3D%22%2325a244%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.55%22%2F%3E%3C%2Fsvg%3E");
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--coverage::after,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--grades::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Ccircle%20cx%3D%2244%22%20cy%3D%2220%22%20r%3D%229%22%20fill%3D%22%2300aaa5%22%2F%3E%3Ccircle%20cx%3D%2225%22%20cy%3D%2225%22%20r%3D%227%22%20fill%3D%22%2300aaa5%22%20opacity%3D%22.62%22%2F%3E%3Ccircle%20cx%3D%2263%22%20cy%3D%2225%22%20r%3D%227%22%20fill%3D%22%2300aaa5%22%20opacity%3D%22.62%22%2F%3E%3Cpath%20d%3D%22M25%2043c4-12%2034-12%2038%200%22%20fill%3D%22none%22%20stroke%3D%22%2300aaa5%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--exams::after,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stat-card--categories::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Crect%20x%3D%2213%22%20y%3D%229%22%20width%3D%2256%22%20height%3D%2239%22%20rx%3D%228%22%20fill%3D%22%23f5f3ff%22%20stroke%3D%22%23c4b5fd%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M25%2021h31M25%2031h25M25%2040h18%22%20stroke%3D%22%237c8cff%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2267%22%20cy%3D%2216%22%20r%3D%227%22%20fill%3D%22%237c8cff%22%20opacity%3D%22.85%22%2F%3E%3C%2Fsvg%3E");
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness{
    display:grid;
    grid-template-columns:minmax(240px,1fr) minmax(520px,1.75fr);
    align-items:center;
    gap:var(--s360-academic-dashboard-stack-gap,10px);
    min-height:auto;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness__copy{
    min-width:0;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness__list{
    display:grid;
    grid-template-columns:repeat(4,minmax(120px,1fr));
    align-items:stretch;
    gap:var(--s360-academic-dashboard-stack-gap-sm,8px);
    width:100%;
    margin:0;
    padding:0;
    list-style:none;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness__list > li{
    min-height:42px;
    margin:0;
    padding:8px 10px;
    align-items:center;
}

@media (max-width:1180px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-timetable-kpi-grid,.s360-delivery-kpi-grid,.s360-gradebook-kpi-grid){
        grid-template-columns:repeat(2,minmax(220px,1fr));
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness{
        grid-template-columns:1fr;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness__list{
        grid-template-columns:repeat(2,minmax(160px,1fr));
    }
}

@media (max-width:782px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k :where(.s360-timetable-kpi-grid,.s360-delivery-kpi-grid,.s360-gradebook-kpi-grid){
        grid-template-columns:1fr;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness__list{
        grid-template-columns:1fr;
    }
}

/* v13.5 Event Statistics Cards Hotfix.
 * Scope: Calendar & Events statistics cards only.
 * Purpose: semantic stat card classes, deterministic icons, no hardcoded reminder count,
 * and stable 3/2/1 responsive grid. No DB, route, permission, nonce, CRUD,
 * import/export or reminder dispatch changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section{
    padding:var(--s360-calendar-polish-section-padding-y,12px) 0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section .s360-calendar-stats-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(220px,1fr));
    align-items:stretch;
    gap:var(--s360-space-sm,12px) var(--s360-component-card-header-gap,14px);
    width:100%;
    margin:0 0 var(--s360-space-sm,12px);
    padding:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card{
    --s360-calendar-kpi-accent:#7c8cff;
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) 58px;
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:var(--s360-component-card-header-gap,14px);
    row-gap:var(--s360-space-xs,8px);
    min-height:78px;
    padding:var(--s360-component-card-padding-tight,14px) 18px;
    overflow:hidden;
    border:1px solid var(--s360-color-border-muted,#dbe4ef);
    border-inline-start:1px solid var(--s360-color-border-muted,#dbe4ef);
    border-radius:14px;
    background:linear-gradient(180deg,var(--s360-color-surface-raised,#fff) 0%,var(--s360-color-bg-subtle,#f8fafc) 100%);
    box-shadow:0 8px 18px rgba(15,23,42,.045);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card::before{
    content:none;
    display:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card > .description{
    grid-column:1;
    grid-row:1;
    align-self:end;
    justify-self:start;
    margin:0;
    max-width:100%;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.25;
    font-weight:700;
    letter-spacing:-.008em;
    text-align:left;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card > h2,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card > .s360-ui-stat-card__value{
    grid-column:1;
    grid-row:2;
    align-self:start;
    justify-self:start;
    display:block;
    width:auto;
    min-width:0;
    margin:0;
    padding:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:22px;
    line-height:1;
    font-weight:820;
    letter-spacing:-.035em;
    text-align:left;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card::after{
    content:"";
    grid-column:2;
    grid-row:1 / span 2;
    position:static;
    align-self:center;
    justify-self:end;
    width:54px;
    height:38px;
    opacity:.94;
    transform:none;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    filter:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--upcoming{--s360-calendar-kpi-accent:#7c8cff;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--month{--s360-calendar-kpi-accent:#2f80ed;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--exams{--s360-calendar-kpi-accent:#9b8cff;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--recurring{--s360-calendar-kpi-accent:#25a244;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--reminders{--s360-calendar-kpi-accent:#f5a43d;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--public{--s360-calendar-kpi-accent:#00aaa5;}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--upcoming::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2088%2054%22%3E%3Crect%20x=%2211%22%20y=%228%22%20width=%2266%22%20height=%2240%22%20rx=%229%22%20fill=%22%23eef2ff%22%20stroke=%22%23c7d2fe%22%20stroke-width=%222%22/%3E%3Cpath%20d=%22M11%2020h66%22%20stroke=%22%23c7d2fe%22%20stroke-width=%222%22/%3E%3Cpath%20d=%22M28%205v10M44%205v10M60%205v10%22%20stroke=%22%237c8cff%22%20stroke-width=%224%22%20stroke-linecap=%22round%22/%3E%3Crect%20x=%2238%22%20y=%2228%22%20width=%2212%22%20height=%2212%22%20rx=%223%22%20fill=%22%237c8cff%22/%3E%3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--month::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2088%2054%22%3E%3Cpath%20d=%22M8%2043h72%22%20stroke=%22%23e2e8f0%22%20stroke-width=%222%22/%3E%3Cpath%20d=%22M12%2039l12-14%2014%209%2014-18%2014%2010%2010-12%22%20fill=%22none%22%20stroke=%22%232f80ed%22%20stroke-width=%224%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Ccircle%20cx=%2224%22%20cy=%2225%22%20r=%223.5%22%20fill=%22%232f80ed%22/%3E%3Ccircle%20cx=%2252%22%20cy=%2216%22%20r=%223.5%22%20fill=%22%232f80ed%22/%3E%3Ccircle%20cx=%2276%22%20cy=%2214%22%20r=%223.5%22%20fill=%22%232f80ed%22/%3E%3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--exams::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2088%2054%22%3E%3Crect%20x=%2214%22%20y=%228%22%20width=%2254%22%20height=%2239%22%20rx=%228%22%20fill=%22%23f5f3ff%22%20stroke=%22%23c4b5fd%22%20stroke-width=%222%22/%3E%3Cpath%20d=%22M26%2020h28M26%2029h24M26%2038h18%22%20stroke=%22%239b8cff%22%20stroke-width=%224%22%20stroke-linecap=%22round%22/%3E%3Ccircle%20cx=%2268%22%20cy=%2215%22%20r=%227%22%20fill=%22%239b8cff%22%20opacity=%22.85%22/%3E%3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--recurring::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2088%2054%22%3E%3Ccircle%20cx=%2244%22%20cy=%2227%22%20r=%2222%22%20fill=%22%23eaf8ee%22/%3E%3Cpath%20d=%22M29%2025a15%2015%200%200%201%2025-9l4%204%22%20fill=%22none%22%20stroke=%22%2325a244%22%20stroke-width=%225%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M58%2010v10H48%22%20fill=%22none%22%20stroke=%22%2325a244%22%20stroke-width=%225%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M59%2029a15%2015%200%200%201-25%209l-4-4%22%20fill=%22none%22%20stroke=%22%2325a244%22%20stroke-width=%225%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M30%2044V34h10%22%20fill=%22none%22%20stroke=%22%2325a244%22%20stroke-width=%225%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--reminders::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2088%2054%22%3E%3Ccircle%20cx=%2244%22%20cy=%2227%22%20r=%2223%22%20fill=%22%23fff1df%22/%3E%3Cpath%20d=%22M29%2037h30l-5-7v-8c0-8-4-14-10-14s-10%206-10%2014v8l-5%207Z%22%20fill=%22none%22%20stroke=%22%23f5a43d%22%20stroke-width=%224%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M40%2042c2%203%206%203%208%200%22%20fill=%22none%22%20stroke=%22%23f5a43d%22%20stroke-width=%224%22%20stroke-linecap=%22round%22/%3E%3Ccircle%20cx=%2259%22%20cy=%2214%22%20r=%226%22%20fill=%22%23ffb45c%22/%3E%3Ccircle%20cx=%2259%22%20cy=%2214%22%20r=%222.5%22%20fill=%22%23fff%22/%3E%3C/svg%3E");
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card--public::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2088%2054%22%3E%3Ccircle%20cx=%2244%22%20cy=%2226%22%20r=%2218%22%20fill=%22%23e4fbf8%22%20stroke=%22%2300aaa5%22%20stroke-width=%223%22/%3E%3Cpath%20d=%22M26%2026h36M44%208c6%206%209%2012%209%2018s-3%2012-9%2018M44%208c-6%206-9%2012-9%2018s3%2012%209%2018%22%20fill=%22none%22%20stroke=%22%2300aaa5%22%20stroke-width=%223%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E");
}
@media (max-width:1180px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section .s360-calendar-stats-grid{
        grid-template-columns:repeat(2,minmax(220px,1fr));
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-statistics-section .s360-calendar-stats-grid{
        grid-template-columns:1fr;
        gap:10px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card{
        grid-template-columns:minmax(0,1fr) 48px;
        min-height:74px;
        padding:13px var(--s360-component-card-padding-compact,16px);
        column-gap:var(--s360-space-sm,12px);
        row-gap:7px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-stats-grid > .s360-ui-stat-card.s360-calendar-stat-card::after{
        width:46px;
        height:32px;
    }
}


/* v13.5 approved Calendar & Events CSS Cards Hotfix.
 * Scope: Calendar & Events admin cards for statistics, create event, export,
 * reminders and import. This is a CSS/markup card-surface alignment only;
 * CRUD handlers, nonces, permissions, routing, JS submit guards and DB schema
 * remain unchanged.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > .s360-calendar-section-card{
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
    margin:0;
    padding:var(--s360-component-card-padding,20px);
    background:var(--s360-color-surface-raised,#fff);
    border:1px solid var(--s360-color-border-muted,#dbe4ef);
    border-radius:16px;
    box-shadow:0 8px 22px rgba(15,23,42,.045);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > .s360-calendar-statistics-section.s360-calendar-section-card{
    padding:var(--s360-component-card-padding-tight,14px) var(--s360-component-card-padding-compact,16px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--s360-component-card-header-gap,14px);
    margin:0 0 var(--s360-component-card-header-gap,14px);
    padding-block-end:var(--s360-space-sm,12px);
    border-block-end:1px solid var(--s360-color-border-subtle,#e5edf5);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-header .s360-ui-card__title,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-header h2{
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:18px;
    line-height:1.25;
    font-weight:820;
    letter-spacing:-.018em;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-subtitle,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-header .s360-ui-card__subtitle{
    margin:var(--s360-space-2xs,4px) 0 0;
    max-width:760px;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
    font-weight:500;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-body{
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k form.s360-calendar-card-form,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k form.s360-calendar-event-form.s360-form-width-full,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k form.s360-calendar-import-form.s360-form-width-full,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k form.s360-calendar-reminders-form.s360-form-width-full{
    width:100%;
    max-width:100%;
    margin:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-grid,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(260px,1fr));
    gap:var(--s360-component-card-header-gap,14px);
    align-items:stretch;
    width:100%;
    max-width:100%;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-grid{
    grid-template-columns:repeat(4,minmax(170px,1fr));
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-field,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-field,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-grid > p{
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    gap:7px;
    min-width:0;
    margin:0;
    padding:13px 14px;
    background:var(--s360-color-surface,#f8fafc);
    border:1px solid var(--s360-color-border-subtle,#e5edf5);
    border-radius:14px;
    box-shadow:0 1px 0 rgba(15,23,42,.02);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-field--visibility,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-field--audience-notification,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-field--file{
    grid-column:1 / -1;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description{
    margin-block-start:var(--s360-component-card-header-gap,14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-field label,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description label,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-field label,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-grid > p label{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin:0;
    color:var(--s360-color-form-label,#334155);
    font-size:12px;
    line-height:1.25;
    font-weight:800;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-field label strong,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description label strong,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-field label strong,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-grid > p label strong{
    font-weight:800;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-form :where(input:not([type='hidden']):not([type='checkbox']):not([type='radio']),select,textarea){
    width:100%;
    max-width:100%;
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-form input[type='file']{
    display:block;
    width:100%;
    max-width:760px;
    min-height:38px;
    padding:8px 10px;
    background:var(--s360-color-surface-raised,#fff);
    border:1px solid var(--s360-color-input-border,#cbd5e1);
    border-radius:10px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-card-form .description{
    margin:0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-field br,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-description br,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-field br,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-grid > p br{
    display:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-field--schedule-options label:last-child,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-field--audience-notification label:last-of-type{
    display:flex;
    align-items:flex-start;
    gap:8px;
    color:var(--s360-color-text-body,#1f2937);
    font-size:13px;
    line-height:1.45;
    font-weight:650;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-form-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--s360-space-sm,12px);
    margin:var(--s360-component-card-header-gap,14px) 0 0;
    padding-block-start:var(--s360-space-sm,12px);
    border-block-start:1px solid var(--s360-color-border-subtle,#e5edf5);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-card-body{
    display:block;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel{
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--s360-component-card-header-gap,14px);
    width:100%;
    max-width:100%;
    min-width:0;
    padding:16px;
    background:var(--s360-color-surface,#f8fafc);
    border:1px solid var(--s360-color-border-subtle,#e5edf5);
    border-radius:14px;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel__content{
    min-width:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel__eyebrow{
    display:block;
    margin-block-end:4px;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:13px;
    line-height:1.25;
    font-weight:800;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel .description{
    margin:0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.45;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel__actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex:0 0 auto;
}
@media (max-width:1180px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-workspace > .s360-calendar-section-card{
        padding:var(--s360-component-card-padding-compact,16px);
        border-radius:14px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-event-form-grid,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-import-grid{
        grid-template-columns:1fr;
        gap:12px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel{
        align-items:stretch;
        flex-direction:column;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel__actions,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel__actions .s360-ui-button,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-action-panel__actions button{
        width:100%;
        justify-content:center;
    }
}

/* Calendar action sections — keep only the outer CSS card for Export, Reminders, and Import. */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section--export .s360-calendar-action-panel,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section--reminders .s360-calendar-action-panel{
    padding:0;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section--import .s360-calendar-import-field,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section--import .s360-calendar-import-grid > p{
    padding:0;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section--import .s360-calendar-import-form{
    display:grid;
    gap:var(--s360-component-card-header-gap,14px);
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section--import .s360-calendar-import-grid{
    padding:0;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-calendar-phase-k .s360-calendar-tab-section--import .s360-calendar-form-actions{
    margin-block-start:0;
}


/* v13.5 Academic Statistics Cards UI/Logic Hotfix.
 * Scope: Academic → Classes & Subjects, Timetable, Academic Delivery,
 * and Exams & Gradebook statistic cards only. Keeps DB schema, permissions,
 * routing, nonces, and save workflows unchanged.
 */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid{
    margin-top:var(--s360-academic-dashboard-stack-gap,10px);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card--draft::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Crect%20x%3D%2214%22%20y%3D%229%22%20width%3D%2256%22%20height%3D%2238%22%20rx%3D%228%22%20fill%3D%22%23fff7ed%22%20stroke%3D%22%23fed7aa%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M27%2022h28M27%2031h22M27%2040h15%22%20stroke%3D%22%23f59e0b%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2265%22%20cy%3D%2217%22%20r%3D%226%22%20fill%3D%22%23f59e0b%22%20opacity%3D%22.85%22%2F%3E%3C%2Fsvg%3E");
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-kpi-grid > .s360-academic-stat-card--missing::after{
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2054%22%3E%3Cpath%20d%3D%22M44%207l34%2040H10L44%207Z%22%20fill%3D%22%23fef2f2%22%20stroke%3D%22%23fecaca%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M44%2021v12%22%20stroke%3D%22%23dc2626%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2244%22%20cy%3D%2241%22%20r%3D%223%22%20fill%3D%22%23dc2626%22%2F%3E%3C%2Fsvg%3E");
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness__list{
    grid-template-columns:repeat(5,minmax(110px,1fr));
}

body.wp-admin .s360-tailwind-foundation.s360-grouped-admin.s360-gradebook-phase-n .s360-gradebook-assessment-overview .s360-control-metric.s360-academic-stat-card{
    border-left:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    background:var(--s360-card-background-muted,var(--s360-color-bg-subtle,#f8fafc));
}

@media (max-width:1180px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness__list{
        grid-template-columns:repeat(2,minmax(160px,1fr));
    }
}

@media (max-width:782px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-timetable-readiness__list{
        grid-template-columns:1fr;
    }
}


/* v13.5 Academic KPI Outer Card & Equal Heights Hotfix.
 * Scope: Academic statistic card sections for Classes & Subjects, Timetable,
 * Academic Delivery, and Exams & Gradebook only. Mirrors the Calendar
 * statistics outer-card pattern and normalizes every KPI card in each row to
 * the same height. No DB, routing, permission, nonce, or workflow changes.
 */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section{
    display:block;
    width:100%;
    margin-block:var(--s360-academic-dashboard-stack-gap,10px) var(--s360-academic-dashboard-stack-gap,10px);
    padding:var(--s360-target-density-panel-padding,14px 16px);
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:var(--s360-card-radius,var(--s360-radius-lg,12px));
    background:var(--s360-card-background,var(--s360-color-surface-raised,#fff));
    box-shadow:var(--s360-card-shadow,none);
    box-sizing:border-box;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid{
    width:100%;
    margin:0 !important;
    align-items:stretch;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid > .s360-academic-stat-card{
    height:78px;
    min-height:78px;
    max-height:78px;
    margin:0 !important;
    box-sizing:border-box;
    align-self:stretch;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid > .s360-academic-stat-card > .s360-ui-stat-card__label,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid > .s360-academic-stat-card > .description{
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid > .s360-academic-stat-card > .s360-ui-stat-card__value,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid > .s360-academic-stat-card > h2{
    flex:0 0 auto;
}

@media (max-width:782px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section{
        padding:var(--s360-target-density-mobile-panel-padding,12px 12px);
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid > .s360-academic-stat-card{
        height:70px;
        min-height:70px;
        max-height:70px;
    }
}


/* v13.5 Academic KPI label overflow fix.
 * The KPI card already reserves icon space through right padding, so labels must
 * not subtract the icon width a second time. Keeping labels single-line prevents
 * the Classes & Subjects, Timetable, Delivery and Gradebook statistic cards from
 * clipping long labels such as Student Assignments / Teacher Assignments.
 */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid > .s360-academic-stat-card{
    min-width:0;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-academic-stats-section > .s360-academic-kpi-grid > .s360-academic-stat-card > :where(.s360-ui-stat-card__label,.description){
    display:block;
    width:100%;
    max-width:100% !important;
    min-width:0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* v13.5 Academic help card compact notification strip hotfix.
 * Scope: Academic tab intro/help cards only for Classes & Subjects,
 * Timetable, Academic Delivery, and Exams & Gradebook. Converts the large
 * explanatory card into a compact notification-style strip so the workspace
 * content and statistic cards move higher on the page. No markup, DB,
 * routing, permissions, nonce, or workflow changes.
 */
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header.s360-ui-page-header,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header.s360-ui-page-header{
    position:relative;
    display:flex;
    align-items:flex-start;
    width:100%;
    max-width:none;
    min-height:0;
    margin-block:0;
    padding:10px 14px 10px 42px;
    border:1px solid var(--s360-color-border-subtle,#dbe4ef);
    border-radius:12px;
    background:var(--s360-color-bg-subtle,#f8fafc);
    box-shadow:none;
    box-sizing:border-box;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header.s360-ui-page-header::before,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header.s360-ui-page-header::before{
    content:"i";
    position:absolute;
    left:14px;
    top:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    border-radius:999px;
    color:var(--s360-color-primary,#2563eb);
    background:var(--s360-color-primary-soft,#eff6ff);
    border:1px solid var(--s360-color-primary-border,#bfdbfe);
    font-size:12px;
    line-height:1;
    font-weight:800;
    font-family:Arial, sans-serif;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header .s360-ui-page-header__main,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header .s360-ui-page-header__main{
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:6px 12px;
    min-width:0;
    margin:0;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header .s360-ui-page-header__title,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header .s360-ui-page-header__title{
    flex:0 0 auto;
    margin:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:13px;
    line-height:1.25;
    font-weight:800;
}
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header .s360-ui-page-header__description,
body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header .s360-ui-page-header__description{
    flex:1 1 420px;
    min-width:0;
    max-width:none;
    margin:0;
    color:var(--s360-color-text-muted,#64748b);
    font-size:12px;
    line-height:1.35;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header.s360-ui-page-header,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header.s360-ui-page-header{
        padding:10px 12px 10px 38px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header.s360-ui-page-header::before,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header.s360-ui-page-header::before{
        left:12px;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header .s360-ui-page-header__main,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header .s360-ui-page-header__main{
        display:block;
    }
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k:is(.s360-academic-classes,.s360-academic-timetable,.s360-academic-gradebook) > .s360-academic-page-header .s360-ui-page-header__description,
    body.wp-admin #wpbody-content > .wrap.s360-admin-wrapper.s360-academic-phase-k[data-school360-ui-scope="academic-delivery-workspace"] > .s360-academic-page-header .s360-ui-page-header__description{
        display:block;
        margin-block-start:2px;
        white-space:normal;
    }
}


/* v13.5 Academic help strip deterministic markup fix.
 * Replaces the oversized per-tab page-header help cards with compact
 * notification-style strips for Classes & Subjects, Timetable, Academic
 * Delivery, and Exams & Gradebook. This selector targets the new markup
 * directly, so it is not dependent on page-header helper/card cascade rules.
 */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper .s360-academic-help-strip{
    display:flex !important;
    align-items:center !important;
    gap:8px 12px !important;
    width:100% !important;
    min-height:0 !important;
    max-height:48px !important;
    margin:12px 0 16px !important;
    padding:9px 14px !important;
    border:1px solid var(--s360-color-border-subtle,#dbe4ef) !important;
    border-radius:12px !important;
    background:var(--s360-color-bg-subtle,#f8fafc) !important;
    box-shadow:none !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
}
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper .s360-academic-help-strip::before{
    content:"i";
    flex:0 0 auto;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:18px !important;
    height:18px !important;
    border-radius:999px !important;
    color:var(--s360-color-primary,#2563eb) !important;
    background:var(--s360-color-primary-soft,#eff6ff) !important;
    border:1px solid var(--s360-color-primary-border,#bfdbfe) !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:800 !important;
    font-family:Arial, sans-serif !important;
}
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper .s360-academic-help-strip__title{
    flex:0 0 auto !important;
    margin:0 !important;
    color:var(--s360-color-text-heading,#0f172a) !important;
    font-size:13px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
}
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper .s360-academic-help-strip__description{
    flex:1 1 auto !important;
    min-width:0 !important;
    margin:0 !important;
    color:var(--s360-color-text-muted,#64748b) !important;
    font-size:12px !important;
    line-height:1.35 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}
@media (max-width:782px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper .s360-academic-help-strip{
        align-items:flex-start !important;
        max-height:none !important;
        padding:10px 12px !important;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper .s360-academic-help-strip__title,
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper .s360-academic-help-strip__description{
        display:block !important;
        white-space:normal !important;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper .s360-academic-help-strip__description{
        margin-top:2px !important;
    }
}

/* v13.5 Assessment Overview KPI Card Match Hotfix.
 * Scope: Academic → Exams & Gradebook → Assessment Overview only.
 * Makes the six Assessment Overview cards use the same Academic KPI card
 * presentation as the main statistic cards and removes the legacy control
 * metric bar styling from this section.
 */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview{
    margin-top:var(--s360-academic-dashboard-stack-gap,10px);
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(180px,1fr));
    align-items:stretch;
    gap:var(--s360-space-sm,12px);
    width:100%;
    margin:0;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card{
    height:78px;
    min-height:78px;
    max-height:78px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 58px;
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:var(--s360-component-card-header-gap,14px);
    row-gap:var(--s360-space-xs,8px);
    padding:var(--s360-component-card-padding-tight,14px) 18px;
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-inline-start:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef));
    border-radius:14px;
    background:linear-gradient(180deg,var(--s360-color-surface-raised,#fff) 0%,var(--s360-color-bg-subtle,#f8fafc) 100%);
    box-shadow:0 8px 18px rgba(15,23,42,.045);
    overflow:hidden;
    box-sizing:border-box;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card::before{
    content:none;
    display:none;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card::after{
    position:static;
    grid-column:2;
    grid-row:1 / span 2;
    align-self:center;
    justify-self:end;
    width:54px;
    height:38px;
    opacity:.94;
    transform:none;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    filter:none;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card > .s360-ui-stat-card__label,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card > .description{
    grid-column:1;
    grid-row:1;
    align-self:end;
    justify-self:start;
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
    margin:0;
    padding:0;
    overflow:hidden;
    color:var(--s360-color-text-muted,#475569);
    font-size:12px;
    line-height:1.25;
    font-weight:700;
    letter-spacing:-.008em;
    text-align:left;
    text-overflow:ellipsis;
    white-space:nowrap;
    text-transform:none;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card > .s360-ui-stat-card__value,
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card > h2{
    grid-column:1;
    grid-row:2;
    align-self:start;
    justify-self:start;
    display:block;
    width:auto;
    min-width:0;
    margin:0;
    padding:0;
    color:var(--s360-color-text-heading,#0f172a);
    font-size:22px;
    line-height:1;
    font-weight:820;
    letter-spacing:-.035em;
    text-align:left;
}

@media (max-width:1180px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid{
        grid-template-columns:repeat(2,minmax(180px,1fr));
    }
}

@media (max-width:782px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid{
        grid-template-columns:1fr;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card{
        height:70px;
        min-height:70px;
        max-height:70px;
    }
}

/* v13.5 Assessment Overview outer card and equal-height alignment fix.
 * Scope: Academic → Exams & Gradebook → Assessment Overview only.
 * Makes the overview block a real Academic statistics card section and forces
 * all six metrics to use the same size, spacing, and icon alignment as the
 * main Academic KPI cards. No backend, DB, routing, or permission changes.
 */
body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview.s360-academic-stats-section{
    display:block !important;
    width:100% !important;
    margin-block:var(--s360-academic-dashboard-stack-gap,10px) var(--s360-academic-dashboard-stack-gap,10px) !important;
    padding:var(--s360-target-density-panel-padding,14px 16px) !important;
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef)) !important;
    border-radius:var(--s360-card-radius,var(--s360-radius-lg,12px)) !important;
    background:var(--s360-card-background,var(--s360-color-surface-raised,#fff)) !important;
    box-shadow:var(--s360-card-shadow,none) !important;
    box-sizing:border-box !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__header{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:var(--s360-space-sm,12px) !important;
    margin:0 0 var(--s360-academic-dashboard-stack-gap,10px) !important;
    padding:0 !important;
    border:0 !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__header h2{
    margin:0 0 4px !important;
    font-size:16px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    color:var(--s360-color-text-heading,#0f172a) !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__header .description{
    margin:0 !important;
    color:var(--s360-color-text-muted,#64748b) !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(180px,1fr)) !important;
    grid-auto-rows:78px !important;
    align-items:stretch !important;
    gap:var(--s360-academic-dashboard-stack-gap,10px) !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    height:78px !important;
    min-height:78px !important;
    max-height:78px !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:12px calc(var(--s360-academic-kpi-chart-width,52px) + 28px) 12px 16px !important;
    gap:var(--s360-academic-dashboard-stack-gap-sm,8px) !important;
    border:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef)) !important;
    border-inline-start:1px solid var(--s360-card-border-color,var(--s360-color-border-muted,#dbe4ef)) !important;
    border-radius:var(--s360-card-radius,var(--s360-radius-lg,12px)) !important;
    background:var(--s360-card-background-muted,var(--s360-color-bg-subtle,#f8fafc)) !important;
    box-shadow:none !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card::before{
    content:none !important;
    display:none !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card::after{
    content:"" !important;
    position:absolute !important;
    right:14px !important;
    top:50% !important;
    grid-column:auto !important;
    grid-row:auto !important;
    align-self:auto !important;
    justify-self:auto !important;
    width:var(--s360-academic-kpi-chart-width,52px) !important;
    height:var(--s360-academic-kpi-chart-height,34px) !important;
    transform:translateY(-50%) !important;
    background-repeat:no-repeat !important;
    background-position:center !important;
    background-size:contain !important;
    opacity:.95 !important;
    pointer-events:none !important;
    filter:none !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card > :where(.s360-ui-stat-card__label,.description){
    order:1 !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    color:var(--s360-color-text-muted,#475569) !important;
    font-size:12px !important;
    line-height:1.25 !important;
    font-weight:750 !important;
    letter-spacing:-.01em !important;
    text-align:left !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    text-transform:none !important;
}

body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card > :where(.s360-ui-stat-card__value,h2){
    order:2 !important;
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    color:var(--s360-color-text-heading,#0f172a) !important;
    font-size:24px !important;
    line-height:1 !important;
    font-weight:850 !important;
    letter-spacing:-.045em !important;
    text-align:left !important;
}

@media (max-width:1180px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid{
        grid-template-columns:repeat(2,minmax(180px,1fr)) !important;
    }
}

@media (max-width:782px){
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview.s360-academic-stats-section{
        padding:var(--s360-target-density-mobile-panel-padding,12px 12px) !important;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid{
        grid-template-columns:1fr !important;
        grid-auto-rows:70px !important;
    }
    body.wp-admin #wpbody-content .wrap.s360-admin-wrapper.s360-academic-phase-k .s360-gradebook-assessment-overview__metrics.s360-academic-kpi-grid > .s360-academic-stat-card{
        height:70px !important;
        min-height:70px !important;
        max-height:70px !important;
        padding:10px calc(var(--s360-academic-kpi-chart-width,44px) + 24px) 10px 12px !important;
    }
}
