/* ==================================================================
   Plain Desk — theme.css
   ================================================================== */

/* 1. CSS Variables & Base Reset
   -------------------------------------------------------------- */

:root {
  /* Plain Desk palette */
  --pd-bg:       #FBFAF7;
  --pd-surface:  #EDE9DF;
  --pd-ink:      #1f1d1a;
  --pd-body:     #2e2b24;
  --pd-muted:    #4a4537;
  --pd-hint:     #7a7264;
  --pd-border:   #aaa28e;

  /* Typography */
  --pd-font-serif: 'Fraunces', Georgia, serif;
  --pd-font-sans:  'Inter', system-ui, -apple-system, sans-serif;
  --pd-font-mono:  'JetBrains Mono', ui-monospace, monospace;

  --font-family-sans: var(--pd-font-sans);

  --font-size-xs: 12px;
  --font-size-sm: 13px;
  --font-size-base: 14px;
  --font-size-md: 15px;
  --font-size-lg: 16px;
  --font-size-h3: 19px;
  --font-size-h2: 26px;
  --font-size-h1: 36px;

  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;

  --line-height-tight: 1.15;
  --line-height-normal: 1.55;
  --line-height-relaxed: 1.6;

  /* Layout */
  --page-max-width: 1440px;
  --page-padding-x: 20px;
  --page-padding-y: 14px;
  --app-content-inline-inset: 8px;
  --section-gap: 12px;
  --toolbar-gap: 8px;
  --control-height: 36px;
  --compact-control-height: 32px;
  --card-padding: 12px;
  --card-radius: 10px;

  /* Radii */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-xl: 16px;

  /* Legacy token aliases so existing components still work */
  --color-bg-body:    var(--pd-bg);
  --color-bg-surface: var(--pd-bg);
  --color-bg-subtle:  var(--pd-surface);
  --color-bg-muted:   var(--pd-surface);

  --color-border-subtle: var(--pd-border);
  --color-border-soft:   var(--pd-border);

  --color-text-main:  var(--pd-ink);
  --color-text-muted: var(--pd-muted);
  --color-text-soft:  var(--pd-hint);

  --color-primary:      var(--pd-ink);
  --color-primary-soft: rgba(31, 29, 26, 0.08);

  --color-success: #22c55e;
  --color-success-soft: rgba(34, 197, 94, 0.12);

  --color-warning: #f59e0b;
  --color-warning-soft: rgba(245, 158, 11, 0.12);

  --color-danger: #ef4444;
  --color-danger-soft: rgba(239, 68, 68, 0.12);

  --color-secondary: var(--pd-muted);
  --color-secondary-soft: rgba(107, 99, 87, 0.1);

  /* Shadows */
  --shadow-soft: 0 1px 4px rgba(31, 29, 26, 0.10);
  --shadow-soft-lg: 0 8px 28px rgba(31, 29, 26, 0.14);

  /* Transitions */
  --transition-fast: 0.15s ease-out;
  --transition-normal: 0.2s ease;
}

/* Global reset-ish styles */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: 100%;
}

body {
  margin: 0;
  padding: 0;
  font-family: var(--pd-font-sans);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-normal);
  color: var(--pd-body);
  background-color: var(--pd-bg);
  -webkit-font-smoothing: antialiased;
}

img,
svg {
  max-width: 100%;
  display: block;
}

a {
  color: var(--pd-ink);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

/* ==================================================================
   2. Layout & Page Wrapper
   ================================================================== */

.page-wrapper {
  max-width: var(--page-max-width);
  margin: 0 auto;
  padding: var(--page-padding-y) var(--page-padding-x);
}

.page-section {
  margin-bottom: var(--section-gap);
}

.section-stack {
  display: flex;
  flex-direction: column;
  gap: var(--section-gap);
}

/* ==================================================================
   3. Typography helpers
   ================================================================== */

.h1 {
  font-family: var(--pd-font-serif);
  font-size: var(--font-size-h1);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-tight);
  letter-spacing: -0.01em;
  color: var(--pd-ink);
}

.h2 {
  font-family: var(--pd-font-serif);
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-tight);
  letter-spacing: -0.01em;
  color: var(--pd-ink);
}

.h3 {
  font-family: var(--pd-font-serif);
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-tight);
  color: var(--pd-ink);
}

.text-muted {
  color: var(--pd-muted);
  font-size: var(--font-size-sm);
}

/* ==================================================================
   4. Section Headers & Labels
   ================================================================== */

.section-title {
  margin-bottom: 10px;
}

.section-title-label {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  background-color: var(--pd-surface);
  color: var(--pd-hint);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 10.5px;
  font-weight: var(--font-weight-medium);
  margin-bottom: 6px;
}

.section-title-main {
  font-family: var(--pd-font-serif);
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-tight);
  color: var(--pd-ink);
}

.section-title-desc {
  margin-top: 4px;
  color: var(--pd-muted);
  font-size: var(--font-size-sm);
}

/* ==================================================================
   5. Cards & Containers
   ================================================================== */

.card {
  background-color: var(--pd-bg);
  border: 0.5px solid var(--pd-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft);
  padding: var(--card-padding);
  transition: border-color var(--transition-normal);
}

.card:hover {
  border-color: var(--pd-muted);
}

.card--spacious {
  padding: 16px;
}

.card--muted {
  background-color: var(--pd-surface);
}

.section-card {
  background-color: var(--pd-surface);
  border-radius: var(--radius-xl);
  border: 0.5px solid var(--pd-border);
  padding: var(--card-padding);
  box-shadow: var(--shadow-soft);
}

.section-card--cream {
  background-color: var(--pd-bg);
}

.section-card--soft {
  background-color: var(--pd-surface);
}

.card--highlight-primary {
  background-color: var(--pd-surface);
  border-color: var(--pd-border);
}

.card--highlight-success {
  background-color: var(--color-success-soft);
  border-color: rgba(34, 197, 94, 0.4);
}

.card--highlight-warning {
  background-color: var(--color-warning-soft);
  border-color: rgba(245, 158, 11, 0.4);
}

.card--highlight-danger {
  background-color: var(--color-danger-soft);
  border-color: rgba(239, 68, 68, 0.4);
}

.card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.card-title {
  font-family: var(--pd-font-serif);
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-medium);
  color: var(--pd-ink);
}

.card-subtitle {
  font-size: var(--font-size-sm);
  color: var(--pd-muted);
}

/* Plain Desk tool card icon square */
.pd-icon-square {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background-color: var(--pd-surface);
  border-radius: 10px;
  color: var(--pd-ink);
  flex-shrink: 0;
}

/* Plain Desk chip */
.pd-chip {
  display: inline-flex;
  align-items: center;
  padding: 5px 11px;
  border-radius: 999px;
  background-color: var(--pd-surface);
  color: var(--pd-body);
  font-size: 12px;
  font-family: var(--pd-font-sans);
  border: 0.5px solid transparent;
  transition: background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);
  text-decoration: none;
  cursor: pointer;
}

.pd-chip:hover {
  background-color: var(--pd-bg);
  color: var(--pd-ink);
  border-color: var(--pd-border);
  text-decoration: none;
}

/* ==================================================================
   6. Forms & Inputs
   ================================================================== */

.form-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 12px;
}

.label {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--pd-ink);
}

.label span.label-optional {
  color: var(--pd-hint);
  font-weight: var(--font-weight-normal);
}

.input,
textarea.input,
select.input {
  width: 100%;
  padding: 10px 12px;
  font-family: var(--pd-font-sans);
  font-size: var(--font-size-md);
  line-height: var(--line-height-normal);
  border-radius: 8px;
  border: 0.5px solid var(--pd-border);
  background-color: var(--pd-bg);
  color: var(--pd-ink);
  outline: none;
  transition: border-color var(--transition-normal), box-shadow var(--transition-normal);
}

.input:focus,
textarea.input:focus,
select.input:focus {
  border-color: var(--pd-ink);
  box-shadow: 0 0 0 2px rgba(31, 29, 26, 0.15);
}

.input:disabled {
  background-color: var(--pd-surface);
  color: var(--pd-hint);
  cursor: not-allowed;
}

.input::placeholder {
  color: var(--pd-hint);
}

.input-group {
  display: flex;
  align-items: stretch;
}

.input-group > .input {
  border-radius: 8px 0 0 8px;
}

.input-group > .input-group-addon {
  padding: 0 12px;
  display: flex;
  align-items: center;
  border-radius: 0 8px 8px 0;
  border: 0.5px solid var(--pd-border);
  border-left: none;
  background-color: var(--pd-surface);
  font-size: var(--font-size-sm);
  color: var(--pd-hint);
}

/* ==================================================================
   7. Utility Action Buttons
   ================================================================== */

.create,
button.create {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.5rem 1.4rem;
  min-height: 36px;
  border-radius: 999px;
  background: var(--pd-ink) !important;
  color: var(--pd-bg) !important;
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-sm);
  letter-spacing: 0.01em;
  border: 1px solid transparent;
  box-shadow: none;
  transition: transform var(--transition-fast), opacity var(--transition-fast);
}

.create:hover,
button.create:hover {
  transform: translateY(-1px);
  opacity: 0.9;
}

.create:active,
button.create:active {
  transform: translateY(0);
}

.create:focus-visible,
button.create:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(31, 29, 26, 0.4);
}

.create:disabled,
button.create:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}

/* ==================================================================
   8. Buttons
   ================================================================== */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 10px;
  border: 0.5px solid var(--pd-border);
  font-family: var(--pd-font-sans);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  line-height: 1.2;
  cursor: pointer;
  background-color: var(--pd-surface);
  color: var(--pd-body);
  transition: background-color var(--transition-normal), border-color var(--transition-normal), color var(--transition-normal);
}

.btn:hover {
  background-color: var(--pd-bg);
  border-color: var(--pd-muted);
}

.btn:active {
  opacity: 0.85;
}

.btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(31, 29, 26, 0.4);
}

/* Primary */
.btn-primary {
  background-color: var(--pd-ink);
  border-color: var(--pd-ink);
  color: var(--pd-bg);
}

.btn-primary:hover {
  background-color: #2d2b27;
  border-color: #2d2b27;
  color: var(--pd-bg);
}

/* Secondary */
.btn-secondary {
  background-color: transparent;
  border-color: var(--pd-border);
  color: var(--pd-body);
}

.btn-secondary:hover {
  background-color: var(--pd-surface);
  border-color: var(--pd-muted);
}

/* Success */
.btn-success {
  background-color: var(--color-success);
  border-color: var(--color-success);
  color: #ffffff;
}

.btn-success:hover {
  background-color: #16a34a;
  border-color: #16a34a;
}

/* Warning */
.btn-warning {
  background-color: var(--color-warning);
  border-color: var(--color-warning);
  color: var(--pd-ink);
}

.btn-warning:hover {
  background-color: #d97706;
  border-color: #d97706;
}

/* Danger */
.btn-danger {
  background-color: var(--color-danger);
  border-color: var(--color-danger);
  color: #ffffff;
}

.btn-danger:hover {
  background-color: #dc2626;
  border-color: #dc2626;
}

/* Ghost */
.btn-ghost {
  background-color: transparent;
  border-color: transparent;
  color: var(--pd-muted);
}

.btn-ghost:hover {
  background-color: var(--pd-surface);
  color: var(--pd-body);
}

/* ==================================================================
   9. Tables
   ================================================================== */

.table-wrapper {
  width: 100%;
  overflow-x: auto;
}

.table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--font-size-sm);
}

.table thead {
  background-color: var(--pd-surface);
}

.table th,
.table td {
  padding: 7px 10px;
  text-align: left;
  border-bottom: 0.5px solid var(--pd-border);
}

.table th {
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--pd-hint);
  font-weight: var(--font-weight-medium);
}

.table tr:hover td {
  background-color: var(--pd-surface);
}

/* ==================================================================
   10. Action Panels / Toolbars
   ================================================================== */

.action-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.action-bar-left,
.action-bar-right {
  display: flex;
  align-items: center;
  gap: 8px;
}

/* ==================================================================
   11. Overlay helpers
   ================================================================== */

.page-transition-overlay {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(8, 7, 14, 0.52);
  backdrop-filter: blur(20px) saturate(200%);
  -webkit-backdrop-filter: blur(20px) saturate(200%);
  z-index: 60;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 70ms ease-out, visibility 70ms ease-out;
}

.page-transition-overlay[aria-hidden="false"] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.page-transition-overlay__card {
  width: min(92vw, 320px);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.95);
  color: var(--pd-ink);
  padding: 16px 20px 18px;
  box-shadow:
    0 0 0 1px rgba(139, 92, 246, 0.18),
    0 4px 16px rgba(139, 92, 246, 0.10),
    0 20px 48px rgba(8, 7, 14, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 1);
  animation: card-pop-in 140ms cubic-bezier(0.34, 1.6, 0.64, 1) both;
}

@media (prefers-color-scheme: dark) {
  .page-transition-overlay__card {
    background: rgba(14, 13, 21, 0.97);
    box-shadow:
      0 0 0 1px rgba(139, 92, 246, 0.28),
      0 4px 16px rgba(139, 92, 246, 0.14),
      0 20px 48px rgba(0, 0, 0, 0.55),
      inset 0 1px 0 rgba(255, 255, 255, 0.05);
  }
}

.dark .page-transition-overlay__card {
  background: rgba(14, 13, 21, 0.97);
  box-shadow:
    0 0 0 1px rgba(139, 92, 246, 0.28),
    0 4px 16px rgba(139, 92, 246, 0.14),
    0 20px 48px rgba(0, 0, 0, 0.55),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

@keyframes card-pop-in {
  from { opacity: 0; transform: scale(0.91) translateY(10px); }
  to   { opacity: 1; transform: scale(1)    translateY(0); }
}

/* Dual-ring premium spinner */
.page-transition-spinner {
  position: relative;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
}

/* Outer ring — fast clockwise, violet→blue→cyan */
.page-transition-spinner::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: conic-gradient(
    from 0deg,
    transparent        0%,
    rgba(139,92,246,.0) 5%,
    rgba(139,92,246,.5) 30%,
    #8b5cf6            52%,
    #6366f1            63%,
    #3b82f6            74%,
    #06b6d4            85%,
    rgba(6,182,212,.2) 94%,
    transparent        100%
  );
  animation: spinner-cw 480ms linear infinite;
  mask: radial-gradient(farthest-side, transparent calc(100% - 5px), #000 calc(100% - 5px));
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 5px), #000 calc(100% - 5px));
  filter: drop-shadow(0 0 5px rgba(139, 92, 246, 0.55));
}

/* Inner ring — slower counter-clockwise, cyan→sky */
.page-transition-spinner::after {
  content: '';
  position: absolute;
  inset: 9px;
  border-radius: 50%;
  background: conic-gradient(
    from 180deg,
    transparent        0%,
    rgba(6,182,212,.0)  8%,
    rgba(6,182,212,.45) 40%,
    #06b6d4            58%,
    #38bdf8            70%,
    rgba(56,189,248,.1) 88%,
    transparent        100%
  );
  animation: spinner-ccw 720ms linear infinite;
  mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px));
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px));
}

@keyframes spinner-cw  { to { transform: rotate(360deg);  } }
@keyframes spinner-ccw { to { transform: rotate(-360deg); } }

/* Pulsing dot-trio below spinner card text */
.page-transition-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin-top: 14px;
}

.page-transition-dots span {
  display: block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  animation: dot-pulse 1.1s ease-in-out infinite both;
}

.page-transition-dots span:nth-child(1) {
  background: #8b5cf6;
  animation-delay: 0s;
  --dot-glow: rgba(139, 92, 246, 0.75);
}
.page-transition-dots span:nth-child(2) {
  background: #3b82f6;
  animation-delay: 0.18s;
  --dot-glow: rgba(59, 130, 246, 0.75);
}
.page-transition-dots span:nth-child(3) {
  background: #06b6d4;
  animation-delay: 0.36s;
  --dot-glow: rgba(6, 182, 212, 0.75);
}

@keyframes dot-pulse {
  0%, 100% {
    transform: scale(0.55);
    opacity: 0.25;
    box-shadow: none;
  }
  45% {
    transform: scale(1.15);
    opacity: 1;
    box-shadow: 0 0 10px 3px var(--dot-glow, rgba(139, 92, 246, 0.75));
  }
}

/* ==================================================================
   12. Utility Classes (spacing, flex, grid)
   ================================================================== */

.u-mt-8  { margin-top: 8px; }
.u-mt-16 { margin-top: 16px; }
.u-mt-24 { margin-top: 24px; }
.u-mb-8  { margin-bottom: 8px; }
.u-mb-16 { margin-bottom: 16px; }
.u-mb-24 { margin-bottom: 24px; }
.u-pt-16 { padding-top: 16px; }
.u-pb-16 { padding-bottom: 16px; }
.u-p-16  { padding: 16px; }
.u-p-24  { padding: 24px; }

.u-flex         { display: flex; }
.u-inline-flex  { display: inline-flex; }
.u-flex-row     { flex-direction: row; }
.u-flex-col     { flex-direction: column; }
.u-align-center { align-items: center; }
.u-justify-between { justify-content: space-between; }
.u-justify-center  { justify-content: center; }
.u-flex-wrap    { flex-wrap: wrap; }

.u-gap-8  { gap: 8px; }
.u-gap-12 { gap: 12px; }
.u-gap-16 { gap: 16px; }
.u-gap-24 { gap: 24px; }

.u-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.u-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

@media (max-width: 768px) {
  .page-wrapper {
    padding: 12px 12px;
  }

  .section-card,
  .card,
  .card--spacious {
    padding: 14px 14px;
  }

  .u-grid-2,
  .u-grid-3 {
    grid-template-columns: minmax(0, 1fr);
  }

  .card-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }

  .action-bar {
    flex-direction: column;
    align-items: stretch;
  }
}

/* ==================================================================
   13. Premium thin scrollbars — compact & polished
   ================================================================== */

/* Chromium / Safari */
::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: var(--pd-border);
  border-radius: 999px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--pd-hint);
}

/* Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--pd-border) transparent;
}

/* Prevent accidental horizontal overflow from page content */
body {
  overflow-x: hidden;
}

/* ==================================================================
   14. Authenticated application density system
   Shared primitives keep work screens compact without affecting marketing.
   ================================================================== */
.app-content {
  min-width: 0;
  padding: var(--page-padding-y) var(--app-content-inline-inset);
}

.workspace-page {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.compact-page {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--section-gap);
}

.app-page-header,
.compact-page-header {
  min-height: 44px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
  width: 100%;
  margin: 0 0 8px;
}

.app-page-header__back,
.compact-page-back,
.compact-page-action {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 5px 10px;
  border: 1px solid var(--pd-border);
  border-radius: 8px;
  background: var(--pd-bg);
  color: var(--pd-body);
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}

.compact-app-footer { padding-block: 0; }
.compact-app-footer a { line-height: 1.2; }
.compact-page-back:hover { color: var(--pd-ink); background: var(--pd-surface); }
.compact-page-back svg { width: 14px; height: 14px; }
.compact-page-action {
  margin-left: auto;
  border-color: var(--pd-ink);
  background: var(--pd-ink);
  color: var(--pd-bg);
  font-weight: 600;
}

.app-page-header__left,
.compact-page-heading {
  min-width: 0;
  display: flex;
  align-items: baseline;
  flex-wrap: nowrap;
  gap: 4px 10px;
  flex: 1 1 320px;
}

.app-auto-compact-header > div:first-of-type {
  min-width: 0;
  flex: 1 1 320px;
}
.app-auto-compact-header h1 + p,
.app-auto-compact-header h2 + p {
  display: inline;
  margin: 0 0 0 10px !important;
  color: var(--pd-muted);
  font-size: 12px;
}

.app-page-header__title,
.compact-page-title {
  margin: 0;
  color: var(--pd-ink);
  font-size: clamp(22px, 2vw, 26px);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.app-page-header__subtitle,
.compact-page-context,
.compact-meta {
  color: var(--pd-muted);
  font-size: 12px;
  line-height: 1.35;
}

.app-page-header__subtitle {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-page-header__actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

.app-page-header__actions .compact-page-action { margin-left: 0; }

.compact-toolbar,
.compact-status-bar,
.compact-filter-bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--toolbar-gap);
  min-width: 0;
  padding: 8px 10px;
  border: 1px solid var(--pd-border);
  border-radius: var(--card-radius);
  background: color-mix(in srgb, var(--pd-bg) 88%, white);
}

.compact-status-bar { min-height: 48px; }
.compact-status-bar__copy { flex: 1 1 360px; min-width: 0; }
.compact-filter-bar > * { min-width: 0; }
.compact-filter-bar input,
.compact-filter-bar select,
.compact-filter-bar button,
.compact-toolbar input,
.compact-toolbar select,
.compact-toolbar button {
  min-height: var(--control-height);
  max-height: var(--control-height);
  border-radius: 8px !important;
}

.compact-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 420px), 1fr));
  gap: 8px;
}

.compact-list-item {
  min-height: 64px;
  padding: var(--card-padding);
  border: 1px solid var(--pd-border);
  border-radius: var(--card-radius);
  background: var(--pd-bg);
}

/* Normalize the many existing authenticated templates while they migrate to
   the primitives above. Deliberately scoped to the app content only. */
.app-content > .space-y-6,
.app-content > [class*="space-y-6"] { row-gap: var(--section-gap) !important; }
/* The shell owns page-edge spacing. Legacy wrappers must not add a second
   inset or push their heading below the shared header baseline. */
.app-content > [class*="px-4"],
.app-content > [class*="sm:px-6"],
.app-content > [class*="lg:px-8"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.app-content > [class*="py-6"],
.app-content > [class*="py-8"] {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.app-content .rounded-2xl { border-radius: var(--card-radius) !important; }
.app-content .p-6 { padding: 16px !important; }
.app-content .p-5,
.app-content .p-4 { padding: var(--card-padding) !important; }
.app-content .py-8,
.app-content .py-6 { padding-top: var(--page-padding-y) !important; padding-bottom: var(--page-padding-y) !important; }
.app-content .gap-6 { gap: 16px !important; }
.app-content .gap-4 { gap: 12px !important; }
.app-content h1.text-3xl,
.app-content h1.text-2xl { font-size: 24px !important; line-height: 1.2 !important; }
.app-content input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.app-content select { min-height: var(--control-height); }
.app-content table th { padding-top: 8px !important; padding-bottom: 8px !important; }
.app-content table td { padding-top: 8px !important; padding-bottom: 8px !important; }

@media (max-width: 767px) {
  .app-content { padding: 10px var(--app-content-inline-inset); }
  .app-page-header,
  .compact-page-header { align-items: flex-start; flex-wrap: wrap; }
  .app-page-header__left,
  .compact-page-heading { flex: 1 1 calc(100% - 76px); flex-wrap: wrap; gap: 1px 8px; }
  .app-page-header__subtitle { flex-basis: 100%; white-space: normal; }
  .app-page-header__actions { flex: 1 1 100%; margin-left: 74px; }
  .compact-filter-bar > input,
  .compact-filter-bar > select,
  .compact-filter-bar > .compact-field { flex: 1 1 100% !important; }
}

/* Super Admin workspace — one viewport shell shared by every admin screen. */
body:has(.sa-shell){overflow:hidden}.app-global-header:has(~ main .sa-shell),body:has(.sa-shell)>footer{display:none}
.sa-shell{position:fixed;inset:0;z-index:70;display:grid;grid-template-columns:264px minmax(0,1fr);height:100dvh;background:#f5f6f8;color:#202631;font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.sa-sidebar{min-height:0;overflow-y:auto;background:#111827;color:#cbd5e1;border-right:1px solid #253044}.sa-brand{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:10px;height:64px;padding:0 16px;background:#111827;border-bottom:1px solid #273349}.sa-brand-mark{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:7px;background:#f8fafc;color:#111827;font:italic 19px var(--pd-font-serif)}.sa-brand strong,.sa-brand small{display:block}.sa-brand strong{font-size:10px;letter-spacing:.13em;color:#fff}.sa-brand small{margin-top:2px;color:#94a3b8;font-size:11px}.sa-sidebar-close{display:none;margin-left:auto;border:0;background:none;color:#cbd5e1;font-size:24px}.sa-nav{padding:8px 10px 18px}.sa-nav details{margin:2px 0}.sa-nav summary{display:flex;align-items:center;justify-content:space-between;padding:9px 9px 5px;color:#76849a;font-size:9px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;list-style:none}.sa-nav summary::-webkit-details-marker{display:none}.sa-nav summary span{font-size:13px;transition:transform .15s}.sa-nav details:not([open]) summary span{transform:rotate(-90deg)}.sa-nav a{display:flex;align-items:center;gap:8px;min-height:31px;margin:1px 0;padding:5px 9px;border-radius:6px;color:#bdc7d6;font-size:12px;line-height:1.25;text-decoration:none}.sa-nav a:hover{background:#1d293b;color:#fff}.sa-nav a[aria-current=page]{background:#263750;color:#fff;box-shadow:inset 2px 0 #60a5fa}.sa-icon{display:inline-grid;place-items:center;flex:0 0 17px;width:17px;color:#8fa0b8;font-size:13px}.sa-nav a[aria-current=page] .sa-icon{color:#93c5fd}
.sa-workspace{display:grid;grid-template-rows:58px minmax(0,1fr);min-width:0;min-height:0}.sa-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 22px;background:#fff;border-bottom:1px solid #e2e5ea}.sa-topbar-left,.sa-account{display:flex;align-items:center}.sa-back{display:inline-flex;align-items:center;gap:6px;color:#5b6472;font-size:12px;text-decoration:none}.sa-back:hover{color:#111827}.sa-account{gap:11px;font-size:11px}.sa-role{padding:3px 7px;border-radius:5px;background:#eef2ff;color:#354b8c;font-size:9px;font-weight:700;letter-spacing:.09em}.sa-account-name{max-width:220px;overflow:hidden;color:#4b5563;text-overflow:ellipsis;white-space:nowrap}.sa-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#172033;color:#fff;font-size:11px;font-weight:700}.sa-account a{color:#4b5563;text-decoration:none}.sa-account a:hover{color:#111827;text-decoration:underline}.sa-drawer-button{display:none;border:0;background:transparent;color:#111827;font-size:19px}.sa-main{min-width:0;min-height:0;overflow-y:auto;padding:20px clamp(16px,2.2vw,32px) 32px}.sa-main>.space-y-10{display:flex;flex-direction:column;gap:14px}.sa-main>.space-y-10>*{margin-top:0!important}.sa-main .rounded-3xl{border-radius:10px!important}.sa-main header.rounded-3xl{padding:16px!important}.sa-main header.rounded-3xl h1{font-size:24px!important;line-height:1.2}.sa-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.sa-page-header h1{margin:2px 0 4px;font-size:24px;font-weight:600;line-height:1.2}.sa-page-header p{margin:0;color:var(--pd-muted);font-size:12px}.sa-eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:9px!important;color:var(--pd-hint)!important}.sa-status{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border:1px solid #d8dce3;border-radius:999px;background:#fff;font-size:11px;white-space:nowrap}.sa-status i{width:6px;height:6px;border-radius:50%;background:#3a9b68}.sa-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.sa-metrics article,.sa-card{border:1px solid #dfe3e8;border-radius:9px;background:#fff;box-shadow:0 1px 2px rgba(31,41,55,.025)}.sa-metrics article{padding:13px}.sa-metrics span{display:block;color:var(--pd-muted);font-size:11px}.sa-metrics strong{display:block;margin-top:4px;font-size:22px;font-weight:600}.sa-card{overflow:hidden}.sa-card-header{padding:13px 16px;border-bottom:1px solid #e5e7eb}.sa-card-header h2{margin:0;font-size:17px;font-weight:600}.sa-card-header p{margin:2px 0 0;color:var(--pd-muted);font-size:11px}.sa-table-wrap{overflow-x:auto}.sa-table{width:100%;border-collapse:collapse;font-size:12px}.sa-table th{background:#f8fafc;color:var(--pd-muted);font-size:9px;letter-spacing:.05em;text-transform:uppercase}.sa-table th,.sa-table td{padding:9px 13px;border-bottom:1px solid #eceff2;text-align:left;white-space:nowrap}.sa-empty,.sa-empty-state{padding:34px!important;text-align:center!important;color:var(--pd-muted)}.sa-empty-state strong{color:var(--pd-ink)}.sa-scrim{display:none}
@media(max-width:900px){.sa-shell{grid-template-columns:1fr}.sa-sidebar{position:fixed;inset:0 auto 0 0;z-index:3;width:min(280px,88vw);transform:translateX(-101%);transition:transform .2s;box-shadow:12px 0 30px rgba(0,0,0,.18)}.sa-shell.is-drawer-open .sa-sidebar{transform:none}.sa-sidebar-close,.sa-drawer-button{display:block}.sa-scrim{position:fixed;inset:0;z-index:2;border:0;background:rgba(15,23,42,.42)}.sa-shell.is-drawer-open .sa-scrim{display:block}.sa-topbar{padding:0 14px}.sa-main{padding:16px 13px 28px}.sa-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.sa-account-name,.sa-account .sa-role{display:none}.sa-account{gap:8px}.sa-account a{font-size:10px}.sa-page-header{display:block}.sa-status{margin-top:10px}}
.billing-metrics{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px}.billing-metrics article{padding:12px;border:1px solid #dfe3e8;border-radius:8px;background:#fff}.billing-metrics span{display:block;color:var(--pd-muted);font-size:10px}.billing-metrics strong{display:block;margin-top:3px;font-size:20px}.billing-metrics .is-unavailable{font-size:12px;color:#7a8594}.billing-data-note{margin:8px 0 14px;color:#697386;font-size:9px}.billing-filters{display:flex;gap:5px;margin-bottom:10px;overflow-x:auto}.billing-filters a{padding:5px 9px;border:1px solid #dce1e7;border-radius:999px;background:#fff;color:#596474;font-size:10px;text-decoration:none;white-space:nowrap}.billing-filters a[aria-current=page]{border-color:#9ca9bb;background:#eaf0f7;color:#1f2d42;font-weight:700}.billing-badge{display:inline-flex;padding:2px 6px;border-radius:9px;background:#edf1f5;color:#465467;font-size:8px;font-weight:700}.billing-badge.status-active,.billing-badge.status-success{background:#e7f6ed;color:#187548}.billing-badge.status-past_due,.billing-badge.status-failed{background:#fcebea;color:#a9362d}.billing-badge.status-trial,.billing-badge.status-pending{background:#fff4d6;color:#8b6508}.billing-muted{color:#929baa}.billing-card-heading{display:flex;align-items:center;justify-content:space-between}.billing-action{padding:6px 9px;border-radius:6px;background:#182337;color:#fff!important;font-size:10px;text-decoration:none}.sa-table td>a{color:#344b6a;text-decoration:none}.sa-table td>a:hover{text-decoration:underline}@media(max-width:800px){.billing-metrics{grid-template-columns:repeat(2,1fr)}}
/* Compact operational Super Admin dashboard */
.sa-dashboard{display:flex;flex-direction:column;gap:12px}.sa-dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.sa-dashboard-header h1{margin:0;font-size:22px;line-height:1.2}.sa-dashboard-header p{margin:2px 0 0;color:var(--pd-muted);font-size:12px}.sa-dashboard-actions{display:flex;align-items:center;gap:7px}.sa-dashboard-actions label{font-size:10px;color:var(--pd-muted)}.sa-dashboard-actions select,.sa-dashboard-actions button{height:30px;border:1px solid #d7dce3;border-radius:6px;background:#fff;padding:0 9px;color:#364152;font-size:11px}.sa-dashboard-actions button{font-weight:600;cursor:pointer}.sa-kpi-grid{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));gap:8px}.sa-kpi-grid article,.sa-secondary-metrics,.sa-compact-card{border:1px solid #dfe3e8;border-radius:8px;background:#fff}.sa-kpi-grid article{min-width:0;padding:11px 12px}.sa-kpi-grid span,.sa-kpi-grid small{display:block;color:var(--pd-muted);font-size:10px}.sa-kpi-grid strong{display:block;margin:3px 0 1px;font-size:21px}.sa-kpi-grid small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.sa-secondary-metrics{display:flex;align-items:center;padding:8px 12px}.sa-secondary-metrics div{display:flex;align-items:baseline;gap:7px;padding:0 20px;border-right:1px solid #e8eaee}.sa-secondary-metrics div:first-child{padding-left:0}.sa-secondary-metrics div:last-child{border:0}.sa-secondary-metrics span{color:var(--pd-muted);font-size:10px}.sa-secondary-metrics strong{font-size:14px}.sa-dashboard-columns{display:grid;grid-template-columns:minmax(0,3fr) minmax(220px,1fr);gap:12px}.sa-section-heading{display:flex;justify-content:space-between;margin:1px 0 7px}.sa-section-heading h2{margin:0;font-size:15px}.sa-section-heading p{margin:1px 0 0;color:var(--pd-muted);font-size:10px}.sa-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sa-compact-card{overflow:hidden}.sa-compact-card>header{display:flex;align-items:center;justify-content:space-between;min-height:38px;padding:8px 11px;border-bottom:1px solid #e8eaee}.sa-compact-card h3{margin:0;font-size:12px}.sa-compact-card header p{margin:1px 0 0;color:var(--pd-muted);font-size:9px}.sa-compact-card>header>span{padding:2px 6px;border-radius:9px;background:#f0f3f6;color:#667085;font-size:9px}.sa-compact-card>header>.sa-risk-count,.is-risk{color:#b42318}.sa-list>div,.sa-activity-list>div{display:flex;align-items:center;gap:8px;min-height:38px;padding:6px 11px;border-bottom:1px solid #f0f1f3}.sa-list>div:last-child,.sa-activity-list>div:last-child{border:0}.sa-list span,.sa-activity-list span:nth-child(2){min-width:0;flex:1}.sa-list b,.sa-list small,.sa-activity-list b,.sa-activity-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-list b,.sa-activity-list b{font-size:10px}.sa-list small,.sa-activity-list small{color:var(--pd-muted);font-size:9px}.sa-list time,.sa-activity-list time{color:var(--pd-muted);font-size:9px;white-space:nowrap}.sa-inline-empty{margin:0;padding:16px 11px;color:var(--pd-muted);font-size:10px}.sa-dashboard-rail{display:flex;flex-direction:column;gap:8px;padding-top:30px}.sa-health-stats{margin:0}.sa-health-stats div{display:flex;justify-content:space-between;padding:7px 11px;border-bottom:1px solid #f0f1f3;font-size:10px}.sa-health-stats dd{margin:0;font-weight:700}.sa-card-note{margin:0;padding:7px 11px;color:var(--pd-muted);font-size:9px}.sa-live-dot{color:#17834f!important;background:#eaf8f0!important}.sa-activity-card>header{justify-content:flex-start}.sa-activity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sa-activity-list>div:nth-child(odd){border-right:1px solid #f0f1f3}.sa-event-icon{display:grid;place-items:center;width:23px;height:23px;border-radius:6px;background:#eef2f7;color:#475467;font-size:11px}.sa-activity-list time{margin-left:auto}
@media(max-width:1200px){.sa-kpi-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.sa-dashboard-header{align-items:flex-start;flex-direction:column}.sa-kpi-grid{grid-template-columns:repeat(2,1fr)}.sa-dashboard-columns{grid-template-columns:1fr}.sa-dashboard-rail{padding-top:0}.sa-health-grid,.sa-activity-list{grid-template-columns:1fr}.sa-activity-list>div:nth-child(odd){border-right:0}.sa-secondary-metrics{overflow-x:auto}.sa-secondary-metrics div{flex:0 0 auto}}

/* Workspace management: deliberately dense for large Super Admin datasets. */
.ws-page{display:flex;flex-direction:column;gap:10px;color:#26303d}.ws-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.ws-header h1{margin:0;font-size:21px;line-height:1.2}.ws-header p{margin:2px 0 0;color:#697386;font-size:11px}.ws-primary{border:1px solid #27364d!important;border-radius:6px!important;background:#182337!important;color:#fff!important;font-weight:650!important}.ws-header .ws-primary{height:31px;padding:0 12px;font-size:11px}.ws-quick-filters{display:flex;gap:5px;overflow-x:auto;padding:1px 0}.ws-quick-filters a{display:flex;align-items:center;gap:6px;min-height:27px;padding:3px 9px;border:1px solid #dce1e7;border-radius:999px;background:#fff;color:#596474;font-size:10px;text-decoration:none;white-space:nowrap}.ws-quick-filters a:hover,.ws-quick-filters a[aria-current=page]{border-color:#9ca9bb;background:#eaf0f7;color:#1f2d42}.ws-quick-filters b{padding:1px 5px;border-radius:8px;background:#edf0f4;font-size:9px}.ws-card{border:1px solid #dfe3e8;border-radius:8px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.03)}.ws-toolbar{display:flex;align-items:center;gap:6px;min-height:49px;padding:8px 10px;border-bottom:1px solid #e6e9ed}.ws-search{display:flex;align-items:center;flex:1;min-width:220px;max-width:480px;height:31px;border:1px solid #d6dce4;border-radius:6px;background:#fff}.ws-search span{padding-left:9px;color:#8490a0;font-size:17px}.ws-search input{width:100%;height:100%;border:0!important;background:transparent!important;padding:0 8px!important;font-size:10px!important;box-shadow:none!important}.ws-popover{position:relative}.ws-popover summary,.ws-select-label,.ws-icon-button,.ws-export{display:flex;align-items:center;height:31px;padding:0 9px;border:1px solid #d6dce4;border-radius:6px;background:#fff;color:#475467;font-size:10px;text-decoration:none;cursor:pointer;white-space:nowrap}.ws-popover summary{list-style:none}.ws-popover summary::-webkit-details-marker{display:none}.ws-popover-panel{position:absolute;top:36px;right:0;z-index:8;min-width:190px;padding:10px;border:1px solid #dbe0e7;border-radius:7px;background:#fff;box-shadow:0 8px 28px rgba(15,23,42,.13)}.ws-filter-grid{display:grid;grid-template-columns:repeat(2,180px);gap:8px}.ws-filter-grid label,.ws-dialog label{display:flex;flex-direction:column;gap:4px;color:#586477;font-size:9px;font-weight:650}.ws-filter-grid input,.ws-filter-grid select,.ws-dialog input{height:31px;border:1px solid #d5dbe3;border-radius:5px;padding:0 7px;font-size:10px}.ws-filter-grid .ws-primary{align-self:end;height:31px}.ws-columns{display:flex;flex-direction:column;gap:7px}.ws-select-label{gap:4px;padding-right:4px}.ws-select-label select{border:0;background:transparent;color:#475467;font-size:10px}.ws-density{display:flex;margin-left:auto;border:1px solid #d6dce4;border-radius:6px;overflow:hidden}.ws-density a{padding:7px 8px;color:#667085;font-size:9px;text-decoration:none}.ws-density a[aria-current=true]{background:#e8edf4;color:#27364d;font-weight:700}.ws-bulk{display:flex;align-items:center;gap:6px;min-height:37px;padding:5px 10px;border-bottom:1px solid #d8e1ed;background:#f0f5fa;font-size:10px}.ws-bulk button,.ws-bulk select{height:25px;border:1px solid #c8d1dd;border-radius:5px;background:#fff;padding:0 7px;font-size:9px}.ws-bulk label{display:flex;align-items:center;gap:5px;margin-left:auto}.ws-table-wrap{overflow-x:auto}.ws-density-compact .ws-table-wrap{min-height:439px}.ws-density-comfortable .ws-table-wrap{min-height:609px}.ws-table{width:100%;border-collapse:collapse;font-size:10px}.ws-table th{height:29px;background:#f8f9fb;color:#717d8d;font-size:8px;letter-spacing:.055em;text-transform:uppercase}.ws-table th,.ws-table td{padding:5px 10px;border-bottom:1px solid #edf0f2;text-align:left;white-space:nowrap}.ws-density-compact .ws-table td{height:41px}.ws-density-comfortable .ws-table td{height:58px;padding-top:9px;padding-bottom:9px}.ws-table small{display:block;margin-top:2px;color:#7a8594;font-size:8px}.ws-name-cell{display:flex;align-items:center;gap:8px;min-width:190px}.ws-name-cell strong,.ws-owner{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis}.ws-mark{display:grid;place-items:center;width:26px;height:26px;border:1px solid #dce2e9;border-radius:6px;background:#eff3f7;color:#34445b;font-size:10px;font-weight:750}.ws-badge,.ws-plan{display:inline-flex;padding:2px 6px;border-radius:9px;background:#edf1f5;color:#465467;font-size:8px;font-weight:700}.ws-badge.is-active{background:#e7f6ed;color:#187548}.ws-badge.is-suspended,.ws-badge.is-deleted{background:#fcebea;color:#a9362d}.ws-badge.is-inactive{background:#f1f2f4;color:#667085}.ws-muted{color:#929baa}.ws-actions{position:relative}.ws-actions summary{padding:3px 5px;list-style:none;color:#667085;cursor:pointer}.ws-actions div{position:absolute;right:0;z-index:6;min-width:105px;padding:4px;border:1px solid #dce1e7;border-radius:6px;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.12)}.ws-actions button{display:block;width:100%;border:0;background:none;padding:6px 7px;text-align:left;font-size:9px;cursor:pointer}.ws-actions button:hover{background:#f3f5f7}.ws-actions .danger{color:#b42318}.ws-empty{height:150px!important;text-align:center!important;color:#687386}.ws-empty strong,.ws-empty span{display:block}.ws-pagination{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:7px 10px;color:#707b89;font-size:9px}.ws-pagination nav{display:flex;align-items:center;gap:10px}.ws-pagination a{padding:5px 8px;border:1px solid #d9dee5;border-radius:5px;color:#475467;text-decoration:none}.ws-dialog{width:min(440px,calc(100% - 24px));border:0;border-radius:9px;padding:0;box-shadow:0 20px 60px rgba(15,23,42,.24)}.ws-dialog::backdrop{background:rgba(15,23,42,.45)}.ws-dialog form{display:flex;flex-direction:column;gap:12px;padding:17px}.ws-dialog header,.ws-dialog footer{display:flex;align-items:center;justify-content:space-between}.ws-dialog h2{margin:0;font-size:17px}.ws-dialog p{margin:2px 0 0;color:#697386;font-size:10px}.ws-dialog header button{border:0;background:none;font-size:20px}.ws-dialog footer{justify-content:flex-end;gap:7px}.ws-dialog footer button{height:31px;padding:0 11px;border:1px solid #d6dce4;border-radius:6px;background:#fff;font-size:10px}
@media(max-width:1050px){.ws-toolbar{flex-wrap:wrap}.ws-search{max-width:none}.ws-density{margin-left:0}.ws-filter-grid{grid-template-columns:180px}.ws-table{min-width:900px}}
@media(max-width:600px){.ws-header{align-items:flex-start}.ws-toolbar{align-items:stretch}.ws-search{flex-basis:100%;min-width:100%}.ws-export{justify-content:center}.ws-pagination{align-items:flex-start;flex-direction:column;gap:7px}}

/* Compact workspace detail */
.ws-name-link{color:inherit;text-decoration:none}.ws-name-link:hover strong{text-decoration:underline}
.wd-page{display:flex;flex-direction:column;gap:10px;color:#26303d}.wd-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.wd-header h1{margin:0;font-size:21px}.wd-header p{margin:2px 0 0;color:#697386;font-size:10px}.wd-actions{display:flex;align-items:center;gap:5px}.wd-actions form{display:contents}.wd-actions>a,.wd-actions button,.wd-actions summary{height:30px;padding:0 9px;border:1px solid #d6dce4;border-radius:6px;background:#fff;color:#475467;font-size:10px;line-height:28px;text-decoration:none;cursor:pointer;list-style:none}.wd-actions .danger{color:#a9362d}.wd-actions details{position:relative}.wd-actions details div{position:absolute;right:0;z-index:4;display:grid;min-width:140px;padding:4px;border:1px solid #dce1e7;border-radius:6px;background:#fff;box-shadow:0 6px 20px #0002}.wd-actions details div a{padding:6px;color:#475467;font-size:10px;text-decoration:none}.wd-summary{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));border:1px solid #dfe3e8;border-radius:8px;background:#fff}.wd-summary div{min-width:0;padding:9px 11px;border-right:1px solid #edf0f2}.wd-summary div:last-child{border:0}.wd-summary span,.wd-summary strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wd-summary span{color:#7a8594;font-size:8px;text-transform:uppercase}.wd-summary strong{margin-top:2px;font-size:11px}.wd-tabs{display:flex;overflow-x:auto;border-bottom:1px solid #d9dee5}.wd-tabs button{padding:8px 12px;border:0;border-bottom:2px solid transparent;background:none;color:#667085;font-size:10px;cursor:pointer}.wd-tabs button[aria-selected=true]{border-color:#263750;color:#172033;font-weight:700}.wd-panel{border:1px solid #dfe3e8;border-radius:8px;background:#fff;overflow:hidden}.wd-panel>header{padding:10px 12px;border-bottom:1px solid #e8eaee}.wd-panel h2{margin:0;font-size:13px}.wd-panel header p{margin:1px 0 0;color:#7a8594;font-size:9px}.wd-definition{display:grid;grid-template-columns:repeat(2,1fr);margin:0}.wd-definition div{display:grid;grid-template-columns:130px 1fr;padding:9px 12px;border-bottom:1px solid #edf0f2}.wd-definition div:nth-child(odd){border-right:1px solid #edf0f2}.wd-definition dt{color:#7a8594;font-size:9px}.wd-definition dd{margin:0;font-size:10px;font-weight:600}.wd-definition small{display:block;color:#7a8594;font-size:8px}.wd-table-wrap{overflow-x:auto}.wd-table-wrap table{width:100%;border-collapse:collapse;font-size:10px}.wd-table-wrap th,.wd-table-wrap td{height:36px;padding:6px 10px;border-bottom:1px solid #edf0f2;text-align:left;white-space:nowrap}.wd-table-wrap th{background:#f8f9fb;color:#717d8d;font-size:8px;text-transform:uppercase}.wd-table-wrap a{color:#344b6a}.wd-usage{display:grid;grid-template-columns:repeat(4,1fr)}.wd-usage div{padding:13px;border-right:1px solid #edf0f2;border-bottom:1px solid #edf0f2}.wd-usage span,.wd-usage small{display:block;color:#7a8594;font-size:9px}.wd-usage strong{display:block;margin-top:3px;font-size:18px}.wd-empty{display:grid;gap:3px;padding:30px;text-align:center;color:#7a8594;font-size:10px}.wd-note{margin:0;padding:9px 12px;color:#7a8594;font-size:9px}.wd-dialog{width:min(420px,calc(100% - 24px));border:0;border-radius:9px;padding:0;box-shadow:0 20px 60px #0f172e3d}.wd-dialog::backdrop{background:#0f172e73}.wd-dialog form{display:grid;gap:11px;padding:16px}.wd-dialog header,.wd-dialog footer{display:flex;align-items:center;justify-content:space-between}.wd-dialog h2{margin:0;font-size:16px}.wd-dialog p{margin:2px 0 0;color:#697386;font-size:10px}.wd-dialog label{display:grid;gap:4px;color:#586477;font-size:9px;font-weight:650}.wd-dialog input{height:31px;border:1px solid #d5dbe3;border-radius:5px;padding:0 7px}.wd-dialog button{height:31px;border:1px solid #d6dce4;border-radius:6px;background:#fff;font-size:10px}.wd-dialog footer{justify-content:flex-end;gap:6px}.wd-dialog .primary{background:#182337;color:#fff}.wd-dialog header>button{border:0;font-size:18px}@media(max-width:1050px){.wd-header{align-items:flex-start;flex-direction:column}.wd-summary{grid-template-columns:repeat(4,1fr)}.wd-summary div{border-bottom:1px solid #edf0f2}.wd-usage{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.wd-actions{flex-wrap:wrap}.wd-summary{grid-template-columns:repeat(2,1fr)}.wd-definition{grid-template-columns:1fr}.wd-definition div:nth-child(odd){border-right:0}}
.ws-name-link,.ws-actions a{color:#34445b;text-decoration:none}.ws-name-link:hover,.ws-actions a:hover{text-decoration:underline}.ws-actions a{display:block;padding:6px 7px;font-size:9px}
.platform-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.platform-status{display:flex;align-items:center;gap:10px;padding:16px;border:1px solid #dfe3e8;border-radius:9px;background:#fff}.platform-status small,.platform-status strong{display:block}.platform-status small,.platform-note{color:var(--pd-muted);font-size:11px}.status-dot{width:9px;height:9px;border-radius:50%;background:#24945d}.status-dot.bad{background:#c53b32}.platform-note{margin:12px 0}.platform-filters,.platform-tabs,.flag-form,.platform-pagination{display:flex;align-items:center;gap:8px;margin:0 0 12px}.platform-filters input,.platform-filters select,.platform-filters button,.flag-form button{height:32px;border:1px solid #d8dce3;border-radius:6px;background:#fff;padding:0 10px}.platform-filters input{min-width:280px}.platform-tabs a,.platform-pagination a{padding:6px 10px;border:1px solid #d8dce3;border-radius:6px;background:#fff;text-decoration:none;font-size:11px}.platform-pagination{justify-content:flex-end;margin-top:12px;font-size:11px}.config-list div{display:flex;justify-content:space-between;padding:13px 16px;border-bottom:1px solid #eceff2;font-size:12px}.flag-form{margin:0;white-space:nowrap;font-size:11px}@media(max-width:700px){.platform-grid{grid-template-columns:1fr}.platform-filters{align-items:stretch;flex-direction:column}.platform-filters input{min-width:0}}
.ops-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ops-metrics article{padding:16px;border:1px solid #dfe3e8;border-radius:9px;background:#fff}.ops-metrics span,.ops-metrics small{display:block;color:var(--pd-muted);font-size:11px}.ops-metrics strong{display:block;margin:5px 0;font-size:22px}.ops-observe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ops-unavailable{padding:18px}.ops-unavailable h2{margin:0;font-size:16px}.ops-unavailable p,.ops-unavailable small{color:var(--pd-muted);font-size:11px}.ops-announcement-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:12px}.announcement-fields{display:grid;gap:10px;padding:16px}.announcement-fields label span{display:block;margin-bottom:4px;font-size:11px;font-weight:600}.announcement-fields input,.announcement-fields select,.announcement-fields textarea{width:100%;border:1px solid #d8dce3;border-radius:6px;padding:8px;font:inherit}.announcement-fields button{padding:8px;border:0;border-radius:6px;background:#172033;color:#fff}.announcement-status{padding:3px 7px;border-radius:999px;background:#eef1f5}.announcement-status.is-active{background:#dcfce7;color:#166534}.announcement-status.is-scheduled{background:#dbeafe;color:#1e40af}.announcement-status.is-expired{color:#64748b}.customer-announcements{position:relative;z-index:60;background:#172033;color:#fff}.customer-announcements article{display:flex;justify-content:center;gap:10px;padding:9px 20px;font-size:13px}.customer-announcements span{opacity:.88}@media(max-width:900px){.ops-metrics{grid-template-columns:repeat(2,1fr)}.ops-observe-grid,.ops-announcement-layout{grid-template-columns:1fr}}@media(max-width:520px){.ops-metrics{grid-template-columns:1fr}.customer-announcements article{align-items:flex-start;flex-direction:column;gap:2px}}

/* Shared consistency layer for every Super Admin route, including legacy form screens. */
.sa-page-header,.sa-dashboard-header,.ws-header,.wd-header{min-height:48px;margin:0 0 10px}.sa-page-header{align-items:center;margin-bottom:10px}.sa-page-header>div:first-child{display:flex;min-width:0;align-items:baseline;flex-wrap:wrap;gap:2px 9px}.sa-page-header .sa-eyebrow{flex-basis:100%;margin:0}.sa-page-header h1{margin:0;font-size:21px;white-space:nowrap}.sa-page-header>div:first-child>p:last-child{overflow:hidden;max-width:680px;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.sa-page-actions{display:flex!important;flex:0 0 auto;align-items:center!important;gap:5px!important;margin-left:auto}.sa-page-actions a{display:inline-flex;align-items:center;height:30px;padding:0 9px;border:1px solid #d6dce4;border-radius:6px;background:#fff;color:#475467;font-size:10px;font-weight:600;text-decoration:none;white-space:nowrap}.sa-page-actions a:hover{border-color:#9ca9bb;background:#f8fafc;color:#182337}
.sa-main>.space-y-10{gap:10px}.sa-main>.space-y-10>section,.sa-main>.space-y-10>div.rounded-3xl{padding:12px!important;border-radius:8px!important;box-shadow:none!important}.sa-main>.space-y-10>section.grid{padding:0!important;border:0!important;background:transparent!important}.sa-main>.space-y-10 .grid.gap-6{gap:10px!important}.sa-main>.space-y-10 .rounded-2xl{border-radius:7px!important;box-shadow:none!important}.sa-main>.space-y-10 .p-6{padding:12px!important}.sa-main>.space-y-10 .p-5{padding:11px!important}.sa-main>.space-y-10 .mt-6{margin-top:10px!important}.sa-main>.space-y-10 .mt-5{margin-top:9px!important}.sa-main>.space-y-10 .mt-4{margin-top:8px!important}.sa-main>.space-y-10 .space-y-6>:not([hidden])~:not([hidden]){margin-top:10px!important}.sa-main>.space-y-10 .space-y-5>:not([hidden])~:not([hidden]){margin-top:9px!important}.sa-main>.space-y-10 .space-y-4>:not([hidden])~:not([hidden]){margin-top:7px!important}.sa-main>.space-y-10 h2{font-size:15px!important;line-height:1.25}.sa-main>.space-y-10 h3{font-size:12px!important}.sa-main>.space-y-10 form label{font-size:10px!important}.sa-main>.space-y-10 form input,.sa-main>.space-y-10 form select,.sa-main>.space-y-10 form textarea{font-size:10px!important}.sa-main>.space-y-10 form button,.sa-main>.space-y-10 form a{min-height:30px;border-radius:6px!important;padding:5px 10px!important;font-size:10px!important}.sa-main>.space-y-10 table{font-size:10px!important}.sa-main>.space-y-10 table th,.sa-main>.space-y-10 table td{padding:5px 9px!important;white-space:nowrap}
.sa-main>.space-y-10 table thead,.sa-table thead,.ws-table thead,.wd-table-wrap thead{position:sticky;top:0;z-index:2;background:#f8fafc}.sa-table th,.sa-table td{padding:6px 10px}.sa-card-header{padding:9px 11px}.sa-empty,.sa-empty-state{padding:22px!important}.platform-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:1px}.platform-filters input{min-width:160px;flex:1}.platform-filters input,.platform-filters select{height:30px;font-size:10px}.platform-status{padding:10px}.platform-grid{gap:8px}.platform-note{margin:8px 0}.ops-metrics article,.ops-unavailable{padding:11px}
@media(max-width:760px){.sa-page-header{align-items:flex-start;flex-direction:column;min-height:0;gap:7px}.sa-page-header>div:first-child>p:last-child{max-width:100%;white-space:normal}.sa-page-actions{width:100%;margin-left:0;overflow-x:auto}.sa-page-actions a{flex:0 0 auto}.sa-main>.space-y-10>section{padding:10px!important}.platform-filters{align-items:stretch;flex-direction:column;overflow:visible}.platform-filters input{min-width:0}.sa-main>.space-y-10 table{min-width:680px}}

/* Plans and pricing console */
.pricing-admin{display:flex;flex-direction:column;gap:10px;max-width:1240px;margin:0 auto;color:#26303d}.pricing-admin .sa-page-header{margin:0}.pricing-tabs{display:flex;gap:3px;border-bottom:1px solid #dce1e7}.pricing-tabs a{display:flex;align-items:center;gap:6px;padding:7px 10px;border-bottom:2px solid transparent;color:#687386;font-size:10px;text-decoration:none}.pricing-tabs a:hover,.pricing-tabs a[aria-current=page]{border-color:#253750;color:#182337;font-weight:700}.pricing-tabs span{padding:1px 5px;border-radius:9px;background:#e9edf2;color:#647084;font-size:8px}.pricing-panel{overflow:hidden;border:1px solid #dfe3e8;border-radius:9px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.03)}.pricing-panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px;border-bottom:1px solid #e8ebef}.pricing-panel-header h2{margin:1px 0;font-size:15px}.pricing-panel-header p{margin:0;color:#727d8c;font-size:9px}.pricing-kicker{color:#237451;font-size:8px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.pricing-kicker.coupon{color:#5d56a5}.pricing-count{padding:3px 7px;border-radius:10px;background:#f0f3f6;color:#687386;font-size:9px;white-space:nowrap}.pricing-form{margin:0}.plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:9px;background:#f7f8fa}.plan-card{min-width:0;margin:0;border:1px solid #dce1e7;border-radius:7px;background:#fff;padding:0;overflow:hidden}.plan-card:focus-within{border-color:#9eacbd;box-shadow:0 0 0 2px #e8edf3}.plan-card-heading{display:flex;align-items:center;gap:8px;min-height:42px;padding:7px 9px;border-bottom:1px solid #edf0f2}.plan-card-heading strong,.plan-card-heading small{display:block}.plan-card-heading strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.plan-card-heading small{margin-top:1px;color:#8993a1;font-size:8px}.plan-index{display:grid;place-items:center;width:25px;height:25px;border-radius:6px;background:#edf1f5;color:#42516a;font-size:9px;font-weight:700}.plan-toggles{display:flex;align-items:center;gap:9px;margin-left:auto}.plan-toggles label,.switch-label{display:flex!important;align-items:center;gap:4px;color:#586477;font-size:9px!important;font-weight:600}.plan-toggles input,.switch-label input{width:13px!important;height:13px!important;margin:0;accent-color:#263b58}.danger{color:#a53a33!important}.plan-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:9px}.plan-fields label,.coupon-row>label:not(.switch-label){display:flex;min-width:0;flex-direction:column;gap:3px;color:#667284;font-size:8px;font-weight:650}.plan-fields label>span:first-child,.coupon-row label>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-fields input,.plan-fields select,.plan-fields textarea,.coupon-row input:not([type=checkbox]){box-sizing:border-box;width:100%;height:29px;min-width:0;border:1px solid #d5dbe3;border-radius:5px;background:#fff;padding:0 7px;color:#273343;font:10px Inter,system-ui,sans-serif}.plan-fields textarea{height:29px;resize:vertical;padding-top:7px}.plan-fields input:focus,.plan-fields select:focus,.plan-fields textarea:focus,.coupon-row input:focus{outline:0;border-color:#8293aa;box-shadow:0 0 0 2px #e8edf4}.plan-fields .field-name,.plan-fields .field-link{grid-column:span 2}.plan-fields .field-description{grid-column:span 4}.price-input{display:flex!important;align-items:center;height:29px;border:1px solid #d5dbe3;border-radius:5px;padding-left:7px;background:#fafbfc;color:#738093;font-size:9px}.price-input input{height:27px;border:0!important;background:transparent;box-shadow:none!important}.plan-fields em,.coupon-row em{color:#b42318;font-size:8px;font-style:normal}.pricing-form-footer{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:6px 10px;border-top:1px solid #e8ebef}.pricing-form-footer p{margin:0;color:#7a8594;font-size:9px}.pricing-form-footer button{height:30px;border:1px solid #1f314a;border-radius:6px;background:#18263a;padding:0 12px;color:#fff;font:600 10px Inter,system-ui,sans-serif;cursor:pointer}.pricing-form-footer button:hover{background:#273b58}.coupon-list{padding:9px;background:#f7f8fa}.coupon-row{display:grid;grid-template-columns:25px minmax(160px,2fr) minmax(110px,1fr) auto auto;align-items:end;gap:8px;padding:8px 9px;border:1px solid #dce1e7;border-bottom:0;background:#fff}.coupon-row:first-child{border-radius:7px 7px 0 0}.coupon-row:last-child{border-bottom:1px solid #dce1e7;border-radius:0 0 7px 7px}.coupon-icon{display:grid;place-items:center;width:25px;height:29px;border-radius:6px;background:#eeecfa;color:#5d56a5;font-size:11px;font-weight:700}.coupon-row .switch-label{height:29px;padding:0 4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.plan-list{grid-template-columns:1fr}.plan-fields{grid-template-columns:repeat(4,minmax(90px,1fr))}}
@media(max-width:680px){.pricing-admin .sa-page-header{align-items:flex-start;flex-direction:column}.pricing-panel-header{align-items:flex-start}.plan-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-fields .field-description{grid-column:span 2}.plan-fields .field-name,.plan-fields .field-link{grid-column:span 1}.coupon-row{grid-template-columns:25px 1fr 1fr}.coupon-row .switch-label{grid-row:2}.pricing-form-footer{align-items:flex-end;gap:8px}.pricing-form-footer p{max-width:60%}}
.billing-mode-form{display:flex;align-items:center;gap:12px;padding:10px 14px}.billing-mode-row{display:flex;align-items:center;gap:12px;padding:7px 10px;border:1px solid #dfe3e8;border-radius:6px;font-size:10px}.billing-mode-row strong{min-width:90px;font-size:10px}.billing-mode-row label{display:flex;align-items:center;gap:4px}.billing-mode-form button{margin-left:auto;height:30px;border:0;border-radius:6px;background:#18263a;padding:0 12px;color:#fff;font-size:10px}.compact-plan-list{padding:8px;background:#f7f8fa}.compact-plan{margin-bottom:6px;border:1px solid #dce1e7;border-radius:7px;background:#fff}.compact-plan summary{display:grid;grid-template-columns:180px 1fr 70px auto;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;font-size:10px}.compact-plan summary span{color:#7a8594}.compact-plan summary b{color:#344b6a}.plan-group{display:grid;grid-template-columns:90px 1fr;gap:8px;padding:9px 12px;border-top:1px solid #edf0f2}.plan-group h3{margin:5px 0;color:#687386;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.compact-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.compact-fields label{display:flex;flex-direction:column;gap:3px;color:#667284;font-size:8px}.compact-fields input,.compact-fields textarea,.feature-fields select,.price-region input{box-sizing:border-box;width:100%;min-height:28px;border:1px solid #d5dbe3;border-radius:5px;padding:4px 6px;font-size:10px}.compact-fields input[type=checkbox]{width:14px;min-height:14px}.feature-fields{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.feature-fields label{display:flex;align-items:center;gap:4px;font-size:9px}.price-region{display:grid;grid-template-columns:70px repeat(2,minmax(130px,1fr)) minmax(130px,1fr);align-items:end;gap:8px;margin-bottom:7px;font-size:9px}.price-region label{color:#667284}.price-region output{padding:7px;border-radius:5px;background:#edf5ef;color:#237451}.errorlist{margin:2px 0 0;padding:0;list-style:none;color:#b42318;font-size:8px}@media(max-width:800px){.billing-mode-form{align-items:stretch;flex-direction:column}.billing-mode-form button{margin-left:0}.compact-fields{grid-template-columns:repeat(2,1fr)}.plan-group{grid-template-columns:1fr}.price-region{grid-template-columns:1fr 1fr}.compact-plan summary{grid-template-columns:1fr auto}.compact-plan summary span{display:none}}

/* Premium Plans & Pricing workspace */
.pricing-admin{gap:18px;max-width:1280px;color:#172033}.pricing-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:104px;overflow:hidden;border:1px solid #dbe4ef;border-radius:14px;padding:20px 24px;background:linear-gradient(125deg,#fff 35%,#f4f8ff);box-shadow:0 8px 28px rgba(31,52,81,.06)}.pricing-hero:after{position:absolute;right:-35px;bottom:-70px;width:240px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(75,115,172,.12),transparent 68%);content:"";pointer-events:none}.pricing-hero h1{margin:3px 0 5px;font-size:27px;line-height:1.15;letter-spacing:-.025em}.pricing-hero>div>p:last-child{margin:0;color:#67758a;font-size:11px}.pricing-hero-status{z-index:1;display:flex;align-items:center;gap:10px;min-width:168px;border:1px solid rgba(206,218,233,.9);border-radius:10px;padding:10px 12px;background:rgba(255,255,255,.78);box-shadow:0 4px 14px rgba(45,66,95,.06);backdrop-filter:blur(5px)}.pricing-status-dot{width:9px;height:9px;border:3px solid #dff5e9;border-radius:50%;background:#2c9661}.pricing-hero-status strong,.pricing-hero-status small{display:block}.pricing-hero-status strong{font-size:10px}.pricing-hero-status small{margin-top:2px;color:#7b8798;font-size:9px}.pricing-panel{border-color:#dce3ec;border-radius:13px;box-shadow:0 5px 20px rgba(31,48,74,.045)}.pricing-panel-header{padding:16px 18px;background:linear-gradient(180deg,#fff,#fcfdff)}.pricing-heading-group{display:flex;align-items:center;gap:12px}.pricing-section-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:9px;background:#e8f6ef;color:#168052;font-size:15px;font-weight:700}.pricing-section-icon.is-blue{background:#eaf1fb;color:#416a9e}.pricing-panel-header h2{margin:2px 0;font-size:16px;letter-spacing:-.01em}.pricing-panel-header p{font-size:10px;line-height:1.45}.pricing-kicker{color:#25805a;font-size:8px}.pricing-count{border:1px solid #e3e8ef;background:#f5f7fa;padding:4px 9px;font-weight:600;text-transform:capitalize}.billing-mode-form{display:block;padding:0}.billing-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 18px}.billing-mode-row{display:block;padding:13px 14px;border-color:#dfe5ed;border-radius:9px;background:#fff;transition:border-color .15s,box-shadow .15s}.billing-mode-row:hover{border-color:#b9c7d8;box-shadow:0 4px 14px rgba(37,55,82,.06)}.billing-mode-row.is-required{border-color:#c8dfd3;background:linear-gradient(135deg,#fff,#f8fcfa)}.billing-mode-title{display:flex;align-items:center;gap:9px}.billing-mode-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:#e7f4ed;color:#178250;font-size:13px}.billing-mode-icon.is-purple{background:#f0edfa;color:#6759a8}.billing-mode-title strong,.billing-mode-title small{display:block}.billing-mode-title strong{min-width:0;color:#172033;font-size:11px;text-transform:none}.billing-mode-title small{margin-top:2px;color:#788598;font-size:9px}.pricing-required{margin-left:auto;border-radius:999px;background:#e6f5ed;padding:3px 7px;color:#1c7650;font-size:8px;font-weight:700;text-transform:uppercase}.billing-mode-controls{display:flex;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid #edf0f4}.billing-mode-row label{gap:6px;border-radius:6px;padding:5px 8px;background:#f6f8fa;color:#526075;font-size:9px;font-weight:600}.billing-mode-row input{width:14px;height:14px;margin:0;accent-color:#24486f}.billing-mode-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e8ecf1;padding:10px 18px;background:#fbfcfd}.billing-mode-footer p{margin:0;color:#748195;font-size:9px}.billing-mode-footer p span{color:#54749b}.billing-mode-form button,.pricing-form-footer button{height:33px;border:0;border-radius:7px;background:#17283f;padding:0 14px;color:#fff;font:650 10px Inter,system-ui,sans-serif;box-shadow:0 3px 8px rgba(24,40,63,.16);cursor:pointer}.billing-mode-form button{margin:0}.billing-mode-form button:hover,.pricing-form-footer button:hover{background:#26425f;transform:translateY(-1px)}
.compact-plan-list{display:grid;gap:8px;padding:12px 14px;background:#f7f9fc}.compact-plan{margin:0;border-color:#dce3ec;border-radius:9px;box-shadow:0 1px 3px rgba(20,35,55,.025)}.compact-plan[open]{border-color:#c3cfdd;box-shadow:0 7px 22px rgba(30,48,73,.07)}.compact-plan summary{display:grid;grid-template-columns:12px 34px minmax(150px,1fr) 70px 70px 74px;gap:10px;min-height:54px;box-sizing:border-box;padding:9px 13px;list-style:none}.compact-plan summary::-webkit-details-marker{display:none}.compact-plan summary:hover{background:#fbfcfe}.compact-plan[open] summary{border-bottom:1px solid #e7ebf0;background:#fbfcfe}.plan-chevron{width:6px;height:6px;border-right:1.5px solid #6f7e91;border-bottom:1.5px solid #6f7e91;transform:rotate(-45deg);transition:transform .15s}.compact-plan[open] .plan-chevron{transform:rotate(45deg) translate(-2px,-2px)}.plan-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:linear-gradient(145deg,#243b58,#405c7e);color:#fff!important;font-size:11px;font-weight:700;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}.compact-plan:nth-child(2) .plan-avatar{background:linear-gradient(145deg,#2d6958,#4e8a76)}.compact-plan:nth-child(3) .plan-avatar{background:linear-gradient(145deg,#65558f,#8474aa)}.compact-plan:nth-child(4) .plan-avatar{background:linear-gradient(145deg,#8a5b35,#ad7950)}.plan-summary-name strong,.plan-summary-name small{display:block}.plan-summary-name strong{color:#1e2a3a;font-size:11px;text-transform:capitalize}.plan-summary-name small{margin-top:2px;color:#8591a1;font-size:8px}.plan-visibility{justify-self:start;border-radius:999px;background:#f0f3f7;padding:3px 7px;color:#66758a!important;font-size:8px;font-weight:650}.plan-state{display:flex;align-items:center;gap:5px;color:#277653!important;font-size:8px;font-weight:650}.plan-state i{width:6px;height:6px;border-radius:50%;background:#35a36d}.plan-state.is-inactive{color:#8a6470!important}.plan-state.is-inactive i{background:#b9838e}.plan-configure{justify-self:end;color:#365b84!important;font-size:9px;font-weight:650}.plan-editor{background:#fff}.plan-group{grid-template-columns:170px minmax(0,1fr);gap:20px;padding:16px 18px}.plan-group-heading{display:flex;align-items:flex-start;gap:9px}.plan-group-heading>span{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:7px;background:#eef3f8;color:#4d6684;font-size:8px;font-weight:700}.plan-group h3{margin:1px 0 3px;color:#263548;font-size:10px;letter-spacing:0;text-transform:none}.plan-group-heading p{margin:0;color:#8a95a4;font-size:8px;line-height:1.4}.compact-fields{gap:10px}.compact-fields label{gap:5px;color:#5e6d81;font-size:8px;font-weight:650}.compact-fields input,.compact-fields textarea,.feature-fields select,.price-region input{min-height:32px;border-color:#d7dee8;border-radius:6px;background:#fff;padding:5px 8px;color:#253246;font:10px Inter,system-ui,sans-serif}.compact-fields textarea{resize:vertical}.compact-fields input:focus,.compact-fields textarea:focus,.feature-fields select:focus,.price-region input:focus{outline:0;border-color:#7593b4;box-shadow:0 0 0 3px rgba(85,122,164,.11)}.compact-fields .field-description{grid-column:span 2}.compact-fields .field-description textarea{height:32px}.compact-fields .field-is_active,.compact-fields .field-is_public,.compact-fields .field-is_featured{align-items:center;align-self:end;flex-direction:row;min-height:32px;border:1px solid #e1e6ec;border-radius:6px;padding:0 8px;background:#f8fafc}.compact-fields .field-is_active span,.compact-fields .field-is_public span,.compact-fields .field-is_featured span{order:2}.feature-fields{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:8px}.feature-fields label{min-height:34px;border:1px solid #e0e5eb;border-radius:7px;padding:0 9px;background:#fafbfd;color:#4d5c70;font-size:9px;font-weight:600}.feature-fields input{width:14px;height:14px;margin:0;accent-color:#315a83}.feature-fields select{margin-left:auto;width:auto;min-width:90px}.price-regions{display:grid;gap:8px}.price-region{grid-template-columns:105px repeat(2,minmax(120px,1fr)) minmax(125px,.8fr);align-items:center;margin:0;border:1px solid #e0e6ed;border-radius:8px;padding:9px;background:#fbfcfe}.region-name{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:0 8px}.region-name>span{display:grid;grid-row:1 / span 2;place-items:center;width:28px;height:28px;border-radius:7px;background:#edf3f8;color:#355d84;font-size:12px;font-weight:700}.region-name strong{font-size:9px}.region-name small{color:#8b96a5;font-size:8px}.price-region label{display:flex;flex-direction:column;gap:4px;color:#68768a;font-size:8px;font-weight:600}.money-input{display:flex;align-items:center;overflow:hidden;border:1px solid #d7dee8;border-radius:6px;background:#fff}.money-input:focus-within{border-color:#7593b4;box-shadow:0 0 0 3px rgba(85,122,164,.11)}.money-input b{padding-left:8px;color:#738197;font-size:9px}.money-input input{min-height:30px;border:0;box-shadow:none!important}.price-region output{display:grid;grid-template-columns:1fr auto;gap:2px 6px;padding:7px 9px;background:#edf7f1}.price-region output small{grid-column:1/-1;color:#678474;font-size:7px;text-transform:uppercase}.price-region output strong{font-size:10px}.price-region output span{border-radius:999px;background:#d9efe2;padding:2px 5px;font-size:7px;font-weight:700}.pricing-form-footer{min-height:50px;padding:8px 14px;background:#fff}.pricing-form-footer p{display:flex;align-items:center;gap:6px;font-size:9px}.pricing-form-footer p span{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#e5f4eb;color:#247a52;font-weight:700}.pricing-form-footer button{height:34px;padding:0 15px}
@media(max-width:900px){.billing-mode-options{grid-template-columns:1fr}.plan-group{grid-template-columns:1fr}.plan-group-heading p{display:none}.compact-plan summary{grid-template-columns:12px 34px 1fr 70px 74px}.plan-visibility{display:none}.price-region{grid-template-columns:90px 1fr 1fr}.price-region output{grid-column:2/-1}.feature-fields{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.pricing-hero{align-items:flex-start;flex-direction:column;gap:14px;padding:17px}.pricing-hero-status{width:100%;box-sizing:border-box}.pricing-panel-header{align-items:flex-start;padding:14px}.pricing-heading-group{align-items:flex-start}.pricing-panel-header .pricing-count{display:none}.billing-mode-options{padding:12px}.billing-mode-footer{align-items:flex-start;flex-direction:column;gap:9px;padding:11px 12px}.billing-mode-footer button{width:100%}.compact-plan-list{padding:9px}.compact-plan summary{grid-template-columns:12px 32px 1fr 60px;padding:9px}.plan-state,.plan-configure{display:none}.compact-fields,.feature-fields{grid-template-columns:1fr}.compact-fields .field-description{grid-column:auto}.price-region{grid-template-columns:1fr 1fr}.region-name{grid-column:1/-1}.price-region output{grid-column:1/-1}.pricing-form-footer{align-items:stretch;flex-direction:column;gap:8px}.pricing-form-footer button{width:100%}}

/* Compact project Kanban board */
.project-board-page{max-width:none}.project-board-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.project-board-heading{min-width:0}.project-board-heading h1{font-size:1.5rem;font-weight:600;color:#1f2937}.project-board-heading>p{margin-top:2px;font-size:11px;color:#7c7569}.project-board-description{max-width:58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-board-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}.project-board-actions a,.project-board-actions .disabled{display:inline-flex;align-items:center;border:1px solid #ddd8ce;border-radius:999px;padding:6px 11px;font-size:11px;font-weight:500;background:#fff;color:#514c43}.project-board-actions .primary{background:#1f1d1a;color:#fff;border-color:#1f1d1a}.project-board-actions .danger{color:#b34848}.project-board-actions .disabled{opacity:.5}.project-tabs{display:flex;gap:16px;border-bottom:1px solid #e3dfd7;margin-bottom:10px}.project-tabs a{padding:5px 2px 7px;font-size:11px;color:#777166;border-bottom:2px solid transparent;text-decoration:none}.project-tabs a[aria-selected="true"]{color:#25221e;border-color:#25221e}.kanban-toolbar{display:flex;align-items:center;gap:6px;overflow-x:auto;padding:0 0 9px}.kanban-toolbar input,.kanban-toolbar select,.kanban-toolbar button,.kanban-toolbar>a{height:32px;border:1px solid #ddd8ce;border-radius:8px;background:#fff;padding:0 9px;font-size:11px;color:#514c43;white-space:nowrap}.kanban-toolbar input{width:190px}.kanban-toolbar button{background:#34302a;color:white;border-color:#34302a}.kanban-toolbar>a{display:inline-flex;align-items:center;color:#8b514d}.kanban-board{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;padding:1px 1px 9px;scrollbar-width:thin}.kanban-column{display:flex;flex:1 0 285px;min-width:270px;max-width:320px;height:clamp(410px,calc(100vh - 265px),760px);flex-direction:column;border:1px solid #e1ddd5;border-radius:11px;background:#f5f2eb;transition:min-width .12s,max-width .12s}.kanban-column__header{display:flex;align-items:center;gap:6px;height:40px;padding:0 9px;border-bottom:1px solid #e1ddd5}.kanban-column__header h2{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;letter-spacing:.055em;text-transform:uppercase;color:#575147}.kanban-count{min-width:22px;border-radius:999px;padding:2px 6px;text-align:center;font-size:10px;font-weight:600;background:#e5e0d6;color:#696256}.kanban-collapse,.kanban-add{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:#777064}.kanban-collapse:hover,.kanban-add:hover{background:#e7e2d8}.kanban-add{margin-left:auto;font-size:17px}.kanban-column__body{min-height:0;display:flex;flex:1;flex-direction:column}.kanban-column [data-card-list]{min-height:0;flex:1;overflow-y:auto;padding:7px;scrollbar-width:thin}.kanban-card{min-height:62px;margin-bottom:6px;padding:8px 8px 7px;border:1px solid #e2ded6;border-radius:8px;background:#fff;color:#514c43;box-shadow:0 1px 2px rgba(55,48,38,.035)}.kanban-card__top{display:flex;align-items:flex-start;gap:5px}.kanban-card__title{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;color:#292621;line-height:22px}.kanban-card__meta{display:flex;align-items:center;gap:0;overflow:hidden;white-space:nowrap;font-size:9.5px;color:#817a6e}.kanban-card__meta span+span:before{content:"·";margin:0 5px;color:#b2aa9d}.priority{font-weight:700;text-transform:uppercase}.priority--high{color:#ad4949}.priority--medium{color:#99702e}.priority--low{color:#4e8063}.kanban-card__meta .is-overdue{color:#aa4e4e;font-weight:600}.kanban-actions{position:relative}.kanban-actions summary{display:grid;place-items:center;width:23px;height:23px;cursor:pointer;list-style:none;border-radius:5px;color:#777064;font-size:17px}.kanban-actions summary::-webkit-details-marker{display:none}.kanban-actions summary:hover,.kanban-actions summary:focus-visible{background:#eeeae3}.kanban-actions__menu{position:absolute;right:0;z-index:20;width:135px;padding:4px;border:1px solid #ddd8ce;border-radius:8px;background:#fff;box-shadow:0 8px 24px rgba(40,35,28,.14)}.kanban-actions__menu a{display:block;padding:6px 8px;border-radius:5px;font-size:11px}.kanban-actions__menu a:hover{background:#f3f0e9}.kanban-actions__menu .kanban-actions__danger{color:#b34848;border-top:1px solid #eeeae3;border-radius:0}.kanban-progress{display:flex;align-items:center;justify-content:space-between;min-height:32px;padding:5px 9px;border-top:1px solid #e1ddd5;font-size:9.5px;color:#817a6e}.kanban-progress button{font-weight:600;color:#5650a4}.kanban-empty{padding:14px 4px;text-align:center;font-size:11px;color:#918a7e}.kanban-column.is-collapsed{flex-basis:48px;min-width:48px;max-width:48px}.kanban-column.is-collapsed .kanban-column__body,.kanban-column.is-collapsed .kanban-add{display:none}.kanban-column.is-collapsed .kanban-column__header{height:100%;flex-direction:column;padding:8px 4px}.kanban-column.is-collapsed h2{writing-mode:vertical-rl;max-height:210px;margin-top:3px}.kanban-column.is-collapsed .kanban-count{margin-top:4px}.kanban-column.is-collapsed .kanban-collapse span{transform:rotate(-90deg)}.kanban-column.is-drop-target{outline:2px solid #7770b7;outline-offset:-2px}.kanban-card.is-dragging{opacity:.45}.notes-grid{display:grid;gap:8px}.notes-grid a{padding:10px;border:1px solid #ddd8ce;border-radius:8px;background:#fff;font-size:12px}
.dark .project-board-heading h1,.dark .project-tabs a[aria-selected="true"],.dark .kanban-card__title{color:#f2efe9}.dark .project-board-actions a,.dark .kanban-toolbar input,.dark .kanban-toolbar select,.dark .kanban-toolbar>a,.dark .kanban-card,.dark .kanban-actions__menu,.dark .notes-grid a{background:#262522;border-color:#47433d;color:#d7d2ca}.dark .kanban-column{background:#211f1c;border-color:#403c36}.dark .kanban-column__header,.dark .kanban-progress{border-color:#403c36}.dark .kanban-count{background:#393631;color:#c6c0b6}.dark .project-tabs{border-color:#403c36}.dark .kanban-toolbar button,.dark .project-board-actions .primary{background:#eeeae3;color:#24211d}.dark .kanban-actions__menu a:hover{background:#34312c}
@media(max-width:700px){.project-board-header{display:block}.project-board-actions{justify-content:flex-start;margin-top:9px}.project-board-description{white-space:normal}.kanban-column{flex-basis:280px;height:calc(100vh - 300px);min-height:390px}.kanban-toolbar input{width:155px}}

/* Premium time tracking workspace */
.time-panel{margin-top:22px;color:var(--pd-ink)}
.time-panel__hero,.time-workspace__header{display:flex;align-items:center;gap:24px;padding:22px 24px;border:1px solid #ded9cf;border-radius:16px;background:linear-gradient(135deg,#fff 0%,#faf7f0 100%);box-shadow:0 10px 35px rgba(61,52,39,.06)}
.time-eyebrow{display:block;margin-bottom:4px;color:#8e7450;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.time-panel__hero>div:first-child,.time-workspace__header>div:first-child{min-width:0;flex:1}.time-panel__hero h2,.time-workspace__header h1{margin:0;color:#24211d;font-family:Fraunces,Georgia,serif;font-size:25px;font-weight:600}.time-panel__hero p,.time-workspace__header p{margin:4px 0 0;color:#7b7469;font-size:11px}
.time-panel__summary,.time-workspace__metric{display:flex;min-width:112px;flex-direction:column;padding-left:22px;border-left:1px solid #e5dfd4}.time-panel__summary strong,.time-workspace__metric strong{font-family:Fraunces,Georgia,serif;font-size:26px;font-weight:600;line-height:1;color:#29251f}.time-panel__summary span,.time-workspace__metric span{margin-top:4px;color:#938a7d;font-size:9px;letter-spacing:.06em;text-transform:uppercase}
.time-panel__all{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid #ded8ce;border-radius:999px;background:#fff;color:#4d473e;font-size:10px;font-weight:600;text-decoration:none}.time-panel__all:hover{border-color:#a99c87;color:#24211d}
.time-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.time-card{display:flex;flex-direction:column;gap:13px;padding:20px;border:1px solid #e0dbd2;border-radius:14px;background:#fff;box-shadow:0 4px 20px rgba(49,42,32,.035)}.time-card--timer{background:linear-gradient(160deg,#fff 60%,#f8f5ee)}
.time-card__heading{display:flex;align-items:center;gap:11px;padding-bottom:13px;border-bottom:1px solid #eeeae3}.time-card__icon{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:#24211d;color:#fff;font-size:11px}.time-card__heading h3,.time-recent__heading h3,.time-ledger__heading h2{margin:0;color:#2b2722;font-size:13px;font-weight:650}.time-card__heading p,.time-recent__heading span,.time-ledger__heading p{margin:2px 0 0;color:#91897d;font-size:10px}
.time-card>label,.time-manual-fields label{display:block;color:#504a42;font-size:10px;font-weight:600}.time-card label span{color:#9e968a;font-weight:400}.time-card select,.time-card textarea,.time-manual-fields input,.time-manual-fields select,.time-manual-fields textarea,.time-filters select,.time-filters input{box-sizing:border-box;width:100%;margin-top:5px;border:1px solid #ddd8cf;border-radius:9px;background:#fdfcf9;padding:9px 10px;color:#302c27;font-family:Inter,sans-serif;font-size:11px;outline:none}.time-card textarea{resize:vertical}.time-card select:focus,.time-card textarea:focus,.time-manual-fields input:focus,.time-manual-fields select:focus,.time-filters select:focus,.time-filters input:focus{border-color:#9d8c73;box-shadow:0 0 0 3px rgba(157,140,115,.12)}
.time-manual-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.time-manual-fields p{margin:0}.time-manual-fields p:nth-child(2){grid-column:1/-1}.time-manual-fields p:nth-child(2) textarea{height:62px}.time-manual-fields .helptext{display:none}
.time-primary,.time-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:35px;margin-top:auto;border-radius:9px;padding:8px 14px;font-size:11px;font-weight:650}.time-primary{background:#24211d;color:#fff}.time-secondary{border:1px solid #d8d2c8;background:#f5f1e9;color:#39342d}.time-primary:hover,.time-secondary:hover{transform:translateY(-1px)}.time-primary:disabled{cursor:not-allowed;opacity:.45;transform:none}
.time-recent,.time-ledger{margin-top:14px;overflow:hidden;border:1px solid #e0dbd2;border-radius:14px;background:#fff}.time-recent__heading,.time-ledger__heading{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid #e9e5de}.time-table-wrap{overflow-x:auto}.time-table-wrap table{width:100%;border-collapse:collapse;text-align:left;font-size:10.5px}.time-table-wrap th{padding:9px 14px;background:#faf8f4;color:#8a8277;font-size:9px;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.time-table-wrap td{padding:12px 14px;border-top:1px solid #eeeae3;color:#5d574e}.time-table-wrap tbody tr:hover{background:#fcfaf6}.time-table-wrap td strong{color:#302b25}.time-delete{color:#aa5751;font-size:10px}.time-empty{padding:32px!important;text-align:center;color:#968e82!important;line-height:1.7}.time-empty strong{font-size:12px}
.time-workspace{width:100%;max-width:none;margin:0;padding:0}.time-workspace__header{position:relative;padding:22px 24px}.time-workspace__header h1{font-size:30px}.time-workspace__metric{min-width:130px}.time-filters{display:flex;align-items:flex-end;gap:10px;margin-top:14px;padding:14px 16px;border:1px solid #e1dcd3;border-radius:12px;background:#fff}.time-filters div{min-width:150px;flex:1}.time-filters label{display:block;color:#81796e;font-size:9px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.time-filters select,.time-filters input{height:34px;margin-top:4px}.time-filters button{height:34px;border-radius:8px;background:#28241f;padding:0 16px;color:#fff;font-size:10px;font-weight:650}.time-filters>a{padding:9px;color:#8d665d;font-size:10px}.time-ledger__heading>span{padding:5px 9px;border-radius:999px;background:#f2eee6;color:#776e61;font-size:9px;font-weight:600}.time-project-link{color:#3f3a33;font-weight:650;text-decoration:none}.time-project-link:hover{text-decoration:underline}.time-badge{display:inline-flex;border-radius:999px;background:#eee9df;padding:3px 8px;color:#685f52;font-size:9px;font-weight:600}
.time-add{position:relative}.time-add>summary{display:inline-flex;align-items:center;min-height:35px;padding:0 15px;border-radius:9px;background:#28241f;color:#fff;cursor:pointer;font-size:10px;font-weight:650;list-style:none}.time-add>summary::-webkit-details-marker{display:none}.time-add[open]>summary{opacity:.7}.time-add>form{position:absolute;z-index:30;top:44px;right:0;display:grid;width:min(520px,calc(100vw - 48px));grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:18px;border:1px solid #ddd7cd;border-radius:14px;background:#fff;box-shadow:0 20px 60px rgba(43,37,29,.18)}.time-add__heading{display:flex;grid-column:1/-1;align-items:flex-start;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid #eee9e1}.time-add__heading h2{margin:0;color:#29251f;font-size:14px;font-weight:650}.time-add__heading p{margin:2px 0 0;color:#8c8376;font-size:10px}.time-add__heading>button{display:grid;width:28px;height:28px;flex:none;place-items:center;border-radius:7px;background:transparent;color:#9c9387;font-size:18px;line-height:1}.time-add__heading>button:hover,.time-add__heading>button:focus-visible{background:#f1ede6;color:#4c463e;outline:none}.time-add label{display:block;color:#665f55;font-size:10px;font-weight:600}.time-add label>span{color:#9a9185;font-weight:400}.time-add select,.time-add input,.time-add textarea{box-sizing:border-box;width:100%;margin-top:5px;border:1px solid #ddd8cf;border-radius:8px;background:#fdfcf9;padding:8px 9px;color:#302c27;font-family:Inter,sans-serif;font-size:10px}.time-add input,.time-add select{height:34px}.time-add textarea{resize:vertical}.time-add__wide{grid-column:1/-1}.time-add form>button[type="submit"]{grid-column:1/-1;min-height:35px;border-radius:8px;background:#29251f;color:#fff;font-size:10px;font-weight:650}
.dark .time-panel__hero,.dark .time-workspace__header,.dark .time-card,.dark .time-recent,.dark .time-ledger,.dark .time-filters,.dark .time-add>form{border-color:#45413b;background:#262522;box-shadow:none}.dark .time-panel__hero h2,.dark .time-workspace__header h1,.dark .time-card__heading h3,.dark .time-recent__heading h3,.dark .time-ledger__heading h2,.dark .time-panel__summary strong,.dark .time-workspace__metric strong,.dark .time-add__heading h2{color:#f1ede6}.dark .time-panel__summary,.dark .time-workspace__metric,.dark .time-card__heading,.dark .time-recent__heading,.dark .time-ledger__heading,.dark .time-add__heading{border-color:#45413b}.dark .time-card select,.dark .time-card textarea,.dark .time-manual-fields input,.dark .time-manual-fields select,.dark .time-manual-fields textarea,.dark .time-filters select,.dark .time-filters input,.dark .time-add select,.dark .time-add input,.dark .time-add textarea{border-color:#4b4740;background:#211f1c;color:#e8e3db}.dark .time-table-wrap th{background:#211f1c}.dark .time-table-wrap td{border-color:#403c36;color:#c9c2b8}.dark .time-table-wrap tbody tr:hover{background:#2c2a26}.dark .time-project-link{color:#eee9e1}.dark .time-panel__all{border-color:#4a463f;background:#2d2b27;color:#ddd6cc}.dark .time-secondary,.dark .time-badge,.dark .time-ledger__heading>span{border-color:#4a463f;background:#39352f;color:#ddd4c7}
@media(max-width:800px){.time-panel__hero,.time-workspace__header{align-items:flex-start;flex-wrap:wrap}.time-panel__summary,.time-workspace__metric{padding-left:0;border-left:0}.time-form-grid{grid-template-columns:1fr}.time-filters{align-items:stretch;flex-direction:column}.time-filters div{min-width:0;width:100%}.time-filters button{width:100%}.time-add{margin-left:auto}.time-add>form{position:fixed;top:76px;right:16px;left:16px;width:auto;grid-template-columns:1fr;max-height:calc(100vh - 92px);overflow:auto}.time-add__wide,.time-add form>button,.time-add__heading{grid-column:1}}

/* Scannable status chips and on-demand board subtasks. */
.kanban-column__header h2{padding:4px 8px;border-radius:999px}
.kanban-column[data-status="not_started"] .kanban-column__header h2{background:#e9edf2;color:#526174}
.kanban-column[data-status="in_progress"] .kanban-column__header h2{background:#dceffc;color:#1570a6}
.kanban-column[data-status="on_hold"] .kanban-column__header h2{background:#fff0c7;color:#a55c12}
.kanban-column[data-status="completed"] .kanban-column__header h2{background:#dff3e7;color:#287553}
.kanban-column[data-status="closed"] .kanban-column__header h2{background:#e7e2f4;color:#65558e}
.kanban-actions__menu button{display:block;width:100%;padding:6px 8px;border:0;border-radius:5px;background:transparent;color:inherit;text-align:left;font-size:11px;cursor:pointer}
.kanban-actions__menu button:hover,.kanban-actions__menu button:focus-visible{background:#f3f0e9}
.kanban-subtasks{margin-top:7px;padding-top:7px;border-top:1px solid #ece8e0}
.kanban-subtasks[hidden]{display:none}
.kanban-subtasks__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;color:#756e62;font-size:9px;text-transform:uppercase;letter-spacing:.04em}
.kanban-subtasks__header a{color:#5650a4;font-weight:600;text-transform:none;letter-spacing:0}
.kanban-subtasks ul{display:grid;gap:3px;margin:0;padding:0;list-style:none}
.kanban-subtasks li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 6px;min-height:27px;padding:4px 5px;border-radius:5px;background:#f7f5f0;font-size:9px;color:#837c70}
.kanban-subtasks li>a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#403c35;font-size:10px;font-weight:550}
.kanban-subtasks li>span:not(.subtask-status),.kanban-subtasks li>time{overflow:hidden;max-width:100px;text-overflow:ellipsis;white-space:nowrap}
.subtask-status{grid-column:2;grid-row:1 / span 2;padding:2px 5px;border-radius:999px;background:#e8e4dc;color:#686156;font-size:8px;white-space:nowrap}
.subtask-status--in_progress{background:#dceffc;color:#1570a6}.subtask-status--on_hold{background:#fff0c7;color:#99540e}.subtask-status--completed{background:#dff3e7;color:#287553}.subtask-status--closed{background:#e7e2f4;color:#65558e}
.kanban-subtasks .is-overdue{color:#aa4e4e;font-weight:600}.kanban-subtasks__empty{display:block!important;text-align:center}
.dark .kanban-actions__menu button:hover,.dark .kanban-actions__menu button:focus-visible{background:#34312c}
.dark .kanban-subtasks{border-color:#45413b}.dark .kanban-subtasks li{background:#302e2a}.dark .kanban-subtasks li>a{color:#e7e2d9}
.dark .kanban-column[data-status="not_started"] .kanban-column__header h2{background:#363c44;color:#cbd4df}
.dark .kanban-column[data-status="in_progress"] .kanban-column__header h2{background:#173c52;color:#9ed8f6}
.dark .kanban-column[data-status="on_hold"] .kanban-column__header h2{background:#4a3717;color:#f2cf7b}
.dark .kanban-column[data-status="completed"] .kanban-column__header h2{background:#193d2d;color:#9cd8b8}
.dark .kanban-column[data-status="closed"] .kanban-column__header h2{background:#373047;color:#cbbce8}
.kanban-column.is-collapsed h2{padding:7px 4px}
.kanban-subtask-actions{display:flex;grid-column:2;grid-row:1 / span 2;align-items:center;gap:2px}
.kanban-subtask-actions .subtask-status{grid-column:auto;grid-row:auto}
.kanban-actions--subtask summary{width:19px;height:20px;font-size:15px}
.kanban-actions--subtask .kanban-actions__menu{right:-3px;width:142px}
.kanban-actions__label{display:block;padding:5px 8px 2px;color:#989083;font-size:8px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.activity-line{display:inline-flex;align-items:center;gap:5px;font-size:10px}.activity-line i{width:6px;height:6px;border-radius:50%;background:#98a2b3}.activity-line.is-active i{background:#22a06b}.activity-line.is-idle i{background:#f79009}.activity-line.is-inactive{color:#667085}.activity-details{position:relative}.activity-details summary{cursor:pointer;list-style:none}.activity-details>div{position:absolute;right:0;z-index:10;width:220px;padding:12px;border:1px solid #dce1e7;border-radius:7px;background:#fff;box-shadow:0 8px 28px rgba(15,23,42,.15);white-space:normal}.activity-details p{margin:3px 0 10px;color:#667085;line-height:1.5}.activity-page .ws-toolbar>select{height:31px;max-width:145px;border:1px solid #d6dce4;border-radius:6px;background:#fff;color:#475467;font-size:9px}
.ws-overview-row{display:flex;align-items:center;gap:18px;min-width:0;overflow:hidden}.ws-overview-row .ws-header{flex:0 0 auto;min-height:48px;margin:0}.ws-overview-row .ws-quick-filters{flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto}.ws-overview-row .ws-quick-filters a{flex:0 0 auto}

/* Super-admin subscription plan changes. */
.wd-plan-change{display:flex;align-items:center;gap:8px;padding:12px}.wd-plan-change label{font-size:10px;font-weight:700}.wd-plan-change select,.wd-plan-change button{height:31px;border:1px solid #d5dbe3;border-radius:5px;background:#fff;padding:0 9px;font-size:10px}.wd-plan-change button{background:#182337;color:#fff}.wd-plan-change p{margin:0;color:#697386;font-size:9px}
.wd-plan-change label{display:grid;gap:4px}.wd-plan-change input{height:31px;border:1px solid #d5dbe3;border-radius:5px;padding:0 7px;font-size:10px}
.sa-messages{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.sa-message{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:7px;border:1px solid #d0d5dd;background:#fff;font-size:11px;line-height:1.4}.sa-message--success{border-color:#a3d9b8;background:#edfaf3;color:#155a38}.sa-message--error{border-color:#f5b8b3;background:#fef2f1;color:#8b1f1a}.sa-message--warning{border-color:#fbd38d;background:#fffbeb;color:#7a4f00}.sa-message--info{border-color:#a5c5f5;background:#eef5fe;color:#1a3a72}.sa-message button{flex:0 0 auto;border:0;background:none;color:inherit;font-size:15px;line-height:1;cursor:pointer;opacity:.6}.sa-message button:hover{opacity:1}

/* ── Professional Admin Refresh (2025-08) ─────────────────────── */

/* SVG icon sizing in sidebar nav */
.sa-icon svg{width:15px;height:15px;display:block}
.sa-icon{font-size:0}

/* Billing KPI grid */
.billing-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.billing-kpi-card{display:flex;align-items:flex-start;gap:13px;padding:15px 16px;border:1px solid #e2e6ec;border-radius:10px;background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.04);transition:border-color .15s,box-shadow .15s}
.billing-kpi-card:hover{border-color:#c5cdd8;box-shadow:0 2px 8px rgba(15,23,42,.08)}
.billing-kpi-icon{display:flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;border-radius:9px;background:#f1f4f9;color:#5b6b80}
.billing-kpi-icon svg{width:16px;height:16px}
.billing-kpi--success .billing-kpi-icon{background:#e6f6ee;color:#166f3e}
.billing-kpi--warning .billing-kpi-icon{background:#fff4d6;color:#906409}
.billing-kpi--danger .billing-kpi-icon{background:#fde9e8;color:#a9362d}
.billing-kpi--info .billing-kpi-icon{background:#e7f0fd;color:#1a56a4}
.billing-kpi-body{flex:1;min-width:0}
.billing-kpi-label{display:block;color:#697386;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.billing-kpi-value{display:block;margin-top:5px;font-size:26px;font-weight:700;color:#182337;line-height:1}
.billing-kpi-value--na{font-size:13px;font-weight:600;color:#8492a6;margin-top:5px}
.billing-kpi-hint{display:block;margin-top:3px;font-size:9px;color:#9aa3af;line-height:1.4;max-width:160px}
.billing-kpi-note{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border:1px solid #e0e7f0;border-radius:8px;background:#f6f9fc;color:#697386;font-size:10px;line-height:1.5;margin-bottom:14px}
.billing-kpi-note svg{flex:0 0 14px;width:14px;height:14px;margin-top:1px;color:#8899b0}
@media(max-width:900px){.billing-kpi-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.billing-kpi-grid{grid-template-columns:1fr}}

/* Billing filter bar */
.billing-filter-bar{margin-bottom:10px}
.billing-search-form{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.billing-search-input-wrap{position:relative;flex:1;min-width:200px}
.billing-search-icon{position:absolute;left:9px;top:50%;transform:translateY(-50%);width:13px;height:13px;color:#8492a6;pointer-events:none}
.billing-search-input{width:100%;height:32px;padding:0 10px 0 30px;border:1px solid #d6dce4;border-radius:7px;background:#fff;font-size:11px;color:#27364d;outline:none}
.billing-search-input:focus{border-color:#9ca9bb;box-shadow:0 0 0 2px rgba(28,50,88,.08)}
.billing-search-select{height:32px;padding:0 26px 0 9px;border:1px solid #d6dce4;border-radius:7px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238492a6'/%3E%3C/svg%3E") no-repeat right 8px center;font-size:11px;color:#27364d;cursor:pointer;appearance:none;outline:none}
.billing-search-select:focus{border-color:#9ca9bb}
.billing-search-btn{height:32px;padding:0 14px;border:1px solid #c5cdd8;border-radius:7px;background:#182337;color:#fff;font-size:11px;font-weight:600;cursor:pointer;transition:background .15s}
.billing-search-btn:hover{background:#263c58}
.billing-clear-btn{display:inline-flex;align-items:center;height:32px;padding:0 12px;border:1px solid #d6dce4;border-radius:7px;background:#fff;color:#596474;font-size:11px;text-decoration:none;transition:background .15s}
.billing-clear-btn:hover{background:#f1f4f8;text-decoration:none}

/* Billing code and discount display */
.billing-code{font-family:var(--pd-font-mono,monospace);font-size:10px;background:#f3f6fa;padding:2px 5px;border-radius:4px;border:1px solid #dde4ec;color:#344b6a}
.billing-code-display{font-family:var(--pd-font-mono,monospace);font-size:12px;letter-spacing:.05em;color:#182337}
.billing-discount{display:inline-flex;align-items:center;padding:2px 7px;border-radius:6px;background:#e8f0fe;color:#1a56a4;font-size:11px;font-weight:700}

/* Add coupon action button */
.billing-action{display:inline-flex;align-items:center;gap:5px;padding:6px 11px;border-radius:7px;background:#182337;color:#fff!important;font-size:11px;font-weight:600;text-decoration:none;transition:background .15s}
.billing-action:hover{background:#263c58;text-decoration:none}

/* Clickable KPI cards */
a.billing-kpi-card{color:inherit;text-decoration:none;cursor:pointer}
a.billing-kpi-card:hover{text-decoration:none;border-color:#b0bccb;box-shadow:0 4px 14px rgba(15,23,42,.10);transform:translateY(-1px)}
a.billing-kpi-card:active{transform:translateY(0);box-shadow:0 1px 3px rgba(15,23,42,.06)}
a.billing-kpi-card{transition:border-color .15s,box-shadow .15s,transform .12s}
