/* ============================================================================
   SOCIETY PRO — "OBSIDIAN & SAPPHIRE" luxury design system (2026 redesign).
   ONE cohesive premium palette, deliberately non-green: obsidian graphite ink,
   porcelain neutrals, a single royal-sapphire jewel accent used with restraint,
   and a warm bronze metallic for rules/emphasis. Cormorant Garamond display
   serif + Inter body. Every component (shell, cards, panels, buttons, chips,
   forms, nav, tables, charts, badges) is driven from these tokens; theme-aware
   (light default + dark override) and tuned for WCAG-AA contrast.
   Bare aliases (--ink/--muted/--panel/--line/--acc/--rc-accent + --chart1..8)
   feed the recovery .rc-* layer and the server-rendered proc_charts SVGs so
   they inherit the same palette with zero per-page overrides.
   ========================================================================== */
:root {
  /* Ink & neutrals */
  --spro-ink: #171b24;            /* obsidian graphite text */
  --spro-muted: #5c6472;         /* secondary text */
  --spro-faint: #8b93a1;         /* metadata / captions */
  --spro-line: #e6e2d8;          /* warm hairline */
  --spro-line-soft: #efece4;     /* softest divider */
  --spro-paper: #ffffff;         /* card surface */
  --spro-ivory: #f6f4f0;         /* porcelain page ground */
  --spro-ivory-2: #edeae1;       /* recessed panel ground */
  /* Sapphire family (the one jewel accent) */
  --spro-forest: #141a2e;        /* obsidian-navy: darkest solid fills, sidebar */
  --spro-emerald: #c4942b;       /* royal sapphire: primary accent / buttons */
  --spro-emerald-2: #ddab3f;     /* bright sapphire: hovers / highlights */
  --spro-mint: #fbf5e7;          /* sapphire tint: soft accent grounds */
  --spro-ink-deep: #0f1424;      /* near-black obsidian */
  /* Warm metallic */
  --spro-gold: #b0703a;          /* bronze: rules, emphasis, premium accents */
  --spro-gold-soft: #c98a55;     /* lighter bronze */
  --spro-champagne: #efe6d8;     /* warm sand: bronze tint ground */
  /* Extended / semantic accents */
  --spro-blue: #b0872f;          /* info */
  --spro-violet: #a88f5a;        /* variety accent */
  --spro-coral: #c0483c;         /* danger / negative */
  --spro-orange: #c0813a;        /* warning */
  --spro-teal: #2f7d84;          /* positive alt */
  --spro-sidebar: 264px;
  --spro-topbar: 68px;
  --spro-radius: 14px;
  --spro-shadow: 0 14px 40px rgba(18, 24, 42, .10);
  --spro-shadow-soft: 0 8px 24px rgba(18, 24, 42, .07);
  --spro-font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --spro-display: "Cormorant Garamond", "Iowan Old Style", "Palatino Linotype", Georgia, serif;

  /* Bare aliases consumed by the recovery .rc-* layer + proc_charts SVG text/grid */
  --ink: #171b24;
  --muted: #5c6472;
  --faint: #8b93a1;
  --panel: #ffffff;
  --panel2: #f1efe8;
  --line: #e6e2d8;
  --acc: #c4942b;
  --rc-accent: #c4942b;

  /* Chart series ramp — sapphire → bronze → slate → violet (cohesive, jewel-led) */
  --chart1: #c4942b;
  --chart2: #b0703a;
  --chart3: #86785b;
  --chart4: #ddab3f;
  --chart5: #8a6d3b;
  --chart6: #705b2f;
  --chart7: #bab09a;
  --chart8: #a88f5a;
}

/* Recipient-bound society communications */
.spro-message-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 20px}.spro-message-guide article{display:flex;gap:14px;align-items:flex-start;padding:20px;border:1px solid var(--spro-border,#e7e4df);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(10,49,43,.05)}.spro-message-guide article>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#f6f1e7;color:#07205a;font-weight:800}.spro-message-guide b{font-size:16px;color:#121e3a}.spro-message-guide p{margin:6px 0 0;color:#5f6575;font-size:14px;line-height:1.55}.spro-message-panel{margin-bottom:20px}.spro-message-list{display:grid;gap:14px;padding:18px}.spro-message-list>article{position:relative;padding:19px 20px;border:1px solid #e8e5df;border-radius:16px;background:#fff;overflow:hidden}.spro-message-list>article:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#798194}.spro-message-list>article.priority-p0:before{background:#d44437}.spro-message-list>article.priority-p1:before{background:#e9952f}.spro-message-list>article.priority-p2:before{background:#826017}.spro-message-list>article.is-unread{background:#fcfaf6;border-color:#dbd0b8;box-shadow:0 10px 25px rgba(9,88,72,.07)}.spro-message-list article>header,.spro-message-list article>footer{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.spro-message-list article>header span:first-child{display:block;margin-bottom:5px;color:#857b66;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.spro-message-list h3{margin:0;color:#15213d;font-size:18px}.spro-message-list article>p{max-width:920px;margin:15px 0;color:#3c455a;font-size:15px;line-height:1.65}.spro-message-list article>footer{padding-top:12px;border-top:1px solid #f2f0ed;color:#686f81;font-size:13px}.spro-message-list article>form{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.spro-message-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.spro-message-guide,.spro-message-list.compact{grid-template-columns:1fr}.spro-message-list article>header,.spro-message-list article>footer{align-items:flex-start;flex-direction:column;gap:8px}}

/* Resident-readable 2026 operating scale.
   Earlier dense admin primitives were intentionally compact. SOCIETY PRO is
   used by residents, guards and field teams, so core copy now starts at 14px
   and interactive controls meet a 44px touch target. */
.spro-app { font-size: 16px; line-height: 1.5; }
.spro-side-nav a { min-height: 46px; gap: 10px; padding: 9px 11px; font-size: 14px; }
.spro-side-nav a > i { font-size: 18px; }
.spro-side-nav a > small { font-size: 10px; }
.spro-nav-label { margin-top: 20px; font-size: 11px; }
.spro-society-switch b { font-size: 14px; }
.spro-society-switch small,.spro-system-health small,.spro-side-foot > a { font-size: 12px; }
.spro-system-health b { font-size: 13px; }
.spro-context span { font-size: 11px; }.spro-context b { font-size: 15px; }
.spro-command-search { min-height: 44px; }.spro-command-search > span { font-size: 14px; }.spro-command-search kbd { font-size: 11px; }
.spro-user-menu summary b { font-size: 14px; }.spro-user-menu summary small { font-size: 12px; }.spro-user-menu > div a { font-size: 14px; }
.spro-page-head p { font-size: 16px; line-height: 1.65; }
.spro-eyebrow { font-size: 11px; }
.spro-button { min-height: 44px; padding-inline: 17px; font-size: 14px; }
.spro-panel-head span:first-child { font-size: 10px; }.spro-panel-head h2 { font-size: 25px; }.spro-panel-head p,.spro-panel-head > a { font-size: 14px; }
.spro-field { gap: 8px; font-size: 14px; }.spro-field > span small,.spro-field > small { font-size: 12px; }
.spro-field input,.spro-field select,.spro-field textarea,.spro-new-ticket select,.spro-new-ticket textarea { min-height: 46px; padding: 11px 13px; font-size: 15px; }
.spro-consent,.spro-form-error { font-size: 13px; }
.spro-filter-button,.spro-segmented button { min-height: 38px; font-size: 13px; }
.spro-table th { padding: 12px 14px; font-size: 11px; }.spro-table td { padding: 13px 14px; font-size: 14px; }.spro-table td > b { font-size: 14px; }.spro-table td > small { font-size: 12px; }
.spro-table-footer,.spro-table-search input { font-size: 13px; }.spro-table-search { min-height: 42px; }.spro-table-search input { min-width: 210px; }
.spro-priority { min-width: 34px; min-height: 25px; font-size: 11px; }.spro-status { font-size: 11px; }
.spro-message { font-size: 14px; }.spro-live-pill { font-size: 12px; }
.spro-topbar { min-height: 74px; }
.spro-shell { --spro-topbar: 74px; }

.spro-locale-switch select { min-height: 40px; padding: 0 28px 0 10px; border: 1px solid var(--spro-line); border-radius: 8px; color: var(--spro-ink); background: #fff; font: 700 13px var(--spro-font); }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; }

.spro-resident-home { display: grid; gap: 18px; }
.spro-resident-hero { position: relative; display: grid; grid-template-columns: minmax(0,1fr) minmax(220px,.32fr); overflow: hidden; border-radius: 22px; color: #fff; background: radial-gradient(circle at 85% 20%,rgba(229,213,155,.24),transparent 25%),linear-gradient(120deg,#061537,#0a2668); box-shadow: 0 20px 45px rgba(7,59,53,.2); }
.spro-resident-hero > div { padding: clamp(28px,5vw,58px); }.spro-resident-hero > div > span,.spro-resident-hero aside > span { color: #e8c7a1; font-size: 11px; font-weight: 850; letter-spacing: .14em; }
.spro-resident-hero h2 { margin: 8px 0 6px; font: 500 clamp(34px,5vw,62px)/1 var(--spro-display); }.spro-resident-hero p { margin: 0; color: #dad3c4; font-size: 16px; }
.spro-resident-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 25px; }.spro-resident-actions a { min-height: 43px; padding: 0 15px; border: 1px solid rgba(255,255,255,.22); border-radius: 9px; color: #fff; background: rgba(255,255,255,.09); font-size: 14px; font-weight: 750; line-height: 41px; text-decoration: none; }
.spro-resident-hero aside { display: grid; align-content: center; padding: 30px; border-left: 1px solid rgba(255,255,255,.13); background: rgba(0,0,0,.1); }.spro-resident-hero aside strong { margin: 9px 0; font: 600 31px var(--spro-display); }.spro-resident-hero aside small { color: #dad3c4; font-size: 13px; }
.spro-verification-banner { display: flex; align-items: center; gap: 16px; padding: 18px 20px; border: 1px solid #dfb68e; border-radius: 14px; color: #5d3a18; background: #fff3e8; }.spro-verification-banner > i { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 12px; background: #f1ceac; font-style: normal; }.spro-verification-banner h2 { margin: 0 0 3px; font-size: 17px; }.spro-verification-banner p { margin: 0; font-size: 14px; }.spro-verification-banner > :last-child { margin-left: auto; color: #744d26; font-size: 13px; font-weight: 750; }
.spro-resident-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }.spro-resident-feed { display: grid; padding: 0 18px 18px; }.spro-resident-feed > a { display: flex; min-height: 67px; align-items: center; gap: 12px; border-top: 1px solid var(--spro-line-soft); color: inherit; text-decoration: none; }.spro-resident-feed > a:first-child { border-top: 0; }.spro-resident-feed > a > i { display: grid; width: 35px; height: 35px; flex: 0 0 auto; place-items: center; border-radius: 10px; color: #071e53; background: #f2eee5; font-size: 12px; font-style: normal; font-weight: 850; }.spro-resident-feed > a > i.urgent,.spro-resident-feed > a > i.p0 { color: #8b3731; background: #ffebe9; }.spro-resident-feed > a > i.important,.spro-resident-feed > a > i.p1 { color: #81531c; background: #fff0dd; }.spro-resident-feed > a span { min-width: 0; flex: 1; }.spro-resident-feed b,.spro-resident-feed small { display: block; }.spro-resident-feed b { font-size: 14px; }.spro-resident-feed small { margin-top: 3px; color: var(--spro-muted); font-size: 12px; }.spro-resident-feed strong { font-size: 13px; }.spro-resident-feed > p { color: var(--spro-muted); font-size: 14px; }

.spro-notice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }.spro-notice-card { position: relative; padding: 22px; border: 1px solid var(--spro-line); border-radius: 16px; background: #fff; box-shadow: 0 8px 26px rgba(26,48,41,.05); }.spro-notice-card.pinned { border-top: 4px solid var(--spro-gold); }.spro-notice-card.priority-urgent { border-color: #e8b5b0; background: linear-gradient(140deg,#fff,#fff8f7); }.spro-notice-card > header,.spro-notice-card > footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }.spro-notice-card > header > span { color: var(--spro-emerald); font-size: 11px; font-weight: 850; letter-spacing: .09em; }.spro-notice-card > header div { display: flex; gap: 6px; }.spro-notice-card > header em,.spro-notice-card > header b { padding: 5px 7px; border-radius: 999px; background: #f5f3ee; font-size: 10px; font-style: normal; }.spro-notice-card h2 { margin: 18px 0 8px; font: 550 26px var(--spro-display); }.spro-notice-card > p { min-height: 48px; color: var(--spro-muted); font-size: 15px; line-height: 1.65; }.spro-notice-card dl { display: flex; flex-wrap: wrap; gap: 18px; margin: 20px 0; }.spro-notice-card dl div { display: grid; gap: 2px; }.spro-notice-card dt { color: var(--spro-faint); font-size: 10px; font-weight: 800; text-transform: uppercase; }.spro-notice-card dd { margin: 0; font-size: 13px; }.spro-notice-card footer { padding-top: 14px; border-top: 1px solid var(--spro-line-soft); }.spro-notice-card footer > span { margin-right: auto; color: var(--spro-muted); font-size: 13px; }.spro-notice-card footer strong { color: var(--spro-emerald); font-size: 13px; }
.spro-check-row { display: flex; flex-wrap: wrap; gap: 14px; }.spro-check-row label { display: flex; align-items: center; gap: 7px; font-size: 13px; }.spro-check-row input { accent-color: var(--spro-emerald); }

.spro-balance-chip { min-width: 220px; padding: 14px 17px; border: 1px solid var(--spro-line); border-radius: 12px; background: #fff; }.spro-balance-chip span,.spro-balance-chip strong { display: block; }.spro-balance-chip span { color: var(--spro-muted); font-size: 10px; font-weight: 850; letter-spacing: .12em; }.spro-balance-chip strong { margin-top: 4px; font: 600 24px var(--spro-display); }
.spro-finance-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); overflow: hidden; margin-bottom: 18px; border: 1px solid var(--spro-line); border-radius: 14px; background: #fff; }.spro-finance-summary article,.spro-finance-summary a { padding: 20px; border-right: 1px solid var(--spro-line-soft); color: inherit; text-decoration: none; }.spro-finance-summary article:last-child,.spro-finance-summary a:last-child { border-right: 0; }.spro-finance-summary span,.spro-finance-summary strong,.spro-finance-summary small { display: block; }.spro-finance-summary span { color: var(--spro-emerald); font-size: 10px; font-weight: 850; letter-spacing: .12em; }.spro-finance-summary strong { margin: 8px 0 4px; font: 600 26px var(--spro-display); }.spro-finance-summary small { color: var(--spro-muted); font-size: 13px; }
.spro-invoice-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 18px; }.spro-invoice-paper { overflow: hidden; }.spro-invoice-paper > header { display: flex; justify-content: space-between; gap: 25px; padding: 30px; border-bottom: 1px solid var(--spro-line); background: linear-gradient(135deg,#fcfbfa,#f6f4f1); }.spro-invoice-paper > header h2 { margin: 4px 0; font: 550 29px var(--spro-display); }.spro-invoice-paper > header p { margin: 3px 0; color: var(--spro-muted); font-size: 13px; }.spro-invoice-paper > header small,.spro-invoice-paper > header span { color: var(--spro-emerald); font-size: 11px; font-weight: 850; letter-spacing: .12em; }.spro-invoice-party-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; background: var(--spro-line-soft); border-bottom: 1px solid var(--spro-line); }.spro-invoice-party-grid article { padding: 17px 20px; background: #fff; }.spro-invoice-party-grid span { display: block; margin-bottom: 5px; color: var(--spro-emerald); font-size: 11px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }.spro-invoice-party-grid b { display: block; font-size: 16px; }.spro-invoice-party-grid p { margin: 5px 0 0; color: var(--spro-muted); font-size: 13px; line-height: 1.55; }.spro-invoice-totals { width: min(410px,100%); margin: 25px 28px 28px auto; }.spro-invoice-totals div { display: flex; justify-content: space-between; padding: 8px 0; color: var(--spro-muted); font-size: 14px; }.spro-invoice-totals dd { margin: 0; font-weight: 700; }.spro-invoice-totals .total,.spro-invoice-totals .balance { margin-top: 5px; padding-top: 13px; border-top: 1px solid var(--spro-line); color: var(--spro-ink); font-size: 18px; }.spro-invoice-totals .balance { color: var(--spro-emerald); }.spro-invoice-aside { display: grid; align-content: start; gap: 16px; }.spro-detail-list { margin: 0; padding: 0 19px 20px; }.spro-detail-list div { padding: 10px 0; border-top: 1px solid var(--spro-line-soft); }.spro-detail-list dt { color: var(--spro-muted); font-size: 11px; }.spro-detail-list dd { margin: 2px 0 0; font-size: 14px; font-weight: 700; }.spro-tax-json { margin: 0 19px 20px; padding: 12px; overflow: auto; border-radius: 9px; color: #ebe6dc; background: #09142f; font: 12px/1.55 ui-monospace,monospace; }.spro-payment-list { display: grid; padding: 0 19px 20px; }.spro-payment-list > div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-top: 1px solid var(--spro-line-soft); }.spro-payment-list b,.spro-payment-list small { display: block; }.spro-payment-list small { color: var(--spro-muted); font-size: 11px; }.spro-back-link { display: block; margin-bottom: 10px; color: var(--spro-emerald); font-size: 13px; font-weight: 750; text-decoration: none; }

.spro-two-column { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }.spro-work-list,.spro-asset-care-list { display: grid; padding: 0 18px 18px; }.spro-work-list > a { display: flex; min-height: 72px; align-items: center; gap: 12px; border-top: 1px solid var(--spro-line-soft); color: inherit; text-decoration: none; }.spro-work-list > a > span { min-width: 0; flex: 1; }.spro-work-list b,.spro-work-list small { display: block; }.spro-work-list small { color: var(--spro-muted); font-size: 12px; }.spro-work-list strong { font-size: 12px; }.spro-asset-care-list > div { display: flex; min-height: 72px; align-items: center; gap: 12px; border-top: 1px solid var(--spro-line-soft); }.asset-health { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: #071e53; background: #f1ece1; font-size: 12px; font-weight: 850; }.asset-health.attention { color: #87571d; background: #fff0dc; }.asset-health.down { color: #913e37; background: #ffebe9; }.spro-asset-care-list p { min-width: 0; flex: 1; margin: 0; }.spro-asset-care-list b,.spro-asset-care-list small { display: block; }.spro-asset-care-list small { color: var(--spro-muted); font-size: 12px; }.spro-asset-care-list time { color: var(--spro-muted); font-size: 12px; }

.spro-host-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }.spro-host-card { overflow: hidden; border: 1px solid var(--spro-line); border-radius: 16px; background: #fff; box-shadow: 0 8px 28px rgba(24,49,41,.06); }.spro-host-card .photo { display: flex; min-height: 190px; align-items: flex-start; justify-content: flex-end; padding: 12px; background: #e7e4df center/cover no-repeat; }.spro-host-card .photo span { padding: 6px 8px; border-radius: 999px; background: #fff; box-shadow: 0 3px 10px rgba(0,0,0,.12); font-size: 10px; font-weight: 850; }.spro-host-card > div:last-child { padding: 18px; }.spro-host-card > div > span { color: var(--spro-emerald); font-size: 10px; font-weight: 850; letter-spacing: .1em; }.spro-host-card h2 { margin: 8px 0; font: 550 23px var(--spro-display); }.spro-host-card p { color: var(--spro-muted); font-size: 13px; }.spro-host-card footer { display: flex; align-items: center; gap: 8px; margin-top: 16px; padding-top: 13px; border-top: 1px solid var(--spro-line-soft); }.spro-host-card footer > small { margin-right: auto; color: var(--spro-muted); }.spro-host-card footer form { display: flex; gap: 4px; }.spro-host-card footer form button { min-height: 34px; border: 0; border-radius: 7px; color: #fff; background: var(--spro-emerald); font-weight: 750; cursor: pointer; }.spro-host-card footer form button.danger { background: var(--spro-coral); }.spro-form-note { color: var(--spro-muted); font-size: 13px; line-height: 1.5; }.spro-publish-toggle { display: flex; gap: 10px; padding: 13px; border: 1px solid var(--spro-line); border-radius: 10px; }.spro-publish-toggle input { accent-color: var(--spro-emerald); }.spro-publish-toggle b,.spro-publish-toggle small { display: block; }.spro-publish-toggle b { font-size: 14px; }.spro-publish-toggle small { color: var(--spro-muted); font-size: 12px; }

.spro-custom-report-layout { display: grid; grid-template-columns: minmax(320px,.38fr) minmax(0,.62fr); gap: 17px; }.spro-custom-builder form { display: grid; gap: 14px; padding: 0 20px 22px; }.spro-custom-report-results { display: grid; align-content: start; gap: 16px; }.spro-custom-welcome { display: grid; min-height: 310px; place-content: center; padding: 35px; border: 1px solid #d8cfbd; border-radius: 16px; color: #fff; background: radial-gradient(circle at 80% 12%,rgba(215,232,143,.19),transparent 28%),linear-gradient(130deg,#07173b,#0b2769); text-align: center; }.spro-custom-welcome > i { margin: 0 auto 15px; font-size: 37px; font-style: normal; }.spro-custom-welcome > span { color: #e9c69d; font-size: 10px; font-weight: 850; letter-spacing: .14em; }.spro-custom-welcome h2 { margin: 8px 0; font: 550 31px var(--spro-display); }.spro-custom-welcome p { max-width: 490px; margin: 0; color: #d9d3c7; }.spro-custom-bars { display: grid; gap: 12px; padding: 2px 20px 24px; }.spro-custom-bars > div { display: grid; grid-template-columns: minmax(100px,.35fr) minmax(120px,1fr) 76px; align-items: center; gap: 10px; }.spro-custom-bars > div > span { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }.spro-custom-bars > div > i { height: 11px; overflow: hidden; border-radius: 999px; background: #efede9; }.spro-custom-bars > div > i > b { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--spro-emerald),var(--spro-gold)); transition: width .7s cubic-bezier(.2,.8,.2,1); }.spro-custom-bars > div > strong { font-size: 12px; text-align: right; }.spro-custom-library > div { display: grid; padding: 0 18px; }.spro-custom-library > div > a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px; border-top: 1px solid var(--spro-line-soft); color: inherit; text-decoration: none; }.spro-custom-library > div > a.active { border-radius: 9px; background: #f7f4ee; }.spro-custom-library b,.spro-custom-library small { display: block; }.spro-custom-library small { color: var(--spro-muted); font-size: 12px; }.spro-custom-library em { font-size: 11px; font-style: normal; }.spro-custom-library > form { padding: 15px 18px 18px; text-align: right; }
.spro-custom-canvas { min-height: 340px; margin: 0 20px 22px; padding: 14px; border: 1px solid var(--spro-line); border-radius: 13px; background: linear-gradient(180deg,#fdfcfb,#f7f6f4); }.spro-custom-canvas canvas { display: block; width: 100%; height: 310px; }

.spro-concierge-launch { position: fixed; right: 24px; bottom: 24px; z-index: 65; display: flex; min-height: 52px; align-items: center; gap: 9px; padding: 0 18px; border: 0; border-radius: 999px; color: #fff; background: linear-gradient(135deg,#07173b,#0f2e75); box-shadow: 0 15px 38px rgba(7,59,53,.32); font-size: 13px; cursor: pointer; }.spro-concierge-launch span { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 50%; color: #141f39; background: #ecc598; }
.spro-concierge { position: fixed; right: 22px; bottom: 20px; z-index: 80; display: grid; width: min(430px,calc(100vw - 28px)); max-height: min(720px,calc(100vh - 34px)); grid-template-rows: auto minmax(150px,1fr) auto auto; overflow: hidden; border: 1px solid #cec7b7; border-radius: 20px; background: #fff; box-shadow: 0 28px 70px rgba(8,43,37,.27); }.spro-concierge[hidden] { display: none; }.spro-concierge > header { display: flex; justify-content: space-between; gap: 14px; padding: 22px; color: #fff; background: linear-gradient(135deg,#07173b,#0b2562); }.spro-concierge > header span { color: #ecc9a1; font-size: 10px; font-weight: 850; letter-spacing: .12em; }.spro-concierge h2 { margin: 5px 0 2px; font: 550 25px var(--spro-display); }.spro-concierge header p { margin: 0; color: #d7d1c3; font-size: 12px; }.spro-concierge header button { width: 38px; height: 38px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; color: #fff; background: rgba(255,255,255,.08); font-size: 20px; cursor: pointer; }.spro-concierge-messages { display: grid; align-content: start; gap: 10px; overflow-y: auto; padding: 18px; background: #f5f6f7; }.spro-concierge-messages > div { max-width: 88%; padding: 11px 13px; border: 1px solid var(--spro-line); border-radius: 5px 14px 14px; background: #fff; font-size: 14px; line-height: 1.55; }.spro-concierge-messages > div.user { justify-self: end; border: 0; border-radius: 14px 5px 14px 14px; color: #fff; background: var(--spro-emerald); }.spro-concierge-messages > div.pending { opacity: .65; }.spro-chat-action { display: grid; gap: 8px; max-width: 100% !important; border-color: #d8ab7e !important; background: #fff8f0 !important; }.spro-chat-action span { color: #74481d; font-size: 10px; font-weight: 850; }.spro-chat-action dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:2px 0 4px;padding:8px;border-radius:8px;background:rgba(255,255,255,.7);font-size:11px}.spro-chat-action dt{color:#796551;font-weight:800;text-transform:capitalize}.spro-chat-action dd{margin:0;color:#2e3443;overflow-wrap:anywhere}.spro-chat-action div { display: flex; gap: 7px; }.spro-chat-action button { min-height: 36px; padding: 0 11px; border: 1px solid var(--spro-line); border-radius: 8px; background: #fff; font-size: 12px; font-weight: 750; cursor: pointer; }.spro-chat-action button:first-child { color: #fff; border-color: var(--spro-emerald); background: var(--spro-emerald); }.spro-concierge-suggestions { display: flex; gap: 6px; overflow-x: auto; padding: 10px 14px; border-top: 1px solid var(--spro-line); }.spro-concierge-suggestions button { min-height: 34px; flex: 0 0 auto; padding: 0 10px; border: 1px solid var(--spro-line); border-radius: 999px; color: var(--spro-emerald); background: #fff; font-size: 11px; font-weight: 750; cursor: pointer; }.spro-concierge > form { display: flex; gap: 8px; padding: 13px; border-top: 1px solid var(--spro-line); }.spro-concierge > form label { flex: 1; }.spro-concierge textarea { width: 100%; min-height: 48px; padding: 10px; border: 1px solid var(--spro-line); border-radius: 10px; font: 14px/1.4 var(--spro-font); resize: none; }.spro-concierge > form > button { min-width: 70px; border: 0; border-radius: 10px; color: #fff; background: var(--spro-forest); font-weight: 750; cursor: pointer; }

.spro-rent-public { margin: 0; color: #151923; background: #fbfaf8; font-family: var(--spro-font); }.spro-rent-header { position: sticky; top: 0; z-index: 30; display: flex; min-height: 78px; align-items: center; justify-content: space-between; gap: 20px; padding: 0 clamp(20px,5vw,72px); border-bottom: 1px solid rgba(217,225,221,.8); background: rgba(255,255,255,.92); backdrop-filter: blur(14px); }.spro-rent-brand { display: flex; align-items: center; gap: 12px; color: inherit; text-decoration: none; }.spro-rent-brand b,.spro-rent-brand small { display: block; }.spro-rent-brand b { font: 600 18px var(--spro-display); }.spro-rent-brand small { margin-top: 2px; color: var(--spro-emerald); font-size: 9px; font-weight: 850; letter-spacing: .14em; }.spro-rent-header nav { display: flex; align-items: center; gap: 20px; }.spro-rent-header nav a { color: #323846; font-size: 13px; font-weight: 700; text-decoration: none; }.spro-rent-header nav a.primary { min-height: 40px; padding: 0 14px; border-radius: 8px; color: #fff; background: var(--spro-forest); line-height: 40px; }
.spro-rent-hero { display: grid; min-height: 560px; grid-template-columns: minmax(0,1fr) minmax(210px,.25fr); color: #fff; background: radial-gradient(circle at 85% 15%,rgba(228,208,137,.24),transparent 25%),linear-gradient(125deg,#06122f,#0c286a); }.spro-rent-hero > div { align-self: center; padding: clamp(44px,8vw,110px); }.spro-rent-hero > div > span,.spro-rent-section > header span,.spro-listing-copy > div > span { color: #ebc79e; font-size: 11px; font-weight: 850; letter-spacing: .15em; }.spro-rent-hero h1 { max-width: 900px; margin: 12px 0; font: 500 clamp(44px,7vw,86px)/.98 var(--spro-display); letter-spacing: -.045em; }.spro-rent-hero > div > p { max-width: 720px; color: #d9d3c6; font-size: 17px; line-height: 1.65; }.spro-rent-hero form { display: grid; max-width: 760px; grid-template-columns: 1fr 1fr auto; gap: 9px; margin-top: 28px; padding: 9px; border-radius: 13px; background: #fff; }.spro-rent-hero form label { display: grid; padding: 4px 12px; border-right: 1px solid #e4e6e9; color: #161a24; }.spro-rent-hero form label span { color: #6f7582; font-size: 10px; font-weight: 800; }.spro-rent-hero form select,.spro-rent-hero form input { min-height: 34px; border: 0; outline: 0; color: #161a24; background: #fff; font-size: 14px; }.spro-rent-hero form button { min-width: 130px; border: 0; border-radius: 9px; color: #fff; background: var(--spro-forest); font-size: 14px; font-weight: 800; cursor: pointer; }.spro-rent-trust { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 19px; color: #e0dbd1; font-size: 12px; }.spro-rent-hero > aside { display: grid; align-content: center; justify-items: center; border-left: 1px solid rgba(255,255,255,.12); background: rgba(0,0,0,.09); }.spro-rent-hero aside span { font-size: 10px; font-weight: 850; letter-spacing: .12em; }.spro-rent-hero aside strong { margin-top: 10px; font: 500 72px var(--spro-display); }.spro-rent-hero aside p { margin: 0; color: #d9d4c8; }
.spro-rent-section { padding: clamp(45px,7vw,92px) clamp(20px,5vw,72px); }.spro-rent-section > header { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 27px; }.spro-rent-section h2 { margin: 6px 0; font: 500 clamp(32px,4vw,49px) var(--spro-display); }.spro-rent-section header p { margin: 0; color: var(--spro-muted); }.spro-public-listing-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }.spro-public-listing-grid article { overflow: hidden; border: 1px solid var(--spro-line); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(24,47,40,.07); }.spro-public-listing-grid .photo { display: flex; min-height: 245px; align-items: flex-start; padding: 13px; background: #e5e2dc center/cover no-repeat; text-decoration: none; }.spro-public-listing-grid .photo span { padding: 6px 8px; border-radius: 999px; color: #17274b; background: rgba(255,255,255,.93); font-size: 10px; font-weight: 850; }.spro-public-listing-grid article > div { padding: 18px; }.spro-public-listing-grid article small { color: var(--spro-emerald); font-size: 10px; font-weight: 800; }.spro-public-listing-grid h3 { margin: 7px 0; font: 550 25px var(--spro-display); }.spro-public-listing-grid h3 a { color: inherit; text-decoration: none; }.spro-public-listing-grid article p { color: var(--spro-muted); font-size: 13px; }.spro-public-listing-grid footer { display: flex; align-items: end; justify-content: space-between; gap: 12px; margin-top: 17px; padding-top: 14px; border-top: 1px solid var(--spro-line-soft); }.spro-public-listing-grid footer > span { color: var(--spro-muted); font-size: 11px; }.spro-public-listing-grid footer b { color: var(--spro-ink); font-size: 20px; }.spro-public-listing-grid footer small { display: block; margin-top: 3px; color: var(--spro-muted); }.spro-public-listing-grid footer > a { color: var(--spro-emerald); font-size: 12px; font-weight: 800; text-decoration: none; }.spro-rent-empty { grid-column: 1/-1; padding: 60px; border: 1px dashed #ccc6ba; border-radius: 16px; text-align: center; }.spro-rent-footer { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 30px clamp(20px,5vw,72px); color: #d9d2c4; background: #07132f; }.spro-rent-footer b,.spro-rent-footer span { display: block; }.spro-rent-footer b { color: #fff; font: 550 20px var(--spro-display); }.spro-rent-footer span,.spro-rent-footer p { font-size: 11px; }
.spro-listing-detail { padding: 24px clamp(20px,5vw,72px) 80px; }.spro-listing-gallery { display: grid; height: min(64vh,680px); grid-template-columns: 2fr 1fr; grid-template-rows: 1fr 1fr; gap: 6px; overflow: hidden; border-radius: 18px; }.spro-listing-gallery > div { background: #e6e4df center/cover no-repeat; }.spro-listing-gallery .primary { grid-row: 1/3; }.spro-listing-gallery .placeholder { background: linear-gradient(135deg,#e4e1d9,#f2f1ee); }.spro-listing-copy { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 50px; padding-top: 42px; }.spro-listing-copy h1 { margin: 9px 0; font: 500 clamp(38px,5vw,62px)/1.05 var(--spro-display); }.spro-listing-copy > div > p { color: var(--spro-muted); }.spro-listing-copy ul { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; list-style: none; }.spro-listing-copy li { padding: 10px 13px; border: 1px solid var(--spro-line); border-radius: 9px; background: #fff; font-size: 13px; }.spro-listing-copy article { max-width: 780px; padding-top: 23px; }.spro-listing-copy article h2 { font: 550 26px var(--spro-display); }.spro-listing-copy article p { color: var(--spro-muted); font-size: 15px; line-height: 1.7; }.amenity-cloud { display: flex; flex-wrap: wrap; gap: 8px; }.amenity-cloud span { padding: 8px 10px; border-radius: 999px; background: #f4f1ea; font-size: 12px; }.spro-listing-copy > aside { position: sticky; top: 102px; align-self: start; padding: 26px; border: 1px solid var(--spro-line); border-radius: 16px; background: #fff; box-shadow: 0 16px 38px rgba(23,45,38,.1); }.spro-listing-copy > aside > span { color: var(--spro-emerald); font-size: 10px; font-weight: 850; letter-spacing: .12em; }.spro-listing-copy > aside > strong { display: block; margin: 7px 0 17px; font: 600 34px var(--spro-display); }.spro-listing-copy aside dl div { display: flex; justify-content: space-between; gap: 15px; padding: 10px 0; border-top: 1px solid var(--spro-line-soft); font-size: 13px; }.spro-listing-copy aside dd { margin: 0; font-weight: 700; }.spro-listing-copy aside > a { display: block; min-height: 48px; margin-top: 17px; border-radius: 9px; color: #fff; background: var(--spro-forest); font-weight: 800; line-height: 48px; text-align: center; text-decoration: none; }.spro-listing-copy aside > small { display: block; margin-top: 12px; color: var(--spro-muted); font-size: 11px; line-height: 1.5; }

@media (max-width: 1050px) {
  .spro-resident-hero,.spro-rent-hero { grid-template-columns: 1fr; }.spro-resident-hero aside,.spro-rent-hero > aside { border: 0; border-top: 1px solid rgba(255,255,255,.13); }.spro-rent-hero > aside { display: none; }
  .spro-public-listing-grid,.spro-host-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .spro-invoice-layout,.spro-custom-report-layout { grid-template-columns: 1fr; }
  .spro-invoice-party-grid { grid-template-columns: 1fr; }
  .spro-invoice-aside { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .spro-resident-grid,.spro-notice-grid,.spro-two-column,.spro-finance-summary,.spro-public-listing-grid,.spro-host-grid,.spro-invoice-aside { grid-template-columns: 1fr; }
  .spro-finance-summary article,.spro-finance-summary a { border-right: 0; border-bottom: 1px solid var(--spro-line-soft); }
  .spro-rent-header nav a:not(.primary):not(:last-child) { display: none; }.spro-rent-header { padding-inline: 16px; }
  .spro-rent-hero form { grid-template-columns: 1fr; }.spro-rent-hero form label { border: 0; border-bottom: 1px solid var(--spro-line); }.spro-rent-hero form button { min-height: 48px; }
  .spro-listing-gallery { height: 420px; grid-template-columns: 1fr; }.spro-listing-gallery .primary { grid-row: 1/3; }.spro-listing-gallery > div:not(.primary) { display: none; }.spro-listing-copy { grid-template-columns: 1fr; gap: 25px; }.spro-listing-copy > aside { position: static; }
  .spro-concierge-launch { right: 14px; bottom: 82px; }.spro-concierge { right: 8px; bottom: 8px; width: calc(100vw - 16px); max-height: calc(100vh - 16px); }
  .spro-resident-hero aside { padding: 22px 28px; }.spro-resident-actions a { flex: 1 1 auto; text-align: center; }
  .spro-custom-bars > div { grid-template-columns: 90px minmax(80px,1fr) 60px; }
}

/* SOCIETY PRO intelligence studio
   A deliberately roomy, resident-readable analytics surface layered over the
   shared application system. Canvas carries the data visualisation; CSS only
   provides the responsive frame and finite entrance/focus motion. */
.spro-intelligence-head { align-items: center; }
.spro-intelligence-head > div:first-child { max-width: 880px; }
.spro-export-lock {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  border: 1px solid #d9dbde;
  border-radius: 10px;
  color: #575c68;
  background: rgba(255,255,255,.78);
  font-size: 13px;
  font-weight: 750;
  white-space: nowrap;
}

.spro-intelligence-strip {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  overflow: hidden;
  margin-bottom: 16px;
  border: 1px solid var(--spro-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 34px rgba(24,47,40,.06);
}
.spro-intelligence-strip article {
  position: relative;
  min-height: 110px;
  padding: 19px 22px;
  border-right: 1px solid var(--spro-line-soft);
}
.spro-intelligence-strip article:last-child { border-right: 0; }
.spro-intelligence-strip article::after {
  position: absolute;
  inset: auto 22px 0;
  height: 3px;
  border-radius: 4px 4px 0 0;
  background: linear-gradient(90deg,var(--spro-gold),transparent);
  content: "";
  opacity: .7;
}
.spro-intelligence-strip span,
.spro-command-card header > span,
.spro-report-preview > header span,
.spro-chart-card header span {
  color: var(--spro-emerald);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .1em;
}
.spro-intelligence-strip strong {
  display: block;
  margin-top: 6px;
  font: 600 28px/1 var(--spro-display);
}
.spro-intelligence-strip small {
  display: block;
  margin-top: 7px;
  color: var(--spro-muted);
  font-size: 13px;
  line-height: 1.4;
}

.spro-studio-tabs {
  position: sticky;
  top: calc(var(--spro-topbar) + 10px);
  z-index: 28;
  display: flex;
  gap: 5px;
  overflow-x: auto;
  margin: 0 0 18px;
  padding: 5px;
  border: 1px solid rgba(216,224,220,.95);
  border-radius: 12px;
  background: rgba(245,244,238,.9);
  box-shadow: 0 9px 24px rgba(22,43,37,.07);
  backdrop-filter: blur(14px);
  scrollbar-width: none;
}
.spro-studio-tabs::-webkit-scrollbar { display: none; }
.spro-studio-tabs button {
  min-height: 44px;
  flex: 1 0 auto;
  padding: 0 16px;
  border: 0;
  border-radius: 8px;
  color: #545a66;
  background: transparent;
  font-size: 14px;
  font-weight: 750;
  cursor: pointer;
}
.spro-studio-tabs button b {
  display: inline-grid;
  min-width: 25px;
  min-height: 22px;
  place-items: center;
  margin-left: 7px;
  padding: 2px 6px;
  border-radius: 999px;
  color: inherit;
  background: rgba(12,103,88,.09);
  font-size: 12px;
}
.spro-studio-tabs button.active {
  color: #fff;
  background: linear-gradient(135deg,#07173b,#0d2969);
  box-shadow: 0 7px 18px rgba(7,59,53,.2);
}
.spro-studio-tabs button.active b { background: rgba(255,255,255,.16); }

.spro-report-view.active { animation: sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both; }
@keyframes sproStudioReveal {
  from { opacity: 0; transform: translateY(7px); }
  to { opacity: 1; transform: none; }
}
.spro-intelligence-hero {
  position: relative;
  display: grid;
  min-height: 330px;
  grid-template-columns: minmax(0,1.55fr) minmax(270px,.45fr);
  overflow: hidden;
  border-radius: 20px;
  color: #fff;
  background:
    radial-gradient(circle at 78% 25%,rgba(215,232,143,.17),transparent 24%),
    linear-gradient(118deg,#05122f 0%,#0a2052 60%,#0d2868 100%);
  box-shadow: 0 18px 48px rgba(7,59,53,.18);
}
.spro-intelligence-hero::before,
.spro-intelligence-hero::after {
  position: absolute;
  width: 350px;
  height: 350px;
  border: 1px solid rgba(238,226,202,.13);
  border-radius: 50%;
  content: "";
}
.spro-intelligence-hero::before { right: 60px; top: -230px; box-shadow: 0 0 0 55px rgba(238,226,202,.025),0 0 0 110px rgba(238,226,202,.02); }
.spro-intelligence-hero::after { left: -230px; bottom: -310px; }
.spro-intelligence-hero > div:first-child {
  position: relative;
  z-index: 2;
  align-self: center;
  padding: clamp(30px,5vw,66px);
}
.spro-intelligence-hero h2 {
  max-width: 650px;
  margin: 14px 0 12px;
  font: 500 clamp(42px,5vw,72px)/.98 var(--spro-display);
  letter-spacing: -.045em;
}
.spro-intelligence-hero p { max-width: 700px; margin: 0; color: #dad3c5; font-size: 16px; line-height: 1.65; }
.spro-intelligence-hero > div:first-child > div {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin-top: 25px;
}
.spro-intelligence-hero > div:first-child > div span {
  padding: 9px 12px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  color: #e4e0d6;
  background: rgba(255,255,255,.06);
  font-size: 13px;
}
.spro-intelligence-hero > div:first-child > div b { margin-right: 4px; color: #edc291; }
.spro-intelligence-orbit {
  position: relative;
  z-index: 2;
  display: grid;
  width: 235px;
  height: 235px;
  place-items: center;
  align-self: center;
  justify-self: center;
  border: 1px solid rgba(223,236,187,.28);
  border-radius: 50%;
  box-shadow: inset 0 0 55px rgba(216,237,145,.05),0 0 0 28px rgba(255,255,255,.025);
}
.spro-intelligence-orbit::before { position: absolute; inset: 31px; border: 1px dashed rgba(255,255,255,.2); border-radius: 50%; content: ""; }
.spro-intelligence-orbit > span { margin-top: -28px; color: #edc291; font: 600 67px/1 var(--spro-display); }
.spro-intelligence-orbit > b { position: absolute; bottom: 57px; font-size: 12px; letter-spacing: .12em; text-align: center; }
.spro-intelligence-orbit > i { position: absolute; width: 9px; height: 9px; border-radius: 50%; background: #edc291; box-shadow: 0 0 0 7px rgba(217,237,145,.1); }
.spro-intelligence-orbit > i:nth-of-type(1) { left: 8px; top: 102px; }
.spro-intelligence-orbit > i:nth-of-type(2) { right: 25px; top: 42px; }
.spro-intelligence-orbit > i:nth-of-type(3) { right: 16px; bottom: 54px; }
.spro-intelligence-orbit > i:nth-of-type(4) { left: 44px; bottom: 24px; }

.spro-overview-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 14px; }
.spro-command-card { position: relative; min-height: 305px; overflow: hidden; padding: 24px; }
.spro-command-card::after { position: absolute; right: -55px; bottom: -70px; width: 170px; height: 170px; border: 1px solid rgba(197,164,103,.18); border-radius: 50%; content: ""; }
.spro-command-card header { position: relative; z-index: 1; }
.spro-command-card h2 { margin: 8px 0; font: 550 27px/1.1 var(--spro-display); letter-spacing: -.025em; }
.spro-command-card p { margin: 0; color: var(--spro-muted); font-size: 15px; line-height: 1.6; }
.spro-command-card.dark { border-color: #16274e; color: #fff; background: linear-gradient(145deg,#0a193b,#09142d); }
.spro-command-card.dark header > span { color: #edc291; }
.spro-command-card.dark p { color: #cfc8b9; }
.spro-process-chip-cloud { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 23px; }
.spro-process-chip-cloud span { padding: 7px 9px; border: 1px solid var(--spro-line); border-radius: 999px; color: #414755; background: #fbfaf9; font-size: 12px; font-weight: 700; }
.spro-truth-list { display: grid; gap: 11px; margin-top: 25px; }
.spro-truth-list span { display: flex; align-items: center; gap: 9px; color: #e4e0d7; font-size: 14px; }
.spro-truth-list i { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; color: #08142f; background: #edc291; font-size: 12px; font-style: normal; font-weight: 900; }
.spro-authority-state { display: flex; align-items: center; gap: 12px; margin-top: 26px; padding: 14px; border: 1px solid #ead2b9; border-radius: 12px; background: #fbf3eb; }
.spro-authority-state.granted { border-color: #dad0bb; background: #f7f4ed; }
.spro-authority-state > i { display: grid; width: 39px; height: 39px; flex: 0 0 auto; place-items: center; border-radius: 10px; color: #7d5a21; background: #f0d8bf; font-style: normal; }
.spro-authority-state.granted > i { color: #fff; background: var(--spro-emerald); }
.spro-authority-state b,.spro-authority-state small { display: block; }
.spro-authority-state b { font-size: 14px; }
.spro-authority-state small { margin-top: 3px; color: var(--spro-muted); font-size: 12px; line-height: 1.4; }

.spro-studio-section-head,
.spro-report-library-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin: 24px 0 16px;
}
.spro-studio-section-head h2,
.spro-report-library-head h2 { margin: 7px 0 4px; font: 550 clamp(28px,3vw,38px)/1.05 var(--spro-display); letter-spacing: -.03em; }
.spro-studio-section-head p { max-width: 720px; margin: 0; color: var(--spro-muted); font-size: 15px; line-height: 1.6; }
.spro-studio-filters { display: flex; align-items: center; gap: 8px; }
.spro-studio-filters .spro-table-search { min-width: min(285px,38vw); }
.spro-select-filter { display: flex; min-height: 44px; align-items: center; gap: 8px; padding: 0 9px 0 12px; border: 1px solid var(--spro-line); border-radius: 9px; background: #fff; }
.spro-select-filter span { color: var(--spro-faint); font-size: 12px; font-weight: 750; }
.spro-select-filter select { min-width: 155px; height: 40px; border: 0; outline: 0; color: var(--spro-ink); background: transparent; font-size: 13px; font-weight: 700; }

.spro-selected-chart-cockpit { overflow: hidden; margin-bottom: 16px; border-color: #d0c8b8; box-shadow: 0 22px 55px rgba(11,62,54,.09); }
.spro-chart-cockpit-authority { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.spro-chart-cockpit-authority > span { color: var(--spro-muted); font-size: 13px; line-height: 1.35; text-align: right; }
.spro-chart-cockpit-authority b { display: block; color: var(--spro-forest); font-size: 15px; }
.spro-chart-cockpit-grid { display: grid; grid-template-columns: minmax(0,1.32fr) minmax(330px,.68fr); gap: 15px; padding: 0 18px 18px; }
.spro-chart-cockpit-visual { min-width: 0; }
.spro-chart-cockpit-visual .spro-canvas-shell,
.spro-chart-cockpit-visual .spro-canvas-shell canvas { min-height: 370px; height: 370px; }
.spro-chart-cockpit-kpis { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 10px; }
.spro-chart-cockpit-kpis span { display: grid; gap: 4px; min-height: 68px; padding: 12px; border: 1px solid var(--spro-line); border-radius: 12px; color: var(--spro-muted); background: linear-gradient(145deg,#fff,#faf9f6); font-size: 13px; line-height: 1.35; }
.spro-chart-cockpit-kpis b { color: var(--spro-forest); font: 650 24px/1 var(--spro-display); }
.spro-chart-cockpit-actions { min-width: 0; }
.spro-chart-action-grid { display: grid; grid-template-columns: 1fr; gap: 9px; max-height: 480px; overflow: auto; padding-right: 2px; }
.spro-chart-action-grid a,
.spro-chart-action-grid span.locked { position: relative; display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 4px 10px; min-height: 86px; padding: 13px; border: 1px solid var(--spro-line); border-radius: 13px; color: inherit; background: #fff; text-decoration: none; transition: border-color .18s, box-shadow .18s, transform .18s; }
.spro-chart-action-grid a:hover { border-color: var(--spro-emerald); box-shadow: 0 12px 26px rgba(7,59,53,.08); transform: translateY(-1px); }
.spro-chart-action-grid i { display: grid; width: 42px; height: 42px; grid-row: span 2; place-items: center; border-radius: 11px; color: #0b2767; background: #f5f1e7; font-style: normal; font-weight: 900; }
.spro-chart-action-grid b { color: var(--spro-forest); font-size: 14px; line-height: 1.25; }
.spro-chart-action-grid small { grid-column: 2; color: var(--spro-muted); font-size: 12px; line-height: 1.35; }
.spro-chart-action-grid span.locked { color: #6f746f; background: #f8f7f6; }
.spro-chart-action-grid span.locked i { color: #8a6f54; background: #f4e6d8; }
.spro-chart-action-grid span.locked em { position: absolute; right: 10px; top: 10px; padding: 4px 7px; border-radius: 999px; color: #8a5b1d; background: #f7e4d2; font-size: 10px; font-style: normal; font-weight: 900; }
.spro-chart-drilldown-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(310px,.48fr); gap: 15px; padding: 0 18px 18px; }
.spro-chart-observations,
.spro-chart-related-reports { overflow: hidden; border: 1px solid var(--spro-line); border-radius: 15px; background: #fff; }
.spro-chart-observations > header,
.spro-chart-related-reports > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 16px 18px; border-bottom: 1px solid var(--spro-line-soft); background: #faf9f6; }
.spro-chart-observations header span,
.spro-chart-related-reports header span { color: var(--spro-emerald); font-size: 11px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.spro-chart-observations h3,
.spro-chart-related-reports h3 { margin: 4px 0 0; font: 560 21px/1.12 var(--spro-display); color: var(--spro-forest); }
.spro-chart-observations .spro-table-wrap { padding: 0; }
.spro-chart-related-reports > div { display: grid; gap: 9px; padding: 14px; }
.spro-chart-related-reports a { display: grid; grid-template-columns: 56px minmax(0,1fr); gap: 3px 10px; align-items: center; min-height: 70px; padding: 12px; border: 1px solid var(--spro-line); border-radius: 12px; color: inherit; background: #fdfcfb; text-decoration: none; }
.spro-chart-related-reports a:hover { border-color: var(--spro-emerald); background: #f8f6f2; }
.spro-chart-related-reports a span { display: grid; width: 48px; height: 32px; place-items: center; border-radius: 999px; color: #0b2767; background: #f5f1e7; font-size: 11px; font-weight: 900; }
.spro-chart-related-reports a b { color: var(--spro-forest); font-size: 14px; line-height: 1.25; }
.spro-chart-related-reports a small { grid-column: 2; color: var(--spro-muted); font-size: 12px; line-height: 1.35; }
.spro-status.status-attention { color: #936321; background: #ffeede; }

.spro-chart-atlas { display: grid; grid-template-columns: repeat(3,minmax(300px,1fr)); gap: 14px; }
.spro-chart-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--spro-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(23,43,37,.035);
  transition: border-color .22s,box-shadow .22s,transform .22s;
}
.spro-chart-card:hover { border-color: #ccc6ba; box-shadow: 0 15px 35px rgba(22,48,40,.09); transform: translateY(-2px); }
.spro-chart-card.expanded { grid-column: 1/-1; border-color: #bdb39c; box-shadow: 0 20px 50px rgba(11,70,59,.13); }
.spro-chart-card.selected { border-color: #0b2767; box-shadow: 0 18px 42px rgba(11,103,88,.16); }
.spro-chart-card.selected > header { background: linear-gradient(135deg,#faf7f2,#fff); }
.spro-chart-card > header { display: flex; min-height: 86px; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 18px 18px 13px; }
.spro-chart-card h3 { margin: 5px 0 0; font: 550 22px/1.1 var(--spro-display); letter-spacing: -.02em; }
.spro-chart-card header em { flex: 0 0 auto; padding: 5px 7px; border-radius: 999px; color: #243661; background: #f3f0e8; font-size: 11px; font-style: normal; font-weight: 750; }
.spro-canvas-shell { position: relative; min-height: 236px; margin: 0 10px; overflow: hidden; border-radius: 12px; background: linear-gradient(155deg,#fbfaf9,#f5f4f2); }
.spro-canvas-shell::before { position: absolute; inset: 0; background: linear-gradient(rgba(12,103,88,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(12,103,88,.035) 1px,transparent 1px); background-size: 31px 31px; content: ""; pointer-events: none; }
.spro-canvas-shell canvas { position: relative; z-index: 1; display: block; width: 100%; height: 236px; opacity: 0; transition: opacity .25s; }
.spro-chart-card.expanded .spro-canvas-shell,
.spro-chart-card.expanded .spro-canvas-shell canvas { min-height: 330px; height: 330px; }
.spro-canvas-shell canvas.rendered { opacity: 1; }
.spro-canvas-shell.empty canvas { opacity: .18; }
.spro-canvas-kpi { position: absolute; z-index: 3; left: 13px; top: 12px; display: grid; padding: 7px 9px; border: 1px solid rgba(221,227,223,.85); border-radius: 9px; background: rgba(255,255,255,.88); box-shadow: 0 5px 15px rgba(18,42,35,.05); backdrop-filter: blur(8px); pointer-events: none; }
.spro-canvas-kpi strong { color: var(--spro-forest); font: 650 18px/1 var(--spro-display); }
.spro-canvas-kpi span { margin-top: 3px; color: var(--spro-muted); font-size: 11px; }
.spro-canvas-empty { position: absolute; inset: 0; z-index: 2; display: grid; place-content: center; justify-items: center; padding: 25px; color: #595f6c; text-align: center; }
.spro-canvas-empty i { display: grid; width: 45px; height: 45px; place-items: center; margin-bottom: 9px; border: 1px solid #d5d1c8; border-radius: 50%; color: var(--spro-emerald); background: #fff; font-size: 21px; font-style: normal; }
.spro-canvas-empty b { font-size: 14px; }
.spro-canvas-empty small { max-width: 250px; margin-top: 4px; font-size: 12px; line-height: 1.45; }
.spro-chart-card > p { min-height: 60px; margin: 0; padding: 15px 18px 12px; color: var(--spro-muted); font-size: 14px; line-height: 1.5; }
.spro-chart-card > footer { display: flex; min-height: 49px; align-items: center; gap: 8px; padding: 9px 12px 11px 18px; border-top: 1px solid var(--spro-line-soft); }
.spro-chart-card > footer > span { margin-right: auto; color: var(--spro-faint); font-size: 12px; font-weight: 750; }
.spro-chart-card > footer button,
.spro-chart-card > footer a { min-height: 34px; padding: 0 10px; border: 1px solid var(--spro-line); border-radius: 7px; color: var(--spro-forest); background: #fff; font-size: 12px; font-weight: 800; line-height: 32px; text-decoration: none; cursor: pointer; }
.spro-chart-card > footer button:hover,
.spro-chart-card > footer a:hover { border-color: #c0b8a6; background: #f8f7f5; }
.spro-chart-data { border-top: 1px solid var(--spro-line-soft); }
.spro-chart-data summary { min-height: 43px; padding: 12px 18px; color: var(--spro-muted); font-size: 12px; font-weight: 750; cursor: pointer; }
.spro-chart-data table { width: 100%; border-collapse: collapse; }
.spro-chart-data caption { padding: 9px 16px; color: var(--spro-muted); font-size: 12px; text-align: left; }
.spro-chart-data th,.spro-chart-data td { padding: 9px 16px; border-top: 1px solid var(--spro-line-soft); font-size: 12px; text-align: left; }
.spro-chart-data th { color: var(--spro-forest); }

.spro-report-authority { display: flex; min-width: 320px; align-items: center; justify-content: flex-end; gap: 12px; }
.spro-report-authority > span:first-child { color: var(--spro-muted); font-size: 13px; line-height: 1.4; text-align: right; }
.spro-report-authority > span:first-child b { display: block; color: var(--spro-forest); font-size: 15px; }
.spro-report-authority > div { display: flex; gap: 7px; }
.spro-report-preview { overflow: hidden; }
.spro-report-preview > header { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 19px; }
.spro-report-preview h3 { margin: 4px 0 0; font: 550 24px/1.15 var(--spro-display); }
.spro-report-data-table { min-width: 920px; }
.spro-report-preview > footer,
.spro-report-registry > footer { display: flex; min-height: 48px; align-items: center; justify-content: space-between; gap: 18px; padding: 10px 15px; border-top: 1px solid var(--spro-line-soft); color: var(--spro-muted); font-size: 12px; }
.spro-report-restricted { display: flex; align-items: flex-start; gap: 15px; margin: 0 18px 18px; padding: 21px; border: 1px solid #e9ceb4; border-radius: 12px; background: #fcf4ed; }
.spro-report-restricted > i { display: grid; width: 42px; height: 42px; flex: 0 0 auto; place-items: center; border-radius: 10px; color: #794c1e; background: #f0d6bd; font-style: normal; }
.spro-report-restricted b { font-size: 15px; }
.spro-report-restricted p { margin: 5px 0 0; color: var(--spro-muted); font-size: 14px; line-height: 1.55; }
.spro-empty-cell { display: block; min-width: 560px; padding: 27px; color: var(--spro-muted); text-align: center; }
.spro-report-library-head { margin-top: 34px; }
.spro-report-registry { overflow: hidden; }
.spro-report-registry table { min-width: 1050px; }
.spro-report-registry td:first-child { min-width: 330px; white-space: normal; }
.spro-report-registry td:nth-child(2) { min-width: 210px; }
.spro-report-registry .spro-mini-action { display: inline-flex; align-items: center; justify-content: center; padding: 0 10px; text-decoration: none; }
.spro-report-registry .spro-mini-action.active { color: #fff; background: var(--spro-forest); }
.spro-process-event-ledger { margin-top: 15px; overflow: hidden; }
.spro-process-event-ledger table { min-width: 820px; }
.spro-front-process-explorer{--spro-pe-zoom:1;margin-top:16px}
.spro-front-process-head{margin-top:0}
.spro-front-process-picker{display:grid;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:12px;margin:0 0 14px;padding:16px 18px;border:1px solid var(--spro-line);border-radius:15px;background:#fff;box-shadow:0 12px 30px rgba(20,52,45,.05)}
.spro-front-process-picker label,.spro-front-process-controls label{display:grid;gap:6px}
.spro-front-process-picker label>span,.spro-front-process-controls label>span,.spro-front-process-select>span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-front-process-picker select,.spro-front-process-select select{box-sizing:border-box;width:100%;min-height:44px;padding:9px 11px;border:1px solid #dad5c9;border-radius:10px;background:#fff;color:var(--spro-ink);font:700 14px/1.35 var(--spro-font)}
.spro-front-process-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin:0 0 14px;padding:15px 18px;border:1px solid var(--spro-line);border-radius:15px;background:linear-gradient(145deg,#fff,#fbfaf8)}
.spro-front-process-controls label>span{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#283249;text-transform:none;letter-spacing:0}
.spro-front-process-controls b{font-size:13px}.spro-front-process-controls output{padding:3px 7px;border-radius:999px;color:#0b2767;background:#f4efe4;font-size:12px;font-weight:900}
.spro-front-process-controls input[type=range]{accent-color:#0b2767;width:100%;cursor:pointer}
.spro-front-process-controls .spro-front-process-select{align-self:end}
.spro-front-process-kpis strong{color:var(--spro-forest)}
.spro-process-drilldown-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:14px;margin:14px 0}.spro-process-action-panel,.spro-process-report-panel{overflow:hidden}.spro-process-action-panel>div,.spro-process-report-panel>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-process-action-panel a,.spro-process-action-panel span.locked,.spro-process-report-panel a{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:5px 10px;min-height:86px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-process-action-panel a:hover,.spro-process-report-panel a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-process-action-panel i{display:grid;width:42px;height:42px;grid-row:span 2;place-items:center;border-radius:11px;color:#0b2767;background:#f5f1e7;font-style:normal;font-weight:900}.spro-process-action-panel b,.spro-process-report-panel b{color:var(--spro-forest);font-size:14px;line-height:1.25}.spro-process-action-panel small,.spro-process-report-panel small{grid-column:2;color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-process-action-panel span.locked{color:#6f746f;background:#f8f7f6}.spro-process-action-panel span.locked i{color:#8a6f54;background:#f4e6d8}.spro-process-action-panel span.locked em{position:absolute;right:10px;top:10px;padding:4px 7px;border-radius:999px;color:#8a5b1d;background:#f7e4d2;font-size:10px;font-style:normal;font-weight:900}.spro-process-report-panel a{grid-template-columns:minmax(48px,.22fr) minmax(0,1fr);min-height:76px}.spro-process-report-panel a span{display:grid;width:max-content;min-width:48px;height:32px;place-items:center;padding:0 8px;border-radius:999px;color:#0b2767;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}.spro-process-report-panel small{grid-column:2}.spro-process-analysis-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:14px;margin-top:15px}.spro-process-analysis-grid>.spro-panel{overflow:hidden}.spro-process-bottleneck-panel table{min-width:760px}.spro-process-case-panel table{min-width:980px}.spro-process-case-panel>.spro-panel-head{align-items:center}.spro-process-case-panel .spro-table-search{min-width:250px}
.spro-front-process-workbench{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);gap:16px;align-items:start;transform:scale(var(--spro-pe-zoom));transform-origin:top left;width:calc(100% / var(--spro-pe-zoom));transition:transform .18s ease,width .18s ease}
.spro-front-primary-flow,.spro-front-alternate-flows{overflow:hidden}
.spro-front-primary-flow ol,.spro-front-alternate-flows ol{list-style:none;margin:0;padding:0}
.spro-front-primary-flow>ol{display:grid;gap:0;padding:0 18px 18px}
.spro-front-primary-flow li{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:82px;padding:14px 14px 14px 0;border-bottom:1px solid var(--spro-line-soft)}
.spro-front-primary-flow li:before{content:"";position:absolute;left:20px;top:0;bottom:0;width:2px;background:#dad4c7}
.spro-front-primary-flow li:first-child:before{top:50%}.spro-front-primary-flow li:last-child:before{bottom:50%}
.spro-front-primary-flow li>i{position:relative;z-index:2;display:grid;width:42px;height:42px;place-items:center;border:3px solid #fff;border-radius:14px;color:#fff;background:linear-gradient(135deg,#0b2767,#bf8542);box-shadow:0 8px 20px rgba(11,103,88,.16);font:900 13px var(--spro-font);font-style:normal}
.spro-front-primary-flow li.start>i{background:linear-gradient(135deg,#0a1d4a,#7f5e17)}.spro-front-primary-flow li.end>i{background:linear-gradient(135deg,#754f1e,#d88532)}
.spro-front-primary-flow b,.spro-front-primary-flow small,.spro-front-primary-flow em,.spro-front-primary-flow strong{display:block}
.spro-front-primary-flow b{color:var(--spro-forest);font-size:15px;line-height:1.25}.spro-front-primary-flow small{margin-top:3px;color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-front-primary-flow strong{justify-self:end;font:560 22px var(--spro-display);color:#0b2767}.spro-front-primary-flow em{grid-column:2/-1;color:var(--spro-muted);font-size:12px;font-style:normal;font-weight:800}
.spro-front-primary-flow li.empty{grid-template-columns:1fr;padding:18px}.spro-front-primary-flow li.empty:before,.spro-front-primary-flow li.empty>i,.spro-front-primary-flow li[hidden],.spro-front-alternate-flows section[hidden]{display:none}
.spro-front-alternate-flows>div{display:grid;gap:12px;max-height:820px;overflow:auto;padding:0 18px 18px}
.spro-front-alternate-flows section{border:1px solid #e4d5bf;border-radius:15px;background:linear-gradient(145deg,#fff8f0,#fff);box-shadow:0 12px 28px rgba(68,50,21,.05)}
.spro-front-alternate-flows section>header{padding:15px;border-bottom:1px solid #efe4d3}
.spro-front-alternate-flows section>header span{color:#9a6525;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-front-alternate-flows h3{margin:5px 0 6px;color:#382918;font:560 22px/1.12 var(--spro-display)}
.spro-front-alternate-flows p,.spro-front-alternate-flows em{margin:0;color:#735f45;font-size:12px;line-height:1.45}.spro-front-alternate-flows em{display:block;margin-top:7px;font-style:normal;font-weight:850}
.spro-front-alternate-flows ol{display:grid;gap:6px;padding:12px 14px 15px}
.spro-front-alternate-flows li{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;padding:8px;border-radius:10px;background:#fff;color:#31394a;font-size:13px;font-weight:750}
.spro-front-alternate-flows li i{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;color:#876021;background:#f5e4d3;font-style:normal;font-weight:900}
.spro-front-alternate-flows li.changed{background:#fff2e1;color:#633d12}.spro-front-alternate-flows li.changed i{color:#fff;background:#b46b23}
.spro-front-primary-flow li.is-dimmed,.spro-front-alternate-flows section.is-dimmed{opacity:.42}
.spro-front-process-select option{text-transform:none}
@media(max-width:1180px){.spro-front-process-controls,.spro-process-action-panel>div,.spro-process-report-panel>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-process-drilldown-grid,.spro-process-analysis-grid,.spro-front-process-workbench{grid-template-columns:1fr}.spro-front-process-workbench{transform:none!important;width:auto!important}.spro-front-alternate-flows>div{max-height:none}}
@media(max-width:720px){.spro-front-process-picker{grid-template-columns:1fr}.spro-front-process-controls,.spro-process-action-panel>div,.spro-process-report-panel>div{grid-template-columns:1fr;padding:13px}.spro-front-primary-flow>ol,.spro-front-alternate-flows>div{padding:0 13px 13px}.spro-front-primary-flow li{grid-template-columns:38px minmax(0,1fr);padding-right:0}.spro-front-primary-flow li>i{width:38px;height:38px}.spro-front-primary-flow strong{grid-column:2;justify-self:start}.spro-front-primary-flow em{grid-column:2}.spro-front-alternate-flows h3{font-size:19px}.spro-process-case-panel>.spro-panel-head{align-items:flex-start;flex-direction:column}.spro-process-case-panel .spro-table-search{width:100%;min-width:0}}
.spro-empty-inline { margin: 14px 0; padding: 22px; border: 1px dashed #d6d2ca; border-radius: 12px; color: var(--spro-muted); background: #fff; text-align: center; }

@media (max-width: 1320px) {
  .spro-chart-cockpit-grid,
  .spro-chart-drilldown-grid { grid-template-columns: 1fr; }
  .spro-chart-action-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-height: none; }
  .spro-chart-atlas { grid-template-columns: repeat(2,minmax(300px,1fr)); }
  .spro-overview-grid { grid-template-columns: 1fr 1fr; }
  .spro-overview-grid .spro-command-card:last-child { grid-column: 1/-1; min-height: 245px; }
}
@media (max-width: 1020px) {
  .spro-intelligence-strip { grid-template-columns: 1fr 1fr; }
  .spro-intelligence-strip article:nth-child(2) { border-right: 0; }
  .spro-intelligence-strip article:nth-child(-n+2) { border-bottom: 1px solid var(--spro-line-soft); }
  .spro-intelligence-hero { grid-template-columns: 1fr minmax(210px,.35fr); }
  .spro-intelligence-orbit { width: 190px; height: 190px; }
  .spro-studio-section-head,.spro-report-library-head { align-items: flex-start; flex-direction: column; }
  .spro-studio-filters { width: 100%; }
  .spro-studio-filters .spro-table-search { flex: 1; }
  .spro-chart-cockpit-authority { justify-content: flex-start; }
  .spro-chart-cockpit-authority > span { text-align: left; }
  .spro-report-authority { width: 100%; justify-content: flex-start; }
  .spro-report-authority > span:first-child { margin-right: auto; text-align: left; }
}
@media (max-width: 760px) {
  .spro-intelligence-head { display: block; }
  .spro-intelligence-strip article { min-height: 98px; padding: 16px; }
  .spro-intelligence-strip strong { font-size: 24px; }
  .spro-studio-tabs { top: calc(var(--spro-topbar) + 5px); margin-inline: -4px; }
  .spro-studio-tabs button { flex: 0 0 auto; }
  .spro-intelligence-hero { display: block; min-height: 365px; }
  .spro-intelligence-hero > div:first-child { padding: 31px 24px 125px; }
  .spro-intelligence-hero h2 { font-size: 43px; }
  .spro-intelligence-orbit { position: absolute; right: -12px; bottom: -38px; display: grid; width: 165px; height: 165px; opacity: .8; }
  .spro-intelligence-orbit > span { font-size: 49px; }
  .spro-intelligence-orbit > b { bottom: 36px; font-size: 10px; }
  .spro-overview-grid,.spro-chart-atlas { grid-template-columns: 1fr; }
  .spro-overview-grid .spro-command-card:last-child { grid-column: auto; }
  .spro-command-card { min-height: 275px; padding: 20px; }
  .spro-studio-filters { display: grid; grid-template-columns: 1fr; }
  .spro-studio-filters .spro-table-search { width: 100%; min-width: 0; }
  .spro-select-filter { width: 100%; }
  .spro-select-filter select { min-width: 0; flex: 1; }
  .spro-chart-cockpit-grid,
  .spro-chart-drilldown-grid { padding: 0 13px 13px; }
  .spro-chart-cockpit-visual .spro-canvas-shell,
  .spro-chart-cockpit-visual .spro-canvas-shell canvas { min-height: 285px; height: 285px; }
  .spro-chart-action-grid,
  .spro-chart-cockpit-kpis { grid-template-columns: 1fr; }
  .spro-chart-observations table { min-width: 820px; }
  .spro-chart-related-reports a { grid-template-columns: 48px minmax(0,1fr); }
  .spro-chart-card.expanded { grid-column: auto; }
  .spro-chart-card.expanded .spro-canvas-shell,
  .spro-chart-card.expanded .spro-canvas-shell canvas { min-height: 285px; height: 285px; }
  .spro-chart-card > header { min-height: 96px; }
  .spro-chart-card header em { display: none; }
  .spro-canvas-shell,.spro-canvas-shell canvas { min-height: 225px; height: 225px; }
  .spro-report-authority { display: block; min-width: 0; }
  .spro-report-authority > div { margin-top: 9px; }
  .spro-report-preview > header { align-items: flex-start; flex-direction: column; }
  .spro-report-preview > header .spro-table-search { width: 100%; }
  .spro-report-preview > footer,.spro-report-registry > footer { align-items: flex-start; flex-direction: column; gap: 3px; }
}
@media (max-width: 460px) {
  .spro-intelligence-strip { grid-template-columns: 1fr; }
  .spro-intelligence-strip article { border-right: 0; border-bottom: 1px solid var(--spro-line-soft); }
  .spro-intelligence-strip article:last-child { border-bottom: 0; }
  .spro-chart-card > footer { flex-wrap: wrap; }
  .spro-chart-card > footer > span { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .spro-report-view.active { animation: none; }
  .spro-chart-card { transition: none; }
  .spro-chart-card:hover { transform: none; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--spro-ink); background: var(--spro-ivory); font-family: var(--spro-font); -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
a { color: inherit; }
img { max-width: 100%; }
[hidden] { display: none !important; }
::selection { color: #fff; background: var(--spro-emerald); }

.spro-skip { position: fixed; left: 16px; top: -80px; z-index: 999; padding: 10px 14px; border-radius: 8px; color: #fff; background: var(--spro-forest); text-decoration: none; transition: top .2s; }
.spro-skip:focus { top: 12px; }

/* App shell */
.spro-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 80; display: flex; width: var(--spro-sidebar); flex-direction: column; overflow: hidden; border-right: 1px solid rgba(255,255,255,.08); color: #f7f4ef; background: linear-gradient(175deg, #08142f 0%, #061029 58%, #09142f 100%); }
.spro-sidebar::after { position: absolute; right: -70px; bottom: -100px; width: 240px; height: 240px; border: 1px solid rgba(197,164,103,.13); border-radius: 50%; box-shadow: 0 0 0 38px rgba(197,164,103,.04), 0 0 0 78px rgba(197,164,103,.025); content: ""; pointer-events: none; }
.spro-side-head { display: flex; min-height: 70px; align-items: center; justify-content: space-between; padding: 0 20px; border-bottom: 1px solid rgba(255,255,255,.08); }
.spro-brand, .spro-auth-brand, .spro-auth-mobile-brand { display: inline-flex; align-items: center; gap: 10px; color: inherit; font-size: 14px; font-weight: 650; letter-spacing: .12em; text-decoration: none; }
.spro-brand b, .spro-auth-brand b, .spro-auth-mobile-brand b { color: #e6b47b; font-weight: 850; }
.spro-brand-mark { position: relative; display: inline-flex; width: 28px; height: 28px; align-items: flex-end; justify-content: center; gap: 2px; padding-bottom: 5px; border: 1px solid rgba(197,164,103,.6); border-radius: 50%; }
.spro-brand-mark i { display: block; width: 3px; border-radius: 1px 1px 0 0; background: #e6b47b; }
.spro-brand-mark i:nth-child(1) { height: 8px; }.spro-brand-mark i:nth-child(2) { height: 14px; }.spro-brand-mark i:nth-child(3) { height: 10px; }
.spro-brand-mark.large { width: 58px; height: 58px; gap: 4px; padding-bottom: 12px; background: var(--spro-forest); }.spro-brand-mark.large i { width: 5px; }.spro-brand-mark.large i:nth-child(1) { height: 16px; }.spro-brand-mark.large i:nth-child(2) { height: 26px; }.spro-brand-mark.large i:nth-child(3) { height: 20px; }
.spro-icon-button { position: relative; display: inline-grid; width: 38px; height: 38px; place-items: center; border: 1px solid var(--spro-line); border-radius: 9px; background: #fff; cursor: pointer; }
.spro-icon-button:hover { border-color: #c9c4b8; background: #faf9f8; }
.spro-side-close { display: none; border-color: rgba(255,255,255,.15); color: #fff; background: transparent; }
.spro-society-switch { display: grid; grid-template-columns: 36px minmax(0,1fr) 18px; align-items: center; gap: 10px; margin: 14px 12px 6px; padding: 9px; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; color: inherit; background: rgba(255,255,255,.06); text-align: left; cursor: pointer; }
.spro-society-switch:hover { background: rgba(255,255,255,.1); }
.spro-society-picker { position: relative; z-index: 5; }.spro-society-picker > summary { list-style: none; }.spro-society-picker > summary::-webkit-details-marker { display: none; }.spro-society-current { cursor: default; }.spro-society-options { position: absolute; right: 12px; left: 12px; z-index: 90; display: grid; max-height: 280px; gap: 3px; overflow: auto; padding: 6px; border: 1px solid rgba(255,255,255,.13); border-radius: 10px; background: #0b1837; box-shadow: 0 18px 38px rgba(0,0,0,.28); }.spro-society-options a { display: grid; min-height: 48px; grid-template-columns: 30px minmax(0,1fr); align-items: center; gap: 1px 8px; padding: 7px; border-radius: 7px; color: #e8e4dc; text-decoration: none; }.spro-society-options a:hover,.spro-society-options a[aria-current="true"] { background: rgba(205,230,123,.12); }.spro-society-options a > span { grid-row: 1/3; display: grid; width: 30px; height: 30px; place-items: center; border-radius: 7px; color: #182033; background: #e6b47b; font-weight: 850; }.spro-society-options b,.spro-society-options small { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.spro-society-options b { font-size: 12px; }.spro-society-options small { color: #ada38e; font-size: 10px; }
.spro-society-avatar { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 8px; color: #141b2a; background: linear-gradient(145deg,#f4e1cb,#dca669); font-family: var(--spro-display); font-size: 20px; font-weight: 700; }
.spro-society-switch span:nth-child(2) { min-width: 0; }.spro-society-switch b, .spro-society-switch small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.spro-society-switch b { font-size: 12px; }.spro-society-switch small { margin-top: 3px; color: #b7ae9a; font-size: 9px; }.spro-society-switch > i { color: #b7ae9a; font-style: normal; }
.spro-side-nav { position: relative; z-index: 1; flex: 1; overflow: auto; padding: 4px 10px 20px; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.18) transparent; }
.spro-nav-label { display: block; margin: 17px 10px 7px; color: #938a75; font-size: 8px; font-weight: 850; letter-spacing: .15em; }
.spro-side-nav a { display: grid; min-height: 38px; grid-template-columns: 24px minmax(0,1fr) auto; align-items: center; gap: 7px; margin: 2px 0; padding: 7px 9px; border-radius: 7px; color: #cdc6b7; font-size: 11px; font-weight: 650; text-decoration: none; transition: color .18s, background .18s, transform .18s; }
.spro-side-nav a > i { color: #a79e8c; font-family: Georgia, serif; font-size: 15px; font-style: normal; text-align: center; }.spro-side-nav a > small { padding: 2px 5px; border-radius: 999px; color: #b3ab9b; background: rgba(255,255,255,.06); font-size: 7px; text-transform: uppercase; }
.spro-side-nav a:hover { color: #fff; background: rgba(255,255,255,.06); transform: translateX(2px); }.spro-side-nav a.active { color: #fff; background: linear-gradient(90deg,rgba(202,226,119,.17),rgba(255,255,255,.055)); box-shadow: inset 2px 0 #e6b47b; }.spro-side-nav a.active > i { color: #edc291; }.spro-side-nav a.active > small { color: #edc291; background: rgba(205,230,123,.1); }
.spro-side-foot { position: relative; z-index: 1; padding: 12px; border-top: 1px solid rgba(255,255,255,.08); }.spro-system-health { display: flex; align-items: center; gap: 9px; padding: 9px; border-radius: 8px; background: rgba(255,255,255,.04); }.spro-system-health > span { width: 8px; height: 8px; flex: 0 0 auto; border-radius: 50%; background: #d6c08f; box-shadow: 0 0 0 5px rgba(143,214,158,.09); }.spro-system-health.tone-attention > span { background: #f0b35c; box-shadow: 0 0 0 5px rgba(240,179,92,.1); }.spro-system-health.tone-unknown > span { background: #a09784; box-shadow: 0 0 0 5px rgba(135,157,151,.1); }.spro-system-health p { min-width: 0; margin: 0; }.spro-system-health b,.spro-system-health small { display: block; }.spro-system-health b { font-size: 9px; }.spro-system-health small { margin-top: 2px; overflow: hidden; color: #9f957f; font-size: 8px; line-height: 1.35; text-overflow: ellipsis; }.spro-side-foot > a { display: flex; justify-content: space-between; margin-top: 8px; padding: 7px 9px; color: #ada38e; font-size: 9px; text-decoration: none; }
.spro-sidebar-scrim { display: none; }
.spro-shell { min-height: 100vh; margin-left: var(--spro-sidebar); }
.spro-sidebar-collapsed .spro-shell { margin-left: 0; }
.spro-sidebar-collapsed .spro-sidebar { transform: translateX(-102%); box-shadow: 20px 0 45px rgba(4,28,24,.22); transition: transform .22s; }
.spro-sidebar-collapsed.spro-sidebar-open .spro-sidebar { transform: none; }
.spro-sidebar-collapsed .spro-sidebar-scrim { position: fixed; inset: 0; z-index: 70; display: block; background: rgba(4,25,22,.55); opacity: 0; visibility: hidden; transition: .2s; }
.spro-sidebar-collapsed.spro-sidebar-open .spro-sidebar-scrim { opacity: 1; visibility: visible; }
.spro-sidebar-collapsed .spro-side-close,.spro-sidebar-collapsed .spro-menu-button { display: grid; }
.spro-topbar { position: sticky; top: 0; z-index: 55; display: flex; height: var(--spro-topbar); align-items: center; gap: 20px; padding: 0 24px; border-bottom: 1px solid var(--spro-line); background: rgba(255,255,255,.94); backdrop-filter: blur(16px); }
.spro-menu-button { display: none; }.spro-context { min-width: 190px; }.spro-context span,.spro-context b { display: block; }.spro-context span { margin-bottom: 3px; color: var(--spro-emerald); font-size: 8px; font-weight: 850; letter-spacing: .13em; }.spro-context b { font-size: 13px; }
.spro-command-search { display: flex; width: min(430px, 42vw); height: 38px; align-items: center; gap: 9px; margin: 0 auto; padding: 0 8px 0 12px; border: 1px solid var(--spro-line); border-radius: 9px; color: var(--spro-muted); background: #f9f8f7; cursor: pointer; }.spro-command-search > i { color: var(--spro-emerald); font-size: 18px; font-style: normal; }.spro-command-search > span { flex: 1; overflow: hidden; font-size: 10px; text-align: left; text-overflow: ellipsis; white-space: nowrap; }.spro-command-search kbd,.spro-command-dialog kbd,.spro-feature-toolbar kbd { padding: 3px 5px; border: 1px solid #d6d8dc; border-radius: 5px; color: #75807b; background: #fff; box-shadow: 0 1px 0 #d6d8dc; font: 8px var(--spro-font); }
.spro-top-actions { display: flex; align-items: center; gap: 8px; }.spro-top-actions > .spro-icon-button { color: var(--spro-ink); text-decoration: none; }.spro-top-actions > .spro-icon-button b { position: absolute; right: -3px; top: -4px; min-width: 16px; height: 16px; padding: 0 4px; border: 2px solid #fff; border-radius: 999px; color: #fff; background: var(--spro-coral); font-size: 7px; line-height: 12px; }.spro-live-pill { display: inline-flex; align-items: center; gap: 6px; color: #525c73; font-size: 9px; font-weight: 750; }.spro-live-pill i { width: 7px; height: 7px; border-radius: 50%; background: #a58235; box-shadow: 0 0 0 4px #f3ede1; }
.spro-user-menu { position: relative; }.spro-user-menu summary { display: grid; min-width: 174px; grid-template-columns: 34px minmax(0,1fr) 12px; align-items: center; gap: 8px; padding: 3px; list-style: none; cursor: pointer; }.spro-user-menu summary::-webkit-details-marker { display: none; }.spro-user-avatar { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 8px; color: #fff; background: linear-gradient(145deg,#695832,#0b1c44); font-family: var(--spro-display); font-size: 15px; }.spro-user-menu summary b,.spro-user-menu summary small { display: block; max-width: 105px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.spro-user-menu summary b { font-size: 10px; }.spro-user-menu summary small { margin-top: 2px; color: var(--spro-muted); font-size: 8px; }.spro-user-menu summary > i { color: var(--spro-faint); font-style: normal; }.spro-user-menu > div { position: absolute; right: 0; top: 46px; z-index: 60; display: grid; width: 180px; padding: 6px; border: 1px solid var(--spro-line); border-radius: 10px; background: #fff; box-shadow: var(--spro-shadow); }.spro-user-menu > div a,.spro-user-menu > div form button { width: 100%; min-height: 38px; padding: 9px 10px; border: 0; border-radius: 6px; color: var(--spro-ink); background: transparent; font-family: inherit; font-size: 10px; text-align: left; text-decoration: none; cursor: pointer; }.spro-user-menu > div form { margin: 0; }.spro-user-menu > div a:hover,.spro-user-menu > div form button:hover { background: var(--spro-ivory); }
.spro-main { width: 100%; max-width: 1720px; margin: 0 auto; padding: 26px 28px 54px; outline: none; }
.spro-mobile-dock { display: none; }
.spro-messages { position: fixed; right: 20px; top: 78px; z-index: 70; display: grid; gap: 8px; width: min(380px,calc(100vw - 32px)); }.spro-message { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 14px; border: 1px solid #d9cfb8; border-radius: 10px; color: #17284f; background: #f8f5ed; box-shadow: var(--spro-shadow); font-size: 10px; }.spro-message.error { border-color: #edb8b4; color: #813b35; background: #fff1ef; }.spro-message button { border: 0; background: none; cursor: pointer; }

/* Shared controls */
.spro-page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin: 0 0 22px; }.spro-page-head h1 { margin: 6px 0 5px; font-family: var(--spro-display); font-size: clamp(30px,3vw,45px); font-weight: 500; letter-spacing: -.035em; }.spro-page-head p { max-width: 730px; margin: 0; color: var(--spro-muted); font-size: 11px; line-height: 1.6; }
.spro-eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--spro-emerald); font-size: 8px; font-weight: 850; letter-spacing: .15em; }.spro-eyebrow > i { width: 21px; height: 1px; background: var(--spro-gold); }.spro-eyebrow.light { color: #e8e3d8; }.spro-eyebrow.light > i { background: #d4a97e; }
.spro-page-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 8px; }
.spro-button { display: inline-flex; min-height: 40px; align-items: center; justify-content: center; gap: 8px; padding: 0 16px; border: 1px solid transparent; border-radius: 8px; font-size: 13px; font-weight: 800; line-height: 1.2; text-decoration: none; cursor: pointer; transition: transform .16s,box-shadow .16s,background .16s; }.spro-button:hover { transform: translateY(-1px); }.spro-button-primary { color: #fff; background: var(--spro-forest); box-shadow: 0 8px 18px rgba(7,59,53,.14); }.spro-button-primary:hover { background: var(--spro-emerald); box-shadow: 0 10px 24px rgba(7,59,53,.2); }.spro-button-quiet { border-color: var(--spro-line); color: var(--spro-ink); background: #fff; }.spro-button-quiet:hover { border-color: #bcc0ca; }.spro-button-full { width: 100%; }
.spro-panel { border: 1px solid var(--spro-line); border-radius: var(--spro-radius); background: #fff; box-shadow: 0 2px 7px rgba(28,48,42,.025); }.spro-panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 18px 19px 14px; }.spro-panel-head span:first-child { color: var(--spro-emerald); font-size: 7px; font-weight: 850; letter-spacing: .14em; }.spro-panel-head h2 { margin: 4px 0 0; font-family: var(--spro-display); font-size: 22px; font-weight: 550; letter-spacing: -.02em; }.spro-panel-head p { margin: 3px 0 0; color: var(--spro-muted); font-size: 9px; }.spro-panel-head > a { color: var(--spro-emerald); font-size: 9px; font-weight: 800; text-decoration: none; }
.spro-field { display: grid; gap: 6px; color: var(--spro-ink); font-size: 9px; font-weight: 750; }.spro-field > span { display: flex; justify-content: space-between; }.spro-field > span small { color: var(--spro-faint); font-size: 8px; font-weight: 500; }.spro-field input,.spro-field select,.spro-field textarea,.spro-new-ticket select,.spro-new-ticket textarea { width: 100%; min-height: 39px; padding: 9px 11px; border: 1px solid var(--spro-line); border-radius: 8px; outline: none; color: var(--spro-ink); background: #fff; font-size: 10px; resize: vertical; }.spro-field input:focus,.spro-field select:focus,.spro-field textarea:focus,.spro-new-ticket textarea:focus { border-color: var(--spro-emerald); box-shadow: 0 0 0 3px rgba(12,103,88,.09); }.spro-field > small { color: var(--spro-faint); font-size: 8px; font-weight: 500; }.spro-field-error { color: var(--spro-coral) !important; }.spro-form-error { padding: 10px 12px; border: 1px solid #efc1bd; border-radius: 8px; color: #8a3b35; background: #fff3f1; font-size: 9px; }.spro-form-error ul { margin: 0; padding-left: 18px; }
.spro-settings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }.spro-span-2,.spro-field-wide { grid-column: 1/-1; }
.spro-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.spro-consent { display: flex; align-items: flex-start; gap: 8px; color: var(--spro-muted); font-size: 9px; font-weight: 500; line-height: 1.45; }.spro-consent input { flex: 0 0 auto; accent-color: var(--spro-emerald); }
.spro-filter-button { min-height: 32px; padding: 0 10px; border: 1px solid var(--spro-line); border-radius: 7px; color: var(--spro-muted); background: #fff; font-size: 8px; font-weight: 750; cursor: pointer; }
.spro-table-wrap { width: 100%; overflow: auto; }.spro-table { width: 100%; border-collapse: collapse; white-space: nowrap; }.spro-table th { padding: 9px 12px; border: solid var(--spro-line-soft); border-width: 1px 0; color: var(--spro-faint); background: #fbfaf9; font-size: 7px; font-weight: 850; letter-spacing: .09em; text-align: left; text-transform: uppercase; }.spro-table td { padding: 10px 12px; border-bottom: 1px solid var(--spro-line-soft); color: #444955; font-size: 9px; vertical-align: middle; }.spro-table tbody tr:hover { background: #fcfbfa; }.spro-table td > b,.spro-table td > small { display: block; }.spro-table td > b { color: var(--spro-ink); font-size: 9px; }.spro-table td > small { margin-top: 3px; color: var(--spro-faint); font-size: 7px; }.spro-table input[type="checkbox"] { accent-color: var(--spro-emerald); }.spro-row-action { border: 0; color: var(--spro-muted); background: transparent; cursor: pointer; }.spro-table-footer { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px; color: var(--spro-faint); font-size: 8px; }.spro-table-footer div { display: flex; align-items: center; gap: 4px; }.spro-table-footer button,.spro-table-footer b { display: grid; width: 26px; height: 26px; place-items: center; border: 1px solid var(--spro-line); border-radius: 6px; background: #fff; font-size: 8px; }.spro-table-footer b { color: #fff; background: var(--spro-forest); }
.spro-table-search { display: flex; height: 34px; align-items: center; gap: 7px; padding: 0 9px; border: 1px solid var(--spro-line); border-radius: 7px; background: #fff; }.spro-table-search i { color: var(--spro-emerald); font-size: 15px; font-style: normal; }.spro-table-search input { width: 190px; border: 0; outline: 0; background: transparent; font-size: 9px; }
.spro-segmented { display: inline-flex; padding: 3px; border: 1px solid var(--spro-line); border-radius: 8px; background: #f9f8f7; }.spro-segmented button { min-height: 27px; padding: 0 10px; border: 0; border-radius: 5px; color: var(--spro-muted); background: transparent; font-size: 8px; font-weight: 750; cursor: pointer; }.spro-segmented button.active { color: var(--spro-forest); background: #fff; box-shadow: 0 1px 4px rgba(27,48,42,.1); }.spro-segmented button b { margin-left: 4px; padding: 2px 5px; border-radius: 999px; color: #fff; background: var(--spro-emerald); font-size: 7px; }
.spro-priority { display: inline-grid; min-width: 27px; min-height: 20px; place-items: center; padding: 0 6px; border-radius: 5px; font-size: 7px; font-style: normal; font-weight: 850; }.spro-priority.p0 { color: #9a342e; background: #fbe4e2; }.spro-priority.p1 { color: #a05e19; background: #f9ead9; }.spro-priority.p2 { color: #84692f; background: #f5f0e4; }.spro-priority.p3 { color: #505665; background: #efede9; }
.spro-status { display: inline-flex; align-items: center; gap: 5px; padding: 4px 7px; border-radius: 999px; color: #263861; background: #f2eee6; font-size: 7px; font-weight: 800; text-transform: capitalize; }.spro-status::before { width: 5px; height: 5px; border-radius: 50%; background: currentColor; content: ""; }.spro-status.status-pending,.spro-status.status-busy,.spro-status.status-assigned { color: #97641e; background: #f9edda; }.spro-status.status-open { color: #826a37; background: #f6f1e6; }.spro-status.status-in_progress { color: #8a7954; background: #f5f1e9; }
.spro-owner-avatar,.spro-person-avatar { display: inline-grid; width: 25px; height: 25px; place-items: center; margin-right: 6px; border-radius: 6px; color: #fff; background: #7d6f50; font-size: 7px; font-weight: 850; vertical-align: middle; }.spro-person-avatar { width: 30px; height: 30px; background: linear-gradient(145deg,#38486d,#17274c); font-family: var(--spro-display); font-size: 10px; }
.spro-sla { color: #444d64; font-size: 8px; font-weight: 800; }.spro-sla.risk { color: var(--spro-coral); }
.spro-drawer { position: fixed; inset: var(--spro-topbar) 0 0 auto; z-index: 75; width: min(460px,100vw); overflow: auto; padding: 20px; border-left: 1px solid var(--spro-line); background: #fff; box-shadow: -18px 0 50px rgba(22,42,36,.15); }.spro-drawer > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 18px; }.spro-drawer > header span { color: var(--spro-emerald); font-size: 8px; font-weight: 850; letter-spacing: .13em; }.spro-drawer > header h2 { margin: 5px 0; font-family: var(--spro-display); font-size: 28px; font-weight: 550; }.spro-drawer > header p { margin: 0; color: var(--spro-muted); font-size: 9px; line-height: 1.5; }.spro-drawer > header > button { width: 34px; height: 34px; border: 1px solid var(--spro-line); border-radius: 8px; background: #fff; cursor: pointer; }.spro-drawer > form { display: grid; gap: 14px; }

/* Dashboard */
.spro-page-head-dashboard h1 { font-size: clamp(34px,3.6vw,52px); }.spro-metric-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-bottom: 14px; }.spro-metric-card { position: relative; overflow: hidden; padding: 15px 16px 13px; border: 1px solid var(--spro-line); border-radius: 12px; background: #fff; }.spro-metric-card::after { position: absolute; right: -32px; bottom: -48px; width: 110px; height: 110px; border: 16px solid var(--metric-soft,#f1eee8); border-radius: 50%; content: ""; opacity: .6; }.spro-metric-card header,.spro-metric-card footer { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; }.spro-metric-card header span { color: var(--spro-muted); font-size: 8px; font-weight: 750; }.spro-metric-card header i { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 6px; color: var(--metric,#293a63); background: var(--metric-soft,#f1eee8); font-style: normal; }.spro-metric-card > strong { position: relative; z-index: 1; display: block; margin: 9px 0 10px; font-family: var(--spro-display); font-size: 31px; font-weight: 600; letter-spacing: -.035em; }.spro-metric-card > strong small { color: var(--spro-faint); font-family: var(--spro-font); font-size: 10px; }.spro-metric-card footer { justify-content: flex-start; gap: 5px; }.spro-metric-card footer b { color: var(--spro-emerald); font-size: 7px; }.spro-metric-card footer b.down { color: var(--spro-coral); }.spro-metric-card footer span { color: var(--spro-faint); font-size: 7px; }.spro-metric-card.tone-blue { --metric:#8e743c;--metric-soft:#f4f0e6; }.spro-metric-card.tone-gold { --metric:#a87529;--metric-soft:#f5ead8; }.spro-metric-card.tone-violet { --metric:#8b7b5a;--metric-soft:#f4f1ea; }
.spro-dashboard-grid { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(270px,.72fr); gap: 14px; }.spro-priority-panel,.spro-collection-panel { min-width: 0; }.spro-priority-table th:first-child,.spro-priority-table td:first-child { padding-left: 18px; }.spro-ai-strip { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: 0 0 var(--spro-radius) var(--spro-radius); background: linear-gradient(90deg,#f6f3ed,#faf9f7); }.spro-ai-glyph { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 8px; color: #e9b77e; background: var(--spro-forest); font-size: 7px; font-weight: 900; }.spro-ai-strip p { flex: 1; margin: 0; }.spro-ai-strip b,.spro-ai-strip small { display: block; }.spro-ai-strip b { font-size: 8px; }.spro-ai-strip small { margin-top: 2px; color: var(--spro-muted); font-size: 7px; }.spro-ai-strip > a { color: var(--spro-emerald); font-size: 8px; font-weight: 850; text-decoration: none; }
.spro-health-score { display: flex; align-items: center; gap: 14px; padding: 0 18px 14px; }.spro-score-ring { --score:94; position: relative; display: grid; width: 82px; height: 82px; flex: 0 0 auto; place-content: center; border-radius: 50%; background: conic-gradient(var(--spro-emerald) calc(var(--score)*1%),#eceae6 0); text-align: center; }.spro-score-ring::before { position: absolute; inset: 7px; border-radius: 50%; background: #fff; content: ""; }.spro-score-ring strong,.spro-score-ring small { position: relative; display: block; }.spro-score-ring strong { font: 600 24px var(--spro-display); }.spro-score-ring small { color: var(--spro-faint); font-size: 6px; letter-spacing: .1em; }.spro-health-score > div:last-child b { font: 550 17px var(--spro-display); }.spro-health-score > div:last-child p { margin: 4px 0 0; color: var(--spro-muted); font-size: 8px; line-height: 1.5; }.spro-pulse-list { padding: 0 16px 12px; }.spro-pulse-list > div { display: grid; grid-template-columns: 24px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 10px 0; border-top: 1px solid var(--spro-line-soft); }.spro-pulse-list > div > i { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 6px; font-size: 8px; font-style: normal; }.spro-pulse-list i.good { color: #705825; background: #f2eee5; }.spro-pulse-list i.warn { color: #986319; background: #f8ecd8; }.spro-pulse-list b,.spro-pulse-list small { display: block; }.spro-pulse-list b { font-size: 8px; }.spro-pulse-list small { margin-top: 2px; color: var(--spro-faint); font-size: 7px; }.spro-pulse-list > div > strong { font-size: 8px; }
.spro-chart-summary { display: flex; align-items: flex-start; justify-content: space-between; padding: 0 18px; }.spro-chart-summary small,.spro-chart-summary strong,.spro-chart-summary span { display: block; }.spro-chart-summary small { color: var(--spro-faint); font-size: 7px; font-weight: 800; }.spro-chart-summary strong { margin: 3px 0; font: 600 30px var(--spro-display); }.spro-chart-summary span { color: var(--spro-muted); font-size: 8px; }.spro-trend-pill { display: inline-flex !important; padding: 5px 7px; border-radius: 999px; color: #695427 !important; background: #f2ede2; font-size: 7px !important; font-weight: 850; }
.spro-collection-progress { display: grid; gap: 10px; padding: 24px 18px 20px; }.spro-collection-progress > span { display: block; height: 16px; overflow: hidden; border-radius: 999px; background: #efece7; }.spro-collection-progress > span i { display: block; width: var(--progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#0c2767,#b7964f); animation: spro-grow 1s ease both; }.spro-collection-progress > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; }.spro-collection-progress b { font-size: 13px; }.spro-collection-progress small,.spro-table-muted { color: var(--spro-muted); font-size: 12px; }
.spro-line-chart { position: relative; height: 170px; margin: 5px 20px 13px 46px; background: repeating-linear-gradient(to bottom,transparent 0,transparent 54px,#edeef0 55px); }.spro-line-chart svg { position: absolute; inset: 0; width: 100%; height: calc(100% - 24px); overflow: visible; }.spro-line-chart .line { fill: none; stroke: var(--spro-emerald); stroke-width: 3; vector-effect: non-scaling-stroke; }.spro-line-chart circle { fill: #fff; stroke: var(--spro-emerald); stroke-width: 3; }.spro-line-chart .y { position: absolute; left: -36px; color: var(--spro-faint); font-size: 7px; }.spro-line-chart .y1 { top: 0; }.spro-line-chart .y2 { top: 55px; }.spro-line-chart .y3 { top: 110px; }.spro-line-chart .x { position: absolute; inset: auto 0 0; display: flex; justify-content: space-between; color: var(--spro-faint); font-size: 7px; }
.spro-quick-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding: 0 14px 14px; }.spro-quick-grid a { display: grid; grid-template-columns: 28px 1fr; align-items: center; gap: 7px; min-height: 55px; padding: 8px; border: 1px solid var(--spro-line-soft); border-radius: 9px; text-decoration: none; }.spro-quick-grid a:hover { border-color: #d7d0c2; background: #fbfaf8; }.spro-quick-grid i { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 7px; color: var(--spro-emerald); background: #f3f0e8; font-style: normal; }.spro-quick-grid b,.spro-quick-grid small { display: block; }.spro-quick-grid b { font-size: 8px; }.spro-quick-grid small { margin-top: 2px; color: var(--spro-faint); font-size: 6px; }
.spro-activity-list { padding: 0 16px 10px; }.spro-activity-list > div { display: grid; grid-template-columns: 30px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 10px 0; border-top: 1px solid var(--spro-line-soft); }.spro-activity-list > div > span { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 7px; color: #263863; background: #f2efe7; font-size: 8px; font-weight: 850; }.spro-activity-list .tone-blue { color: #846e3d; background: #f4efe5; }.spro-activity-list .tone-gold { color: #916322; background: #f5ebdc; }.spro-activity-list .tone-violet { color: #8a7955; background: #f4f1e9; }.spro-activity-list p { margin: 0; }.spro-activity-list b,.spro-activity-list small { display: block; }.spro-activity-list b { font-size: 8px; }.spro-activity-list small { margin-top: 3px; color: var(--spro-faint); font-size: 7px; }.spro-activity-list time { color: var(--spro-faint); font-size: 7px; }

/* Service command */
.spro-service-stats,.spro-directory-stats { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 1px; overflow: hidden; margin-bottom: 14px; border: 1px solid var(--spro-line); border-radius: 11px; background: var(--spro-line); }.spro-service-stats article,.spro-directory-stats article { padding: 12px 14px; background: #fff; }.spro-service-stats span,.spro-service-stats strong,.spro-service-stats small,.spro-directory-stats span,.spro-directory-stats strong,.spro-directory-stats small { display: block; }.spro-service-stats span,.spro-directory-stats span { color: var(--spro-faint); font-size: 7px; font-weight: 800; text-transform: uppercase; }.spro-service-stats strong,.spro-directory-stats strong { margin: 4px 0 3px; font: 600 23px var(--spro-display); }.spro-service-stats strong.warn { color: var(--spro-coral); }.spro-service-stats small,.spro-directory-stats small { color: var(--spro-muted); font-size: 7px; }
.spro-service-layout { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(310px,.65fr); align-items: start; gap: 14px; }.spro-ticket-workspace { min-width: 0; }.spro-ticket-toolbar,.spro-directory-toolbar { display: flex; align-items: center; gap: 8px; padding: 12px 14px; }.spro-ticket-toolbar .spro-table-search,.spro-directory-toolbar .spro-table-search { margin-left: auto; }.spro-active-filters { display: flex; align-items: center; gap: 6px; padding: 8px 14px; border-top: 1px solid var(--spro-line-soft); background: #fbfaf9; }.spro-active-filters span { padding: 4px 7px; border: 1px solid var(--spro-line); border-radius: 999px; background: #fff; font-size: 7px; }.spro-active-filters button { border: 0; background: none; font-size: 7px; cursor: pointer; }
.spro-new-ticket { position: sticky; top: calc(var(--spro-topbar) + 16px); overflow: hidden; }.spro-new-ticket > header { padding: 18px 18px 5px; }.spro-new-ticket h2 { margin: 7px 0 4px; font: 550 27px var(--spro-display); }.spro-new-ticket header p { margin: 0; color: var(--spro-muted); font-size: 9px; line-height: 1.55; }.spro-new-ticket form { display: grid; gap: 12px; padding: 14px 18px 18px; }.spro-new-ticket textarea { margin-top: 1px; }.spro-triage-result { display: grid; gap: 4px; margin: 12px 18px 0; padding: 11px; border: 1px solid #d8d0bf; border-radius: 8px; background: #f8f5ef; }.spro-triage-result > span { color: var(--spro-emerald); font-size: 7px; font-weight: 850; letter-spacing: .12em; }.spro-triage-result > b { display: flex; align-items: center; gap: 7px; font-size: 10px; }.spro-triage-result > small { color: var(--spro-muted); font-size: 8px; }.spro-upload { display: flex; min-height: 62px; align-items: center; gap: 10px; padding: 10px; border: 1px dashed #ccc7bb; border-radius: 9px; background: #fbfaf9; cursor: pointer; }.spro-upload input { display: none; }.spro-upload > i { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 7px; color: var(--spro-emerald); background: #f2efe7; font-style: normal; }.spro-upload b,.spro-upload small { display: block; }.spro-upload b { font-size: 8px; }.spro-upload small { margin-top: 3px; color: var(--spro-faint); font-size: 7px; }
.spro-category-list { display: grid; gap: 6px; margin-top: 14px; }.spro-category-list > div { display: grid; grid-template-columns: 36px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 9px; border: 1px solid var(--spro-line-soft); border-radius: 9px; }.spro-category-icon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 8px; color: var(--spro-emerald); background: #f2efe8; }.spro-category-list p { margin: 0; }.spro-category-list b,.spro-category-list small { display: block; }.spro-category-list b { font-size: 9px; }.spro-category-list small { margin-top: 3px; color: var(--spro-faint); font-size: 7px; }

/* Touch-first kiosk */
.spro-touch-body .spro-main{max-width:none;padding-bottom:34px}.spro-touch-shell{max-width:1440px;margin:auto}.spro-touch-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:22px;margin-bottom:18px}.spro-touch-head h1{margin:7px 0 3px;font:500 clamp(33px,4vw,52px) var(--spro-display);letter-spacing:-.035em}.spro-touch-head p{margin:0;color:var(--spro-muted);font-size:10px}.spro-touch-clock{min-width:130px;padding-right:22px;border-right:1px solid var(--spro-line);text-align:right}.spro-touch-clock strong,.spro-touch-clock span{display:block}.spro-touch-clock strong{font:600 30px var(--spro-display)}.spro-touch-clock span{color:var(--spro-muted);font-size:8px}
.spro-touch-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;padding:7px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-touch-tabs button{display:grid;min-height:70px;grid-template-columns:38px minmax(0,1fr);align-content:center;align-items:center;gap:0 10px;padding:8px 12px;border:0;border-radius:10px;color:var(--spro-muted);background:transparent;text-align:left;cursor:pointer}.spro-touch-tabs button>i{display:grid;width:38px;height:38px;grid-row:span 2;place-items:center;border-radius:9px;color:var(--spro-emerald);background:#f3f0e8;font-size:17px;font-style:normal}.spro-touch-tabs button span,.spro-touch-tabs button small{display:block}.spro-touch-tabs button span{align-self:end;color:var(--spro-ink);font-size:10px;font-weight:800}.spro-touch-tabs button small{align-self:start;margin-top:2px;font-size:7px}.spro-touch-tabs button.active{color:#d9d3c5;background:var(--spro-forest);box-shadow:0 8px 22px rgba(7,59,53,.17)}.spro-touch-tabs button.active>i{color:#eabf8e;background:rgba(255,255,255,.1)}.spro-touch-tabs button.active span{color:#fff}
.spro-touch-panel{min-height:530px;padding:20px;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:0 10px 32px rgba(30,48,42,.05)}.spro-touch-intro{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:13px;margin-bottom:18px}.spro-touch-intro>span{display:grid;width:50px;height:50px;place-items:center;border-radius:12px;color:var(--spro-emerald);background:var(--spro-mint);font:600 20px var(--spro-display)}.spro-touch-intro h2{margin:0;font:550 28px var(--spro-display)}.spro-touch-intro p{margin:2px 0 0;color:var(--spro-muted);font-size:9px}.spro-touch-intro>small{padding:7px 10px;border-radius:999px;color:#67542b;background:#f2eee5;font-size:8px;font-weight:800}
.spro-touch-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.spro-touch-actions>button{display:grid;min-height:116px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--spro-line);border-radius:13px;background:#fff;text-align:left;cursor:pointer;transition:.18s}.spro-touch-actions>button:hover{border-color:#c0b49b;box-shadow:0 10px 25px rgba(15,63,54,.09);transform:translateY(-2px)}.spro-touch-actions>button>i{display:grid;width:52px;height:52px;place-items:center;border-radius:12px;color:var(--spro-emerald);background:#f3f0e8;font-size:22px;font-style:normal}.spro-touch-actions b,.spro-touch-actions small{display:block}.spro-touch-actions b{font-size:12px}.spro-touch-actions small{margin-top:4px;color:var(--spro-muted);font-size:8px}.spro-touch-actions em{color:var(--spro-emerald);font-size:19px;font-style:normal}
.spro-touch-recent{margin-top:15px;padding:14px 16px;border-radius:12px;background:#f7f6f4}.spro-touch-recent header,.spro-touch-recent>div{display:flex;align-items:center}.spro-touch-recent header{justify-content:space-between}.spro-touch-recent h3{margin:0;font:550 17px var(--spro-display)}.spro-touch-recent header span{color:var(--spro-muted);font-size:8px}.spro-touch-recent header i{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;background:#a58235}.spro-touch-recent>div{gap:20px;margin-top:10px}.spro-touch-recent>div>span b,.spro-touch-recent>div>span small{display:block}.spro-touch-recent>div>span b{font:600 19px var(--spro-display)}.spro-touch-recent>div>span small{color:var(--spro-muted);font-size:7px}.spro-touch-recent>div>a{margin-left:auto;color:var(--spro-emerald);font-size:8px;font-weight:800;text-decoration:none}
.spro-touch-scan{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(350px,1.25fr);gap:28px;max-width:950px;margin:10px auto}.spro-scan-target{position:relative;display:grid;aspect-ratio:1;place-items:center;overflow:hidden;border-radius:18px;background:#0b1327}.spro-scan-target:before{position:absolute;inset:15%;border:3px solid #e9bf8f;border-color:#e9bf8f transparent;border-radius:18px;content:""}.spro-scan-target:after{position:absolute;left:16%;right:16%;top:50%;height:2px;background:#e9bf8f;box-shadow:0 0 16px #e9bf8f;content:"";animation:sproScan 2s ease-in-out infinite}.spro-scan-target span{align-self:end;margin-bottom:13%;color:#ccc5b6;font-size:8px}.spro-touch-scan>form{display:grid;align-content:center;gap:14px}.spro-touch-scan>form>span{color:var(--spro-faint);font-size:8px;font-weight:850;letter-spacing:.12em}.spro-touch-scan label{display:flex;gap:7px}.spro-touch-scan input{flex:1;min-height:58px;padding:0 16px;border:1px solid var(--spro-line);border-radius:11px;outline:0;font-size:15px}.spro-touch-scan label button{min-width:90px;border:0;border-radius:11px;color:#fff;background:var(--spro-forest);font-weight:800}.spro-check-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}.spro-check-buttons button{display:flex;min-height:92px;align-items:center;gap:12px;padding:14px;border:1px solid var(--spro-line);border-radius:12px;background:#fff;text-align:left;cursor:pointer}.spro-check-buttons button:first-child{color:#fff;background:var(--spro-forest)}.spro-check-buttons i{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:rgba(255,255,255,.12);font-style:normal}.spro-check-buttons b,.spro-check-buttons small{display:block}.spro-check-buttons b{font-size:11px}.spro-check-buttons small{margin-top:3px;color:inherit;font-size:7px;opacity:.7}
.spro-touch-service{display:grid;gap:18px}.spro-touch-category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.spro-touch-category-grid button{display:grid;min-height:112px;place-items:center;align-content:center;gap:8px;border:1px solid var(--spro-line);border-radius:12px;background:#fff;cursor:pointer}.spro-touch-category-grid button.active,.spro-touch-category-grid button:hover{border-color:var(--spro-emerald);color:#fff;background:var(--spro-forest)}.spro-touch-category-grid i{font-size:28px;font-style:normal}.spro-touch-category-grid span{font-size:10px;font-weight:800}.spro-touch-service-fields{display:grid;grid-template-columns:1fr 1.5fr auto;align-items:end;gap:10px}.spro-touch-service-fields label{display:grid;gap:7px;color:var(--spro-muted);font-size:8px;font-weight:800}.spro-touch-service-fields input{min-height:58px;padding:0 14px;border:1px solid var(--spro-line);border-radius:10px;outline:0}.spro-touch-service-fields button{min-height:58px;padding:0 20px;border:0;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:9px;font-weight:850}
.spro-emergency-panel{border-color:#e4c9c6;background:#fffafa}.spro-emergency-panel .spro-touch-intro>span{color:#fff;background:var(--spro-coral)}.spro-emergency-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.spro-emergency-actions button{min-height:150px;padding:18px;border:1px solid #e5c8c5;border-radius:13px;color:#7c322d;background:#fff;text-align:left;cursor:pointer}.spro-emergency-actions i{display:grid;width:46px;height:46px;place-items:center;margin-bottom:18px;border-radius:10px;color:#fff;background:var(--spro-coral);font-size:20px;font-style:normal}.spro-emergency-actions b,.spro-emergency-actions small{display:block}.spro-emergency-actions b{font-size:11px}.spro-emergency-actions small{margin-top:5px;color:#91635f;font-size:8px}.spro-emergency-note{color:#9d6e69;font-size:8px;text-align:center}
.spro-touch-dialog{width:min(520px,calc(100vw - 24px));padding:0;border:0;border-radius:18px;box-shadow:0 30px 80px rgba(4,31,27,.3)}.spro-touch-dialog::backdrop,.spro-command-dialog::backdrop{background:rgba(4,25,22,.66);backdrop-filter:blur(5px)}.spro-touch-dialog-card{position:relative;display:grid;gap:12px;padding:28px}.spro-touch-dialog-close{position:absolute;right:15px;top:15px;width:34px;height:34px;border:1px solid var(--spro-line);border-radius:8px;background:#fff;cursor:pointer}.spro-touch-dialog-icon{display:grid;width:58px;height:58px;place-items:center;border-radius:14px;color:var(--spro-emerald);background:var(--spro-mint);font-size:24px}.spro-touch-dialog-card>small{color:var(--spro-emerald);font-size:8px;font-weight:850;letter-spacing:.13em}.spro-touch-dialog-card h2{margin:-7px 0 0;font:550 31px var(--spro-display)}.spro-touch-dialog-card p{margin:-8px 0 2px;color:var(--spro-muted);font-size:9px}.spro-touch-dialog-card label{display:grid;gap:6px;font-size:8px;font-weight:800}.spro-touch-dialog-card input{min-height:54px;padding:0 13px;border:1px solid var(--spro-line);border-radius:10px;outline:0;font-size:13px}.spro-touch-dialog-card>div{display:grid;grid-template-columns:1fr 2fr;gap:8px;margin-top:4px}.spro-touch-dialog-card>div button{min-height:50px;border:1px solid var(--spro-line);border-radius:9px;background:#fff;font-size:9px;font-weight:800}.spro-touch-dialog-card>div button:last-child{border-color:var(--spro-forest);color:#fff;background:var(--spro-forest)}@keyframes sproScan{0%,100%{transform:translateY(-90px)}50%{transform:translateY(90px)}}
.spro-gate-workbench{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.spro-gate-workbench>.spro-panel{min-width:0;overflow:hidden}.spro-gate-workbench .spro-panel-head>b,.spro-attendance-roster .spro-panel-head>b{display:grid;min-width:32px;height:32px;place-items:center;border-radius:999px;color:var(--spro-emerald);background:var(--spro-mint);font-size:10px}.spro-inline-actions{display:flex;align-items:center;gap:5px}.spro-inline-actions form,.spro-gate-card-list form{margin:0}.spro-mini-action{min-height:32px;padding:0 10px;border:1px solid var(--spro-line);border-radius:7px;color:var(--spro-forest);background:#fff;font-size:8px;font-weight:850;cursor:pointer}.spro-mini-action.approve{border-color:var(--spro-forest);color:#fff;background:var(--spro-forest)}.spro-mini-action.reject{border-color:#e7bbb7;color:#9a3b34;background:#fff5f3}.spro-gate-card-list{display:grid;padding:0 14px 14px}.spro-gate-card-list>div{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 2px;border-top:1px solid var(--spro-line-soft)}.spro-gate-card-list>div:first-child{border-top:0}.spro-gate-card-list p{min-width:0;margin:0}.spro-gate-card-list b,.spro-gate-card-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spro-gate-card-list b{font-size:9px}.spro-gate-card-list small{margin-top:3px;color:var(--spro-muted);font-size:7px}.spro-empty-inline{margin:0;padding:15px;color:var(--spro-faint);font-size:8px;text-align:center}.spro-attendance-roster{max-width:950px;margin:14px auto 0;overflow:hidden}

/* Master directories and facilities */
.spro-directory-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.spro-directory-panel{overflow:hidden}.spro-directory-toolbar{border-bottom:1px solid var(--spro-line-soft)}.spro-directory-table .spro-step-dots{display:flex;gap:3px;margin-bottom:3px}.spro-step-dots i{width:15px;height:3px;border-radius:999px;background:#dfe1e5}.spro-step-dots i.done{background:var(--spro-emerald)}.spro-asset-icon{display:inline-grid;width:30px;height:30px;place-items:center;margin-right:7px;border-radius:7px;color:var(--spro-emerald);background:#f2efe7;font-size:13px;vertical-align:middle}.spro-health-dot{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#a18240}.spro-health-dot.warn{background:#d28b35}.spro-health-dot.bad{background:#c9534b}
.spro-pay-inline{display:flex;align-items:center;gap:5px}.spro-pay-inline select,.spro-pay-inline button{min-height:31px;border:1px solid var(--spro-line);border-radius:6px;font-size:7px}.spro-pay-inline select{max-width:125px;padding:0 6px;background:#fff}.spro-pay-inline button{padding:0 9px;border-color:var(--spro-forest);color:#fff;background:var(--spro-forest);font-weight:850;cursor:pointer}
.spro-facility-feature{display:grid;grid-template-columns:minmax(360px,1.25fr) minmax(320px,.75fr);overflow:hidden;min-height:310px;margin-bottom:15px;border-radius:16px;color:#fff;background:var(--spro-forest)}.spro-facility-image{position:relative;min-height:310px;overflow:hidden}.spro-facility-image:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,var(--spro-forest));content:""}.spro-facility-image img{width:100%;height:100%;object-fit:cover}.spro-facility-image>span{position:absolute;left:16px;bottom:16px;z-index:1;padding:6px 8px;border-radius:5px;color:#fff;background:rgba(7,59,53,.72);font-size:7px;font-weight:850;letter-spacing:.12em}.spro-facility-feature>div:last-child{display:flex;flex-direction:column;justify-content:center;padding:35px 38px 35px 18px}.spro-facility-feature h2{margin:8px 0;font:500 34px var(--spro-display)}.spro-facility-feature p{margin:0;color:#cdc6b6;font-size:9px;line-height:1.65}.spro-facility-feature>div:last-child>div{display:flex;gap:20px;margin:19px 0}.spro-facility-feature>div:last-child>div span{color:#c2baaa;font-size:7px}.spro-facility-feature>div:last-child>div b{display:block;color:#fff;font:600 20px var(--spro-display)}.spro-facility-feature .spro-button{align-self:flex-start;color:var(--spro-forest);background:#e9bf8f}
.spro-facility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.spro-facility-card{overflow:hidden;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-facility-card>img,.spro-facility-placeholder{display:grid;width:100%;height:150px;place-items:center;object-fit:cover;color:#e8e2d6;background:linear-gradient(145deg,#17284f,#08132e);font:500 48px var(--spro-display)}.spro-facility-card>div{padding:13px}.spro-facility-card h3{margin:9px 0 3px;font:550 20px var(--spro-display)}.spro-facility-card p{margin:0;color:var(--spro-muted);font-size:8px}.spro-facility-card footer{display:flex;align-items:center;justify-content:space-between;margin-top:15px;padding-top:10px;border-top:1px solid var(--spro-line-soft);color:var(--spro-faint);font-size:7px}.spro-facility-card footer button{border:0;color:var(--spro-emerald);background:transparent;font-size:8px;font-weight:850;cursor:pointer}

/* Delivery projects */
.spro-project-strip{margin-top:14px}.spro-project-strip-grid,.spro-delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 16px 16px}.spro-project-strip-grid article,.spro-delivery-grid>article{padding:13px;border:1px solid var(--spro-line);border-radius:10px;background:#fcfbfa}.spro-project-strip-grid article>header,.spro-delivery-grid article>header{display:flex;align-items:center;gap:7px}.spro-project-strip-grid header b{font-size:8px}.spro-project-strip-grid header em,.spro-delivery-grid header em{margin-left:auto;color:var(--spro-muted);font-size:7px;font-style:normal;text-transform:capitalize}.spro-project-strip-grid h3,.spro-delivery-grid h3{margin:10px 0 3px;font:550 17px var(--spro-display)}.spro-project-strip-grid p{margin:0;color:var(--spro-muted);font-size:7px}.spro-progress{height:6px;margin:12px 0 7px;overflow:hidden;border-radius:999px;background:#e7e4df}.spro-progress i{display:block;width:var(--progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--spro-emerald),#ab925c);transition:width .6s}.spro-project-strip-grid footer,.spro-delivery-grid article>footer{display:flex;justify-content:space-between;color:var(--spro-muted);font-size:7px}.spro-delivery-board{margin-bottom:14px;overflow:hidden}.spro-delivery-grid{grid-template-columns:repeat(4,1fr)}.spro-delivery-grid header>div b,.spro-delivery-grid header>div small{display:block}.spro-delivery-grid header>div b{font-size:8px}.spro-delivery-grid header>div small{color:var(--spro-faint);font-size:6px}.spro-milestones{display:grid;gap:4px;margin:10px 0}.spro-milestones span{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:5px;padding:5px;border-radius:5px;background:#fff}.spro-milestones i{width:7px;height:7px;border:1px solid #b4ac9c;border-radius:50%}.spro-milestones .done i{border-color:var(--spro-emerald);background:var(--spro-emerald)}.spro-milestones b,.spro-milestones small{font-size:6px}.spro-milestones small{color:var(--spro-faint)}.spro-delivery-grid footer button{border:0;color:var(--spro-emerald);background:none;font-size:7px;font-weight:800}

/* Reports and process intelligence */
.spro-report-tabs{display:flex;gap:4px;margin-bottom:12px;padding:4px;overflow-x:auto;border:1px solid var(--spro-line);border-radius:9px;background:#fff}.spro-report-tabs button{min-height:34px;flex:none;padding:0 12px;border:0;border-radius:6px;color:var(--spro-muted);background:none;font-size:8px;font-weight:800;cursor:pointer}.spro-report-tabs button.active{color:#fff;background:var(--spro-forest)}.spro-report-tabs button b{margin-left:4px;padding:2px 5px;border-radius:99px;color:var(--spro-forest);background:#e8be8f}.spro-report-hero{position:relative;display:grid;min-height:265px;grid-template-columns:1.3fr .7fr;overflow:hidden;margin-bottom:13px;border-radius:15px;color:#fff;background:radial-gradient(circle at 78% 40%,rgba(196,164,103,.18),transparent 22%),linear-gradient(120deg,#0a193c,#08132e)}.spro-report-hero>div:first-child{align-self:center;padding:34px}.spro-report-hero h2{margin:10px 0 8px;font:500 38px var(--spro-display)}.spro-report-hero p{max-width:650px;margin:0;color:#cdc6b6;font-size:10px;line-height:1.65}.spro-report-hero>div:first-child>div{display:flex;gap:28px;margin-top:22px}.spro-report-hero>div:first-child>div span{color:#bbb19c;font-size:7px}.spro-report-hero>div:first-child>div b{display:block;color:#fff;font:600 22px var(--spro-display)}.spro-report-orbit{position:relative;display:grid;place-items:center}.spro-report-orbit:before,.spro-report-orbit:after{position:absolute;width:210px;height:210px;border:1px solid rgba(213,188,130,.24);border-radius:50%;content:""}.spro-report-orbit:after{width:275px;height:275px;border-color:rgba(213,188,130,.1)}.spro-report-orbit>span{position:relative;z-index:2;display:grid;width:145px;height:145px;place-content:center;border:1px solid rgba(219,199,152,.45);border-radius:50%;text-align:center}.spro-report-orbit strong,.spro-report-orbit small{display:block}.spro-report-orbit strong{font:500 51px var(--spro-display)}.spro-report-orbit small{color:#c3baa7;font-size:7px}.spro-report-orbit>i{position:absolute;z-index:3;width:8px;height:8px;border-radius:50%;background:#e9bf8e}.spro-report-orbit>i:nth-of-type(1){transform:translate(-104px,-48px)}.spro-report-orbit>i:nth-of-type(2){transform:translate(116px,40px)}.spro-report-orbit>i:nth-of-type(3){transform:translate(-47px,112px)}.spro-report-orbit>b{position:absolute;z-index:3;transform:translate(92px,-92px);padding:5px 7px;border-radius:99px;color:#17223c;background:#e9bf8e;font-size:7px}
.spro-report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.spro-report-grid .wide{grid-column:span 2}.spro-chart-panel{min-height:280px;overflow:hidden}.spro-chart-kpi{padding:0 19px}.spro-chart-kpi strong,.spro-chart-kpi span{display:block}.spro-chart-kpi strong{font:600 30px var(--spro-display)}.spro-chart-kpi span{color:var(--spro-faint);font-size:7px}.spro-bar-chart{display:flex;height:145px;align-items:end;justify-content:space-around;gap:8px;margin:12px 22px 0 40px;border-bottom:1px solid var(--spro-line)}.spro-bar-chart>div{display:grid;height:100%;flex:1;align-items:end;gap:7px;text-align:center}.spro-bar-chart i{width:min(30px,80%);height:var(--h);justify-self:center;border-radius:5px 5px 0 0;background:#d9d3c5;transform:scaleY(0);transform-origin:bottom;transition:.7s}.spro-bar-chart.animated i{transform:scaleY(1)}.spro-bar-chart .active i{background:var(--spro-emerald)}.spro-bar-chart span{padding-bottom:7px;color:var(--spro-faint);font-size:7px}.spro-donut{position:relative;display:grid;width:135px;height:135px;place-items:center;margin:4px auto 10px;border-radius:50%;background:conic-gradient(var(--spro-emerald) 0 36%,var(--spro-gold) 36% 61%,var(--spro-blue) 61% 80%,#e6e4df 80%)}.spro-donut:before{position:absolute;width:92px;height:92px;border-radius:50%;background:#fff;content:""}.spro-donut>span{position:relative;text-align:center}.spro-donut b,.spro-donut small{display:block}.spro-donut b{font:600 27px var(--spro-display)}.spro-donut small{color:var(--spro-faint);font-size:6px}.spro-legend{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:0 18px 15px}.spro-legend span{display:grid;grid-template-columns:7px 1fr auto;gap:5px;color:var(--spro-muted);font-size:7px}.spro-legend i{width:7px;height:7px;background:var(--spro-emerald)}.spro-legend .c2{background:var(--spro-gold)}.spro-legend .c3{background:var(--spro-blue)}.spro-legend .c4{background:#e6e4df}.spro-water-card{display:grid;grid-template-columns:140px 1fr;align-items:center;padding:6px 15px}.spro-water-gauge{position:relative;display:grid;width:125px;height:125px;place-items:center;overflow:hidden;border-radius:50%;background:#efe7d7}.spro-water-gauge i{position:absolute;inset:28% -10% -5%;background:#b59e6d}.spro-water-gauge span{position:relative;text-align:center}.spro-water-gauge b,.spro-water-gauge small{display:block}.spro-water-gauge b{font:600 26px var(--spro-display)}.spro-water-card>div:last-child span{display:block;padding:7px;border-bottom:1px solid var(--spro-line);color:var(--spro-muted);font-size:7px}.spro-water-card>div:last-child b{display:block;color:var(--spro-ink);font-size:9px}.spro-cohort-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:4px;padding:10px 18px}.spro-cohort-grid>*{display:grid;min-height:38px;place-items:center;margin:0;border-radius:5px;font-size:7px;font-style:normal}.spro-cohort-grid>em{justify-content:start}.spro-cohort-grid .v5{color:#fff;background:#775d26}.spro-cohort-grid .v3{background:#d8ceb9}.spro-cohort-grid .v2{background:#edd4b8}.spro-cohort-grid .v1{background:#f1d7c7}
.spro-horizontal-bars{display:grid;gap:18px;padding:22px}.spro-horizontal-bars>div{display:grid;grid-template-columns:110px minmax(0,1fr) 38px;align-items:center;gap:10px;color:var(--spro-muted);font-size:8px}.spro-horizontal-bars i{display:block;width:var(--w);height:8px;border-radius:99px;background:var(--spro-emerald);transform:scaleX(0);transform-origin:left;transition:.7s}.spro-horizontal-bars.animated i{transform:scaleX(1)}.spro-horizontal-bars.dual>div{grid-template-columns:100px minmax(0,1fr) minmax(0,1fr) 50px}.spro-horizontal-bars.dual i:nth-of-type(2){background:var(--spro-gold)}.spro-insight-card{padding:24px;color:#fff;background:var(--spro-forest)}.spro-insight-card>span{color:#e8be8f;font-size:8px}.spro-insight-card h2{font:500 29px var(--spro-display)}.spro-insight-card p{color:#cbc3b2;font-size:9px;line-height:1.7}.spro-fund-list{display:grid;gap:12px;padding:14px 20px}.spro-fund-list span{display:grid;grid-template-columns:5px 1fr auto;gap:8px;align-items:center}.spro-fund-list i{width:5px;height:34px;border-radius:5px;background:linear-gradient(to top,var(--spro-emerald) var(--w),#e6e8eb var(--w))}.spro-fund-list b{font-size:8px}.spro-fund-list em{font:500 14px var(--spro-display)}
.spro-process-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:18px 0}.spro-process-head h2{margin:6px 0 3px;font:550 32px var(--spro-display)}.spro-process-head p{margin:0;color:var(--spro-muted);font-size:9px}.spro-process-head>div:last-child{display:flex;gap:24px}.spro-process-head>div:last-child span{color:var(--spro-muted);font-size:7px}.spro-process-head>div:last-child b{display:block;color:var(--spro-ink);font:600 20px var(--spro-display)}.spro-process-map{overflow:auto;padding:16px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-process-lane{position:relative;display:grid;min-width:900px;min-height:112px;grid-template-columns:100px repeat(5,1fr);align-items:center;border-bottom:1px dashed var(--spro-line)}.spro-process-lane>span{font-size:7px}.spro-process-node{position:relative;z-index:2;display:grid;min-width:130px;grid-template-columns:25px 1fr;gap:6px;padding:9px;border:1px solid #d3cbba;border-radius:8px;background:#f6f3ed}.spro-process-node>i{display:grid;width:25px;height:25px;grid-row:span 2;place-items:center;border-radius:6px;color:#fff;background:var(--spro-emerald);font-size:7px;font-style:normal}.spro-process-node b{font-size:8px}.spro-process-node small{font-size:6px}.spro-process-node.start{grid-column:2}.spro-process-node.n2{grid-column:3}.spro-process-node.n3{grid-column:5}.spro-process-node.n4{grid-column:4}.spro-process-node.end{grid-column:6}.spro-process-node.exception{grid-column:5;border-color:#efc6b5;background:#fff0e8}.spro-flow-line{position:absolute;left:19%;right:8%;border-top:2px solid #cfc6b4}.spro-bottleneck-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:12px}.spro-bottleneck-grid article{padding:16px;border:1px solid var(--spro-line);border-radius:11px;background:#fff}.spro-bottleneck-grid span{color:var(--spro-coral);font-size:7px}.spro-bottleneck-grid b,.spro-bottleneck-grid strong{display:block}.spro-bottleneck-grid strong{font:600 25px var(--spro-display)}.spro-bottleneck-grid p{font-size:8px}.spro-report-catalog-head{display:flex;justify-content:space-between;align-items:end;margin:20px 0 12px}.spro-report-catalog-head h2{margin:0;font:550 28px var(--spro-display)}.spro-report-catalog-head p{font-size:9px}.spro-report-catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.spro-report-catalog>button{display:grid;min-height:68px;grid-template-columns:27px 32px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;border:1px solid var(--spro-line);border-radius:9px;background:#fff;text-align:left}.spro-report-catalog>button>i{display:grid;width:32px;height:32px;place-items:center;border-radius:7px;color:var(--spro-emerald);background:#f2efe8;font-style:normal}.spro-report-catalog p{margin:0}.spro-report-catalog b,.spro-report-catalog small{display:block}.spro-report-catalog b{font-size:8px}.spro-report-catalog small,.spro-report-catalog em{color:var(--spro-faint);font-size:7px}.spro-report-catalog em{color:var(--spro-emerald)}

/* Capability atlas */
.spro-feature-hero{position:relative;display:grid;min-height:300px;grid-template-columns:1.25fr .75fr;overflow:hidden;margin:-26px -28px 18px;padding:44px 54px;color:#fff;background:radial-gradient(circle at 80% 48%,rgba(204,178,118,.16),transparent 22%),linear-gradient(120deg,#08183c,#07122d)}.spro-feature-hero>div{position:relative;z-index:2}.spro-feature-hero h1{margin:12px 0 9px;font:500 clamp(38px,4.4vw,61px) var(--spro-display);letter-spacing:-.04em}.spro-feature-hero h1 em{color:#e8be8f}.spro-feature-hero p{max-width:680px;margin:0;color:#ccc5b5;font-size:10px;line-height:1.7}.spro-feature-proof{display:flex;gap:30px;margin-top:24px}.spro-feature-proof span{color:#b8ae9a;font-size:7px}.spro-feature-proof b{display:block;color:#fff;font:600 23px var(--spro-display)}.spro-feature-constellation{display:grid;place-items:center}.spro-feature-constellation:before,.spro-feature-constellation:after{position:absolute;width:220px;height:220px;border:1px solid rgba(215,232,143,.23);border-radius:50%;content:""}.spro-feature-constellation:after{width:300px;height:300px;border-color:rgba(215,232,143,.08)}.spro-feature-constellation>span{z-index:2;font:500 65px var(--spro-display)}.spro-feature-constellation>b{position:absolute;margin-top:74px;font-size:7px}.spro-feature-constellation>i{position:absolute;width:8px;height:8px;border-radius:50%;background:#e8be8f}.spro-feature-constellation>i:nth-of-type(1){transform:translate(103px,-57px)}.spro-feature-constellation>i:nth-of-type(2){transform:translate(-112px,28px)}.spro-feature-constellation>i:nth-of-type(3){transform:translate(44px,144px)}.spro-feature-constellation>i:nth-of-type(4){transform:translate(-58px,-140px)}
.spro-feature-toolbar{position:sticky;top:calc(var(--spro-topbar) + 8px);z-index:30;display:flex;gap:12px;margin-bottom:13px;padding:8px;border:1px solid var(--spro-line);border-radius:10px;background:rgba(255,255,255,.96)}.spro-feature-toolbar>label{display:flex;height:36px;min-width:250px;flex:1;align-items:center;gap:8px;padding:0 8px;border:1px solid var(--spro-line);border-radius:7px}.spro-feature-toolbar input{flex:1;border:0;outline:0;font-size:9px}.spro-feature-toolbar>div{display:flex;gap:3px;overflow:auto}.spro-feature-toolbar>div button{height:32px;flex:none;padding:0 10px;border:0;border-radius:6px;background:none;font-size:8px}.spro-feature-toolbar>div button.active{color:#fff;background:var(--spro-forest)}.spro-feature-atlas{display:grid;grid-template-columns:repeat(2,1fr);align-items:start;gap:12px}.spro-feature-group{overflow:hidden;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-feature-group>header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 15px;border-bottom:1px solid var(--spro-line-soft);background:#fbfaf9}.spro-feature-group>header>span{display:grid;width:36px;height:36px;place-items:center;border-radius:8px;color:#fff;background:var(--spro-forest);font:500 14px var(--spro-display)}.spro-feature-group header small{color:var(--spro-emerald);font-size:6px}.spro-feature-group h2{margin:2px 0;font:550 18px var(--spro-display)}.spro-feature-group header>b{font-size:7px}.spro-feature-group ol{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:6px 14px 12px;list-style:none}.spro-feature-group li{display:grid;grid-template-columns:17px minmax(0,1fr);align-items:center;gap:5px;min-height:35px;padding:6px 7px;border-bottom:1px solid var(--spro-line-soft);font-size:8px}.spro-feature-group li i{display:grid;width:16px;height:16px;place-items:center;border-radius:50%;color:var(--spro-emerald);background:#f2efe8;font-size:6px;font-style:normal}.spro-feature-cta{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding:23px;border-radius:13px;color:#fff;background:var(--spro-forest)}.spro-feature-cta h2{margin:5px 0;font:500 27px var(--spro-display)}.spro-feature-cta p{font-size:8px}.spro-feature-cta .spro-button{color:var(--spro-forest);background:#e8be8f}

/* Configuration studio */
.spro-unsaved,.spro-version-badge{padding:5px 8px;border-radius:99px;color:#8c551e;background:#f6e6d5;font-size:7px;font-weight:800}.spro-admin-layout{display:grid;grid-template-columns:245px minmax(0,1fr);align-items:start;gap:14px}.spro-admin-nav{position:sticky;top:calc(var(--spro-topbar) + 14px);display:grid;padding:8px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-admin-nav>span{margin:11px 9px 5px;color:var(--spro-faint);font-size:7px;font-weight:850;letter-spacing:.12em}.spro-admin-nav button,.spro-admin-nav a{display:grid;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:8px;padding:9px;border:0;border-radius:8px;color:var(--spro-muted);background:none;text-align:left;text-decoration:none;cursor:pointer}.spro-admin-nav button:hover,.spro-admin-nav a:hover,.spro-admin-nav button.active{color:var(--spro-forest);background:#f4f2ed}.spro-admin-nav i{display:grid;width:27px;height:27px;place-items:center;border-radius:6px;color:var(--spro-emerald);background:#f1eee6;font-style:normal}.spro-admin-nav b,.spro-admin-nav small{display:block}.spro-admin-nav b{font-size:8px}.spro-admin-nav small{margin-top:2px;color:var(--spro-faint);font-size:6px}.spro-admin-canvas{min-width:0}.spro-admin-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:12px;padding:20px;border-radius:13px;color:#fff;background:var(--spro-forest)}.spro-admin-section>header span:first-child{color:#e8be8f;font-size:7px;letter-spacing:.12em}.spro-admin-section>header h2{margin:6px 0 3px;font:500 28px var(--spro-display)}.spro-admin-section>header p{margin:0;color:#c6beac;font-size:8px}.spro-settings-card{margin-bottom:10px;padding:18px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-settings-card>h3{margin:0 0 15px;font:550 19px var(--spro-display)}.spro-brand-editor{display:grid;grid-template-columns:1fr 1.4fr;gap:25px}.spro-brand-upload{display:flex;align-items:center;gap:14px}.spro-brand-upload b,.spro-brand-upload small{display:block}.spro-brand-upload b{font-size:9px}.spro-brand-upload small{margin:3px 0 7px;color:var(--spro-faint);font-size:7px}.spro-brand-upload label{color:var(--spro-emerald);font-size:7px;font-weight:800;cursor:pointer}.spro-brand-upload input{display:none}.spro-colour-fields{display:grid;gap:7px}.spro-colour-fields label{display:grid;grid-template-columns:70px 24px 1fr;align-items:center;gap:8px;font-size:8px}.spro-colour-fields i{width:22px;height:22px;border-radius:6px;background:var(--swatch)}.spro-colour-fields input{height:32px;border:1px solid var(--spro-line);border-radius:6px;padding:0 8px;font-size:8px}.spro-policy-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-top:1px solid var(--spro-line-soft)}.spro-policy-row:first-of-type{border:0}.spro-policy-row b,.spro-policy-row small{display:block}.spro-policy-row b{font-size:9px}.spro-policy-row small{margin-top:3px;color:var(--spro-faint);font-size:7px}.spro-switch{position:relative;display:inline-block;flex:none}.spro-switch input{position:absolute;opacity:0}.spro-switch>span{display:block;width:36px;height:20px;padding:2px;border-radius:99px;background:#c9ccd4;transition:.2s}.spro-switch>span:after{display:block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);content:"";transition:.2s}.spro-switch input:checked+span{background:var(--spro-emerald)}.spro-switch input:checked+span:after{transform:translateX(16px)}
.spro-structure-map{margin-bottom:10px;padding:18px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-structure-map .root{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:11px;border-radius:9px;color:#fff;background:var(--spro-forest)}.spro-structure-map b,.spro-structure-map small{display:block}.spro-structure-map small{color:#c3baa8;font-size:7px}.spro-structure-map em{font-size:8px}.spro-structure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.spro-structure-grid article{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:7px;padding:9px;border:1px solid var(--spro-line);border-radius:8px}.spro-structure-grid article>span{display:grid;width:30px;height:30px;place-items:center;border-radius:6px;background:#f1eee6}.spro-structure-grid button{border:0;background:none}.spro-chip-editor{display:flex;flex-wrap:wrap;gap:6px}.spro-chip-editor>span,.spro-chip-editor>label{padding:6px 8px;border:1px solid var(--spro-line);border-radius:99px;background:#fbfaf9;font-size:7px}.spro-chip-editor button{border:0;background:none}.spro-feature-policy{display:grid;gap:7px}.spro-feature-policy>article{display:grid;grid-template-columns:40px 1fr auto;align-items:start;gap:10px;padding:12px;border:1px solid var(--spro-line);border-radius:10px;background:#fff}.spro-suite-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;color:var(--spro-emerald);background:#f2efe7}.spro-feature-policy b,.spro-feature-policy small{display:block}.spro-feature-policy b{font-size:9px}.spro-feature-policy small{margin-top:3px;color:var(--spro-faint);font-size:7px}.spro-feature-policy details{margin-top:6px;font-size:7px}.spro-feature-policy ul{columns:2;padding-left:18px}.spro-settings-table{max-height:620px;border:1px solid var(--spro-line);border-radius:10px;background:#fff}.spro-settings-table thead{position:sticky;top:0;z-index:2}.spro-settings-table input,.spro-settings-table select{max-width:150px;height:30px;border:1px solid var(--spro-line);border-radius:5px;padding:0 6px;font-size:7px}.spro-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.spro-role-grid article{display:grid;grid-template-columns:30px 1fr 145px;align-items:center;gap:8px;padding:10px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}.spro-role-grid article>span{font:500 14px var(--spro-display)}.spro-role-grid b,.spro-role-grid small{display:block}.spro-role-grid b{font-size:8px}.spro-role-grid small{font-size:6px}.spro-role-grid input,.spro-role-grid select{height:31px;border:1px solid var(--spro-line);border-radius:6px;padding:0 7px;font-size:7px}.spro-inline-input{display:flex}.spro-inline-input input{border-radius:8px 0 0 8px}.spro-inline-input select{width:80px;border-radius:0 8px 8px 0}.spro-gateway-list,.spro-integration-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.spro-gateway-list article,.spro-integration-grid article{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:9px;padding:10px;border:1px solid var(--spro-line);border-radius:8px}.spro-gateway-list article>span,.spro-integration-grid article>span{display:grid;width:36px;height:36px;place-items:center;border-radius:7px;color:var(--spro-emerald);background:#f1eee6;font-size:8px;font-weight:850}.spro-gateway-list b,.spro-gateway-list small,.spro-integration-grid b,.spro-integration-grid small{display:block}.spro-gateway-list b,.spro-integration-grid b{font-size:8px}.spro-gateway-list small,.spro-integration-grid small{font-size:6px;color:var(--spro-faint)}.spro-integration-grid em{color:#8e651f;font-size:7px}.spro-integration-grid em.connected{color:var(--spro-emerald)}.spro-integration-grid button{grid-column:3;border:0;color:var(--spro-emerald);background:none;font-size:7px}.spro-locale-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.spro-locale-grid label{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--spro-line);border-radius:8px}.spro-locale-grid b,.spro-locale-grid small{display:block}.spro-locale-grid b{font-size:9px}.spro-locale-grid small{font-size:6px}.spro-channel-badges{display:flex;gap:4px}.spro-channel-badges i{padding:4px 6px;border-radius:99px;background:#f1eee6;font-size:6px;font-style:normal}

/* No-code CMS */
.spro-cms-body .spro-main{max-width:none;padding:14px}.spro-cms-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:10px 13px;border:1px solid var(--spro-line);border-radius:10px;background:#fff}.spro-cms-top>div{display:flex;align-items:center;gap:9px}.spro-cms-top a{font-size:8px;text-decoration:none}.spro-cms-top>div:first-child span{color:var(--spro-emerald);font-size:7px;font-weight:850;letter-spacing:.12em}.spro-cms-top>div:first-child b{padding-left:9px;border-left:1px solid var(--spro-line);font-size:9px}.spro-cms-state{padding:5px 8px;border-radius:99px;color:#3d4c6e;background:#f2eee6;font-size:7px}.spro-cms-state i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#a68642}.spro-cms-workspace{display:grid;height:calc(100vh - 162px);grid-template-columns:215px minmax(400px,1fr) 310px;overflow:hidden;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-cms-pages,.spro-cms-inspector{overflow:auto;background:#fff}.spro-cms-pages{padding:11px;border-right:1px solid var(--spro-line)}.spro-cms-pages>header{display:flex;justify-content:space-between;align-items:center;color:var(--spro-faint);font-size:7px;font-weight:850}.spro-cms-pages>header button{width:25px;height:25px;border:1px solid var(--spro-line);border-radius:6px;background:#fff}.spro-cms-pages nav{display:grid;margin:8px 0 16px}.spro-cms-pages nav a,.spro-cms-block-list>a,.spro-cms-block-list>button{display:grid;grid-template-columns:23px 1fr auto;align-items:center;gap:6px;padding:8px;border:0;border-radius:7px;color:var(--spro-muted);background:none;text-align:left;text-decoration:none}.spro-cms-pages nav a.active,.spro-cms-block-list>a.active,.spro-cms-block-list>button.active{color:var(--spro-forest);background:#f3f0ea}.spro-cms-pages b,.spro-cms-pages small{display:block}.spro-cms-pages b{font-size:8px}.spro-cms-pages small{font-size:6px}.spro-cms-pages em{font-size:6px;font-style:normal}.spro-cms-pages>span{font-size:7px;font-weight:850}.spro-cms-block-list{display:grid;margin-top:7px}.spro-cms-add-block{width:100%;height:34px;margin-top:7px;border:1px dashed #c0baad;border-radius:7px;color:var(--spro-emerald);background:#fbfaf9;font-size:7px}.spro-cms-stage{overflow:auto;padding:16px;background:#e4e6e9}.spro-cms-stage.mobile .spro-cms-browser,.spro-cms-stage.mobile .spro-cms-preview{max-width:390px;margin-inline:auto}.spro-cms-browser{display:flex;height:30px;align-items:center;gap:8px;padding:0 10px;border-radius:8px 8px 0 0;background:#fff}.spro-cms-browser>span{display:flex;gap:3px}.spro-cms-browser i{width:5px;height:5px;border-radius:50%;background:#d2d4d9}.spro-cms-browser b{flex:1;font-size:6px;text-align:center}.spro-cms-browser em{font-size:7px}.spro-cms-preview{min-height:650px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(25,45,39,.1);transition:max-width .3s}.spro-preview-hero{display:flex;min-height:340px;align-items:center;padding:42px;color:#fff;background:linear-gradient(90deg,rgba(4,33,29,.84),rgba(4,33,29,.08)),var(--preview-image) center/cover}.spro-preview-hero>div{max-width:480px}.spro-preview-hero span{font-size:7px;letter-spacing:.15em}.spro-preview-hero h2{margin:10px 0;font:500 42px var(--spro-display)}.spro-preview-hero p{font-size:9px;line-height:1.6}.spro-preview-hero button{height:35px;padding:0 12px;border:0;border-radius:5px;color:var(--spro-forest);background:#e8be8f;font-size:7px;font-weight:850}.spro-preview-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:14px;background:var(--spro-forest);color:#c1b8a6;text-align:center;font-size:6px}.spro-preview-stats b{display:block;color:#fff;font:500 19px var(--spro-display)}.spro-preview-copy{padding:34px;text-align:center}.spro-preview-copy>span{color:var(--spro-emerald);font-size:6px}.spro-preview-copy h3{margin:7px;font:500 29px var(--spro-display)}.spro-preview-copy p{font-size:8px}.spro-preview-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:0 25px 30px}.spro-preview-cards article{display:grid;gap:4px;padding:13px;border:1px solid var(--spro-line);border-radius:8px}.spro-preview-cards b{font-size:8px}.spro-preview-cards small{font-size:6px}.spro-cms-inspector{border-left:1px solid var(--spro-line)}.spro-cms-inspector>header{display:flex;justify-content:space-between;padding:13px;border-bottom:1px solid var(--spro-line)}.spro-cms-inspector>header span,.spro-cms-inspector>header b{display:block}.spro-cms-inspector>header span{color:var(--spro-emerald);font-size:6px}.spro-cms-inspector>header b{font-size:9px}.spro-cms-inspector>header button{border:0;background:none}.spro-model-form{display:grid;gap:10px;padding:13px;border-bottom:1px solid var(--spro-line)}.spro-model-form fieldset{display:grid;gap:9px;margin:0;padding:0;border:0}.spro-model-form legend{margin-bottom:6px;font:550 16px var(--spro-display)}.spro-model-form p{display:grid;gap:4px;margin:0;font-size:7px}.spro-model-form label{font-size:7px;font-weight:800}.spro-model-form input,.spro-model-form select,.spro-model-form textarea{width:100%;min-height:34px;padding:7px;border:1px solid var(--spro-line);border-radius:6px;font-size:8px}.spro-model-form .helptext{color:var(--spro-faint);font-size:6px}.spro-model-form ul.errorlist{color:var(--spro-coral);font-size:6px}.spro-block-library{display:grid;grid-template-columns:1fr 1fr;gap:7px}.spro-block-library button{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid var(--spro-line);border-radius:9px;background:#fff;text-align:left}.spro-block-library i{font-size:20px}.spro-block-library b,.spro-block-library small{display:block}.spro-block-library b{font-size:8px}.spro-block-library small{font-size:6px}

/* Safe clone */
.spro-clone-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;align-items:start;gap:15px}.spro-clone-main{display:grid;gap:12px}.spro-clone-source,.spro-clone-step{padding:18px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-clone-label{color:var(--spro-emerald);font-size:7px;font-weight:850;letter-spacing:.13em}.spro-clone-society{display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:10px;margin:9px 0 14px}.spro-clone-society>span{display:grid;width:45px;height:45px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font:500 22px var(--spro-display)}.spro-clone-society h2{margin:0;font:550 24px var(--spro-display)}.spro-clone-society p{margin:2px 0;color:var(--spro-muted);font-size:8px}.spro-clone-society em{font-size:7px}.spro-clone-source-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--spro-line)}.spro-clone-source-grid span{padding:9px;background:#fbfaf9;color:var(--spro-muted);font-size:6px}.spro-clone-source-grid b{display:block;color:var(--spro-ink);font:600 17px var(--spro-display)}.spro-clone-form{display:grid;gap:12px}.spro-clone-step>header{display:grid;grid-template-columns:36px 1fr;gap:10px;margin-bottom:15px}.spro-clone-step>header>span{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;color:#fff;background:var(--spro-forest);font:500 14px var(--spro-display)}.spro-clone-step h2{margin:0;font:550 22px var(--spro-display)}.spro-clone-step p{margin:3px 0;color:var(--spro-muted);font-size:8px}.spro-clone-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.spro-clone-options label>input{position:absolute;opacity:0}.spro-clone-options label>span{position:relative;display:grid;grid-template-columns:38px 1fr;gap:9px;padding:13px;border:1px solid var(--spro-line);border-radius:9px;cursor:pointer}.spro-clone-options input:checked+span{border-color:var(--spro-emerald);background:#f6f3ee;box-shadow:0 0 0 2px rgba(12,103,88,.08)}.spro-clone-options i{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;background:#f1ede5;font-style:normal}.spro-clone-options b,.spro-clone-options small{display:block}.spro-clone-options b{font-size:9px}.spro-clone-options small{margin-top:3px;font-size:7px}.spro-clone-options em{position:absolute;right:7px;top:7px;color:var(--spro-emerald);font-size:5px}.spro-clone-layers{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.spro-clone-layers label>input{position:absolute;opacity:0}.spro-clone-layers label>span{display:grid;grid-template-columns:32px 1fr;gap:8px;padding:10px;border:1px solid var(--spro-line);border-radius:8px}.spro-clone-layers input:checked+span{border-color:#ccc4b4;background:#f6f4f0}.spro-clone-layers i{display:grid;width:32px;height:32px;place-items:center;border-radius:7px;background:#f0ece4;font-style:normal}.spro-clone-layers b,.spro-clone-layers small{display:block}.spro-clone-layers b{font-size:8px}.spro-clone-layers small{font-size:6px}.spro-clone-confirm{display:flex;align-items:center;gap:14px;padding:15px;border-radius:12px;color:#fff;background:var(--spro-forest)}.spro-clone-confirm label{display:grid;flex:1;grid-template-columns:160px 1fr;align-items:center;gap:9px}.spro-clone-confirm input{height:38px;padding:0 10px;border:1px solid rgba(255,255,255,.3);border-radius:7px;color:#fff;background:rgba(255,255,255,.08);font-size:9px}.spro-clone-confirm label span{color:#cbc4b4;font-size:7px;line-height:1.45}.spro-clone-confirm .spro-button{color:var(--spro-forest);background:#e8be8f}.spro-clone-assurance{position:sticky;top:calc(var(--spro-topbar) + 14px);padding:24px;border-radius:14px;color:#fff;background:var(--spro-forest)}.spro-clone-assurance h2{font:500 28px var(--spro-display)}.spro-clone-assurance>p{color:#cac2b0;font-size:8px;line-height:1.6}.spro-clone-assurance>div{display:grid;grid-template-columns:30px 1fr;gap:9px;padding:13px 0;border-top:1px solid rgba(255,255,255,.1)}.spro-clone-assurance>div>span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#e8be8f;background:rgba(255,255,255,.08)}.spro-clone-assurance div p{margin:0}.spro-clone-assurance b,.spro-clone-assurance small{display:block}.spro-clone-assurance b{font-size:8px}.spro-clone-assurance small{margin-top:3px;color:#bdb5a4;font-size:7px;line-height:1.45}.spro-clone-assurance footer{display:flex;gap:8px;margin-top:10px;padding:10px;border-radius:8px;background:rgba(255,255,255,.06)}

/* Commands, feedback and motion */
.spro-command-dialog{width:min(650px,calc(100vw - 28px));padding:0;border:0;border-radius:14px;background:transparent}.spro-command-box{overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:#fff;box-shadow:0 32px 90px rgba(4,28,24,.36)}.spro-command-box>header{display:flex;height:58px;align-items:center;gap:10px;padding:0 14px;border-bottom:1px solid var(--spro-line)}.spro-command-box>header>i{color:var(--spro-emerald);font-size:22px;font-style:normal}.spro-command-box>header input{flex:1;border:0;outline:0;font-size:13px}.spro-command-results{display:grid;max-height:430px;overflow:auto;padding:9px}.spro-command-results>span{padding:8px;color:var(--spro-faint);font-size:7px;font-weight:850;letter-spacing:.12em}.spro-command-results>a{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:10px;border-radius:8px;text-decoration:none}.spro-command-results>a:hover,.spro-command-results>a:focus{outline:0;background:#f5f2ed}.spro-command-results>a>i{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;color:var(--spro-emerald);background:#f0ece4;font-style:normal}.spro-command-results p{margin:0}.spro-command-results b,.spro-command-results small{display:block}.spro-command-results b{font-size:10px}.spro-command-results small{margin-top:3px;color:var(--spro-muted);font-size:7px}.spro-command-box>footer{display:flex;align-items:center;gap:15px;padding:9px 13px;border-top:1px solid var(--spro-line);color:var(--spro-faint);background:#fbfaf9;font-size:7px}.spro-command-box>footer button{margin-left:auto;border:0;background:none;font-size:7px}.spro-toast-region{position:fixed;right:18px;bottom:18px;z-index:120;display:grid;gap:7px;width:min(350px,calc(100vw - 28px));pointer-events:none}.spro-toast{display:grid;grid-template-columns:27px 1fr auto;align-items:center;gap:8px;padding:10px;border:1px solid #d6ccb8;border-radius:9px;background:#fff;box-shadow:var(--spro-shadow);opacity:0;transform:translateY(12px);transition:.18s;pointer-events:auto}.spro-toast.visible{opacity:1;transform:none}.spro-toast>i{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-size:8px;font-style:normal}.spro-toast.error>i{background:var(--spro-coral)}.spro-toast span{font-size:8px;font-weight:700}.spro-toast button{border:0;background:none}.spro-service-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.spro-touch-scan>form{display:grid;align-content:center;gap:14px}.spro-touch-scan>form>span{color:var(--spro-faint);font-size:8px;font-weight:850;letter-spacing:.12em}[data-reveal]{opacity:0;transform:translateY(9px);transition:opacity .5s,transform .5s}[data-reveal].revealed{opacity:1;transform:none}

/* Website-skinned authentication */
.spro-auth{min-height:100vh;overflow-x:hidden;background:#fff}.spro-auth-layout{display:grid;min-height:100vh;grid-template-columns:minmax(500px,1.35fr) minmax(420px,.65fr)}.spro-auth-visual{position:relative;display:flex;min-height:100vh;flex-direction:column;overflow:hidden;padding:34px;color:#fff;background:var(--auth-image) center/cover}.spro-auth-shade{position:absolute;inset:0;background:linear-gradient(105deg,rgba(3,33,29,.88) 0%,rgba(3,33,29,.52) 48%,rgba(3,33,29,.1) 100%),linear-gradient(0deg,rgba(2,24,21,.5),transparent 45%)}.spro-auth-brand{position:relative;z-index:2;align-self:flex-start}.spro-auth-story{position:relative;z-index:2;max-width:640px;margin-top:auto;margin-bottom:50px}.spro-auth-kicker{display:flex;align-items:center;gap:8px;color:#e8be8f;font-size:8px;font-weight:850;letter-spacing:.17em}.spro-auth-kicker i{width:26px;height:1px;background:var(--spro-gold)}.spro-auth-story h1{margin:14px 0 11px;font:500 clamp(44px,5.4vw,77px)/.98 var(--spro-display);letter-spacing:-.045em}.spro-auth-story h1 em{display:block;color:#e8be8f;font-weight:400}.spro-auth-story>p{max-width:590px;margin:0;color:#ddd8cc;font-size:11px;line-height:1.7}.spro-auth-proof{display:flex;gap:30px;margin-top:28px}.spro-auth-proof span{color:#cac3b4;font-size:7px}.spro-auth-proof b{display:block;margin-bottom:3px;color:#fff;font:600 22px var(--spro-display)}.spro-auth-photo-note{position:relative;z-index:2;margin:0;color:#bfb8a8;font-size:6px;letter-spacing:.08em}.spro-auth-panel{display:flex;min-height:100vh;flex-direction:column;padding:28px 9%;background:#fff}.spro-auth-mobile-brand{display:none;color:var(--spro-forest)}.spro-auth-form-wrap{width:100%;max-width:465px;margin:auto}.spro-auth-heading>span{color:var(--spro-emerald);font-size:8px;font-weight:850;letter-spacing:.15em}.spro-auth-heading h2{margin:8px 0 5px;font:550 clamp(33px,4vw,45px) var(--spro-display);letter-spacing:-.035em}.spro-auth-heading p{margin:0 0 21px;color:var(--spro-muted);font-size:9px;line-height:1.6}.spro-auth-form{display:grid;gap:13px}.spro-register-form{grid-template-columns:1fr 1fr;gap:12px}.spro-auth-form .spro-field>span{font-size:8px}.spro-input-wrap,.spro-select-wrap{display:flex;min-height:46px;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--spro-line);border-radius:9px;background:#fff;transition:.15s}.spro-input-wrap:focus-within,.spro-select-wrap:focus-within{border-color:var(--spro-emerald);box-shadow:0 0 0 3px rgba(12,103,88,.08)}.spro-input-wrap>i,.spro-select-wrap>i{width:18px;color:var(--spro-emerald);font-style:normal;text-align:center}.spro-input-wrap input,.spro-select-wrap select{min-width:0;flex:1;height:43px;border:0;outline:0;background:transparent;font-size:10px}.spro-input-wrap button{border:0;color:var(--spro-emerald);background:none;font-size:7px;font-weight:800}.spro-form-options{display:flex;justify-content:space-between;gap:12px;color:var(--spro-faint);font-size:7px}.spro-form-options label{display:flex;align-items:center;gap:5px;color:var(--spro-muted)}.spro-auth-submit,.spro-auth-secondary{display:flex;min-height:48px;align-items:center;justify-content:space-between;padding:0 16px;border:1px solid var(--spro-forest);border-radius:9px;color:#fff;background:var(--spro-forest);font-size:9px;font-weight:850;text-decoration:none;cursor:pointer}.spro-auth-secondary{color:var(--spro-forest);background:#fff}.spro-auth-divider{display:flex;align-items:center;gap:10px;margin:17px 0}.spro-auth-divider:before,.spro-auth-divider:after{height:1px;flex:1;background:var(--spro-line);content:""}.spro-auth-divider span{color:var(--spro-faint);font-size:6px;font-weight:850;letter-spacing:.12em}.spro-auth-assurance{display:flex;align-items:center;justify-content:center;gap:6px;margin:14px 0;color:var(--spro-muted);font-size:7px}.spro-auth-assurance i{color:var(--spro-emerald);font-style:normal}.spro-auth-switch{text-align:center;font-size:8px}.spro-auth-switch a{color:var(--spro-emerald);font-weight:800}.spro-auth-panel>footer{display:flex;gap:12px;color:var(--spro-faint);font-size:6px}.spro-auth-panel>footer a{text-decoration:none}.spro-auth-alert{margin-bottom:12px;padding:9px;border:1px solid #d8ceb8;border-radius:8px;color:#22345e;background:#f7f4ee;font-size:8px}.spro-password-meter{display:block!important;height:3px!important;overflow:hidden;border-radius:99px;background:#e3e4e8}.spro-password-meter i{display:block;width:0;height:100%;background:var(--spro-coral);transition:.2s}.spro-password-meter i[data-strength="3"],.spro-password-meter i[data-strength="4"]{background:var(--spro-emerald)}

/* Responsive */
@media(max-width:1240px){:root{--spro-sidebar:235px}.spro-main{padding-inline:20px}.spro-dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr)}.spro-delivery-grid{grid-template-columns:repeat(3,1fr)}.spro-facility-grid{grid-template-columns:repeat(3,1fr)}.spro-report-catalog{grid-template-columns:repeat(2,1fr)}.spro-cms-workspace{grid-template-columns:190px minmax(380px,1fr) 285px}.spro-user-menu summary>span:nth-child(2){display:none}.spro-user-menu summary{min-width:44px;grid-template-columns:34px 10px}}
@media(max-width:1020px){:root{--spro-sidebar:0px}.spro-sidebar{width:270px;transform:translateX(-102%);box-shadow:20px 0 45px rgba(4,28,24,.22);transition:transform .22s}.spro-sidebar-open .spro-sidebar{transform:none}.spro-sidebar-scrim{position:fixed;inset:0;z-index:70;display:block;background:rgba(4,25,22,.55);opacity:0;visibility:hidden;transition:.2s}.spro-sidebar-open .spro-sidebar-scrim{opacity:1;visibility:visible}.spro-side-close,.spro-menu-button{display:grid}.spro-topbar{padding-inline:14px}.spro-context{min-width:150px}.spro-dashboard-grid{grid-template-columns:1fr}.spro-priority-panel,.spro-collection-panel{grid-column:auto}.spro-metric-grid{grid-template-columns:repeat(2,1fr)}.spro-service-layout{grid-template-columns:1fr}.spro-new-ticket{position:static}.spro-delivery-grid{grid-template-columns:repeat(2,1fr)}.spro-report-grid{grid-template-columns:1fr 1fr}.spro-report-grid .wide{grid-column:span 2}.spro-feature-hero{margin-left:-20px;margin-right:-20px}.spro-feature-atlas{grid-template-columns:1fr}.spro-facility-grid{grid-template-columns:repeat(2,1fr)}.spro-admin-layout{grid-template-columns:210px minmax(0,1fr)}.spro-clone-layout{grid-template-columns:1fr}.spro-clone-assurance{position:static}.spro-auth-layout{grid-template-columns:1fr 470px}.spro-auth-visual{padding:26px}.spro-auth-story h1{font-size:52px}.spro-cms-workspace{height:auto;min-height:700px;grid-template-columns:180px minmax(390px,1fr)}.spro-cms-inspector{grid-column:1/-1;max-height:none;border-top:1px solid var(--spro-line);border-left:0}.spro-cms-inspector .spro-model-form{grid-template-columns:1fr 1fr}.spro-mobile-dock{display:none}}
@media(max-width:760px){:root{--spro-topbar:58px}.spro-shell{padding-bottom:68px}.spro-topbar{height:58px;gap:8px}.spro-context{min-width:0;flex:1}.spro-context span,.spro-context b{display:none}.spro-command-search{width:38px;height:38px;margin:0}.spro-command-search span,.spro-command-search kbd{display:none}.spro-live-pill,.spro-user-menu{display:none}.spro-main{padding:18px 12px 30px}.spro-mobile-dock{position:fixed;inset:auto 0 0;z-index:65;display:grid;height:66px;grid-template-columns:repeat(5,1fr);padding:5px max(6px,env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));border-top:1px solid var(--spro-line);background:rgba(255,255,255,.97);box-shadow:0 -8px 24px rgba(20,40,34,.08);backdrop-filter:blur(14px)}.spro-mobile-dock a,.spro-mobile-dock button{display:grid;place-items:center;align-content:center;gap:2px;border:0;color:var(--spro-muted);background:none;font-size:7px;text-decoration:none}.spro-mobile-dock i{font-size:16px;font-style:normal}.spro-mobile-dock .active{color:var(--spro-emerald)}.spro-mobile-dock .spro-dock-primary i{display:grid;width:38px;height:38px;margin-top:-22px;place-items:center;border:4px solid var(--spro-ivory);border-radius:50%;color:#fff;background:var(--spro-forest);font-size:20px}.spro-page-head{display:block}.spro-page-head h1{font-size:34px}.spro-page-actions{margin-top:13px;overflow-x:auto}.spro-metric-grid{grid-template-columns:1fr 1fr;gap:7px}.spro-dashboard-grid{gap:9px}.spro-panel-head{padding:14px}.spro-priority-table{min-width:730px}.spro-project-strip-grid,.spro-delivery-grid{grid-template-columns:1fr}.spro-service-stats,.spro-directory-stats{display:flex;overflow-x:auto}.spro-service-stats article,.spro-directory-stats article{min-width:145px}.spro-ticket-toolbar,.spro-directory-toolbar{flex-wrap:wrap}.spro-ticket-toolbar .spro-table-search,.spro-directory-toolbar .spro-table-search{order:3;width:100%;margin:0}.spro-table-search input{width:100%}.spro-touch-head{grid-template-columns:1fr auto}.spro-touch-clock{padding:0;border:0}.spro-touch-head>.spro-button{display:none}.spro-touch-tabs{grid-template-columns:repeat(4,120px);overflow-x:auto}.spro-touch-tabs button{min-height:88px}.spro-touch-panel{padding:12px}.spro-touch-intro{grid-template-columns:42px 1fr}.spro-touch-intro>span{width:42px;height:42px}.spro-touch-intro>small{grid-column:2}.spro-touch-actions{grid-template-columns:1fr 1fr}.spro-touch-actions>button{min-height:104px;padding:12px}.spro-touch-scan{grid-template-columns:1fr}.spro-scan-target{display:none}.spro-touch-scan>form{min-height:360px}.spro-check-buttons button{min-height:88px}.spro-touch-category-grid{grid-template-columns:repeat(3,1fr)}.spro-touch-category-grid button{min-height:96px}.spro-touch-service-fields{grid-template-columns:1fr}.spro-touch-service-fields button{min-height:64px}.spro-emergency-actions{grid-template-columns:1fr 1fr}.spro-emergency-actions button{min-height:120px}.spro-touch-recent>div{gap:12px}.spro-touch-recent>div>a{display:none}.spro-gate-workbench{grid-template-columns:1fr}.spro-gate-card-list>div{grid-template-columns:34px minmax(0,1fr) auto}.spro-facility-feature{grid-template-columns:1fr}.spro-facility-image{min-height:220px}.spro-facility-image:after{background:linear-gradient(0deg,var(--spro-forest),transparent 55%)}.spro-facility-feature>div:last-child{padding:24px}.spro-facility-grid{grid-template-columns:1fr}.spro-report-hero{grid-template-columns:1fr}.spro-report-orbit{display:none}.spro-report-grid{grid-template-columns:1fr}.spro-report-grid .wide{grid-column:auto}.spro-bottleneck-grid,.spro-report-catalog{grid-template-columns:1fr}.spro-process-head{display:block}.spro-process-head>div:last-child{margin-top:12px}.spro-feature-hero{display:block;min-height:390px;margin:-18px -12px 14px;padding:32px 20px}.spro-feature-constellation{display:none}.spro-feature-proof{display:grid;grid-template-columns:1fr 1fr;gap:14px}.spro-feature-toolbar{top:64px;display:block}.spro-feature-toolbar>div{margin-top:7px}.spro-feature-group ol{grid-template-columns:1fr}.spro-feature-cta{display:block}.spro-feature-cta .spro-button{margin-top:12px}.spro-admin-layout{display:block}.spro-admin-nav{top:58px;z-index:31;display:flex;overflow-x:auto;margin-bottom:10px;border-radius:8px}.spro-admin-nav>span{display:none}.spro-admin-nav button,.spro-admin-nav a{min-width:150px;flex:none}.spro-admin-section>header{display:block}.spro-settings-grid,.spro-brand-editor,.spro-role-grid,.spro-gateway-list,.spro-integration-grid{grid-template-columns:1fr}.spro-structure-grid{grid-template-columns:1fr}.spro-locale-grid{grid-template-columns:1fr 1fr}.spro-feature-policy ul{columns:1}.spro-clone-source-grid{grid-template-columns:repeat(3,1fr)}.spro-clone-options,.spro-clone-layers{grid-template-columns:1fr}.spro-clone-confirm{display:block}.spro-clone-confirm label{grid-template-columns:1fr}.spro-clone-confirm .spro-button{width:100%;margin-top:10px}.spro-cms-top{align-items:flex-start}.spro-cms-top>div:first-child span,.spro-cms-top>div:first-child b,.spro-cms-state,.spro-cms-top [data-preview-size]{display:none}.spro-cms-workspace{display:block;min-height:0}.spro-cms-pages{border:0;border-bottom:1px solid var(--spro-line)}.spro-cms-pages nav,.spro-cms-block-list{display:flex;overflow-x:auto}.spro-cms-pages nav a,.spro-cms-block-list>a,.spro-cms-block-list>button{min-width:165px}.spro-cms-stage{padding:8px}.spro-cms-preview{min-height:500px}.spro-preview-hero{min-height:300px;padding:25px}.spro-preview-hero h2{font-size:34px}.spro-cms-inspector .spro-model-form{grid-template-columns:1fr}.spro-auth-layout{display:block}.spro-auth-visual{display:none}.spro-auth-panel{min-height:100vh;padding:20px}.spro-auth-mobile-brand{display:inline-flex;align-self:flex-start}.spro-auth-form-wrap{margin:55px auto 30px}.spro-register-form{grid-template-columns:1fr}.spro-field-wide{grid-column:auto}.spro-auth-panel>footer{margin-top:auto}.spro-drawer{top:0;z-index:95}.spro-messages{top:66px;right:10px}.spro-toast-region{right:10px;bottom:78px}}
.spro-procurement-page .spro-page-head>div:first-child{min-width:0}
.spro-procurement-page .spro-page-head p{max-width:100%;overflow-wrap:anywhere}
@media(max-width:760px){.spro-procurement-page .spro-page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;overflow:visible}.spro-procurement-page .spro-page-actions .spro-button{box-sizing:border-box;min-width:0;min-height:48px;padding:8px 10px;text-align:center;white-space:normal}.spro-procurement-page .spro-page-actions .spro-button-primary{grid-column:1/-1}}
@media(max-width:460px){.spro-metric-grid{grid-template-columns:1fr}.spro-page-actions .spro-button{flex:none}.spro-touch-tabs{grid-template-columns:repeat(4,105px)}.spro-touch-actions{grid-template-columns:1fr}.spro-touch-actions>button{min-height:88px}.spro-touch-category-grid{grid-template-columns:1fr 1fr}.spro-emergency-actions{grid-template-columns:1fr}.spro-auth-form-wrap{margin-top:38px}.spro-auth-heading h2{font-size:34px}.spro-clone-source-grid{grid-template-columns:1fr 1fr}.spro-report-hero>div:first-child{padding:25px}.spro-report-hero h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}[data-reveal]{opacity:1;transform:none}.spro-bar-chart i,.spro-horizontal-bars i{transform:none}}
@media print{.spro-sidebar,.spro-topbar,.spro-mobile-dock,.spro-page-actions,.spro-command-dialog,.spro-toast-region,.spro-drawer{display:none!important}.spro-shell{margin:0}.spro-main{max-width:none;padding:0}.spro-panel,.spro-metric-card{break-inside:avoid;box-shadow:none}.spro-app{background:#fff;color:#000}@page{margin:12mm}}

/* Universal record 360 lifecycle workbench */
.spro-record-link{display:grid;gap:2px;color:var(--spro-ink);text-decoration:none}.spro-record-link small{color:var(--spro-emerald);font-size:11px;font-weight:800}.spro-record-link:hover b{text-decoration:underline;text-decoration-color:var(--spro-mint);text-underline-offset:3px}
.spro-record-360{display:grid;gap:18px;max-width:1600px;margin:0 auto}.spro-record-360-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:26px 28px;border:1px solid var(--spro-line);border-radius:20px;background:radial-gradient(circle at 88% 12%,rgba(193,157,82,.15),transparent 25%),linear-gradient(135deg,#fff,#f7f5f1);box-shadow:var(--spro-shadow)}.spro-record-360-hero nav{display:flex;align-items:center;gap:9px;margin-bottom:18px;color:var(--spro-muted);font-size:12px}.spro-record-360-hero nav a{color:var(--spro-emerald);font-weight:800;text-decoration:none}.spro-record-360-hero h1{max-width:920px;margin:8px 0 5px;font:560 clamp(34px,4vw,54px)/1.04 var(--spro-display);letter-spacing:-.035em}.spro-record-360-hero p{max-width:850px;margin:0;color:var(--spro-muted);font-size:15px;line-height:1.6}.spro-record-360-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.spro-record-360-actions .danger{color:#a3453d}
.spro-record-360-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.spro-record-360-metrics article{padding:17px 18px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-360-metrics span,.spro-record-360-card>header>span,.spro-record-360-card>header div>span{display:block;color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.12em}.spro-record-360-metrics b{display:block;margin:5px 0 1px;font:600 29px var(--spro-display)}.spro-record-360-metrics small{color:var(--spro-muted);font-size:12px}.spro-record-360-metrics .warning{border-color:#e7c8ac;background:#fff9f3}.spro-record-360-metrics .warning b{color:#a75c31}.spro-record-360-metrics .ready{border-color:#dbd2bd;background:#fbf8f3}
.spro-record-360-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:18px;align-items:start}.spro-record-360-layout>main{display:grid;gap:18px}.spro-record-360-card{overflow:hidden;border:1px solid var(--spro-line);border-radius:17px;background:#fff;box-shadow:0 10px 26px rgba(25,55,47,.055)}.spro-record-360-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:21px 22px;border-bottom:1px solid var(--spro-line-soft)}.spro-record-360-card>header h2{margin:5px 0 2px;font:560 25px var(--spro-display)}.spro-record-360-card>header p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.55}.spro-record-360-card>header>a{color:var(--spro-emerald);font-size:12px;font-weight:850;text-decoration:none}
.spro-record-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--spro-line-soft)}.spro-record-data-grid article{min-width:0;padding:16px 18px;background:#fff}.spro-record-data-grid article.wide{grid-column:1/-1}.spro-record-data-grid span{display:block;margin-bottom:7px;color:var(--spro-faint);font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.spro-record-data-grid b,.spro-record-data-grid a{display:block;overflow-wrap:anywhere;color:var(--spro-ink);font-size:14px;line-height:1.5}.spro-record-data-grid a{color:var(--spro-emerald);font-weight:800;text-decoration:none}.spro-record-data-grid pre{max-height:260px;margin:0;overflow:auto;white-space:pre-wrap;color:#2e374b;font:500 12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace}
.spro-timeline-list{padding:6px 22px 24px}.spro-timeline-list>article{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);gap:13px;padding:17px 0}.spro-timeline-list>article:not(:last-child){border-bottom:1px solid var(--spro-line-soft)}.spro-timeline-list>article>i{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:#fff;background:var(--spro-emerald);font-size:15px;font-style:normal}.spro-timeline-list .type-task>i{background:#bf8d38}.spro-timeline-list .type-document>i{background:#846d3b}.spro-timeline-list .type-status-change>i{background:#a38d5f}.spro-timeline-list article header{display:flex;align-items:center;justify-content:space-between;gap:15px}.spro-timeline-list article header span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-timeline-list time{color:var(--spro-faint);font-size:11px}.spro-timeline-list h3{margin:5px 0 3px;font-size:16px}.spro-timeline-list p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.6}.spro-timeline-list article footer{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:10px;color:var(--spro-faint);font-size:11px}.spro-timeline-list article footer a{color:var(--spro-emerald);font-weight:800;text-decoration:none}.spro-timeline-list .overdue{color:#b14c40;font-weight:800}.spro-state-diff{display:flex;align-items:center;gap:8px;margin-top:9px;font-size:12px}.spro-state-diff del,.spro-state-diff ins{padding:5px 7px;border-radius:6px;text-decoration:none}.spro-state-diff del{color:#8b4540;background:#fcedeb}.spro-state-diff ins{color:#132c65;background:#f7f3ea}.spro-task-state-form{display:flex;align-items:flex-end;gap:8px;margin-top:12px}.spro-task-state-form label{display:grid;gap:4px}.spro-task-state-form label span{font-size:10px;font-weight:800}.spro-task-state-form select{min-height:36px;padding:6px 9px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}.spro-task-state-form button{min-height:36px;padding:0 12px;border:0;border-radius:8px;color:#fff;background:var(--spro-forest);font-weight:800;cursor:pointer}
.spro-record-360-rail{position:sticky;top:92px;display:grid;gap:13px}.spro-record-360-rail .spro-record-360-card{padding:20px}.spro-record-360-rail .spro-record-360-card>header{display:block;margin:-20px -20px 16px;padding:20px}.spro-lifecycle-card>form{display:grid;gap:8px;padding:14px 0;border-top:1px solid var(--spro-line-soft)}.spro-lifecycle-card>form label{display:flex;align-items:center;justify-content:space-between;gap:10px}.spro-lifecycle-card>form label span{color:var(--spro-muted);font-size:12px}.spro-lifecycle-card>form label b{font-size:12px}.spro-lifecycle-card select,.spro-lifecycle-card textarea,.spro-activity-compose input,.spro-activity-compose select,.spro-activity-compose textarea{box-sizing:border-box;width:100%;min-height:43px;padding:9px 10px;border:1px solid #d9d6ce;border-radius:9px;background:#fcfcfb;font:500 13px/1.45 var(--spro-font)}.spro-lifecycle-card textarea{resize:vertical}.spro-lifecycle-card button{min-height:40px;border:0;border-radius:8px;color:#fff;background:var(--spro-forest);font-weight:850;cursor:pointer}.spro-process-rail-card>p{color:var(--spro-muted);font-size:13px;line-height:1.6}.spro-process-rail-card>div{display:grid;gap:6px}.spro-process-rail-card a{padding:10px 11px;border:1px solid var(--spro-line);border-radius:8px;color:var(--spro-emerald);font-size:12px;font-weight:850;text-decoration:none}.spro-activity-compose form{display:grid;gap:11px}.spro-activity-compose form>label{display:grid;gap:5px}.spro-activity-compose form>label>span{font-size:12px;font-weight:780}.spro-activity-compose form>label small{color:var(--spro-muted);font-size:11px}.spro-activity-compose input[type=file]{padding:8px}.spro-activity-compose .spro-button{width:100%;justify-content:center}
@media(max-width:1180px){.spro-record-360-layout{grid-template-columns:1fr}.spro-record-360-rail{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.spro-activity-compose{grid-column:1/-1}.spro-record-360-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.spro-record-360-hero{display:block;padding:20px 17px}.spro-record-360-actions{justify-content:flex-start;margin-top:18px}.spro-record-360-actions .spro-scope-lock{width:100%}.spro-record-360-metrics{display:flex;overflow-x:auto}.spro-record-360-metrics article{min-width:145px}.spro-record-data-grid{grid-template-columns:1fr}.spro-record-data-grid article.wide{grid-column:auto}.spro-record-360-rail{grid-template-columns:1fr}.spro-activity-compose{grid-column:auto}.spro-timeline-list{padding:4px 15px 18px}.spro-timeline-list>article{grid-template-columns:34px minmax(0,1fr);gap:9px}.spro-timeline-list>article>i{width:31px;height:31px}.spro-timeline-list article header{display:block}.spro-task-state-form{align-items:stretch;flex-direction:column}.spro-record-360-card>header{padding:17px}.spro-record-360-hero h1{font-size:36px}}

/* Resident-readable typography
   Calibrated to a 16px reading base, 14px controls and 12px minimum metadata.
   This late screen-only layer intentionally normalises the dense command UI
   without changing print layouts or the editorial display-heading scale. */
@media screen {
  :root {
    --spro-ink: #171b24;
    --spro-muted: #545b69;
    --spro-faint: #7c8492;
    --spro-line: #e6e2d8;
    --spro-line-soft: #efece4;
    --spro-type-micro: 12px;
    --spro-type-small: 13px;
    --spro-type-control: 14px;
    --spro-type-body: 15px;
    --spro-type-reading: 16px;
  }

  .spro-app,
  .spro-auth {
    font-size: var(--spro-type-reading);
    line-height: 1.5;
    font-kerning: normal;
    text-rendering: optimizeLegibility;
  }

  /* Navigation and application chrome */
  .spro-brand,
  .spro-auth-brand,
  .spro-auth-mobile-brand { font-size: 15px; }
  .spro-society-switch { min-height: 58px; padding: 10px; }
  .spro-society-switch b { font-size: 14px; line-height: 1.25; }
  .spro-society-switch small { font-size: 12px; line-height: 1.35; }
  .spro-nav-label { margin-top: 20px; font-size: 11px; line-height: 1.3; }
  .spro-side-nav a { min-height: 44px; gap: 9px; padding: 9px 10px; font-size: 14px; line-height: 1.35; }
  .spro-side-nav a > small { padding: 3px 6px; font-size: 11px; line-height: 1.2; }
  .spro-system-health b { font-size: 13px; line-height: 1.35; }
  .spro-system-health small { font-size: 12px; line-height: 1.35; }
  .spro-side-foot > a { min-height: 38px; align-items: center; font-size: 13px; }
  .spro-context span { font-size: 11px; line-height: 1.25; }
  .spro-context b { font-size: 15px; line-height: 1.3; }
  .spro-command-search { min-height: 44px; }
  .spro-command-search > span { font-size: 14px; }
  .spro-command-search kbd,
  .spro-command-dialog kbd,
  .spro-feature-toolbar kbd { font-size: 11px; }
  .spro-top-actions > .spro-icon-button b { font-size: 10px; line-height: 12px; }
  .spro-live-pill { font-size: 12px; }
  .spro-user-menu summary b { font-size: 13px; line-height: 1.3; }
  .spro-user-menu summary small { font-size: 12px; line-height: 1.3; }
  .spro-user-menu > div { width: 210px; }
  .spro-user-menu > div a { min-height: 42px; font-size: 14px; }
  .spro-message { font-size: 14px; line-height: 1.45; }

  /* Page hierarchy, controls and data tables */
  .spro-main { font-size: var(--spro-type-body); }
  .spro-page-head p { font-size: 16px; line-height: 1.65; }
  .spro-eyebrow { font-size: 12px; line-height: 1.35; }
  .spro-button { min-height: 44px; padding-inline: 16px; font-size: 14px; line-height: 1.25; }
  .spro-panel-head span:first-child { font-size: 11px; line-height: 1.3; }
  .spro-panel-head h2 { font-size: 24px; line-height: 1.2; }
  .spro-panel-head p { font-size: 14px; line-height: 1.55; }
  .spro-panel-head > a { min-height: 32px; font-size: 14px; line-height: 1.35; }
  .spro-field { gap: 7px; font-size: 13px; line-height: 1.4; }
  .spro-field > span small,
  .spro-field > small { font-size: 12px; line-height: 1.45; }
  .spro-field input,
  .spro-field select,
  .spro-field textarea,
  .spro-new-ticket select,
  .spro-new-ticket textarea { min-height: 44px; font-size: 15px; line-height: 1.45; }
  .spro-form-error { font-size: 13px; line-height: 1.5; }
  .spro-consent { font-size: 13px; line-height: 1.55; }
  .spro-filter-button { min-height: 38px; font-size: 13px; }
  .spro-table th { padding-block: 12px; font-size: 12px; line-height: 1.35; }
  .spro-table td { padding-block: 13px; font-size: 14px; line-height: 1.45; }
  .spro-table td > b { font-size: 14px; line-height: 1.4; }
  .spro-table td > small { font-size: 12px; line-height: 1.4; }
  .spro-table-footer { min-height: 48px; font-size: 12px; line-height: 1.4; }
  .spro-table-footer button,
  .spro-table-footer b { width: 32px; height: 32px; font-size: 12px; }
  .spro-table-search { min-height: 42px; }
  .spro-table-search input { font-size: 14px; }
  .spro-segmented button { min-height: 34px; font-size: 13px; }
  .spro-segmented button b { font-size: 11px; }
  .spro-priority,
  .spro-status { min-height: 24px; font-size: 11px; line-height: 1.2; }
  .spro-owner-avatar { font-size: 10px; }
  .spro-person-avatar { font-size: 12px; }
  .spro-sla { font-size: 12px; line-height: 1.35; }
  .spro-drawer > header span { font-size: 11px; }
  .spro-drawer > header p { font-size: 14px; line-height: 1.55; }

  /* Dashboard and service command */
  .spro-metric-card header span { font-size: 13px; line-height: 1.35; }
  .spro-metric-card > strong small { font-size: 13px; }
  .spro-metric-card footer b,
  .spro-metric-card footer span { font-size: 12px; line-height: 1.35; }
  .spro-ai-glyph { font-size: 11px; }
  .spro-ai-strip b,
  .spro-pulse-list b,
  .spro-quick-grid b,
  .spro-activity-list b,
  .spro-category-list b { font-size: 14px; line-height: 1.4; }
  .spro-ai-strip small,
  .spro-pulse-list small,
  .spro-quick-grid small,
  .spro-activity-list small,
  .spro-category-list small { font-size: 12px; line-height: 1.45; }
  .spro-ai-strip button,
  .spro-ai-strip > a { min-height: 34px; font-size: 13px; }
  .spro-score-ring small { font-size: 11px; }
  .spro-health-score > div:last-child p { font-size: 13px; line-height: 1.5; }
  .spro-pulse-list > div > i,
  .spro-pulse-list > div > strong,
  .spro-activity-list > div > span { font-size: 12px; }
  .spro-chart-summary small,
  .spro-chart-summary span,
  .spro-line-chart .y,
  .spro-line-chart .x { font-size: 12px; }
  .spro-trend-pill { font-size: 11px !important; }
  .spro-activity-list time { font-size: 12px; }
  .spro-service-stats span,
  .spro-directory-stats span { font-size: 12px; line-height: 1.35; }
  .spro-service-stats small,
  .spro-directory-stats small { font-size: 12px; line-height: 1.4; }
  .spro-active-filters span,
  .spro-active-filters button { font-size: 12px; }
  .spro-new-ticket header p { font-size: 14px; line-height: 1.55; }
  .spro-triage-result > span { font-size: 12px; }
  .spro-triage-result > b { font-size: 15px; }
  .spro-triage-result > small { font-size: 12px; line-height: 1.45; }
  .spro-upload b { font-size: 14px; }
  .spro-upload small { font-size: 12px; line-height: 1.45; }

  /* High-speed resident and security touch surfaces */
  .spro-touch-head p { font-size: 15px; line-height: 1.5; }
  .spro-touch-clock span { font-size: 12px; }
  .spro-touch-tabs button { min-height: 96px; }
  .spro-touch-tabs button span { font-size: 14px; line-height: 1.3; }
  .spro-touch-tabs button small { font-size: 12px; line-height: 1.35; }
  .spro-touch-intro p { font-size: 15px; line-height: 1.55; }
  .spro-touch-intro > small { font-size: 13px; line-height: 1.45; }
  .spro-touch-actions b { font-size: 16px; line-height: 1.3; }
  .spro-touch-actions small { font-size: 13px; line-height: 1.45; }
  .spro-touch-recent header span,
  .spro-touch-recent > div > a,
  .spro-scan-target span,
  .spro-touch-scan > form > span { font-size: 12px; }
  .spro-touch-recent > div > span small { font-size: 12px; line-height: 1.4; }
  .spro-touch-scan input { min-height: 52px; font-size: 17px; }
  .spro-check-buttons b { font-size: 16px; }
  .spro-check-buttons small { font-size: 13px; line-height: 1.4; }
  .spro-touch-category-grid span { font-size: 14px; line-height: 1.35; }
  .spro-touch-service-fields label { font-size: 13px; }
  .spro-touch-service-fields button { min-height: 48px; font-size: 14px; }
  .spro-emergency-actions b { font-size: 16px; }
  .spro-emergency-actions small { font-size: 13px; line-height: 1.4; }
  .spro-emergency-note { font-size: 13px; line-height: 1.5; }
  .spro-touch-dialog-card > small,
  .spro-touch-dialog-card label { font-size: 13px; }
  .spro-touch-dialog-card p { font-size: 15px; line-height: 1.55; }
  .spro-touch-dialog-card input { min-height: 48px; font-size: 16px; }
  .spro-touch-dialog-card > div button { min-height: 44px; font-size: 14px; }
  .spro-gate-workbench .spro-panel-head > b,
  .spro-attendance-roster .spro-panel-head > b { font-size: 14px; }
  .spro-mini-action { min-height: 34px; font-size: 12px; }
  .spro-gate-card-list b { font-size: 14px; }
  .spro-gate-card-list small,
  .spro-empty-inline { font-size: 12px; line-height: 1.45; }

  /* Facilities, projects, finance and service delivery */
  .spro-pay-inline select,
  .spro-pay-inline button { min-height: 38px; font-size: 13px; }
  .spro-facility-image > span { font-size: 12px; }
  .spro-facility-feature p { font-size: 15px; line-height: 1.6; }
  .spro-facility-feature > div:last-child > div span { font-size: 12px; }
  .spro-facility-card p { font-size: 14px; line-height: 1.55; }
  .spro-facility-card footer { font-size: 12px; line-height: 1.4; }
  .spro-facility-card footer button { min-height: 36px; font-size: 13px; }
  .spro-project-strip-grid header b,
  .spro-delivery-grid header > div b { font-size: 14px; }
  .spro-project-strip-grid header em,
  .spro-delivery-grid header em { font-size: 12px; }
  .spro-project-strip-grid p { font-size: 13px; line-height: 1.5; }
  .spro-project-strip-grid footer,
  .spro-delivery-grid article > footer { font-size: 12px; line-height: 1.4; }
  .spro-delivery-grid header > div small,
  .spro-milestones b,
  .spro-milestones small { font-size: 12px; line-height: 1.4; }
  .spro-delivery-grid footer button { min-height: 34px; font-size: 12px; }

  /* Reports, process mining and the feature atlas */
  .spro-report-tabs button { min-height: 40px; font-size: 13px; }
  .spro-report-hero p { font-size: 15px; line-height: 1.6; }
  .spro-report-hero > div:first-child > div span,
  .spro-report-orbit small,
  .spro-report-orbit > b,
  .spro-chart-kpi span,
  .spro-bar-chart span,
  .spro-donut small,
  .spro-legend span,
  .spro-water-card > div:last-child span,
  .spro-cohort-grid > *,
  .spro-process-head > div:last-child span,
  .spro-process-lane > span,
  .spro-process-node > i,
  .spro-bottleneck-grid span { font-size: 12px; line-height: 1.4; }
  .spro-water-card > div:last-child b,
  .spro-horizontal-bars > div,
  .spro-fund-list b,
  .spro-process-node b,
  .spro-report-catalog b { font-size: 13px; line-height: 1.4; }
  .spro-insight-card > span { font-size: 12px; }
  .spro-insight-card p,
  .spro-process-head p,
  .spro-bottleneck-grid p,
  .spro-report-catalog-head p { font-size: 14px; line-height: 1.55; }
  .spro-process-node small,
  .spro-report-catalog small,
  .spro-report-catalog em { font-size: 12px; line-height: 1.4; }
  .spro-feature-hero p { font-size: 15px; line-height: 1.6; }
  .spro-feature-proof span,
  .spro-feature-constellation > b,
  .spro-feature-group header small,
  .spro-feature-group header > b { font-size: 12px; line-height: 1.35; }
  .spro-feature-toolbar input { min-height: 42px; font-size: 14px; }
  .spro-feature-toolbar > div button { min-height: 36px; font-size: 13px; }
  .spro-feature-group li { font-size: 14px; line-height: 1.5; }
  .spro-feature-group li i { font-size: 11px; }
  .spro-feature-cta p { font-size: 14px; line-height: 1.55; }

  /* Admin, MDM, no-code CMS and cloning remain dense but readable */
  .spro-unsaved,
  .spro-version-badge,
  .spro-admin-nav > span,
  .spro-admin-section > header span:first-child,
  .spro-cms-state,
  .spro-cms-pages > header,
  .spro-cms-pages > span,
  .spro-clone-label { font-size: 12px; line-height: 1.35; }
  .spro-admin-nav b,
  .spro-policy-row b,
  .spro-feature-policy b,
  .spro-gateway-list b,
  .spro-integration-grid b,
  .spro-locale-grid b,
  .spro-cms-top > div:first-child b,
  .spro-cms-pages b,
  .spro-cms-inspector > header b,
  .spro-block-library b,
  .spro-clone-options b,
  .spro-clone-layers b,
  .spro-clone-assurance b { font-size: 13px; line-height: 1.4; }
  .spro-admin-nav small,
  .spro-policy-row small,
  .spro-structure-map small,
  .spro-feature-policy small,
  .spro-role-grid small,
  .spro-gateway-list small,
  .spro-integration-grid small,
  .spro-locale-grid small,
  .spro-cms-pages small,
  .spro-cms-pages em,
  .spro-model-form .helptext,
  .spro-model-form ul.errorlist,
  .spro-block-library small,
  .spro-clone-options small,
  .spro-clone-layers small,
  .spro-clone-assurance small { font-size: 12px; line-height: 1.45; }
  .spro-admin-section > header p,
  .spro-clone-society p,
  .spro-clone-step p,
  .spro-clone-assurance > p { font-size: 14px; line-height: 1.55; }
  .spro-brand-upload b { font-size: 14px; }
  .spro-brand-upload small,
  .spro-brand-upload label,
  .spro-colour-fields label,
  .spro-chip-editor > span,
  .spro-chip-editor > label,
  .spro-feature-policy details,
  .spro-role-grid b,
  .spro-gateway-list article > span,
  .spro-integration-grid article > span,
  .spro-integration-grid em,
  .spro-channel-badges i,
  .spro-cms-top a,
  .spro-cms-top > div:first-child span,
  .spro-cms-add-block,
  .spro-cms-browser b,
  .spro-cms-browser em,
  .spro-cms-inspector > header span,
  .spro-clone-society em,
  .spro-clone-source-grid span { font-size: 12px; line-height: 1.4; }
  .spro-colour-fields input,
  .spro-settings-table input,
  .spro-settings-table select,
  .spro-role-grid input,
  .spro-role-grid select,
  .spro-model-form input,
  .spro-model-form select,
  .spro-model-form textarea,
  .spro-clone-confirm input { min-height: 42px; font-size: 14px; }
  .spro-integration-grid button { min-height: 36px; font-size: 13px; }
  .spro-preview-hero span,
  .spro-preview-stats,
  .spro-preview-copy > span { font-size: 12px; }
  .spro-preview-hero p,
  .spro-preview-copy p { font-size: 14px; line-height: 1.55; }
  .spro-preview-hero button { min-height: 38px; font-size: 13px; }
  .spro-preview-cards b { font-size: 14px; }
  .spro-preview-cards small { font-size: 12px; }
  .spro-model-form p,
  .spro-model-form label { font-size: 13px; line-height: 1.45; }
  .spro-clone-confirm label span { font-size: 12px; line-height: 1.45; }

  /* Search, feedback and authentication */
  .spro-command-box > header input { font-size: 16px; }
  .spro-command-results > span { font-size: 12px; }
  .spro-command-results b { font-size: 14px; }
  .spro-command-results small { font-size: 12px; line-height: 1.4; }
  .spro-command-box > footer,
  .spro-command-box > footer button { font-size: 12px; }
  .spro-toast span { font-size: 13px; line-height: 1.45; }
  .spro-auth-kicker,
  .spro-auth-heading > span { font-size: 12px; line-height: 1.35; }
  .spro-auth-story > p { font-size: 16px; line-height: 1.65; }
  .spro-auth-proof span { font-size: 12px; line-height: 1.4; }
  .spro-auth-photo-note { font-size: 11px; line-height: 1.4; }
  .spro-auth-heading p { font-size: 15px; line-height: 1.6; }
  .spro-auth-form .spro-field > span { font-size: 13px; }
  .spro-input-wrap,
  .spro-select-wrap { min-height: 50px; }
  .spro-input-wrap input,
  .spro-select-wrap select { height: 47px; font-size: 15px; }
  .spro-input-wrap button { min-width: 44px; min-height: 44px; font-size: 12px; }
  .spro-form-options { font-size: 13px; line-height: 1.45; }
  .spro-auth-submit,
  .spro-auth-secondary { min-height: 50px; font-size: 15px; }
  .spro-auth-divider span { font-size: 11px; }
  .spro-auth-assurance,
  .spro-auth-switch,
  .spro-auth-alert { font-size: 13px; line-height: 1.5; }
  .spro-auth-panel > footer { font-size: 12px; line-height: 1.4; }

  @media (max-width: 760px) {
    .spro-mobile-dock a,
    .spro-mobile-dock button { font-size: 11px; line-height: 1.2; }
    .spro-page-head p { font-size: 15px; }
    .spro-touch-actions > button { min-height: 118px; }
    .spro-touch-category-grid button { min-height: 108px; }
  }
}

/* Late cascade guard for the studio's compound legacy/shared classes. */
.spro-studio-tabs.spro-report-tabs {
  position: sticky;
  top: calc(var(--spro-topbar) + 10px);
  z-index: 28;
  gap: 5px;
  margin: 0 0 18px;
  padding: 5px;
  border-radius: 12px;
  background: rgba(245,244,238,.9);
}
.spro-studio-tabs.spro-report-tabs button { min-height: 44px; flex: 1 0 auto; padding: 0 16px; border-radius: 8px; font-size: 14px; }
.spro-studio-tabs.spro-report-tabs button.active { background: linear-gradient(135deg,#07173b,#0d2969); }
.spro-intelligence-hero.spro-report-hero {
  min-height: 330px;
  grid-template-columns: minmax(0,1.55fr) minmax(270px,.45fr);
  margin-bottom: 0;
  border-radius: 20px;
  background: radial-gradient(circle at 78% 25%,rgba(215,232,143,.17),transparent 24%),linear-gradient(118deg,#05122f 0%,#0a2052 60%,#0d2868 100%);
}
.spro-intelligence-hero.spro-report-hero > div:first-child { padding: clamp(30px,5vw,66px); }
.spro-intelligence-hero.spro-report-hero h2 { margin: 14px 0 12px; font-size: clamp(42px,5vw,72px); line-height: .98; }
.spro-intelligence-hero.spro-report-hero p { max-width: 700px; color: #dad3c5; font-size: 16px; line-height: 1.65; }
.spro-intelligence-hero.spro-report-hero > div:first-child > div { flex-wrap: wrap; gap: 11px; margin-top: 25px; }
.spro-intelligence-hero.spro-report-hero > div:first-child > div span { padding: 9px 12px; color: #e4e0d6; font-size: 13px; }
.spro-intelligence-hero.spro-report-hero > div:first-child > div b { display: inline; color: #edc291; font: inherit; font-weight: 850; }
.spro-report-view .spro-empty-inline { margin: 14px 0; padding: 22px; border: 1px dashed #d6d2ca; border-radius: 12px; background: #fff; font-size: 13px; }
@media (max-width: 1020px) {
  .spro-intelligence-hero.spro-report-hero { grid-template-columns: 1fr minmax(210px,.35fr); }
}
@media (max-width: 760px) {
  .spro-studio-tabs.spro-report-tabs { top: calc(var(--spro-topbar) + 5px); margin-inline: -4px; }
  .spro-studio-tabs.spro-report-tabs button { flex: 0 0 auto; }
  .spro-intelligence-hero.spro-report-hero { display: block; min-height: 365px; }
  .spro-intelligence-hero.spro-report-hero > div:first-child { padding: 31px 24px 125px; }
  .spro-intelligence-hero.spro-report-hero h2 { font-size: 43px; }
}

/* Facility calendar, event projects and project-level Process Studio */
.spro-facility-head p,.spro-workflow-head p{max-width:850px;font-size:16px;line-height:1.65}
.spro-facility-metrics,.spro-project-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 20px}
.spro-facility-metrics article,.spro-project-kpis article{min-height:126px;padding:22px;border:1px solid #e2e3e7;border-radius:16px;background:linear-gradient(145deg,#fff,#fcfbfa);box-shadow:0 8px 28px rgba(14,44,38,.05)}
.spro-facility-metrics span,.spro-project-kpis span{display:block;color:#6a7080;font-size:12px;font-weight:850;letter-spacing:.1em}
.spro-facility-metrics strong,.spro-project-kpis strong{display:block;margin:10px 0 4px;color:#0a1a40;font-size:31px;line-height:1}
.spro-facility-metrics small,.spro-project-kpis small{color:#646a7a;font-size:13px}
.spro-facility-picker{display:flex;gap:10px;overflow:auto;margin:0 0 18px;padding:4px 2px 9px;scrollbar-width:thin}
.spro-facility-picker>a{display:grid;grid-template-columns:42px minmax(150px,1fr) auto;align-items:center;gap:11px;min-width:260px;padding:13px 14px;border:1px solid #e4e1dc;border-radius:14px;background:#fff;color:#16223f;text-decoration:none;transition:.2s ease}
.spro-facility-picker>a:hover,.spro-facility-picker>a.active{border-color:#193371;box-shadow:0 10px 24px rgba(10,83,71,.11);transform:translateY(-1px)}
.spro-facility-picker>a.active{background:linear-gradient(135deg,#07173d,#0a2668);color:#fff}
.spro-facility-picker>a>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#f5f2ed;font-size:19px;font-weight:900}
.spro-facility-picker>a.active>span{background:rgba(255,255,255,.13)}
.spro-facility-picker b{display:block;font-size:15px}.spro-facility-picker small{display:block;margin-top:3px;color:#6f7583;font-size:12px}.spro-facility-picker a.active small{color:#dad4c7}.spro-facility-picker em{font-size:12px;font-style:normal;font-weight:800}
.spro-slot-workspace{overflow:hidden;margin-bottom:20px;border:1px solid #e4e1dc;border-radius:20px;background:#fff;box-shadow:0 16px 45px rgba(18,50,43,.07)}
.spro-slot-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:25px 28px;color:#fff;background:radial-gradient(circle at 80% 20%,rgba(216,235,142,.2),transparent 25%),linear-gradient(120deg,#07173b,#0c2868)}
.spro-slot-hero>div:first-child>span,.spro-event-project-hero>div:first-child>span{font-size:11px;font-weight:900;letter-spacing:.13em;color:#edc69a}.spro-slot-hero h2{margin:6px 0;font-size:29px}.spro-slot-hero p{margin:0;color:#d9d3c6;font-size:14px}
.spro-slot-hero>div:last-child{display:flex;gap:22px}.spro-slot-hero>div:last-child span{padding-left:20px;border-left:1px solid rgba(255,255,255,.2);color:#d2cbbd;font-size:11px}.spro-slot-hero>div:last-child b{display:block;margin-bottom:4px;color:#fff;font-size:20px}
.spro-booking-composer{padding:20px}.spro-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;overflow:auto;padding-bottom:8px}
.spro-calendar-day{min-width:150px;border:1px solid #e7e5e0;border-radius:14px;background:#fbfaf9}.spro-calendar-day>header{padding:13px 14px;border-bottom:1px solid #e3e4e8;background:#f5f4f1}.spro-calendar-day>header span{display:block;color:#6d7382;font-size:11px;font-weight:850;letter-spacing:.09em}.spro-calendar-day>header b{display:block;margin:3px 0;color:#17233f;font-size:16px}.spro-calendar-day>header small{color:#7d5c16;font-size:11px}
.spro-slot-list{display:grid;gap:7px;padding:10px}.spro-time-slot{position:relative;display:block;cursor:pointer}.spro-time-slot input{position:absolute;opacity:0;pointer-events:none}.spro-time-slot>span{display:block;min-height:56px;padding:10px;border:1px solid #e6e3dc;border-radius:10px;background:#fff;transition:.18s ease}.spro-time-slot b{display:block;color:#18243f;font-size:13px}.spro-time-slot small{display:block;margin-top:3px;color:#686e7c;font-size:10px;line-height:1.35}.spro-time-slot input:checked+span{border-color:#0e2d74;background:#f4f0e7;box-shadow:0 0 0 3px rgba(14,116,95,.12)}.spro-time-slot:not(.is-available){cursor:not-allowed}.spro-time-slot:not(.is-available)>span{border-style:dashed;background:#f2f3f4;opacity:.62}.spro-time-slot.is-blackout>span{background:#fff2ec}.spro-slot-empty{padding:12px;color:#737986;font-size:12px;line-height:1.45}
.spro-booking-footer{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:16px;padding-top:16px;border-top:1px solid #e4e6e9}.spro-booking-footer>div{display:grid;grid-template-columns:130px minmax(260px,520px);gap:12px;flex:1}.spro-booking-footer .spro-field{margin:0}.spro-policy-note{margin:10px 0 0;color:#646a7a;font-size:12px;line-height:1.5}
.spro-facility-two-col,.spro-event-delivery-grid,.spro-workflow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.spro-event-rail{display:grid;gap:2px;padding:8px 18px 18px}.spro-event-rail>a{display:grid;grid-template-columns:52px 1fr 24px;align-items:center;gap:13px;padding:14px 5px;border-bottom:1px solid #e7e8eb;color:#16223e;text-decoration:none}.spro-event-rail>a>span{display:grid;place-items:center;width:50px;height:50px;border-radius:13px;background:#f5f2ed;color:#0c2766;font-size:20px;font-weight:900}.spro-event-rail>a>span small{font-size:9px;letter-spacing:.08em}.spro-event-rail b,.spro-event-rail small,.spro-event-rail em{display:block}.spro-event-rail b{font-size:14px}.spro-event-rail small{margin-top:3px;color:#6b7180;font-size:11px}.spro-event-rail em{margin-top:5px;color:#0c2b73;font-size:11px;font-style:normal;font-weight:800}
.spro-wide-drawer{width:min(680px,100vw)}.spro-drawer-scroll{overflow:auto;padding:0 24px 28px}.spro-admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.spro-admin-form h3,.spro-admin-form .spro-button-full{grid-column:1/-1}.spro-admin-form .spro-field{margin:0}.spro-admin-form .spro-field:has(textarea),.spro-admin-form .spro-field:has(ul){grid-column:1/-1}.spro-admin-form ul{display:flex;flex-wrap:wrap;gap:8px;margin:5px 0;padding:0;list-style:none}.spro-admin-form ul label{display:flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid #e4e1dc;border-radius:9px;font-size:12px}.spro-drawer-scroll hr{margin:28px 0;border:0;border-top:1px solid #e6e4df}
.spro-event-project-hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:25px;margin-bottom:18px;padding:34px;border-radius:22px;color:#fff;background:radial-gradient(circle at 82% 18%,rgba(214,235,143,.2),transparent 25%),linear-gradient(118deg,#05122f,#0d2866)}.spro-event-project-hero a{color:#e9bf90;font-size:12px;text-decoration:none}.spro-event-project-hero h1{margin:12px 0 8px;font-size:clamp(36px,5vw,64px);line-height:1}.spro-event-project-hero p{color:#dad4c7;font-size:15px}.spro-event-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.spro-event-badges i{padding:7px 10px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.08);font-size:11px;font-style:normal}.spro-event-project-score{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:24px;border:1px solid rgba(255,255,255,.14);border-radius:17px;background:rgba(255,255,255,.08)}.spro-event-project-score>span{font-size:10px;font-weight:900;letter-spacing:.11em}.spro-event-project-score>strong{margin:9px 0;font-size:48px}.spro-event-project-score>small{margin-bottom:18px;color:#d9d4c8;font-size:12px}
.spro-span-panel{grid-column:1/-1}.spro-milestone-roadmap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:18px}.spro-milestone-roadmap>div{position:relative;min-height:185px;padding:17px;border:1px solid #e7e4df;border-radius:14px;background:#fcfbfa}.spro-milestone-roadmap>div>span{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#f2efe7;color:#0a2669;font-size:12px;font-weight:900}.spro-milestone-roadmap b{display:block;margin:14px 0 6px;color:#15223f;font-size:14px;line-height:1.35}.spro-milestone-roadmap small,.spro-milestone-roadmap p{color:#696f7e;font-size:11px;line-height:1.45}.spro-milestone-roadmap p{margin:10px 0}.spro-milestone-roadmap select{width:100%;min-height:36px;border:1px solid #d9dbe1;border-radius:8px;background:#fff;font-size:12px}.spro-milestone-roadmap .is-approved,.spro-milestone-roadmap .is-paid{border-color:#ccbb97;background:#f8f5ee}
.spro-task-stack,.spro-control-list{display:grid;padding:8px 18px 18px}.spro-task-stack>div,.spro-control-list>div{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #e6e8eb}.spro-task-stack>div>span{display:grid;place-items:center;min-width:38px;height:34px;border-radius:8px;background:#f3f1ed;color:#0a2563;font-size:11px;font-weight:850}.spro-task-stack>div>div,.spro-control-list>div>span{min-width:0;flex:1}.spro-task-stack b,.spro-control-list b{display:block;color:#16223f;font-size:13px}.spro-task-stack small,.spro-control-list small{display:block;margin-top:3px;color:#73817d;font-size:11px}.spro-task-stack progress{width:100%;height:5px;margin-top:7px;accent-color:#0b2b76}.spro-task-stack select{max-width:115px;min-height:35px;border:1px solid #e4e1dc;border-radius:8px;font-size:11px}.spro-control-list>div>i{width:9px;height:9px;border-radius:50%;background:#9197a6}.spro-control-list>div>i.is-high,.spro-control-list>div>i.is-critical,.spro-control-list>div>i.is-blocked{background:#d75a45}.spro-control-list>div>i.is-approved,.spro-control-list>div>i.is-completed,.spro-control-list>div>i.is-ready{background:#9e751c}.spro-control-list em{font-size:10px;font-style:normal;font-weight:800;color:#626876}.spro-volunteer-form{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;padding:0 18px 18px}.spro-volunteer-form input{min-height:40px;padding:0 10px;border:1px solid #e3e0db;border-radius:9px;font-size:12px}
.spro-workflow-contract{display:grid;grid-template-columns:1fr 34px 1fr 34px 1fr;align-items:center;gap:10px;margin-bottom:18px}.spro-workflow-contract article{min-height:112px;padding:20px;border:1px solid #e5e2dc;border-radius:15px;background:#fff}.spro-workflow-contract>i{text-align:center;color:#94886d;font-size:22px;font-style:normal}.spro-workflow-contract span,.spro-draft-banner span{display:block;color:#6b717f;font-size:10px;font-weight:900;letter-spacing:.11em}.spro-workflow-contract b,.spro-draft-banner b{display:block;margin:9px 0 5px;color:#0a1b44;font-size:15px}.spro-workflow-contract small,.spro-draft-banner small{color:#6c7280;font-size:11px;line-height:1.45}.spro-draft-banner{display:flex;align-items:center;gap:20px;margin-bottom:18px;padding:18px 20px;border:1px solid #dfbf9b;border-radius:15px;background:#fbf3e9}.spro-draft-banner>div{flex:1}.spro-draft-banner>a{color:#0b2769;font-size:12px;font-weight:850;text-decoration:none}
.spro-process-timeline{display:grid;grid-template-columns:repeat(9,minmax(130px,1fr));gap:8px;overflow:auto;padding:18px}.spro-process-timeline article{position:relative;min-width:130px;min-height:190px;padding:15px;border:1px solid #e4e1dc;border-radius:13px;background:#fbfaf9}.spro-process-timeline article:after{content:"";position:absolute;top:30px;right:-9px;width:9px;height:2px;background:#cac4b7}.spro-process-timeline article:last-child:after{display:none}.spro-process-timeline article>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#f1eee9;color:#0b2666;font-size:11px;font-weight:900}.spro-process-timeline b{display:block;margin:14px 0 5px;color:#18243f;font-size:13px;line-height:1.35}.spro-process-timeline small,.spro-process-timeline p{color:#6e7482;font-size:10px;line-height:1.45}.spro-process-timeline p{margin-top:9px}.spro-process-timeline article>i{position:absolute;right:10px;top:11px;color:#805f17;font-size:9px;font-style:normal;font-weight:900}.spro-process-timeline article.done{border-color:#d8c9a9;background:#f8f5ef}.spro-process-timeline article.current{border-color:#0c2b72;background:#f4efe5;box-shadow:0 0 0 3px rgba(12,114,95,.11)}.spro-advance-bar{display:grid;grid-template-columns:1.4fr .8fr auto;align-items:end;gap:10px;padding:17px 18px;border-top:1px solid #e1e3e7;background:#faf9f8}.spro-advance-bar .spro-field{margin:0}.spro-runtime-ledger{padding:8px 18px 18px}.spro-runtime-ledger>div{display:grid;grid-template-columns:75px 10px 1fr;gap:8px;padding:10px 0}.spro-runtime-ledger>div>span{color:#707683;font-size:10px}.spro-runtime-ledger>div>i{position:relative;width:8px;height:8px;margin-top:4px;border-radius:50%;background:#0d2d79}.spro-runtime-ledger>div>i:after{content:"";position:absolute;top:8px;left:3px;width:1px;height:42px;background:#e1ded8}.spro-runtime-ledger p{margin:0}.spro-runtime-ledger b,.spro-runtime-ledger small{display:block}.spro-runtime-ledger b{font-size:12px}.spro-runtime-ledger small{margin-top:3px;color:#6f7582;font-size:10px;line-height:1.4}
@media(max-width:1100px){.spro-facility-metrics,.spro-project-kpis{grid-template-columns:repeat(2,1fr)}.spro-milestone-roadmap{grid-template-columns:repeat(2,1fr)}.spro-workflow-contract{grid-template-columns:1fr}.spro-workflow-contract>i{transform:rotate(90deg)}.spro-calendar-week{grid-template-columns:repeat(7,160px)}}
@media(max-width:760px){.spro-facility-metrics,.spro-project-kpis,.spro-facility-two-col,.spro-event-delivery-grid,.spro-booking-footer>div{grid-template-columns:1fr}.spro-slot-hero,.spro-booking-footer,.spro-draft-banner{align-items:flex-start;flex-direction:column}.spro-slot-hero{display:flex}.spro-slot-hero>div:last-child{flex-wrap:wrap}.spro-event-project-hero{grid-template-columns:1fr;padding:25px}.spro-milestone-roadmap{grid-template-columns:1fr}.spro-admin-form,.spro-volunteer-form,.spro-advance-bar{grid-template-columns:1fr}.spro-admin-form .spro-field{grid-column:1}.spro-process-timeline{grid-template-columns:repeat(9,150px)}}

/* Readability, state and responsive guard for the booking/project surfaces.
   These rules intentionally sit last because the original app shipped with a
   very dense command-centre scale. Resident metadata never drops below 12px,
   and interactive controls use the application-wide 44px touch target. */
.spro-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

.spro-facility-head p,
.spro-workflow-head p {
  max-width: 850px;
  font-size: 16px;
  line-height: 1.65;
}
.spro-facility-metrics span,
.spro-project-kpis span { font-size: 12px; line-height: 1.35; }
.spro-facility-metrics small,
.spro-project-kpis small { font-size: 13px; line-height: 1.45; }
.spro-facility-picker b { font-size: 15px; line-height: 1.35; }
.spro-facility-picker small,
.spro-facility-picker em { font-size: 12px; line-height: 1.4; }
.spro-facility-picker > a:focus-visible,
.spro-event-rail > a:focus-visible {
  outline: 3px solid rgba(12,103,88,.24);
  outline-offset: 2px;
}

.spro-slot-hero > div:first-child > span,
.spro-event-project-hero > div:first-child > span {
  font-size: 12px;
  line-height: 1.35;
}
.spro-slot-hero h2 { font-size: 32px; line-height: 1.12; }
.spro-slot-hero p { font-size: 15px; line-height: 1.5; }
.spro-slot-hero > div:last-child span { font-size: 12px; line-height: 1.35; }
.spro-slot-hero > div:last-child b { font-size: 21px; line-height: 1.1; }

.spro-booking-composer { padding: 22px; }
.spro-calendar-fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.spro-slot-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin: 0 0 15px;
  color: #515766;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
}
.spro-slot-legend span { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.spro-slot-legend i {
  width: 10px;
  height: 10px;
  border: 1px solid #b9b3a5;
  border-radius: 50%;
  background: #f2f3f4;
}
.spro-slot-legend .is-available i { border-color: #805f17; background: #f3eddf; }
.spro-slot-legend .is-selected i { border-color: #07173b; background: #07173b; box-shadow: 0 0 0 3px rgba(7,59,53,.12); }
.spro-slot-legend .is-booked i { border-color: #bc7a25; background: #ffe3c7; }
.spro-slot-legend .is-blackout i { border-color: #b85247; background: #ffe0db; }
.spro-slot-legend .is-unavailable i { border-color: #8a9792; background: #e8e9ec; }

.spro-calendar-day { min-width: 168px; }
.spro-calendar-day > header span,
.spro-calendar-day > header small { font-size: 12px; line-height: 1.35; }
.spro-calendar-day > header b { font-size: 17px; line-height: 1.3; }
.spro-slot-list { gap: 9px; }
.spro-time-slot > span {
  position: relative;
  min-height: 92px;
  padding: 12px;
  border-left-width: 3px;
}
.spro-time-slot b { padding-right: 4px; font-size: 15px; line-height: 1.35; }
.spro-time-slot small {
  display: block;
  margin: 5px 0 26px;
  color: #505666;
  font-size: 12px;
  line-height: 1.42;
}
.spro-slot-state {
  position: absolute;
  right: 10px;
  bottom: 9px;
  display: inline-flex;
  min-height: 21px;
  align-items: center;
  padding: 2px 7px;
  border-radius: 999px;
  color: #505664;
  background: #f1f0ed;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.2;
}
.spro-time-slot.is-available > span { border-color: #ddd2b9; border-left-color: #805f17; }
.spro-time-slot.is-available .spro-slot-state { color: #092464; background: #f2ecde; }
.spro-time-slot input:checked + span {
  border-color: #07215f;
  border-left-color: #07173b;
  background: #f4efe4;
  box-shadow: 0 0 0 3px rgba(7,95,80,.14);
}
.spro-time-slot input:checked + span .spro-slot-state { color: #fff; background: #07215f; }
.spro-time-slot input:focus-visible + span { outline: 3px solid rgba(12,103,88,.25); outline-offset: 2px; }
.spro-time-slot:not(.is-available) > span { border-style: solid; opacity: 1; }
.spro-time-slot.is-booked > span { border-color: #ead0b5; border-left-color: #bc7a25; background: #fff6ec; }
.spro-time-slot.is-booked .spro-slot-state { color: #84530f; background: #ffe3c7; }
.spro-time-slot.is-blackout > span { border-color: #efc8c1; border-left-color: #b85247; background: #fff3f0; }
.spro-time-slot.is-blackout .spro-slot-state { color: #923f36; background: #ffe0db; }
.spro-time-slot.is-closed > span,
.spro-time-slot.is-notice > span,
.spro-time-slot.is-horizon > span,
.spro-time-slot.is-quota > span,
.spro-time-slot.is-restricted > span {
  border-color: #d9dbdf;
  border-left-color: #8a9792;
  background: #f4f5f6;
}
.spro-time-slot.is-quota > span,
.spro-time-slot.is-restricted > span { border-left-color: #91815e; background: #faf8f4; }
.spro-time-slot.is-quota .spro-slot-state,
.spro-time-slot.is-restricted .spro-slot-state { color: #634c7c; background: #f1ede4; }
.spro-slot-empty { color: #575d6b; font-size: 13px; line-height: 1.5; }
.spro-policy-note { color: #515766; font-size: 13px; line-height: 1.55; }
.spro-booking-footer .spro-button { min-width: 190px; }
.spro-facility-two-col .spro-table { min-width: 720px; }

.spro-event-rail > a { min-height: 78px; }
.spro-event-rail > a > span small { font-size: 11px; line-height: 1.2; }
.spro-event-rail b { font-size: 15px; line-height: 1.35; }
.spro-event-rail small,
.spro-event-rail em { font-size: 12px; line-height: 1.4; }

.spro-admin-form input:not([type="checkbox"]):not([type="radio"]),
.spro-admin-form select,
.spro-admin-form textarea {
  width: 100%;
  min-height: 44px;
  font-size: 15px;
}
.spro-admin-form textarea { min-height: 96px; }
.spro-admin-form ul label { min-height: 38px; font-size: 13px; line-height: 1.4; }
.spro-admin-form ul.errorlist {
  display: block;
  grid-column: 1 / -1;
  margin: 3px 0 0;
  padding: 9px 11px;
  border: 1px solid #ecc3bd;
  border-radius: 8px;
  color: #913e35;
  background: #fff4f2;
  font-size: 13px;
  line-height: 1.45;
  list-style: none;
}
.spro-admin-form h3 { font-size: 21px; line-height: 1.3; }

.spro-event-project-hero { grid-template-columns: minmax(0,1fr) minmax(280px,320px); }
.spro-event-project-hero > div:first-child > a { font-size: 13px; line-height: 1.4; }
.spro-event-project-hero p { font-size: 16px; line-height: 1.55; }
.spro-event-badges i { font-size: 12px; line-height: 1.35; }
.spro-event-project-score > span { font-size: 12px; line-height: 1.35; }
.spro-event-project-score > small { font-size: 13px; line-height: 1.45; }
.spro-event-status-control {
  width: 100%;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.16);
}
.spro-event-status-control > label {
  display: block;
  margin-bottom: 6px;
  color: #e6e2d8;
  font-size: 12px;
  font-weight: 800;
}
.spro-event-status-control > div { display: grid; grid-template-columns: 1fr auto; gap: 7px; }
.spro-event-status-control select,
.spro-event-status-control button {
  min-height: 42px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 9px;
  font-size: 14px;
}
.spro-event-status-control select { min-width: 0; padding: 0 9px; color: #121f3f; background: #fff; }
.spro-event-status-control button { padding: 0 12px; color: #fff; background: rgba(255,255,255,.1); font-weight: 800; cursor: pointer; }

.spro-milestone-roadmap > div { display: flex; min-height: 220px; flex-direction: column; }
.spro-milestone-roadmap > div > div { flex: 1; }
.spro-milestone-roadmap b { font-size: 15px; line-height: 1.4; }
.spro-milestone-roadmap small,
.spro-milestone-roadmap p { font-size: 13px; line-height: 1.5; }
.spro-milestone-roadmap select,
.spro-task-stack select { min-height: 42px; font-size: 14px; }
.spro-milestone-roadmap > div > em,
.spro-task-stack > div > em {
  color: #505665;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}
.spro-inline-status-form { margin: 0; }
.spro-task-stack > div,
.spro-control-list > div { min-height: 62px; }
.spro-task-stack > div > span { min-width: 44px; min-height: 38px; font-size: 12px; }
.spro-task-stack b,
.spro-control-list b { font-size: 15px; line-height: 1.4; }
.spro-task-stack small,
.spro-control-list small { font-size: 12px; line-height: 1.45; }
.spro-task-stack progress { height: 7px; }
.spro-task-stack select { max-width: 150px; }
.spro-control-list em { font-size: 12px; line-height: 1.35; }
.spro-volunteer-form { align-items: end; gap: 10px; }
.spro-volunteer-form .spro-field { margin: 0; }
.spro-volunteer-form input { min-height: 44px; font-size: 15px; }

.spro-delivery-grid footer a,
.spro-project-strip-grid footer a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  color: var(--spro-emerald);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.spro-table-link { color: var(--spro-emerald); font-size: 13px; font-weight: 800; text-decoration: none; white-space: nowrap; }

.spro-workflow-contract span,
.spro-draft-banner span { font-size: 12px; line-height: 1.35; }
.spro-workflow-contract b,
.spro-draft-banner b { font-size: 16px; line-height: 1.35; }
.spro-workflow-contract small,
.spro-draft-banner small { font-size: 13px; line-height: 1.5; }
.spro-draft-banner > a { font-size: 14px; line-height: 1.4; }

.spro-process-timeline { grid-template-columns: repeat(9,minmax(160px,1fr)); }
.spro-process-timeline article { min-width: 160px; min-height: 220px; }
.spro-process-timeline article > span { font-size: 12px; }
.spro-process-timeline b { font-size: 15px; line-height: 1.4; }
.spro-process-timeline small,
.spro-process-timeline p { font-size: 12px; line-height: 1.5; }
.spro-process-timeline article > i { font-size: 11px; line-height: 1.2; }
.spro-advance-bar {
  grid-template-columns: minmax(190px,1.05fr) minmax(250px,1.45fr) minmax(180px,.85fr) max-content;
  gap: 12px;
  padding: 19px;
}
.spro-advance-bar .spro-button { min-height: 44px; white-space: nowrap; }
.spro-runtime-ledger > div { grid-template-columns: 94px 12px minmax(0,1fr); gap: 10px; padding: 12px 0; }
.spro-runtime-ledger > div > span { font-size: 12px; line-height: 1.4; }
.spro-runtime-ledger b { font-size: 14px; line-height: 1.4; }
.spro-runtime-ledger small { font-size: 12px; line-height: 1.5; }

@media (max-width: 1180px) {
  .spro-advance-bar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .spro-advance-bar .spro-button { width: 100%; }
}

@media (max-width: 1100px) {
  .spro-calendar-week { grid-template-columns: repeat(7,180px); }
  .spro-milestone-roadmap { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  .spro-booking-composer { padding: 16px 13px; }
  .spro-slot-legend { flex-wrap: nowrap; overflow-x: auto; padding: 2px 1px 7px; }
  .spro-calendar-week { grid-template-columns: repeat(7,178px); gap: 9px; }
  .spro-slot-hero { gap: 18px; padding: 23px 19px; }
  .spro-slot-hero > div:last-child { width: 100%; gap: 13px; }
  .spro-slot-hero > div:last-child span { min-width: 92px; padding-left: 13px; }
  .spro-slot-hero > div:last-child span:first-child { padding-left: 0; border-left: 0; }
  .spro-booking-footer > div { width: 100%; }
  .spro-booking-footer .spro-button { width: 100%; min-width: 0; }
  .spro-facility-picker > a { min-width: min(300px,calc(100vw - 34px)); }
  .spro-wide-drawer { width: 100vw; }
  .spro-drawer-scroll { padding: 0 0 24px; }
  .spro-admin-form { grid-template-columns: 1fr; }
  .spro-admin-form .spro-field,
  .spro-admin-form h3,
  .spro-admin-form .spro-button-full { grid-column: 1; }
  .spro-event-project-hero { grid-template-columns: 1fr; padding: 25px 20px; }
  .spro-event-project-hero h1 { font-size: clamp(38px,12vw,52px); }
  .spro-event-project-score { width: 100%; }
  .spro-milestone-roadmap { grid-template-columns: 1fr; padding: 13px; }
  .spro-milestone-roadmap > div { min-height: 0; }
  .spro-task-stack > div { align-items: flex-start; flex-wrap: wrap; }
  .spro-task-stack .spro-inline-status-form { width: 100%; padding-left: 55px; }
  .spro-task-stack select { width: 100%; max-width: none; }
  .spro-volunteer-form,
  .spro-advance-bar { grid-template-columns: 1fr; }
  .spro-volunteer-form .spro-button,
  .spro-advance-bar .spro-button { width: 100%; }
  .spro-process-timeline { grid-template-columns: repeat(9,172px); }
  .spro-process-timeline article { min-width: 172px; }
  .spro-draft-banner { width: 100%; }
  .spro-draft-banner > a,
  .spro-draft-banner > form,
  .spro-draft-banner .spro-button { width: 100%; }
}

/* Final cascade: resident-readable controls must win over legacy dense rules. */
.spro-app { font-size: 16px; line-height: 1.5; }
.spro-side-nav a { min-height: 46px; gap: 10px; padding: 9px 11px; font-size: 14px; }
.spro-side-nav a > i { font-size: 18px; }.spro-side-nav a > small { font-size: 10px; }
.spro-nav-label { margin-top: 20px; font-size: 11px; }.spro-society-switch b { font-size: 14px; }
.spro-society-switch small,.spro-system-health small,.spro-side-foot > a { font-size: 12px; }.spro-system-health b { font-size: 13px; }
.spro-context span { font-size: 11px; }.spro-context b { font-size: 15px; }.spro-command-search > span { font-size: 14px; }
.spro-user-menu summary b { font-size: 14px; }.spro-user-menu summary small { font-size: 12px; }.spro-user-menu > div a { font-size: 14px; }
.spro-page-head p { font-size: 16px; }.spro-eyebrow { font-size: 11px; }.spro-button { min-height: 44px; font-size: 14px; }
.spro-panel-head span:first-child { font-size: 10px; }.spro-panel-head h2 { font-size: 25px; }.spro-panel-head p,.spro-panel-head > a { font-size: 14px; }
.spro-field { font-size: 14px; }.spro-field input,.spro-field select,.spro-field textarea,.spro-new-ticket select,.spro-new-ticket textarea { min-height: 46px; font-size: 15px; }
.spro-field > small,.spro-consent,.spro-form-error { font-size: 13px; }.spro-filter-button,.spro-segmented button { min-height: 38px; font-size: 13px; }
.spro-table th { padding: 12px 14px; font-size: 11px; }.spro-table td { padding: 13px 14px; font-size: 14px; }.spro-table td > b { font-size: 14px; }.spro-table td > small { font-size: 12px; }
.spro-table-footer,.spro-table-search input { font-size: 13px; }.spro-table-search { min-height: 42px; }.spro-priority { min-width: 34px; min-height: 25px; font-size: 11px; }.spro-status { font-size: 11px; }
.spro-mobile-dock a,.spro-mobile-dock button { font-size: 11px; }.spro-message { font-size: 14px; }.spro-live-pill { font-size: 12px; }
.spro-auth-kicker,.spro-auth-heading > span { font-size: 12px; }.spro-auth-story > p { font-size: 16px; }.spro-auth-proof span { font-size: 12px; }.spro-auth-photo-note { font-size: 11px; }.spro-auth-heading p { font-size: 15px; }.spro-auth-form .spro-field > span { font-size: 13px; }.spro-input-wrap input,.spro-select-wrap select { font-size: 15px; }.spro-input-wrap button { font-size: 12px; }.spro-form-options { font-size: 12px; }.spro-auth-submit,.spro-auth-secondary { font-size: 15px; }.spro-auth-divider span { font-size: 11px; }.spro-auth-assurance,.spro-auth-switch,.spro-auth-alert { font-size: 13px; }.spro-auth-panel > footer { font-size: 12px; }

.spro-site-summary { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;margin-bottom:18px;border:1px solid var(--spro-line);border-radius:14px;background:#fff }
.spro-site-summary article { padding:19px;border-right:1px solid var(--spro-line-soft) }.spro-site-summary article:last-child{border-right:0}.spro-site-summary small,.spro-site-summary b,.spro-site-summary span{display:block}.spro-site-summary small{color:var(--spro-emerald);font-size:10px;font-weight:850;letter-spacing:.11em}.spro-site-summary b{margin:6px 0 3px;overflow:hidden;font:550 22px var(--spro-display);text-overflow:ellipsis;white-space:nowrap}.spro-site-summary span{color:var(--spro-muted);font-size:12px}
.spro-theme-studio{overflow:hidden}.spro-theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 18px 20px}.spro-theme-grid>article{overflow:hidden;border:1px solid var(--spro-line);border-radius:13px;background:#fff;transition:.18s}.spro-theme-grid>article:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(21,46,38,.1)}.spro-theme-grid>article.selected{border-color:var(--theme-b);box-shadow:0 0 0 2px color-mix(in srgb,var(--theme-b),transparent 60%)}
.spro-theme-art{position:relative;height:150px;overflow:hidden;color:var(--theme-c);background:linear-gradient(135deg,var(--theme-a),color-mix(in srgb,var(--theme-a),#fff 22%))}.spro-theme-art>i{position:absolute;bottom:0;width:25%;height:78%;border-radius:6px 6px 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--theme-c),transparent 70%),color-mix(in srgb,var(--theme-b),transparent 30%));box-shadow:inset 0 0 0 1px rgba(255,255,255,.13)}.spro-theme-art>i:nth-child(1){left:13%;height:58%}.spro-theme-art>i:nth-child(2){left:38%;height:83%}.spro-theme-art>i:nth-child(3){left:65%;height:67%}.spro-theme-art>span{position:absolute;right:13px;top:11px;font:500 23px var(--spro-display)}
.spro-theme-grid>article>div:nth-child(2){padding:15px}.spro-theme-grid article small{color:var(--theme-a);font-size:9px;font-weight:850;letter-spacing:.12em}.spro-theme-grid h3{margin:5px 0;font:550 21px var(--spro-display)}.spro-theme-grid p{min-height:54px;margin:0;color:var(--spro-muted);font-size:12px;line-height:1.5}.spro-theme-grid article>div>span{display:flex;gap:5px;margin-top:11px}.spro-theme-grid article>div>span i{width:16px;height:16px;border-radius:50%;background:var(--theme-a)}.spro-theme-grid article>div>span i:nth-child(2){background:var(--theme-b)}.spro-theme-grid article>div>span i:nth-child(3){border:1px solid #ddd;background:var(--theme-c)}.spro-theme-grid form{display:flex;flex-wrap:wrap;gap:6px;padding:0 15px 15px}.spro-theme-grid form .spro-button{min-height:36px;flex:1;padding-inline:8px;font-size:11px}.spro-theme-grid form>a{width:100%;color:var(--spro-emerald);font-size:11px;font-weight:750;text-align:center;text-decoration:none}
.spro-settings-card{padding-bottom:20px}.spro-settings-card>header{padding:20px}.spro-settings-card>header>span{color:var(--spro-emerald);font-size:10px;font-weight:850;letter-spacing:.12em}.spro-settings-card>header h2{margin:6px 0 2px;font:550 25px var(--spro-display)}.spro-settings-card>header p{color:var(--spro-muted);font-size:13px}.spro-settings-card form{display:grid;gap:13px;padding:0 20px}.spro-policy-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px;border:1px solid var(--spro-line);border-radius:10px}.spro-policy-row b,.spro-policy-row small{display:block}.spro-policy-row b{font-size:14px}.spro-policy-row small{color:var(--spro-muted);font-size:11px}.spro-policy-row input{width:19px;height:19px;accent-color:var(--spro-emerald)}.spro-domain-list{display:grid;padding:0 20px}.spro-domain-list>article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid var(--spro-line-soft)}.spro-domain-list b,.spro-domain-list small,.spro-domain-list code{display:block}.spro-domain-list small{color:var(--spro-muted);font-size:11px}.spro-domain-list code{margin-top:5px;padding:5px;border-radius:5px;color:#e3ddcf;background:#0b1939;font-size:10px}.spro-domain-list form{padding:0}.spro-empty-copy{color:var(--spro-muted);font-size:13px}

.spro-module-directory{display:grid;gap:24px}.spro-module-directory>div>header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.spro-module-directory>div>header>span{display:grid;width:35px;height:35px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font:550 13px var(--spro-display)}.spro-module-directory>div>header h2{margin:0;font:550 27px var(--spro-display)}.spro-module-directory>div>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.spro-module-directory article{display:grid;border:1px solid var(--spro-line);border-radius:13px;background:#fff;box-shadow:0 5px 18px rgba(23,45,39,.04)}.spro-module-directory article.disabled{opacity:.6}.spro-module-directory article>a{display:flex;min-height:122px;align-items:flex-start;gap:12px;padding:16px;color:inherit;text-decoration:none}.spro-module-directory article>a>i{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:11px;color:#071d52;background:#f2eee5;font-size:21px;font-style:normal}.spro-module-directory article>a>span{min-width:0;flex:1}.spro-module-directory article b,.spro-module-directory article small,.spro-module-directory article em{display:block}.spro-module-directory article b{font-size:15px}.spro-module-directory article small{margin-top:4px;color:var(--spro-muted);font-size:12px;line-height:1.45}.spro-module-directory article em{margin-top:8px;color:var(--spro-emerald);font-size:10px;font-style:normal;font-weight:750}.spro-module-directory article>form{display:flex;align-items:center;gap:8px;padding:9px 13px;border-top:1px solid var(--spro-line-soft)}.spro-module-directory article>form select{min-width:0;flex:1;min-height:34px;border:1px solid var(--spro-line);border-radius:7px;font-size:11px}.spro-switch input{position:absolute;opacity:0}.spro-switch span{position:relative;display:block;width:40px;height:22px;border-radius:999px;background:#cacdd5;cursor:pointer}.spro-switch span::after{position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;content:"";transition:.16s}.spro-switch input:checked+span{background:var(--spro-emerald)}.spro-switch input:checked+span::after{transform:translateX(18px)}
.spro-module-hero{display:grid;grid-template-columns:minmax(0,.48fr) minmax(0,.52fr);margin-bottom:17px;overflow:hidden;border-radius:18px;color:#fff;background:radial-gradient(circle at 80% 10%,rgba(216,234,143,.18),transparent 28%),linear-gradient(125deg,#071535,#0b2769)}.spro-module-hero>div{padding:28px}.spro-module-hero>div:first-child{display:flex;align-items:center;gap:16px}.spro-module-hero>div:first-child>i{display:grid;width:61px;height:61px;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:17px;background:rgba(255,255,255,.08);font-size:28px;font-style:normal}.spro-module-hero small{color:#e9c59b;font-size:10px;font-weight:850;letter-spacing:.12em}.spro-module-hero h2{margin:4px 0;font:550 32px var(--spro-display)}.spro-module-hero p{margin:0;color:#dad4c6;font-size:14px}.spro-module-hero>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:9px;border-left:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.06)}.spro-module-hero>div:last-child span{font-size:12px}
.spro-instance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 20px}.spro-instance-grid>article{padding:17px;border:1px solid var(--spro-line);border-radius:12px}.spro-instance-grid article>header{display:flex;align-items:center;gap:10px}.spro-instance-grid header>i{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:#f3efe6;font-style:normal}.spro-instance-grid header>span{min-width:0;flex:1}.spro-instance-grid b,.spro-instance-grid small{display:block}.spro-instance-grid header b{font-size:14px}.spro-instance-grid small{color:var(--spro-muted);font-size:10px}.spro-instance-grid header em{padding:5px 7px;border-radius:999px;color:var(--spro-emerald);background:#f7f4ee;font-size:9px;font-style:normal;font-weight:750}.spro-instance-grid article>p{min-height:43px;color:var(--spro-muted);font-size:12px;line-height:1.5}.spro-instance-grid article>div{display:grid;gap:7px;padding:10px;border-radius:8px;background:#f8f7f6}.spro-instance-grid article>div>span{display:flex;justify-content:space-between;gap:10px;color:var(--spro-muted);font-size:10px}.spro-instance-grid article>div b{color:var(--spro-ink)}.spro-instance-grid article>form{margin-top:11px;text-align:right}.spro-module-report-pack{margin-top:17px}.spro-module-report-pack>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:0 20px 22px}.spro-module-report-pack h3{font:550 19px var(--spro-display)}.spro-module-report-pack article>span{display:flex;min-height:39px;align-items:center;gap:10px;border-top:1px solid var(--spro-line-soft);font-size:12px}.spro-module-report-pack article>span>i{display:grid;width:25px;height:25px;place-items:center;border-radius:6px;color:var(--spro-emerald);background:#f4f0e8;font-size:9px;font-style:normal}
.spro-instance-grid>article.status-paused,.spro-instance-grid>article.status-draft,.spro-instance-grid>article.status-archived{border-style:dashed;background:#fbfaf9}.spro-instance-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:11px}.spro-instance-actions form{margin:0}.spro-instance-actions .spro-button{min-height:36px}.spro-module-policy{margin:16px 0}.spro-module-policy>summary{cursor:pointer;list-style:none}.spro-module-policy>summary::-webkit-details-marker{display:none}.spro-module-policy>summary>strong{padding:6px 9px;border-radius:999px;color:var(--spro-emerald);background:#f4f0e8;font-size:11px}.spro-module-policy>.spro-admin-form{padding:0 18px 20px}.spro-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.spro-page-actions>form{margin:0}.spro-site-selector{display:flex;gap:8px;overflow:auto;margin:-8px 0 18px;padding-bottom:4px}.spro-site-selector a{display:grid;min-width:210px;gap:3px;padding:11px 13px;border:1px solid var(--spro-line);border-radius:10px;color:var(--spro-ink);background:#fff;text-decoration:none}.spro-site-selector a[aria-current="page"]{border-color:var(--spro-emerald);box-shadow:inset 0 0 0 1px var(--spro-emerald)}.spro-site-selector b{font-size:13px}.spro-site-selector small{color:var(--spro-muted);font-size:11px}
.spro-module-command-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px}.spro-module-command-strip article{display:grid;gap:3px;min-height:78px;padding:14px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}.spro-module-command-strip b{font:650 24px var(--spro-display);color:#0c2767}.spro-module-command-strip span{color:var(--spro-muted);font-size:12px;font-weight:750}.spro-module-depth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.spro-module-stack{overflow:hidden}.spro-module-card-list{display:grid;gap:9px;padding:0 18px 18px}.spro-module-card-list a,.spro-module-card-list span.locked,.spro-module-blueprint span.locked{display:grid;gap:6px;padding:13px;border:1px solid var(--spro-line);border-radius:8px;color:inherit;background:#fff;text-decoration:none}.spro-module-card-list a:hover,.spro-module-blueprint a:hover,.spro-module-report-pack a:hover{border-color:#beb49f;box-shadow:0 10px 24px rgba(7,59,53,.08)}.spro-module-card-list b{font-size:14px}.spro-module-card-list small{color:var(--spro-muted);font-size:12px;line-height:1.45}.spro-module-card-list em{justify-self:start;padding:4px 7px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:11px;font-style:normal;font-weight:850}.spro-module-card-list .locked,.spro-module-blueprint span.locked,.spro-module-report-pack .locked{border-style:dashed;background:#fbfaf9;color:#6a756f}.spro-module-card-list .locked em{color:#8a5f22;background:#ffecd8}.spro-module-process-pack{overflow:hidden;margin-bottom:16px}.spro-module-process-pack>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-module-process-pack article{display:flex;gap:10px;min-height:96px;padding:13px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}.spro-module-process-pack i{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:8px;color:#fff;background:#0c2767;font-size:11px;font-style:normal;font-weight:850}.spro-module-process-pack b,.spro-module-process-pack small{display:block}.spro-module-process-pack b{font-size:13px;line-height:1.35}.spro-module-process-pack small{margin-top:5px;color:var(--spro-muted);font-size:11px;line-height:1.4}.spro-module-report-pack>div{grid-template-columns:repeat(4,minmax(0,1fr))}.spro-module-report-pack article>a,.spro-module-report-pack article>span{display:grid;grid-template-columns:34px minmax(0,1fr);gap:3px 10px;min-height:58px;align-items:start;padding:10px 0;border-top:1px solid var(--spro-line-soft);color:inherit;text-decoration:none}.spro-module-report-pack article>a>i,.spro-module-report-pack article>span>i{grid-row:1/3;display:grid;width:31px;height:31px;place-items:center;border-radius:7px;color:#0c2767;background:#f4f0e8;font-size:10px;font-style:normal;font-weight:850}.spro-module-report-pack article small,.spro-module-report-pack article em{color:var(--spro-muted);font-size:11px;line-height:1.35}.spro-module-report-pack article em{font-style:normal;font-weight:850}.spro-module-report-pack article>a b,.spro-module-report-pack article>span b{font-size:13px;line-height:1.35}

@media(max-width:1180px){.spro-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-module-directory>div>div,.spro-instance-grid,.spro-module-command-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-module-depth-grid,.spro-module-report-pack>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-module-process-pack>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.spro-site-summary,.spro-theme-grid,.spro-module-directory>div>div,.spro-instance-grid,.spro-module-report-pack>div,.spro-module-command-strip,.spro-module-depth-grid,.spro-module-process-pack>div{grid-template-columns:1fr}.spro-module-hero{grid-template-columns:1fr}.spro-module-hero>div:last-child{border:0;border-top:1px solid rgba(255,255,255,.12)}}

.spro-custom-filter-builder {
  display: grid;
  gap: 10px;
  min-width: 0;
  margin: 0;
  padding: 14px;
  border: 1px solid var(--spro-line);
  border-radius: 12px;
  background: #faf9f8;
}
.spro-custom-filter-builder legend { padding: 0 5px; font-size: 14px; font-weight: 800; }
.spro-custom-filter-builder > p { margin: 0; color: var(--spro-muted); font-size: 12px; line-height: 1.5; }
.spro-custom-filter-builder [data-custom-filter-list] { display: grid; gap: 9px; }
.spro-custom-filter-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) 38px; align-items: end; gap: 8px; }
.spro-custom-filter-row .spro-field { margin: 0; }
.spro-custom-filter-row > button {
  width: 38px;
  min-height: 46px;
  border: 1px solid #e4c6c1;
  border-radius: 9px;
  color: #934a42;
  background: #fff7f5;
  font-size: 19px;
  cursor: pointer;
}
.spro-custom-filter-builder > .spro-mini-action { justify-self: start; }
.spro-custom-report-layout.viewer { grid-template-columns: 1fr; }
.spro-custom-report-layout.viewer .spro-custom-report-results { grid-template-columns: minmax(0,1fr) minmax(280px,.34fr); }

@media(max-width:900px){.spro-custom-report-layout.viewer .spro-custom-report-results{grid-template-columns:1fr}}
@media(max-width:720px){.spro-custom-filter-row{grid-template-columns:1fr 1fr}.spro-custom-filter-row>button{grid-column:2;justify-self:end}}

/* Readable admin and ecosystem metadata: 12px is the minimum supporting size. */
.spro-site-summary small,.spro-theme-grid article small,.spro-settings-card>header>span,
.spro-domain-list code,.spro-module-directory article em,.spro-module-hero small,
.spro-instance-grid header em,.spro-instance-grid small,
.spro-instance-grid article>div>span,.spro-module-policy>summary>strong { font-size: 12px; line-height: 1.4; }
.spro-site-summary span,.spro-theme-grid p,.spro-theme-grid form>a,
.spro-policy-row small,.spro-domain-list small,.spro-module-directory article small,
.spro-module-hero>div:last-child span,.spro-instance-grid article>p,
.spro-module-report-pack article>span { font-size: 13px; line-height: 1.5; }
.spro-theme-grid form .spro-button,.spro-module-directory article>form select { min-height: 40px; font-size: 13px; }
.spro-instance-grid header b { font-size: 15px; }.spro-instance-grid article>div b { font-size: 14px; }
.spro-side-logout { margin: 4px 0 0; }
.spro-side-logout button { display:flex;width:100%;align-items:center;justify-content:space-between;padding:10px 0;border:0;color:#ddd7c9;background:transparent;font:700 13px var(--spro-sans);cursor:pointer; }
.spro-side-logout button:hover { color:#fff; }
.spro-pay-inline { display:flex;flex-wrap:wrap;gap:6px;min-width:250px; }
.spro-pay-inline select { min-height:38px;max-width:155px;border:1px solid var(--spro-line);border-radius:8px;background:#fff;font-size:12px; }
.spro-pay-inline button { min-height:38px;border:0;border-radius:8px;color:#fff;background:var(--spro-emerald);font-weight:800;cursor:pointer; }
.spro-host-card details{margin-top:14px;border-top:1px solid var(--spro-line-soft);padding-top:12px}.spro-host-card details summary{cursor:pointer;color:var(--spro-emerald);font-size:13px;font-weight:800}.spro-host-card details .spro-admin-form{margin-top:14px}

/* Society Operations Studio: spacious, tenant-scoped CRUD and service project 360. */
.spro-operations-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:18px;align-items:start}.spro-object-nav{position:sticky;top:92px;overflow:hidden;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:var(--spro-shadow)}.spro-object-nav>header{display:grid;gap:3px;padding:18px;color:#fff;background:linear-gradient(135deg,#07173b,#0b2665)}.spro-object-nav>header span{color:#ebc79e;font-size:11px;font-weight:850;letter-spacing:.12em}.spro-object-nav>header b{font:550 23px var(--spro-display)}.spro-object-nav>header small{color:#d9d3c6;font-size:12px}.spro-object-nav nav{display:grid;max-height:calc(100vh - 245px);overflow:auto;padding:8px}.spro-object-nav nav a{display:grid;grid-template-columns:28px minmax(0,1fr) auto;min-height:44px;align-items:center;gap:8px;padding:8px 9px;border-radius:9px;color:var(--spro-ink);font-size:13px;text-decoration:none}.spro-object-nav nav a:hover{background:#f6f4f1}.spro-object-nav nav a.active{color:#fff;background:var(--spro-emerald)}.spro-object-nav nav a i{font-style:normal;text-align:center}.spro-object-nav nav a b{min-width:26px;padding:3px 6px;border-radius:999px;background:rgba(12,103,88,.1);font-size:10px;text-align:center}.spro-object-nav nav a.active b{background:rgba(255,255,255,.16)}.spro-operations-table-panel{min-width:0;overflow:hidden}.spro-directory-toolbar>div:first-child{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:11px;align-items:center}.spro-operation-icon{grid-row:1/3;display:grid;width:42px;height:42px;place-items:center;border-radius:12px;color:#fff;background:var(--spro-forest);font-size:19px}.spro-directory-toolbar>div b,.spro-directory-toolbar>div small{display:block}.spro-directory-toolbar>div b{font-size:16px}.spro-directory-toolbar>div small{color:var(--spro-muted);font-size:12px}.spro-table-search button{min-height:34px;margin:3px;border:0;border-radius:7px;color:#fff;background:var(--spro-emerald);font-weight:750}.spro-operations-table{min-width:1050px}.spro-operations-table td{max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spro-row-actions{display:flex;gap:6px}.spro-row-actions a{padding:6px 8px;border-radius:7px;color:var(--spro-emerald);background:#f6f3ed;font-size:11px;font-weight:800;text-decoration:none}.spro-row-actions a.danger{color:#9b463f;background:#fff0ee}

.spro-record-workspace{display:grid;gap:18px;max-width:1500px;margin:0 auto}.spro-record-workspace>*{min-width:0}.spro-record-header,.spro-record-form-guidance,.spro-record-form-shell,.spro-record-field-section,.spro-record-fields{box-sizing:border-box;max-width:100%}.spro-record-header{position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:25px;margin:-24px -28px 0;padding:22px 30px;border-bottom:1px solid var(--spro-line);background:rgba(255,255,255,.96);box-shadow:0 9px 26px rgba(20,48,40,.06);backdrop-filter:blur(16px)}.spro-record-header>div:first-child{min-width:0}.spro-record-header>div:first-child>a{color:var(--spro-emerald);font-size:13px;font-weight:800;text-decoration:none}.spro-record-header>div:first-child>span{display:block;margin-top:6px;color:var(--spro-gold);font-size:10px;font-weight:900;letter-spacing:.12em}.spro-record-header h1{margin:2px 0;font:560 clamp(30px,4vw,44px)/1.05 var(--spro-display)}.spro-record-header p{max-width:760px;margin:5px 0 0;color:var(--spro-muted);font-size:14px}.spro-record-header>div:last-child{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.spro-scope-lock{padding:9px 11px;border:1px solid #ded7c9;border-radius:9px;color:var(--spro-emerald);background:#faf8f3;font-size:12px;font-weight:800}.spro-record-form-shell{display:grid;grid-template-columns:245px minmax(0,1fr);gap:18px;align-items:start}.spro-record-form-shell>aside{position:sticky;top:158px;padding:23px;border:1px solid var(--spro-line);border-radius:16px;background:linear-gradient(155deg,#fff,#f7f6f3)}.spro-record-symbol{display:grid;width:58px;height:58px;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(135deg,#07173b,#7b5b16);font-size:27px;box-shadow:0 12px 25px rgba(7,59,53,.2)}.spro-record-form-shell aside h2{margin:17px 0 5px;font:550 25px var(--spro-display)}.spro-record-form-shell aside p{color:var(--spro-muted);font-size:13px;line-height:1.6}.spro-record-form-shell aside ul{display:grid;gap:9px;margin:18px 0 0;padding:15px 0 0;border-top:1px solid var(--spro-line-soft);list-style:none}.spro-record-form-shell aside li{font-size:12px}.spro-record-form-shell aside li::before{margin-right:8px;color:var(--spro-emerald);content:"✓"}.spro-record-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:22px;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:var(--spro-shadow)}.spro-form-field{display:grid;align-content:start;gap:7px;min-width:0;margin:0;color:var(--spro-ink);font-size:14px}.spro-form-field>span,.spro-form-field>label{font-weight:780}.spro-form-field em{color:var(--spro-coral);font-style:normal}.spro-form-field input:not([type=checkbox]):not([type=range]),.spro-form-field select,.spro-form-field textarea{box-sizing:border-box;width:100%;min-height:48px;padding:11px 12px;border:1px solid #d9d6ce;border-radius:10px;color:var(--spro-ink);background:#fcfcfb;font:500 15px/1.5 var(--spro-font);transition:.16s}.spro-form-field textarea{min-height:122px;resize:vertical}.spro-form-field input:focus,.spro-form-field select:focus,.spro-form-field textarea:focus{border-color:var(--spro-emerald);outline:3px solid rgba(12,103,88,.1);background:#fff}.spro-form-field>small{color:var(--spro-muted);font-size:12px;line-height:1.45}.spro-form-field .spro-field-error{color:#a5453e}.spro-field-wide{grid-column:1/-1}.spro-checkbox-field{grid-template-columns:22px minmax(0,1fr);align-items:start;padding:13px;border:1px solid var(--spro-line);border-radius:10px;background:#fbfaf9}.spro-checkbox-field input{width:19px;height:19px;margin-top:2px;accent-color:var(--spro-emerald)}.spro-checkbox-field b,.spro-checkbox-field small{display:block}.spro-checkbox-field small{color:var(--spro-muted);font-size:12px}.spro-form-alert{padding:13px 16px;border:1px solid #e6bcb7;border-radius:11px;color:#8d3c35;background:#fff3f1}.spro-form-alert p{margin:3px 0}.spro-record-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 21px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-footer>span{color:var(--spro-muted);font-size:13px}.spro-record-footer>div{display:flex;gap:8px}.spro-button-danger{color:#fff;background:var(--spro-coral)}

.spro-photo-field{padding:18px;border:1px solid #d8dae0;border-radius:13px;background:#faf9f8}.spro-photo-stage{display:grid;grid-template-columns:230px minmax(0,1fr);gap:20px;align-items:center}.spro-photo-preview{position:relative;display:grid;width:220px;aspect-ratio:1;place-items:center;overflow:hidden;border:1px dashed #c6bdab;border-radius:18px;color:var(--spro-emerald);background:#f3f0e9}.spro-photo-preview img{width:100%;height:100%;object-fit:cover}.spro-photo-preview span{font-size:42px}.spro-photo-preview small{font-size:12px}.spro-photo-stage>div:last-child{display:grid;gap:11px}.spro-photo-stage p{max-width:540px;margin:0;color:var(--spro-muted);font-size:13px}.spro-photo-stage input[type=file]{padding:9px;border:1px solid var(--spro-line);border-radius:9px;background:#fff}.spro-zoom-control{display:grid;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:8px;font-size:12px}.spro-rich-editor{overflow:hidden;border:1px solid #d9d6ce;border-radius:10px;background:#fff}.spro-rich-toolbar{display:flex;flex-wrap:wrap;gap:4px;padding:7px;border-bottom:1px solid var(--spro-line);background:#f5f6f7}.spro-rich-toolbar button{min-width:34px;min-height:32px;border:1px solid var(--spro-line);border-radius:6px;color:var(--spro-ink);background:#fff;font-weight:750;cursor:pointer}.spro-rich-surface{min-height:180px;padding:13px;font-size:15px;line-height:1.65;outline:0}.spro-rich-surface:focus{box-shadow:inset 0 0 0 2px rgba(12,103,88,.18)}.spro-rich-editor+.spro-rich-text-source{display:none}.spro-confirm-card{max-width:620px;margin:8vh auto;padding:48px;border:1px solid var(--spro-line);border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(17,47,38,.15);text-align:center}.spro-confirm-card>span{display:grid;width:72px;height:72px;margin:auto;place-items:center;border-radius:20px;color:#fff;background:var(--spro-coral);font-size:30px}.spro-confirm-card>p:first-of-type{margin-top:20px;color:var(--spro-coral);font-size:11px;font-weight:900;letter-spacing:.13em}.spro-confirm-card h1{margin:7px 0;font:560 38px var(--spro-display)}.spro-confirm-card h2{font-size:17px}.spro-confirm-card>p{color:var(--spro-muted);line-height:1.65}.spro-confirm-card form{display:flex;justify-content:center;gap:9px;margin-top:25px}

.spro-project-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:30px;margin-bottom:17px;padding:32px;border-radius:20px;color:#fff;background:radial-gradient(circle at 84% 12%,rgba(228,213,150,.2),transparent 27%),linear-gradient(128deg,#07163a,#0b286b);box-shadow:0 18px 45px rgba(7,59,53,.19)}.spro-project-hero h1{margin:8px 0;font:550 clamp(34px,5vw,54px)/1.04 var(--spro-display)}.spro-project-hero>div>p{max-width:850px;color:#dcd6c9}.spro-project-hero>div>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.spro-project-hero>div>div>span:not(.spro-priority):not(.spro-status){padding:5px 9px;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:11px}.spro-project-hero>aside{display:grid;align-content:center;padding-left:25px;border-left:1px solid rgba(255,255,255,.15)}.spro-project-hero>aside>span{color:#e9c69e;font-size:10px;font-weight:900;letter-spacing:.12em}.spro-project-hero>aside strong{font:600 48px var(--spro-display)}.spro-project-hero .spro-progress{background:rgba(255,255,255,.18)}.spro-project-hero aside small{margin:8px 0 16px;color:#d8d2c5}.spro-project-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;margin-bottom:17px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-project-kpis article{padding:20px;border-right:1px solid var(--spro-line-soft)}.spro-project-kpis article:last-child{border:0}.spro-project-kpis span,.spro-project-kpis strong,.spro-project-kpis small{display:block}.spro-project-kpis span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.1em}.spro-project-kpis strong{margin:7px 0;font:550 25px var(--spro-display)}.spro-project-kpis small{color:var(--spro-muted);font-size:12px}.spro-project-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.spro-project-columns>.spro-panel{overflow:hidden}.spro-round-card{margin:0 18px 16px;padding:16px;border:1px solid var(--spro-line);border-radius:12px}.spro-round-card>header{display:flex;justify-content:space-between;gap:12px}.spro-round-card b,.spro-round-card small{display:block}.spro-round-card small{color:var(--spro-muted);font-size:11px}.spro-round-card>p{color:var(--spro-muted);font-size:13px}.spro-bid-list{display:grid}.spro-bid-list>div{display:flex;align-items:center;gap:9px;padding:11px 0;border-top:1px solid var(--spro-line-soft)}.spro-bid-list>div>span{min-width:0;flex:1}.spro-bid-list strong{font-size:12px}.spro-bid-list button{min-height:34px;border:0;border-radius:7px;color:#fff;background:var(--spro-emerald);font-weight:800;cursor:pointer}.spro-bid-list em{color:var(--spro-emerald);font-size:11px;font-style:normal;font-weight:850}.spro-milestone-timeline{display:grid;padding:0 18px 20px}.spro-milestone-timeline>div{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px}.spro-milestone-timeline>div>i{position:relative;width:12px;height:12px;margin-top:18px;border:3px solid #bbb3a3;border-radius:50%;background:#fff}.spro-milestone-timeline>div>i::after{position:absolute;top:12px;left:3px;width:2px;height:calc(100% + 70px);background:#e3e0db;content:""}.spro-milestone-timeline>div:last-child>i::after{display:none}.spro-milestone-timeline>div>i.done{border-color:var(--spro-emerald);background:var(--spro-emerald)}.spro-milestone-timeline section{padding:13px 0;border-bottom:1px solid var(--spro-line-soft)}.spro-milestone-timeline section header{display:grid;grid-template-columns:minmax(0,1fr) auto}.spro-milestone-timeline section header span{grid-column:1/-1;color:var(--spro-emerald);font-size:9px;font-weight:850}.spro-milestone-timeline section header em{font-size:10px;font-style:normal}.spro-milestone-timeline section p{color:var(--spro-muted);font-size:12px}.spro-milestone-timeline footer{display:flex;align-items:center;gap:8px}.spro-milestone-timeline footer>span{margin-right:auto;font-size:11px;font-weight:750}.spro-milestone-timeline select{min-height:34px;border:1px solid var(--spro-line);border-radius:7px}.spro-milestone-timeline a{color:var(--spro-emerald);font-size:11px;font-weight:800}.spro-closure-panel{display:grid;grid-template-columns:minmax(250px,.4fr) minmax(0,.6fr);gap:25px;margin-top:17px;padding:24px}.spro-closure-panel>div>span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.1em}.spro-closure-panel h2{margin:6px 0;font:550 27px var(--spro-display)}.spro-closure-panel p{color:var(--spro-muted);font-size:13px}.spro-closure-panel form{display:flex;flex-wrap:wrap;gap:8px}.spro-closure-panel textarea{width:100%;padding:12px;border:1px solid var(--spro-line);border-radius:10px;font:14px var(--spro-font)}

@media(min-width:1021px){.spro-focus-form .spro-sidebar{transform:translateX(-102%);transition:transform .22s;box-shadow:20px 0 45px rgba(4,28,24,.22)}.spro-focus-form .spro-shell{margin-left:0}.spro-focus-form .spro-side-close,.spro-focus-form .spro-menu-button{display:grid}.spro-focus-form.spro-sidebar-open .spro-sidebar{transform:none}.spro-focus-form .spro-sidebar-scrim{position:fixed;inset:0;z-index:70;display:block;background:rgba(4,25,22,.55);opacity:0;visibility:hidden;transition:.2s}.spro-focus-form.spro-sidebar-open .spro-sidebar-scrim{opacity:1;visibility:visible}}
@media(max-width:1180px){.spro-record-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-project-columns{grid-template-columns:1fr}}
@media(max-width:900px){.spro-operations-layout,.spro-record-form-shell,.spro-project-hero,.spro-closure-panel{grid-template-columns:minmax(0,1fr)}.spro-object-nav,.spro-record-form-shell>aside{position:static}.spro-object-nav nav{display:flex;max-height:none;overflow:auto}.spro-object-nav nav a{min-width:190px}.spro-record-header{position:static;align-items:flex-start;flex-direction:column;width:calc(100% + 32px);max-width:calc(100% + 32px);margin:-18px -16px 0;padding:19px}.spro-record-header>div:last-child{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:flex-start}.spro-record-header .spro-scope-lock{grid-column:1/-1;text-align:center}.spro-record-header .spro-button{min-width:0;justify-content:center;white-space:normal}.spro-project-hero>aside{padding:20px 0 0;border-top:1px solid rgba(255,255,255,.15);border-left:0}.spro-project-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.spro-record-fields{grid-template-columns:minmax(0,1fr);padding:15px}.spro-field-wide{grid-column:1}.spro-photo-stage{grid-template-columns:minmax(0,1fr)}.spro-photo-preview{width:100%;max-width:280px}.spro-record-footer{align-items:flex-start;flex-direction:column}.spro-record-footer>div,.spro-record-footer .spro-button{width:100%}.spro-project-kpis{grid-template-columns:minmax(0,1fr)}.spro-project-kpis article{border-right:0;border-bottom:1px solid var(--spro-line-soft)}.spro-confirm-card{margin:4vh 0;padding:28px 18px}}

/* Governed service delivery: full-page evidence, payable and SLA surfaces. */
.spro-service-control-alert{display:grid;grid-template-columns:190px minmax(0,1fr);gap:20px;align-items:start;margin:0 0 17px;padding:19px 22px;border:1px solid #e7c4a3;border-radius:14px;background:linear-gradient(135deg,#fffaf3,#fff)}
.spro-service-control-alert>span{color:#9a5a22;font-size:11px;font-weight:900;letter-spacing:.1em}.spro-service-control-alert h2{margin:0 0 7px;font:550 23px var(--spro-display)}.spro-service-control-alert ul{display:grid;gap:5px;margin:0;padding-left:19px;color:#765744;font-size:13px;line-height:1.45}
.spro-evidence-count{display:inline-flex;margin:0 0 10px;padding:5px 8px;border-radius:999px;color:var(--spro-emerald);background:#f5f2ea;font-size:11px;font-weight:800}
.spro-milestone-timeline footer{flex-wrap:wrap}.spro-inline-action{padding:7px 9px!important;border:1px solid #d7cfbd;border-radius:8px;background:#f8f5ee;text-decoration:none}
.spro-milestone-review{display:flex;flex:1 1 100%;gap:6px;margin-top:6px}.spro-milestone-review input{min-width:150px;min-height:38px;flex:1;padding:8px 10px;border:1px solid var(--spro-line);border-radius:8px;font:500 13px var(--spro-font)}.spro-milestone-review button{min-height:38px;padding:0 11px;border:0;border-radius:8px;color:#fff;background:var(--spro-emerald);font:800 11px var(--spro-font);cursor:pointer}.spro-milestone-review button.reject{background:#a44d44}.spro-milestone-review button.quiet{color:#805b35;background:#f7eee3}.spro-milestone-review.compact{flex:0 0 auto;margin:0}
.spro-service-ledger-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);gap:17px;margin-top:17px}.spro-service-ledger,.spro-sla-ledger{overflow:hidden}.spro-ledger-table-wrap{max-width:100%;overflow:auto}.spro-ledger-table-wrap table{width:100%;min-width:850px;border-collapse:collapse}.spro-ledger-table-wrap th{padding:11px 14px;color:var(--spro-muted);background:#f7f6f3;font-size:10px;letter-spacing:.08em;text-align:left}.spro-ledger-table-wrap td{padding:14px;border-top:1px solid var(--spro-line-soft);font-size:13px}.spro-ledger-table-wrap td b,.spro-ledger-table-wrap td small{display:block}.spro-ledger-table-wrap td small{margin-top:3px;color:var(--spro-muted);font-size:11px}.spro-ledger-table-wrap td>a{color:var(--spro-emerald);font-weight:850;text-decoration:none}.spro-sla-ledger>div{display:grid;padding:0 18px 17px}.spro-sla-ledger>div>article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;padding:13px 0;border-top:1px solid var(--spro-line-soft)}.spro-sla-ledger article>i{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:var(--spro-emerald);background:#f4f0e8;font-style:normal;font-weight:900}.spro-sla-ledger article.tone-breach>i{color:#9c433c;background:#fff0ed}.spro-sla-ledger article span{color:var(--spro-emerald);font-size:9px;font-weight:900;letter-spacing:.08em}.spro-sla-ledger article h3{margin:3px 0;font-size:14px}.spro-sla-ledger article p,.spro-sla-ledger article small{margin:0;color:var(--spro-muted);font-size:11px;line-height:1.5}.spro-closure-panel form>div{display:flex;flex-wrap:wrap;gap:8px}.spro-closure-panel button:disabled{cursor:not-allowed;filter:grayscale(.55);opacity:.5}.spro-closure-panel>aside{align-self:center;padding:18px;border:1px solid var(--spro-line);border-radius:12px;background:#f8f7f4}.spro-closure-panel>aside b{font-size:15px}.spro-closure-panel>aside p{margin-bottom:0}

.spro-service-gate-workspace{display:grid;gap:18px;max-width:1500px;margin:0 auto}.spro-service-gate-hero{display:grid;grid-template-columns:minmax(0,1fr) 330px;overflow:hidden;border-radius:23px;color:#fff;background:radial-gradient(circle at 84% 16%,rgba(224,211,142,.2),transparent 28%),linear-gradient(125deg,#061435,#0a2669);box-shadow:0 20px 50px rgba(7,59,53,.18)}.spro-service-gate-hero>div{padding:clamp(28px,4.5vw,52px)}.spro-service-gate-hero>div>a{color:#e9c69d;font-size:13px;font-weight:850;text-decoration:none}.spro-service-gate-hero>div>span,.spro-service-gate-hero>aside>span{display:block;margin-top:15px;color:#e9c69d;font-size:10px;font-weight:900;letter-spacing:.13em}.spro-service-gate-hero h1{margin:7px 0;font:560 clamp(38px,5vw,61px)/1.02 var(--spro-display)}.spro-service-gate-hero>div>p{max-width:860px;margin:8px 0 0;color:#dad4c7;font-size:15px;line-height:1.6}.spro-service-gate-hero>aside{display:grid;align-content:center;padding:31px;border-left:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.08)}.spro-service-gate-hero>aside>span{margin:0}.spro-service-gate-hero aside b{margin:8px 0;font:550 31px var(--spro-display)}.spro-service-gate-hero aside small{color:#d2cbbc;font-size:12px}.spro-service-gate-hero aside div{margin-top:18px;padding:10px;border:1px solid rgba(255,255,255,.13);border-radius:10px;color:#e4e0d8;font-size:12px}.spro-service-gate-hero.invoice{background:radial-gradient(circle at 84% 16%,rgba(232,206,133,.24),transparent 29%),linear-gradient(125deg,#17223d,#8a642f)}
.spro-service-gate-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:17px;align-items:start}.spro-service-gate-primary{display:grid;gap:17px}.spro-gate-criteria{overflow:hidden}.spro-gate-criteria>div{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--spro-line-soft)}.spro-gate-criteria article{padding:20px;background:#fff}.spro-gate-criteria article.wide{grid-column:1/-1}.spro-gate-criteria article>span,.spro-service-history-rail section>span,.spro-invoice-control-rail section>span,.spro-payable-control-rail section>span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.1em}.spro-gate-criteria article p,.spro-gate-criteria article li{color:var(--spro-muted);font-size:13px;line-height:1.65}.spro-gate-criteria article ul{margin-bottom:0}.spro-evidence-form-card{overflow:hidden}.spro-service-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:20px}.spro-service-form-grid.invoice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-service-form-grid .wide{grid-column:1/-1}.spro-service-form-grid .spro-form-field textarea{min-height:150px}.spro-service-form-grid input[type=file]{padding:9px;background:#faf9f8}.spro-service-form-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-service-form-actions>span{color:var(--spro-muted);font-size:12px}.spro-service-form-actions>div{display:flex;gap:8px}
.spro-service-history-rail,.spro-invoice-control-rail,.spro-payable-control-rail{position:sticky;top:92px;display:grid;gap:12px}.spro-service-history-rail>section,.spro-invoice-control-rail>section,.spro-payable-control-rail>section{padding:20px;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-service-history-rail h2,.spro-invoice-control-rail h2,.spro-payable-control-rail h2{margin:4px 0 13px;font:550 24px var(--spro-display)}.spro-service-history-rail ol,.spro-invoice-control-rail ol{display:grid;gap:11px;margin:0;padding:0;list-style:none;counter-reset:gate}.spro-service-history-rail ol li,.spro-invoice-control-rail ol li{display:grid;grid-template-columns:29px minmax(0,1fr);column-gap:9px;counter-increment:gate}.spro-service-history-rail ol li::before,.spro-invoice-control-rail ol li::before{grid-row:1/3;display:grid;width:27px;height:27px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-size:10px;font-weight:900;content:counter(gate)}.spro-service-history-rail li b,.spro-service-history-rail li small,.spro-invoice-control-rail li b,.spro-invoice-control-rail li small{display:block}.spro-service-history-rail li b,.spro-invoice-control-rail li b{font-size:12px}.spro-service-history-rail li small,.spro-invoice-control-rail li small{color:var(--spro-muted);font-size:10px;line-height:1.45}.spro-service-mini-timeline{display:grid}.spro-service-mini-timeline>article{display:grid;grid-template-columns:25px minmax(0,1fr);gap:8px;padding:11px 0;border-top:1px solid var(--spro-line-soft)}.spro-service-mini-timeline>article>i{display:grid;width:23px;height:23px;place-items:center;border-radius:7px;color:var(--spro-emerald);background:#f4f1ea;font-size:10px;font-style:normal}.spro-service-mini-timeline b,.spro-service-mini-timeline small{display:block}.spro-service-mini-timeline p,.spro-service-mini-timeline small{margin:3px 0;color:var(--spro-muted);font-size:10px;line-height:1.45}.spro-service-mini-timeline a{color:var(--spro-emerald);font-size:10px;font-weight:850;text-decoration:none}
.spro-invoice-entry-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:17px;align-items:start}.spro-invoice-entry-card{overflow:hidden}.spro-invoice-control-rail .spro-invoice-scope dl,.spro-payable-control-rail dl{display:grid;gap:0;margin:0}.spro-invoice-scope dl div,.spro-payable-control-rail dl div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--spro-line-soft)}.spro-invoice-scope dt,.spro-payable-control-rail dt{color:var(--spro-muted);font-size:11px}.spro-invoice-scope dd,.spro-payable-control-rail dd{margin:0;font-size:11px;font-weight:800;text-align:right}

.spro-payable-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;overflow:hidden;margin-bottom:17px;border-radius:23px;color:#fff;background:radial-gradient(circle at 82% 14%,rgba(228,211,141,.2),transparent 28%),linear-gradient(125deg,#061436,#0a2669);box-shadow:0 20px 50px rgba(7,59,53,.18)}.spro-payable-hero>div{padding:clamp(29px,4.5vw,53px)}.spro-payable-hero nav{display:flex;gap:8px;color:#c1b69f;font-size:12px}.spro-payable-hero nav a{color:#e9c69d;font-weight:850;text-decoration:none}.spro-payable-hero>div>span,.spro-payable-hero>aside>span{display:block;margin-top:15px;color:#e9c69d;font-size:10px;font-weight:900;letter-spacing:.12em}.spro-payable-hero h1{margin:7px 0;font:560 clamp(40px,5vw,63px)/1 var(--spro-display)}.spro-payable-hero>div>p{max-width:840px;color:#dcd5c7;font-size:15px;line-height:1.6}.spro-payable-hero>div>div{display:flex;flex-wrap:wrap;gap:7px}.spro-payable-hero>div>div>span:not(.spro-status){padding:5px 8px;border:1px solid rgba(255,255,255,.15);border-radius:999px;font-size:11px}.spro-payable-hero>aside{display:grid;align-content:center;padding:32px;border-left:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.08)}.spro-payable-hero>aside>span{margin:0}.spro-payable-hero>aside strong{margin:8px 0;font:560 38px var(--spro-display)}.spro-payable-hero>aside small{color:#d2cbbd;font-size:12px;line-height:1.5}.spro-payable-hero>aside a{margin-top:18px;color:#f0d4b4;font-size:12px;font-weight:850;text-decoration:none}.spro-payable-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:hidden;margin-bottom:17px;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-payable-metrics article{padding:18px;border-left:1px solid var(--spro-line-soft)}.spro-payable-metrics article:first-child{border-left:0}.spro-payable-metrics span,.spro-payable-metrics b,.spro-payable-metrics small{display:block}.spro-payable-metrics span{color:var(--spro-emerald);font-size:9px;font-weight:900;letter-spacing:.09em}.spro-payable-metrics b{margin:6px 0;font:550 22px var(--spro-display)}.spro-payable-metrics small{color:var(--spro-muted);font-size:10px}.spro-payable-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:17px;align-items:start}.spro-payable-layout>main{display:grid;gap:17px}.spro-payable-lines,.spro-payable-audit{overflow:hidden}.spro-payable-audit>div{display:grid;padding:0 20px 18px}.spro-payable-audit article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;padding:14px 0;border-top:1px solid var(--spro-line-soft)}.spro-payable-audit article>i{display:grid;width:31px;height:31px;place-items:center;border:2px solid #beb7a7;border-radius:50%;color:var(--spro-muted);font-style:normal;font-weight:850}.spro-payable-audit article.done>i{border-color:var(--spro-emerald);color:#fff;background:var(--spro-emerald)}.spro-payable-audit b,.spro-payable-audit small{display:block}.spro-payable-audit small{margin-top:3px;color:var(--spro-muted);font-size:11px}.spro-payable-control-rail section>p{color:var(--spro-muted);font-size:12px;line-height:1.6}.spro-payable-control-rail section.warning{border-color:#e5b9b4;background:#fff7f5}.spro-payable-control-rail section.warning>span{color:#9c433c}.spro-payable-control-rail form{display:grid;gap:10px}.spro-payable-control-rail textarea,.spro-payable-control-rail input{box-sizing:border-box;width:100%;min-height:47px;padding:10px 11px;border:1px solid #d8d3c8;border-radius:9px;font:500 13px var(--spro-font)}.spro-payable-control-rail label{display:grid;gap:6px;font-size:12px;font-weight:800}.spro-payable-control-rail form>div{display:flex;flex-wrap:wrap;gap:7px}.spro-payable-control-rail .spro-button{width:100%;justify-content:center}

.spro-vendor-project-links,.spro-vendor-record-actions{display:flex;flex-wrap:wrap;gap:7px}.spro-vendor-project-links a,.spro-vendor-record-actions a{padding:7px 9px;border:1px solid #ddd6c8;border-radius:8px;color:var(--spro-emerald);background:#f8f6f2;font-size:11px;font-weight:850;text-decoration:none}.spro-vendor-record-actions{margin-top:10px}.spro-vendor-record-actions a.primary{border-color:var(--spro-emerald);color:#fff;background:var(--spro-emerald)}.spro-vendor-finance-list .spro-settlement-row{margin-top:8px;padding:14px;border:1px dashed #dad4c7;border-radius:10px;background:#fcfbfa}

@media(max-width:1180px){.spro-service-ledger-grid{grid-template-columns:1fr}.spro-payable-metrics{grid-template-columns:repeat(3,1fr)}.spro-payable-metrics article:nth-child(4){border-left:0;border-top:1px solid var(--spro-line-soft)}.spro-payable-metrics article:nth-child(5){border-top:1px solid var(--spro-line-soft)}}
@media(max-width:980px){.spro-service-gate-hero,.spro-payable-hero,.spro-service-gate-layout,.spro-invoice-entry-layout,.spro-payable-layout{grid-template-columns:1fr}.spro-service-gate-hero>aside,.spro-payable-hero>aside{border-top:1px solid rgba(255,255,255,.13);border-left:0}.spro-service-history-rail,.spro-invoice-control-rail,.spro-payable-control-rail{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.spro-service-history-rail>section:last-child,.spro-payable-control-rail>section:last-child{grid-column:1/-1}.spro-service-form-grid.invoice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.spro-service-control-alert{grid-template-columns:1fr}.spro-project-hero,.spro-closure-panel{grid-template-columns:1fr}.spro-project-hero>aside{padding:19px 0 0;border-top:1px solid rgba(255,255,255,.15);border-left:0}.spro-milestone-review{display:grid;grid-template-columns:1fr 1fr}.spro-milestone-review input{grid-column:1/-1}.spro-service-gate-hero>div,.spro-service-gate-hero>aside,.spro-payable-hero>div,.spro-payable-hero>aside{padding:24px 19px}.spro-gate-criteria>div,.spro-service-form-grid,.spro-service-form-grid.invoice-grid,.spro-service-history-rail,.spro-invoice-control-rail,.spro-payable-control-rail{grid-template-columns:1fr}.spro-gate-criteria article.wide,.spro-service-history-rail>section:last-child,.spro-payable-control-rail>section:last-child{grid-column:1}.spro-service-form-actions{align-items:stretch;flex-direction:column}.spro-service-form-actions>div{display:grid;grid-template-columns:1fr}.spro-service-form-actions .spro-button{justify-content:center}.spro-payable-metrics{grid-template-columns:1fr 1fr}.spro-payable-metrics article,.spro-payable-metrics article:nth-child(4){border-top:1px solid var(--spro-line-soft);border-left:0}.spro-payable-metrics article:nth-child(even){border-left:1px solid var(--spro-line-soft)}.spro-payable-metrics article:first-child,.spro-payable-metrics article:nth-child(2){border-top:0}.spro-vendor-project-links{width:100%}.spro-vendor-project-links a{flex:1;text-align:center}}

/* Five dense 52-capability operating suites and role-personalised workspaces. */
.spro-suite-switch{display:flex;gap:8px;overflow-x:auto;margin:-4px 0 17px;padding:3px}.spro-suite-switch a{display:grid;grid-template-columns:32px minmax(150px,1fr) auto;min-width:230px;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--spro-line);border-radius:11px;color:var(--spro-ink);background:#fff;text-decoration:none}.spro-suite-switch a.active{border-color:var(--spro-emerald);color:#fff;background:var(--spro-emerald)}.spro-suite-switch i{font-size:18px;font-style:normal}.spro-suite-switch span{font-size:13px;font-weight:800}.spro-suite-switch b{font-size:11px}.spro-suite-hero{display:grid;grid-template-columns:minmax(0,1fr) 290px;overflow:hidden;margin-bottom:17px;border-radius:22px;color:#fff;background:radial-gradient(circle at 82% 18%,rgba(226,211,148,.21),transparent 28%),linear-gradient(125deg,#061538,#0b286b);box-shadow:0 20px 48px rgba(7,59,53,.19)}.spro-suite-hero>div{padding:clamp(28px,5vw,55px)}.spro-suite-hero>div>span,.spro-suite-hero>aside>span{color:#ecc9a0;font-size:10px;font-weight:900;letter-spacing:.13em}.spro-suite-hero h1{margin:8px 0;font:550 clamp(40px,6vw,66px)/.98 var(--spro-display)}.spro-suite-hero p{max-width:850px;color:#dcd6c9;font-size:16px;line-height:1.65}.spro-suite-hero>div>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.spro-suite-hero>aside{display:grid;align-content:center;justify-items:center;padding:30px;border-left:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.08);text-align:center}.spro-suite-hero>aside>i{display:grid;width:70px;height:70px;place-items:center;border:1px solid rgba(255,255,255,.19);border-radius:20px;background:rgba(255,255,255,.08);font-size:31px;font-style:normal}.spro-suite-hero>aside strong{margin-top:13px;font:600 58px/.9 var(--spro-display)}.spro-suite-hero>aside small{margin-top:10px;color:#d4cdbf;font-size:12px}.spro-suite-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.spro-suite-directory>.spro-panel{overflow:hidden}.spro-suite-directory article>header{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:11px;padding:17px 19px;border-bottom:1px solid var(--spro-line-soft)}.spro-suite-directory article>header>span{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;color:#fff;background:var(--spro-forest);font:550 15px var(--spro-display)}.spro-suite-directory header small{color:var(--spro-emerald);font-size:9px;font-weight:900;letter-spacing:.1em}.spro-suite-directory header h2{margin:2px 0;font:550 23px var(--spro-display)}.spro-suite-directory header>b{color:var(--spro-emerald);font-size:12px}.spro-suite-directory article>div{display:grid;padding:0 18px 10px}.spro-suite-directory article>div>a{display:flex;min-height:60px;align-items:center;gap:10px;border-top:1px solid var(--spro-line-soft);color:inherit;text-decoration:none}.spro-suite-directory article>div>a:first-child{border-top:0}.spro-suite-directory article>div>a>i{display:grid;width:28px;height:28px;flex:0 0 auto;place-items:center;border-radius:8px;color:var(--spro-emerald);background:#f3efe6;font-size:11px;font-style:normal}.spro-suite-directory article>div>a>span{min-width:0;flex:1}.spro-suite-directory article>div>a b,.spro-suite-directory article>div>a small{display:block}.spro-suite-directory article>div>a b{font-size:14px}.spro-suite-directory article>div>a small{color:var(--spro-muted);font-size:11px}.spro-suite-directory article>div>a em{color:var(--spro-emerald);font-size:11px;font-style:normal;font-weight:800}.spro-suite-total{display:grid;grid-column:1/-1;min-height:230px;place-content:center;padding:40px;border-radius:20px;color:#fff;background:radial-gradient(circle at 20% 20%,rgba(224,207,139,.18),transparent 24%),linear-gradient(120deg,#08183d,#06112b);text-align:center}.spro-suite-total>span{color:#edc79c;font-size:10px;font-weight:900;letter-spacing:.13em}.spro-suite-total strong{font:600 66px var(--spro-display)}.spro-suite-total h2{margin:0;font:550 28px var(--spro-display)}.spro-suite-total p{max-width:720px;color:#d6cfc1}
.spro-suite-workbench-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:17px}.spro-suite-workbench-strip article{display:grid;grid-template-columns:39px minmax(0,1fr);gap:10px;align-items:start;min-height:118px;padding:15px;border:1px solid var(--spro-line);border-radius:12px;background:#fff;box-shadow:0 8px 26px rgba(12,50,41,.045)}.spro-suite-workbench-strip article>span{display:grid;width:39px;height:39px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:13px;font-weight:900}.spro-suite-workbench-strip b,.spro-suite-workbench-strip small{display:block}.spro-suite-workbench-strip b{font-size:15px}.spro-suite-workbench-strip small{margin-top:4px;color:var(--spro-muted);font-size:13px;line-height:1.35}.spro-suite-workbench-strip nav{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;align-self:end}.spro-suite-workbench-strip nav a,.spro-suite-inline-actions a{padding:7px 9px;border:1px solid #ded8cb;border-radius:8px;color:var(--spro-emerald);background:#fbf9f6;font-size:13px;font-weight:850;text-decoration:none}.spro-suite-workbench-strip nav a:hover,.spro-suite-inline-actions a:hover{border-color:var(--spro-emerald);background:#f7f4ee}.spro-suite-inline-actions{display:flex;flex-wrap:wrap;gap:6px;margin:-4px 0 8px 38px}

.spro-persona-preview,.spro-permission-personas{display:flex;gap:7px;overflow-x:auto;margin-bottom:16px;padding:4px}.spro-persona-preview>span{align-self:center;color:var(--spro-muted);font-size:10px;font-weight:900;letter-spacing:.11em;white-space:nowrap}.spro-persona-preview a{padding:8px 10px;border:1px solid var(--spro-line);border-radius:8px;color:var(--spro-ink);background:#fff;font-size:11px;font-weight:750;text-decoration:none;white-space:nowrap}.spro-persona-preview a.active{color:#fff;background:var(--spro-emerald)}.spro-persona-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;overflow:hidden;margin-bottom:16px;border-radius:21px;color:#fff;background:radial-gradient(circle at 84% 12%,rgba(222,209,145,.2),transparent 28%),linear-gradient(125deg,#07173b,#0b276a)}.spro-persona-hero>div{padding:clamp(28px,5vw,52px)}.spro-persona-hero>div>span,.spro-persona-hero>aside>span{color:#eac69d;font-size:10px;font-weight:900;letter-spacing:.12em}.spro-persona-hero h1{margin:5px 0;font:550 clamp(40px,6vw,64px)/1 var(--spro-display)}.spro-persona-hero>div>p{max-width:760px;color:#dbd5c9}.spro-persona-hero>div>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.spro-persona-hero>div>div>a{padding:9px 11px;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;background:rgba(255,255,255,.07);font-size:12px;font-weight:800;text-decoration:none}.spro-persona-hero>aside{display:grid;align-content:center;gap:7px;padding:28px;border-left:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.08)}.spro-persona-hero>aside b{font:550 24px var(--spro-display)}.spro-persona-hero>aside small{color:#d8d2c4}.spro-persona-hero>aside a{margin-top:10px;color:#efcfab;font-size:12px;font-weight:800}.spro-persona-widgets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.spro-persona-widgets article{position:relative;overflow:hidden;padding:20px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-persona-widgets article>span{position:absolute;right:14px;top:10px;color:#eceae6;font:650 39px var(--spro-display)}.spro-persona-widgets h2{position:relative;margin:7px 0;font:550 24px var(--spro-display)}.spro-persona-widgets p{position:relative;color:var(--spro-muted);font-size:12px}.spro-persona-widgets a{color:var(--spro-emerald);font-size:12px;font-weight:800}.spro-persona-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.spro-role-modules,.spro-role-grants{display:grid;padding:0 18px 18px}.spro-role-modules a,.spro-role-grants a{display:flex;min-height:57px;align-items:center;gap:10px;border-top:1px solid var(--spro-line-soft);color:inherit;text-decoration:none}.spro-role-modules i{display:grid;width:29px;height:29px;place-items:center;border-radius:8px;color:var(--spro-emerald);background:#f3efe7;font-style:normal}.spro-role-modules b,.spro-role-grants a>span{min-width:0;flex:1}.spro-role-modules span,.spro-role-grants em{color:var(--spro-emerald);font-size:11px;font-style:normal;font-weight:800}.spro-role-grants b,.spro-role-grants small{display:block}.spro-role-grants small{overflow:hidden;max-width:500px;color:var(--spro-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}

.spro-permission-personas a{display:grid;grid-template-columns:38px minmax(130px,1fr) auto;min-width:230px;align-items:center;gap:9px;padding:10px;border:1px solid var(--spro-line);border-radius:11px;color:var(--spro-ink);background:#fff;text-decoration:none}.spro-permission-personas a.active{border-color:var(--spro-emerald);box-shadow:inset 0 0 0 1px var(--spro-emerald)}.spro-permission-personas a>i{display:grid;width:37px;height:37px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-style:normal}.spro-permission-personas b,.spro-permission-personas small{display:block}.spro-permission-personas b{font-size:12px}.spro-permission-personas small{color:var(--spro-muted);font-size:10px}.spro-permission-personas em{font-size:11px;font-style:normal}.spro-permission-summary{display:flex;align-items:center;gap:25px;margin-bottom:16px;padding:20px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-permission-summary>div:first-child{min-width:250px}.spro-permission-summary>div>span{color:var(--spro-emerald);font-size:9px;font-weight:900}.spro-permission-summary h2{margin:4px 0;font:550 25px var(--spro-display)}.spro-permission-summary p{margin:0;color:var(--spro-muted);font-size:12px}.spro-permission-summary dl{display:flex;flex:1;gap:30px}.spro-permission-summary dt{color:var(--spro-muted);font-size:9px;text-transform:uppercase}.spro-permission-summary dd{margin:2px 0;font:550 24px var(--spro-display)}.spro-permission-table{overflow:hidden}.spro-permission-table table{min-width:1260px}.spro-permission-table td:not(:first-child):not(:nth-last-child(-n+2)){text-align:center}.spro-permission-table i{font-style:normal;color:#b8bcc4}.spro-permission-table i.permission-yes{display:inline-grid;width:25px;height:25px;place-items:center;border-radius:7px;color:#fff;background:var(--spro-emerald)}.spro-permission-table code{display:block;max-width:300px;overflow:hidden;color:#22335c;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.spro-permission-table td>a{color:var(--spro-emerald);font-size:11px;font-weight:800}

@media(max-width:1000px){.spro-suite-hero,.spro-persona-hero{grid-template-columns:1fr}.spro-suite-hero>aside,.spro-persona-hero>aside{border-top:1px solid rgba(255,255,255,.14);border-left:0}.spro-suite-directory,.spro-persona-layout{grid-template-columns:1fr}.spro-suite-workbench-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-persona-widgets{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-permission-summary{align-items:flex-start;flex-wrap:wrap}.spro-permission-summary dl{width:100%;flex-basis:100%}}
@media(max-width:620px){.spro-persona-widgets,.spro-suite-workbench-strip{grid-template-columns:1fr}.spro-suite-hero>div,.spro-persona-hero>div{padding:25px 19px}.spro-suite-hero>aside{padding:25px}.spro-suite-directory article>header{padding:14px}.spro-suite-directory article>div{padding-inline:13px}.spro-suite-inline-actions{margin-left:0}.spro-permission-summary dl{gap:14px}.spro-permission-summary>div:first-child{min-width:0}.spro-suite-kpis{grid-template-columns:1fr}}

/* Vendor delivery microsite */
.spro-vendor-switch{display:flex;align-items:center;gap:7px;overflow-x:auto;margin:-4px 0 15px;padding-bottom:3px}.spro-vendor-switch>span{flex:none;color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.12em}.spro-vendor-switch a{flex:none;padding:8px 11px;border:1px solid var(--spro-line);border-radius:999px;color:var(--spro-ink);background:#fff;font-size:12px;font-weight:750;text-decoration:none}.spro-vendor-switch a.active{border-color:var(--spro-emerald);color:#fff;background:var(--spro-emerald)}
.spro-vendor-hero{display:grid;grid-template-columns:minmax(0,1fr) 330px;overflow:hidden;border-radius:24px;color:#fff;background:radial-gradient(circle at 84% 12%,rgba(220,235,147,.19),transparent 27%),linear-gradient(125deg,#06122f,#0a276b);box-shadow:0 22px 55px rgba(7,59,53,.18)}.spro-vendor-hero>div{padding:clamp(30px,5vw,60px)}.spro-vendor-hero>div>span,.spro-vendor-hero>aside>span{color:#ecc9a0;font-size:10px;font-weight:900;letter-spacing:.13em}.spro-vendor-hero>div>p:first-of-type{margin:10px 0;color:#cbc1aa;font-size:12px}.spro-vendor-hero h1{margin:8px 0;font:560 clamp(42px,6vw,70px)/.98 var(--spro-display)}.spro-vendor-hero>div>p:last-of-type{max-width:800px;color:#ddd7c9;font-size:16px;line-height:1.65}.spro-vendor-hero>div>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}.spro-vendor-hero>div>div a{padding:11px 14px;border:1px solid rgba(255,255,255,.18);border-radius:9px;color:#fff;background:rgba(255,255,255,.07);font-size:13px;font-weight:800;text-decoration:none}.spro-vendor-hero>aside{display:grid;align-content:center;padding:34px;border-left:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.09)}.spro-vendor-hero>aside>strong{font:600 74px/.95 var(--spro-display)}.spro-vendor-hero>aside>small{color:#c9c0ac}.spro-vendor-hero dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:23px 0 0}.spro-vendor-hero dl div{padding:10px;border:1px solid rgba(255,255,255,.11);border-radius:10px}.spro-vendor-hero dt{color:#bfb59e;font-size:9px}.spro-vendor-hero dd{margin:3px 0 0;font-weight:800}.spro-vendor-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:17px 0;border:1px solid var(--spro-line);border-radius:16px;background:#fff}.spro-vendor-metrics article{padding:20px;border-right:1px solid var(--spro-line-soft)}.spro-vendor-metrics article:last-child{border-right:0}.spro-vendor-metrics span,.spro-vendor-inbox article>div>span,.spro-vendor-projects article>header>span,.spro-vendor-list article>span,.spro-vendor-scorecards span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.09em}.spro-vendor-metrics strong{display:block;margin:5px 0;font:560 32px var(--spro-display)}.spro-vendor-metrics small{color:var(--spro-muted);font-size:12px}.spro-vendor-section{margin-bottom:16px;overflow:hidden}.spro-vendor-inbox{display:grid;padding:0 19px 18px}.spro-vendor-inbox>article{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px 0;border-top:1px solid var(--spro-line-soft)}.spro-vendor-inbox>article>i{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;color:#fff;background:var(--spro-forest);font-style:normal;font-weight:900}.spro-vendor-inbox h3,.spro-vendor-list h3{margin:4px 0;font-size:15px}.spro-vendor-inbox p,.spro-vendor-list p{margin:0;color:var(--spro-muted);font-size:12px;line-height:1.5}.spro-vendor-inbox small,.spro-vendor-list small{color:var(--spro-faint);font-size:11px}.spro-vendor-inbox form,.spro-vendor-list form,.spro-vendor-projects footer form{display:flex;gap:5px}.spro-vendor-inbox button,.spro-vendor-list button,.spro-vendor-projects button,.spro-vendor-projects select{min-height:36px;padding:0 10px;border:1px solid var(--spro-line);border-radius:8px;color:var(--spro-ink);background:#fff;font:750 11px var(--spro-font)}.spro-vendor-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 19px 19px}.spro-vendor-projects>article{padding:18px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(145deg,#fff,#faf9f8)}.spro-vendor-projects article>header,.spro-vendor-projects article>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.spro-vendor-projects h3{margin:14px 0 5px;font:550 23px var(--spro-display)}.spro-vendor-projects>article>p{min-height:42px;color:var(--spro-muted);font-size:12px;line-height:1.6}.spro-vendor-projects dl{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:15px 0}.spro-vendor-projects dl div{padding:9px;border-radius:9px;background:#f4f2ee}.spro-vendor-projects dt{color:var(--spro-muted);font-size:9px}.spro-vendor-projects dd{margin:3px 0 0;font-size:11px;font-weight:800}.spro-vendor-projects footer{padding-top:13px;border-top:1px solid var(--spro-line-soft)}.spro-vendor-projects footer>a{color:var(--spro-emerald);font-size:12px;font-weight:850;text-decoration:none}.spro-vendor-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.spro-vendor-list{display:grid;padding:0 19px 18px}.spro-vendor-list>article{padding:14px 0;border-top:1px solid var(--spro-line-soft)}.spro-vendor-list>p{padding:0 0 18px;color:var(--spro-muted)}.spro-vendor-list form{margin-top:9px}.spro-vendor-scorecards{display:grid;padding:0 19px 18px}.spro-vendor-scorecards article{display:grid;grid-template-columns:62px minmax(0,1fr);gap:13px;padding:14px 0;border-top:1px solid var(--spro-line-soft)}.spro-vendor-scorecards article>strong{display:grid;width:60px;height:60px;place-items:center;border-radius:50%;color:#fff;background:conic-gradient(var(--spro-emerald) 80%,#e7e4dc 0);font:550 22px var(--spro-display)}.spro-vendor-scorecards h3{margin:4px 0}.spro-vendor-scorecards p,.spro-vendor-scorecards small{margin:0;color:var(--spro-muted);font-size:11px;line-height:1.55}
@media(max-width:1000px){.spro-vendor-hero{grid-template-columns:1fr}.spro-vendor-hero>aside{border-top:1px solid rgba(255,255,255,.13);border-left:0}.spro-vendor-metrics{grid-template-columns:repeat(2,1fr)}.spro-vendor-metrics article:nth-child(2){border-right:0}.spro-vendor-metrics article:nth-child(-n+2){border-bottom:1px solid var(--spro-line-soft)}.spro-vendor-two-col,.spro-vendor-projects{grid-template-columns:1fr}}
@media(max-width:620px){.spro-vendor-hero>div,.spro-vendor-hero>aside{padding:24px 19px}.spro-vendor-hero h1{font-size:42px}.spro-vendor-metrics{grid-template-columns:1fr}.spro-vendor-metrics article{border-right:0;border-bottom:1px solid var(--spro-line-soft)}.spro-vendor-inbox>article{grid-template-columns:38px minmax(0,1fr)}.spro-vendor-inbox>article>i{width:38px;height:38px}.spro-vendor-inbox form{grid-column:2;flex-wrap:wrap}.spro-vendor-projects{padding-inline:13px}.spro-vendor-projects dl{grid-template-columns:1fr 1fr}.spro-vendor-projects footer{align-items:flex-start;flex-direction:column}.spro-vendor-projects footer form{width:100%;flex-wrap:wrap}.spro-vendor-projects footer select{flex:1}.spro-vendor-hero dl{grid-template-columns:1fr 1fr 1fr}}

.spro-facility-maintenance{margin:0 0 16px;overflow:hidden}.spro-facility-maintenance-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--spro-line-soft)}.spro-facility-maintenance-grid>article{padding:17px 19px;background:#fff}.spro-facility-maintenance-grid h3{margin:0 0 8px;font:550 20px var(--spro-display)}.spro-facility-maintenance-grid a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:55px;border-top:1px solid var(--spro-line-soft);color:inherit;text-decoration:none}.spro-facility-maintenance-grid a b,.spro-facility-maintenance-grid a small{display:block}.spro-facility-maintenance-grid a b{font-size:13px}.spro-facility-maintenance-grid a small,.spro-facility-maintenance-grid>article>p{color:var(--spro-muted);font-size:11px}.spro-facility-maintenance-grid a em{flex:none;color:var(--spro-emerald);font-size:11px;font-style:normal;font-weight:850}
@media(max-width:760px){.spro-facility-maintenance-grid{grid-template-columns:1fr}.spro-facility-maintenance-grid>article+article{border-top:1px solid var(--spro-line)}}

/* Tenant provider control planes, cross-site process governance and gate scanner. */
.spro-provider-hero,.spro-process-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;margin-bottom:16px;padding:clamp(27px,4.5vw,50px);border-radius:23px;color:#fff;background:radial-gradient(circle at 86% 16%,rgba(224,212,147,.21),transparent 28%),linear-gradient(125deg,#061537,#0a2669);box-shadow:0 20px 48px rgba(7,59,53,.18)}
.spro-provider-hero>div:first-child>span,.spro-process-hero>div>span,.spro-provider-config-head>div>span,.spro-provider-scope-note span,.spro-provider-catalog>header span,.spro-provider-architecture>div>span,.spro-scan-panel>header>span,.spro-scan-active>span,.spro-scan-history header span{color:#e9c69d;font-size:11px;font-weight:900;letter-spacing:.13em}.spro-provider-hero h1,.spro-process-hero h1,.spro-provider-config-head h1,.spro-scan-panel h1{margin:7px 0;font:560 clamp(38px,5vw,62px)/1.02 var(--spro-display)}.spro-provider-hero>div>p,.spro-process-hero>div>p{max-width:900px;margin:9px 0 0;color:#dbd5c7;font-size:15px;line-height:1.65}
.spro-provider-hero-metrics{display:grid;grid-template-columns:repeat(3,110px);overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.07)}.spro-provider-hero-metrics article{padding:17px;border-left:1px solid rgba(255,255,255,.13)}.spro-provider-hero-metrics article:first-child{border-left:0}.spro-provider-hero-metrics b,.spro-provider-hero-metrics span{display:block}.spro-provider-hero-metrics b{font:600 31px var(--spro-display)}.spro-provider-hero-metrics span{color:#d3ccbc;font-size:11px;line-height:1.35}
.spro-provider-quickstart{overflow:hidden;margin-bottom:16px;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:var(--spro-shadow)}.spro-provider-quickstart>header{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,390px);gap:20px;align-items:end;padding:22px;border-bottom:1px solid var(--spro-line-soft);background:linear-gradient(135deg,#fbfaf7,#f6f3ee)}.spro-provider-quickstart header span,.spro-provider-quickstart article>span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.08em}.spro-provider-quickstart h2{margin:5px 0;font:550 28px var(--spro-display)}.spro-provider-quickstart header p{margin:0;color:var(--spro-muted);font-size:15px;line-height:1.55}.spro-provider-quickstart form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.spro-provider-quickstart label{display:grid;gap:6px;color:var(--spro-ink);font-size:14px;font-weight:800}.spro-provider-quickstart select{min-height:44px;padding:9px 10px;border:1px solid #d8d4cb;border-radius:8px;background:#fff;font:700 14px var(--spro-font)}.spro-provider-quickstart>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--spro-line-soft)}.spro-provider-quickstart article{display:grid;align-content:start;gap:6px;min-height:145px;padding:18px;background:#fff}.spro-provider-quickstart h3{margin:0;font:550 21px var(--spro-display)}.spro-provider-quickstart article p{margin:0;color:var(--spro-muted);font-size:14px;line-height:1.45}.spro-provider-quickstart small{align-self:end;color:#515c74;font-size:13px;font-weight:800}
.spro-provider-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.spro-provider-type-grid>a{display:grid;min-height:165px;padding:19px;border:1px solid var(--spro-line);border-radius:15px;color:var(--spro-ink);background:linear-gradient(145deg,#fff,#f9f8f6);text-decoration:none;transition:.18s}.spro-provider-type-grid>a:hover,.spro-provider-type-grid>a.active{border-color:var(--spro-emerald);box-shadow:0 13px 30px rgba(7,59,53,.1);transform:translateY(-2px)}.spro-provider-type-grid>a.active{color:#fff;background:linear-gradient(135deg,#07173b,#0c2b72)}.spro-provider-type-grid>a>span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.12em}.spro-provider-type-grid>a.active>span{color:#e9c69d}.spro-provider-type-grid h2{margin:9px 0 4px;font:550 23px var(--spro-display)}.spro-provider-type-grid p{margin:0;color:var(--spro-muted);font-size:12px}.spro-provider-type-grid>a.active p{color:#d2cbbd}.spro-provider-type-grid footer{display:flex;align-items:end;justify-content:space-between;margin-top:auto;font-size:12px}.spro-provider-type-grid footer i{font-style:normal;font-size:20px}
.spro-provider-scope-note{display:grid;grid-template-columns:minmax(280px,.42fr) minmax(0,.58fr);align-items:center;gap:30px;margin-bottom:16px;padding:21px 24px;border:1px solid #ded8cb;border-radius:15px;background:#f8f5ef}.spro-provider-scope-note span,.spro-provider-catalog>header span,.spro-provider-architecture>div>span,.spro-provider-config-head>div>span,.spro-scan-history header span{color:var(--spro-emerald)}.spro-provider-scope-note h2{margin:4px 0;font:550 23px var(--spro-display)}.spro-provider-scope-note p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.6}
.spro-provider-catalog,.spro-process-table-card,.spro-scan-history{overflow:hidden;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:var(--spro-shadow)}.spro-provider-catalog>header,.spro-scan-history>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--spro-line-soft)}.spro-provider-catalog h2,.spro-scan-history h2{margin:3px 0;font:550 26px var(--spro-display)}.spro-provider-catalog>header>p{color:var(--spro-muted);font-size:14px}.spro-provider-table-wrap{overflow:auto}.spro-provider-table-wrap table{width:100%;min-width:1120px;border-collapse:collapse}.spro-provider-table-wrap th{padding:11px 15px;color:var(--spro-muted);background:#f7f6f3;font-size:12px;letter-spacing:.06em;text-align:left}.spro-provider-table-wrap td{padding:14px 15px;border-top:1px solid var(--spro-line-soft);font-size:14px;vertical-align:middle}.spro-provider-table-wrap td strong,.spro-provider-table-wrap td small{display:block}.spro-provider-table-wrap td small{margin-top:3px;color:var(--spro-muted);font-size:13px}.spro-provider-index{display:inline-grid;width:30px;height:30px;margin-right:8px;place-items:center;border-radius:8px;color:var(--spro-emerald);background:#f4f1ea;font-size:12px;font-weight:900}.spro-provider-chip-form{display:inline}.spro-provider-chip{margin:2px;padding:6px 9px;border:1px solid var(--spro-line);border-radius:999px;color:var(--spro-muted);background:#fff;font:750 12px var(--spro-font);cursor:pointer}.spro-provider-chip.enabled{border-color:#cabc9f;color:var(--spro-emerald);background:#f5f1e8}.spro-muted{color:var(--spro-muted);font-size:14px}
.spro-provider-architecture{display:grid;grid-template-columns:minmax(300px,.4fr) minmax(0,.6fr);gap:35px;padding:32px;border:1px solid var(--spro-line);border-radius:18px;background:#fff}.spro-provider-architecture h2{margin:6px 0;font:550 31px var(--spro-display)}.spro-provider-architecture p{color:var(--spro-muted);font-size:14px;line-height:1.65}.spro-provider-architecture ol{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:0;padding:0;list-style:none}.spro-provider-architecture li{display:grid;align-content:center;justify-items:center;min-height:125px;padding:12px;border-radius:13px;background:#f5f3ef;text-align:center}.spro-provider-architecture li b{display:grid;width:33px;height:33px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald)}.spro-provider-architecture li span{margin-top:9px;font-size:11px;font-weight:800}
.spro-form-breadcrumb{display:flex;gap:8px;margin:0 0 13px;color:var(--spro-muted);font-size:12px}.spro-form-breadcrumb a{color:var(--spro-emerald);font-weight:850;text-decoration:none}.spro-provider-config-head{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:center;gap:26px;margin-bottom:16px;padding:31px;border-radius:20px;color:#fff;background:linear-gradient(125deg,#07163a,#0a2667)}.spro-provider-config-head h1{font-size:clamp(37px,5vw,57px)}.spro-provider-config-head>div>p{color:#d9d2c4}.spro-provider-config-head>aside{padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(255,255,255,.06)}.spro-provider-config-head>aside span{color:#e9c69d;font-size:10px;font-weight:900;letter-spacing:.1em}.spro-provider-config-head>aside b,.spro-provider-config-head>aside p{display:block}.spro-provider-config-head>aside b{margin:7px 0}.spro-provider-config-head>aside p{margin:0;color:#d1caba;font-size:12px;line-height:1.5}.spro-provider-config-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:17px;align-items:start}.spro-provider-form{display:grid;gap:14px}.spro-provider-form>section{overflow:hidden;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-provider-form>section>header{display:flex;align-items:center;gap:13px;padding:16px 19px;border-bottom:1px solid var(--spro-line-soft);background:#f9f8f7}.spro-provider-form>section>header>span{display:grid;width:37px;height:37px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-emerald);font-size:11px;font-weight:900}.spro-provider-form header h2{margin:0;font:550 22px var(--spro-display)}.spro-provider-form header p{margin:3px 0 0;color:var(--spro-muted);font-size:11px}.spro-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:19px}.spro-form-grid>label{display:grid;align-content:start;gap:6px;min-width:0;font-size:13px;font-weight:780}.spro-form-grid input:not([type=checkbox]),.spro-form-grid select,.spro-form-grid textarea{box-sizing:border-box;width:100%;min-height:46px;padding:10px 11px;border:1px solid #d8d4cb;border-radius:9px;background:#fcfcfb;font:500 14px/1.5 var(--spro-font)}.spro-form-grid textarea{min-height:145px;resize:vertical}.spro-form-grid input:focus,.spro-form-grid select:focus,.spro-form-grid textarea:focus{border-color:var(--spro-emerald);outline:3px solid rgba(12,103,88,.1)}.spro-form-grid label>small{color:var(--spro-muted);font-size:11px;font-weight:500;line-height:1.45}.spro-form-grid label>ul{margin:0;padding-left:17px;color:#9c433c;font-size:11px}.spro-form-grid-wide>label{grid-column:span 3}.spro-form-grid .spro-check-field{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid var(--spro-line);border-radius:9px;background:#faf9f7}.spro-check-field input{width:19px;height:19px;accent-color:var(--spro-emerald)}.spro-form-grid #id_enabled_locales{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:12px;border:1px solid var(--spro-line);border-radius:10px}.spro-form-grid #id_enabled_locales label{display:flex;align-items:center;gap:6px;font-weight:600}.spro-form-grid #id_enabled_locales input{width:17px;height:17px}.spro-record-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:15px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-actions>a{color:var(--spro-muted);font-size:13px;font-weight:800;text-decoration:none}.spro-provider-scope-rail{position:sticky;top:92px;display:grid;gap:7px;padding:19px;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-provider-scope-rail>span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.1em}.spro-provider-scope-rail h2{margin:2px 0 10px;font:550 23px var(--spro-display)}.spro-provider-scope-rail>a{display:grid;padding:10px;border:1px solid var(--spro-line-soft);border-radius:9px;color:inherit;text-decoration:none}.spro-provider-scope-rail>a.active{border-color:var(--spro-emerald);background:#f6f3ed}.spro-provider-scope-rail a b{font-size:12px}.spro-provider-scope-rail a small{color:var(--spro-muted);font-size:10px}.spro-danger-link{margin-top:8px;border:0;color:#9c433c;background:transparent;font:800 12px var(--spro-font);cursor:pointer}
.spro-process-hero form{align-self:end}.spro-process-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px;overflow:hidden;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-process-metrics article{padding:19px;border-left:1px solid var(--spro-line-soft)}.spro-process-metrics article:first-child{border-left:0}.spro-process-metrics span,.spro-process-metrics b,.spro-process-metrics small{display:block}.spro-process-metrics span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.1em}.spro-process-metrics b{margin:5px 0;font:560 31px var(--spro-display)}.spro-process-metrics small{color:var(--spro-muted);font-size:11px}.spro-process-controls{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px;padding:15px 18px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-process-controls form{display:flex;align-items:end;gap:9px}.spro-process-controls label{display:grid;gap:5px;font-size:11px;font-weight:800}.spro-process-controls select{min-width:190px;min-height:41px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}.spro-process-controls>p{margin:0;color:var(--spro-muted);font-size:11px}.spro-domain-pill{display:inline-block;padding:4px 7px;border-radius:999px;color:var(--spro-emerald);background:#f4f0e8;font-size:10px;font-weight:850}.spro-table-actions{display:flex;flex-wrap:wrap;gap:5px;min-width:240px}.spro-table-actions a,.spro-table-actions button{padding:6px 7px;border:1px solid #ded8cb;border-radius:7px;color:var(--spro-emerald);background:#faf8f3;font:800 10px var(--spro-font);text-decoration:none;cursor:pointer}.spro-table-actions form{display:inline}
.spro-scan-shell{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:17px;margin-bottom:17px}.spro-scan-panel{overflow:hidden;border-radius:22px;color:#fff;background:linear-gradient(130deg,#061537,#0a276c);box-shadow:0 20px 50px rgba(7,59,53,.18)}.spro-scan-panel>header{padding:clamp(28px,5vw,52px) clamp(24px,5vw,55px) 24px}.spro-scan-panel>header>p{max-width:760px;color:#dad3c5}.spro-scan-panel>form{display:grid;gap:13px;margin:0 clamp(20px,5vw,55px) clamp(24px,5vw,48px);padding:22px;border-radius:16px;color:var(--spro-ink);background:#fff}.spro-scan-panel form>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.spro-scan-panel label{display:grid;gap:6px;font-size:13px;font-weight:800}.spro-scan-panel input{box-sizing:border-box;width:100%;min-height:55px;padding:12px;border:1px solid #d8d4ca;border-radius:11px;font:600 17px var(--spro-font)}.spro-scan-panel input[name=credential_reference]{font-size:23px;letter-spacing:.05em;text-transform:uppercase}.spro-scan-panel button{min-height:62px;border:0;border-radius:12px;color:#fff;background:var(--spro-emerald);font:850 16px var(--spro-font);cursor:pointer}.spro-scan-active{padding:23px;border:1px solid var(--spro-line);border-radius:18px;background:#fff}.spro-scan-active>span{color:var(--spro-emerald)}.spro-scan-active h2{margin:6px 0 14px;font:550 27px var(--spro-display)}.spro-scan-active article{padding:13px 0;border-top:1px solid var(--spro-line-soft)}.spro-scan-active article b,.spro-scan-active article small{display:block}.spro-scan-active article small{color:var(--spro-muted);font-size:11px}.spro-scan-history>div{display:grid;padding:0 20px 18px}.spro-scan-history article{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--spro-line-soft)}.spro-scan-history article>span{font-weight:850}.spro-scan-history article div b,.spro-scan-history article div small{display:block}.spro-scan-history article div small{color:var(--spro-muted);font-size:11px}.spro-scan-history article>strong{padding:5px 8px;border-radius:999px;color:#8e4b43;background:#fff0ed;font-size:10px}.spro-scan-history article.tone-approved>strong{color:var(--spro-emerald);background:#f4f0e8}
@media(max-width:1100px){.spro-provider-type-grid,.spro-provider-quickstart>div{grid-template-columns:repeat(2,1fr)}.spro-provider-quickstart>header{grid-template-columns:1fr}.spro-provider-hero,.spro-process-hero,.spro-provider-config-head,.spro-provider-config-layout,.spro-scan-shell{grid-template-columns:1fr}.spro-provider-scope-rail{position:static}.spro-provider-hero-metrics{justify-self:start}.spro-process-metrics{grid-template-columns:repeat(2,1fr)}.spro-process-metrics article:nth-child(3){border-left:0;border-top:1px solid var(--spro-line-soft)}.spro-process-metrics article:nth-child(4){border-top:1px solid var(--spro-line-soft)}}
@media(max-width:760px){.spro-provider-hero,.spro-process-hero{padding:25px 19px}.spro-provider-hero-metrics{grid-template-columns:repeat(3,1fr);width:100%}.spro-provider-type-grid,.spro-provider-scope-note,.spro-provider-architecture,.spro-provider-quickstart>div,.spro-provider-quickstart form{grid-template-columns:1fr}.spro-provider-architecture ol{grid-template-columns:1fr 1fr}.spro-form-grid{grid-template-columns:1fr;padding:14px}.spro-form-grid-wide>label{grid-column:1}.spro-form-grid #id_enabled_locales{grid-template-columns:1fr 1fr}.spro-process-controls,.spro-process-controls form{align-items:stretch;flex-direction:column}.spro-process-controls select{width:100%}.spro-scan-panel form>div{grid-template-columns:1fr}}
@media(max-width:520px){.spro-provider-type-grid,.spro-process-metrics{grid-template-columns:1fr}.spro-process-metrics article{border-top:1px solid var(--spro-line-soft);border-left:0}.spro-provider-architecture ol{grid-template-columns:1fr}.spro-form-grid #id_enabled_locales{grid-template-columns:1fr}.spro-scan-history article{grid-template-columns:45px minmax(0,1fr)}.spro-scan-history article>strong{grid-column:2;justify-self:start}}

/* CMS editor runtime controls */
.spro-cms-block-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.spro-cms-block-row>a{display:grid;min-width:0;grid-template-columns:23px 1fr auto;align-items:center;gap:6px;padding:8px;border-radius:7px;color:var(--spro-muted);text-decoration:none}.spro-cms-block-row>a.active{color:var(--spro-forest);background:#f3f0ea}.spro-cms-block-row form{margin:0}.spro-cms-block-row form button{min-width:42px;padding:5px;border:0;color:var(--spro-emerald);background:transparent;font-size:11px;font-weight:750}.spro-block-library form{margin:0}.spro-block-library form>button{width:100%;height:100%}.spro-cms-create-form{padding:20px}.spro-model-form #id_visibility{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px;border:1px solid var(--spro-line);border-radius:7px}.spro-model-form #id_visibility>div label{display:flex;align-items:center;gap:6px;font-weight:600}.spro-model-form #id_visibility input{width:16px;min-height:16px;margin:0}.spro-cms-browser a{color:var(--spro-emerald);font-size:12px;text-decoration:none}

/* Service Project 360: narrow-screen readability and touch ergonomics. */
@media(max-width:700px){
  .spro-project-hero{min-width:0;padding:24px 20px}
  .spro-project-hero>div,.spro-project-hero>aside,.spro-project-columns,.spro-project-columns>*{min-width:0}
  .spro-project-hero h1{font-size:clamp(31px,7.2vw,36px);line-height:1.08;overflow-wrap:break-word;word-break:normal;hyphens:auto}
  .spro-project-hero>div>p{font-size:15px;line-height:1.65;overflow-wrap:anywhere}
  .spro-project-hero>aside strong{font-size:44px}
  .spro-round-card{margin:0 13px 14px;padding:14px}
  .spro-milestone-timeline{padding:0 13px 18px}
  .spro-milestone-timeline section,.spro-milestone-timeline section header{min-width:0}
  .spro-milestone-timeline section header b,.spro-milestone-timeline section p{overflow-wrap:anywhere}
  .spro-ledger-table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
  .spro-project-hero .spro-button,
  .spro-project-columns .spro-panel-head a,
  .spro-round-card button,
  .spro-milestone-timeline a,
  .spro-milestone-review button,
  .spro-ledger-table-wrap td>a,
  .spro-closure-panel button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding-inline:13px}
  .spro-milestone-review input{min-height:46px;font-size:15px}
}

/* Secure resident-issued visitor passes and one-time gate validation. */
.spro-scan-panel input[name=credential_token]{font:650 16px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.01em}
.spro-scan-result{margin:0 0 13px;padding:13px;border-radius:11px;color:#8e4b43;background:#fff0ed}.spro-scan-result.tone-approved{color:var(--spro-emerald);background:#f4f0e8}.spro-scan-result b{font-size:13px}.spro-scan-result p{margin:4px 0 0;font-size:11px;line-height:1.5}
.spro-pass-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;overflow:hidden;margin-bottom:17px;border-radius:23px;color:#fff;background:radial-gradient(circle at 84% 13%,rgba(228,213,147,.22),transparent 28%),linear-gradient(125deg,#061537,#0a276b);box-shadow:0 20px 50px rgba(7,59,53,.18)}.spro-pass-hero>div{padding:clamp(29px,4.6vw,54px)}.spro-pass-hero nav{display:flex;gap:8px;color:#c8bea9;font-size:12px}.spro-pass-hero nav a{color:#edceaa;font-weight:850;text-decoration:none}.spro-pass-hero>div>span,.spro-pass-control section>span,.spro-pass-secret>div>span{display:block;margin-top:16px;color:#e9c69d;font-size:10px;font-weight:900;letter-spacing:.12em}.spro-pass-hero h1{margin:7px 0;font:560 clamp(40px,5vw,64px)/1 var(--spro-display)}.spro-pass-hero>div>p{max-width:850px;color:#dbd5c7;font-size:15px;line-height:1.65}.spro-pass-hero>div>div{display:flex;flex-wrap:wrap;gap:7px}.spro-pass-hero>div>div>span:not(.spro-status){padding:5px 8px;border:1px solid rgba(255,255,255,.15);border-radius:999px;font-size:11px}.spro-pass-hero>aside{display:grid;align-content:center;padding:31px;border-left:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.08)}.spro-pass-hero>aside>span{color:#e9c69d;font-size:10px;font-weight:900;letter-spacing:.11em}.spro-pass-hero>aside>strong{margin:7px 0;font:560 35px var(--spro-display)}.spro-pass-hero>aside>small{color:#d2cbbd;font-size:11px}.spro-pass-hero dl{display:grid;margin:18px 0 0}.spro-pass-hero dl div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid rgba(255,255,255,.12)}.spro-pass-hero dt{color:#c4baa5;font-size:10px}.spro-pass-hero dd{margin:0;font-size:11px;font-weight:800;text-align:right}
.spro-pass-secret{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:28px;align-items:center;margin-bottom:17px;padding:clamp(24px,4vw,40px);border:2px solid #cdc2a9;border-radius:20px;background:linear-gradient(135deg,#faf7f0,#fff);box-shadow:0 16px 40px rgba(7,59,53,.11)}.spro-pass-secret>div>span,.spro-pass-control section>span{margin:0;color:var(--spro-emerald)}.spro-pass-secret h2{margin:6px 0;font:560 32px var(--spro-display)}.spro-pass-secret p{color:var(--spro-muted);font-size:13px;line-height:1.6}.spro-pass-secret label{display:grid;gap:6px;font-size:12px;font-weight:850}.spro-pass-secret textarea{box-sizing:border-box;width:100%;padding:13px;border:1px solid #c9bfa9;border-radius:10px;background:#fff;font:650 13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;resize:none}.spro-pass-secret>div>div{display:flex;gap:8px;margin-top:12px}.spro-pass-secret figure{margin:0;text-align:center}.spro-pass-secret img{width:min(100%,220px);border:12px solid #fff;border-radius:14px;box-shadow:0 9px 24px rgba(7,59,53,.13)}.spro-pass-secret figcaption{margin-top:8px;color:var(--spro-muted);font-size:10px}
.spro-pass-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:17px;align-items:start}.spro-pass-layout>main{display:grid;gap:17px}.spro-pass-history{overflow:hidden}.spro-pass-history td b,.spro-pass-history td small{display:block}.spro-pass-history td small{margin-top:3px;color:var(--spro-muted);font-size:10px}.spro-pass-safety{overflow:hidden}.spro-pass-safety>div{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--spro-line-soft)}.spro-pass-safety article{padding:20px;background:#fff}.spro-pass-safety article i{display:grid;width:31px;height:31px;place-items:center;border-radius:9px;color:#fff;background:var(--spro-emerald);font-size:10px;font-style:normal;font-weight:900}.spro-pass-safety h3{margin:10px 0 4px;font-size:14px}.spro-pass-safety p{margin:0;color:var(--spro-muted);font-size:11px;line-height:1.55}.spro-pass-control{position:sticky;top:92px;display:grid;gap:12px}.spro-pass-control>section{padding:20px;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-pass-control h2{margin:5px 0 9px;font:550 25px var(--spro-display)}.spro-pass-control p{color:var(--spro-muted);font-size:12px;line-height:1.6}.spro-pass-control form{display:grid;gap:12px}.spro-pass-control label{display:grid;gap:6px;font-size:12px;font-weight:800}.spro-pass-control select{box-sizing:border-box;width:100%;min-height:47px;padding:9px;border:1px solid #d9d4c8;border-radius:9px;background:#fff;font:600 13px var(--spro-font)}.spro-pass-control section.warning{border-color:#e5b9b4;background:#fff8f6}.spro-pass-control section.warning>span{color:#9c433c}.spro-pass-locked{padding:13px;border-radius:10px;background:#f6f5f3}.spro-pass-locked b{font-size:12px}.spro-pass-locked p{margin-bottom:0}.status-consumed,.status-revoked,.status-expired{color:#8d4d45!important;background:#fff0ed!important}
@media(max-width:1050px){.spro-pass-hero,.spro-pass-layout{grid-template-columns:1fr}.spro-pass-hero>aside{border-top:1px solid rgba(255,255,255,.13);border-left:0}.spro-pass-control{position:static;grid-template-columns:1fr 1fr}}
@media(max-width:700px){.spro-pass-secret{grid-template-columns:1fr;padding:21px}.spro-pass-secret figure{order:-1}.spro-pass-secret img{width:180px}.spro-pass-secret>div>div,.spro-pass-control{grid-template-columns:1fr;flex-direction:column}.spro-pass-secret .spro-button,.spro-pass-control .spro-button{display:flex;min-height:48px;align-items:center;justify-content:center}.spro-pass-safety>div{grid-template-columns:1fr}.spro-pass-hero>div,.spro-pass-hero>aside{padding:24px 20px}.spro-pass-hero h1{font-size:38px}.spro-pass-history .spro-table{min-width:760px}}

/* Invoice checkout, provider routing and facility settlement. */
.spro-checkout-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;overflow:hidden;margin-bottom:17px;border-radius:23px;color:#fff;background:radial-gradient(circle at 85% 14%,rgba(236,210,139,.25),transparent 29%),linear-gradient(125deg,#17223d,#8a642f);box-shadow:0 20px 50px rgba(57,42,18,.18)}.spro-checkout-hero>div{padding:clamp(29px,4.6vw,54px)}.spro-checkout-hero nav{display:flex;gap:8px;color:#d1beaa;font-size:12px}.spro-checkout-hero nav a{color:#f1d2ae;font-weight:850;text-decoration:none}.spro-checkout-hero>div>span,.spro-checkout-active>div>span,.spro-checkout-active>aside>span,.spro-checkout-history section>span{display:block;margin-top:16px;color:#efc99d;font-size:10px;font-weight:900;letter-spacing:.12em}.spro-checkout-hero h1{margin:8px 0;font:560 clamp(43px,5.5vw,68px)/1 var(--spro-display)}.spro-checkout-hero>div>p{max-width:850px;color:#e0d3c6;font-size:15px;line-height:1.65}.spro-checkout-hero>div>div{display:flex;flex-wrap:wrap;gap:7px}.spro-checkout-hero>div>div>span:not(.spro-status){padding:5px 8px;border:1px solid rgba(255,255,255,.15);border-radius:999px;font-size:11px}.spro-checkout-hero>aside{display:grid;align-content:center;padding:31px;border-left:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.09)}.spro-checkout-hero>aside>span{color:#efc99d;font-size:10px;font-weight:900;letter-spacing:.1em}.spro-checkout-hero>aside>strong{margin:8px 0;font:560 35px var(--spro-display)}.spro-checkout-hero dl{display:grid;margin:15px 0 0}.spro-checkout-hero dl div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid rgba(255,255,255,.13)}.spro-checkout-hero dt{color:#cfbfaa;font-size:10px}.spro-checkout-hero dd{margin:0;font-size:11px;font-weight:850;text-align:right}
.spro-checkout-active{display:grid;grid-template-columns:minmax(0,1fr) 390px;overflow:hidden;margin-bottom:17px;border:1px solid #d2c9b7;border-radius:18px;background:#fff;box-shadow:0 14px 36px rgba(7,59,53,.09)}.spro-checkout-active>div,.spro-checkout-active>aside{padding:25px}.spro-checkout-active>div>span,.spro-checkout-active>aside>span,.spro-checkout-history section>span{margin:0;color:var(--spro-emerald)}.spro-checkout-active h2{margin:6px 0;font:550 29px var(--spro-display)}.spro-checkout-active p{color:var(--spro-muted);font-size:12px;line-height:1.6}.spro-checkout-active dl{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;margin:18px 0 0;border:1px solid var(--spro-line);border-radius:11px}.spro-checkout-active dl div{padding:13px;border-left:1px solid var(--spro-line-soft)}.spro-checkout-active dl div:first-child{border-left:0}.spro-checkout-active dt,.spro-checkout-active dd{display:block;margin:0}.spro-checkout-active dt{color:var(--spro-muted);font-size:9px}.spro-checkout-active dd{margin-top:4px;font-size:13px;font-weight:850}.spro-checkout-active dl .total{color:#fff;background:var(--spro-emerald)}.spro-checkout-active dl .total dt{color:#d6cdb9}.spro-checkout-active>aside{border-left:1px solid var(--spro-line-soft);background:#f9f8f5}.spro-checkout-active form{display:grid}.spro-checkout-active .spro-button{min-height:49px}.spro-checkout-cancel{margin-top:9px}.spro-checkout-cancel button{border:0;color:#94534b;background:transparent;font:800 11px var(--spro-font);cursor:pointer}.spro-checkout-awaiting{display:flex;align-items:center;gap:9px;padding:12px;border-radius:9px;color:var(--spro-emerald);background:#f3efe7;font-size:12px}.spro-checkout-awaiting i{width:9px;height:9px;border-radius:50%;background:#a78231;box-shadow:0 0 0 5px rgba(49,167,130,.14)}
.spro-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:17px;align-items:start}.spro-provider-pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.spro-provider-pay-grid>article{overflow:hidden;border:1px solid var(--spro-line);border-radius:15px;background:#fff;transition:.18s}.spro-provider-pay-grid>article:hover,.spro-provider-pay-grid>article.active{border-color:#bdae8d;box-shadow:0 13px 30px rgba(7,59,53,.09);transform:translateY(-2px)}.spro-provider-pay-grid article>header{display:flex;align-items:center;gap:11px;padding:17px;border-bottom:1px solid var(--spro-line-soft);background:#f9f8f6}.spro-provider-pay-grid header>span{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;color:#fff;background:var(--spro-emerald);font-size:10px;font-weight:900}.spro-provider-pay-grid header h2{margin:0;font:550 21px var(--spro-display)}.spro-provider-pay-grid header p{margin:3px 0 0;color:var(--spro-muted);font-size:10px}.spro-provider-pay-grid header>i{margin-left:auto;color:#a78231;font-style:normal}.spro-provider-pay-grid dl{display:grid;margin:0;padding:8px 17px}.spro-provider-pay-grid dl div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--spro-line-soft)}.spro-provider-pay-grid dl div:first-child{border-top:0}.spro-provider-pay-grid dt{color:var(--spro-muted);font-size:10px}.spro-provider-pay-grid dd{margin:0;font-size:10px;font-weight:800;text-align:right}.spro-provider-pay-grid form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:0 17px 17px}.spro-provider-pay-grid label{display:grid;gap:5px;font-size:10px;font-weight:800}.spro-provider-pay-grid select{min-height:43px;padding:8px;border:1px solid #d8d4cb;border-radius:8px;background:#fff;font:600 12px var(--spro-font)}.spro-provider-pay-grid button{align-self:end;min-height:43px}.spro-checkout-history{position:sticky;top:92px;display:grid;gap:12px}.spro-checkout-history>section{padding:20px;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-checkout-history h2{margin:5px 0 12px;font:550 24px var(--spro-display)}.spro-checkout-history>section>p{color:var(--spro-muted);font-size:12px;line-height:1.6}.spro-checkout-history section>a{color:var(--spro-emerald);font-size:11px;font-weight:850;text-decoration:none}.spro-checkout-history section>div{display:grid}.spro-checkout-history article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:9px;align-items:start;padding:12px 0;border-top:1px solid var(--spro-line-soft)}.spro-checkout-history article>i{width:8px;height:8px;margin-top:4px;border-radius:50%;background:#c38c55}.spro-checkout-history article>i.tone-captured,.spro-checkout-history article>i.tone-settled{background:#9b782d}.spro-checkout-history article>i.tone-failed,.spro-checkout-history article>i.tone-cancelled,.spro-checkout-history article>i.tone-refunded{background:#bd655a}.spro-checkout-history article b,.spro-checkout-history article small{display:block}.spro-checkout-history article b{font-size:11px}.spro-checkout-history article small{margin-top:2px;color:var(--spro-muted);font-size:9px}.spro-checkout-history article strong{font-size:9px}
.status-captured,.status-settled{color:var(--spro-emerald)!important;background:#f4f0e8!important}.status-refunded,.status-cancelled,.status-failed{color:#8d4d45!important;background:#fff0ed!important}
@media(max-width:1120px){.spro-checkout-hero,.spro-checkout-active,.spro-checkout-layout{grid-template-columns:1fr}.spro-checkout-hero>aside,.spro-checkout-active>aside{border-top:1px solid var(--spro-line-soft);border-left:0}.spro-checkout-history{position:static;grid-template-columns:1fr 1fr}}
@media(max-width:760px){.spro-provider-pay-grid,.spro-checkout-history{grid-template-columns:1fr}.spro-checkout-active dl{grid-template-columns:1fr 1fr}.spro-checkout-active dl div:nth-child(3){border-top:1px solid var(--spro-line-soft);border-left:0}.spro-checkout-active dl div:nth-child(4){border-top:1px solid var(--spro-line-soft)}.spro-provider-pay-grid form{grid-template-columns:1fr}.spro-checkout-hero>div,.spro-checkout-hero>aside,.spro-checkout-active>div,.spro-checkout-active>aside{padding:22px 19px}.spro-checkout-hero h1{font-size:42px}.spro-provider-pay-grid .spro-button{display:flex;min-height:47px;align-items:center;justify-content:center}}

/* Identity-bound gate attendance. */
.spro-touch-worker-picker{display:block!important}
.spro-touch-worker-picker select{box-sizing:border-box;width:100%;min-height:58px;padding:0 42px 0 16px;border:1px solid var(--spro-line);border-radius:11px;color:var(--spro-ink);background:#fff;font:700 15px/1.35 var(--spro-font)}
.spro-touch-worker-picker select:focus-visible{outline:3px solid rgba(29,111,87,.22);outline-offset:2px}

/* Governed tenancy, ownership, KYC, e-sign and movement lifecycle. */
.spro-tenancy-head{align-items:end}.spro-tenancy-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;margin-bottom:18px;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(7,59,53,.05)}.spro-tenancy-metrics article{padding:20px;border-left:1px solid var(--spro-line-soft)}.spro-tenancy-metrics article:first-child{border-left:0}.spro-tenancy-metrics span,.spro-tenancy-metrics strong,.spro-tenancy-metrics small{display:block}.spro-tenancy-metrics span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.09em}.spro-tenancy-metrics strong{margin:5px 0;font:600 34px var(--spro-display)}.spro-tenancy-metrics small{color:var(--spro-muted);font-size:12px}.spro-tenancy-register{overflow:hidden}.spro-tenancy-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:18px}.spro-tenancy-case{display:grid;gap:12px;padding:18px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:linear-gradient(145deg,#fff,#fbfaf8);text-decoration:none;transition:.18s}.spro-tenancy-case:hover{border-color:#bbac8c;box-shadow:0 14px 32px rgba(7,59,53,.09);transform:translateY(-2px)}.spro-tenancy-case>header,.spro-tenancy-case>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.spro-tenancy-case>header>span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.05em}.spro-tenancy-case h3{margin:0;font:560 25px var(--spro-display)}.spro-tenancy-case p{margin:0}.spro-tenancy-case p b,.spro-tenancy-case p small{display:block}.spro-tenancy-case p b{font-size:15px}.spro-tenancy-case p small{margin-top:3px;color:var(--spro-muted);font-size:12px}.spro-tenancy-progress{overflow:hidden;height:7px;border-radius:99px;background:#ebe8e2}.spro-tenancy-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b2768,#aa8b49)}.spro-tenancy-case footer{color:var(--spro-muted);font-size:11px}.spro-tenancy-case footer b{margin-left:auto;color:var(--spro-emerald)}
.spro-tenancy-case-hero{display:grid;grid-template-columns:minmax(0,1fr) 350px;overflow:hidden;margin-bottom:17px;border-radius:24px;color:#fff;background:radial-gradient(circle at 82% 14%,rgba(230,213,147,.22),transparent 28%),linear-gradient(125deg,#061436,#0a2668);box-shadow:0 20px 50px rgba(7,59,53,.18)}.spro-tenancy-case-hero>div{padding:clamp(31px,5vw,57px)}.spro-tenancy-case-hero nav{display:flex;gap:8px;color:#c9bfa9;font-size:13px}.spro-tenancy-case-hero nav a,.spro-tenancy-case-hero aside a{color:#edcda9;font-weight:850;text-decoration:none}.spro-tenancy-case-hero>div>span,.spro-tenancy-case-hero>aside>span{display:block;margin-top:17px;color:#ebc89f;font-size:11px;font-weight:900;letter-spacing:.11em}.spro-tenancy-case-hero h1{margin:7px 0;font:560 clamp(42px,6vw,68px)/1 var(--spro-display)}.spro-tenancy-case-hero>div>p{color:#ddd6c7;font-size:16px}.spro-tenancy-case-hero>div>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.spro-tenancy-case-hero>div>div>span{padding:6px 9px;border:1px solid rgba(255,255,255,.17);border-radius:999px;font-size:12px}.spro-tenancy-case-hero>aside{display:grid;align-content:center;padding:32px;border-left:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.08)}.spro-tenancy-case-hero>aside>span{margin:0}.spro-tenancy-case-hero>aside>strong{margin:8px 0;font:560 29px var(--spro-display)}.spro-tenancy-case-hero>aside>small{color:#d2cbbd;font-size:13px;line-height:1.6}.spro-tenancy-case-hero aside a{margin-top:18px;font-size:12px}.spro-tenancy-stagebar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow:hidden;margin-bottom:17px;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-tenancy-stagebar article{position:relative;display:grid;justify-items:center;gap:7px;padding:17px 8px;border-left:1px solid var(--spro-line-soft);color:#84918c;text-align:center}.spro-tenancy-stagebar article:first-child{border-left:0}.spro-tenancy-stagebar i{display:grid;width:30px;height:30px;place-items:center;border:2px solid #d8d4cb;border-radius:50%;font-style:normal;font-weight:900}.spro-tenancy-stagebar span{font-size:11px;font-weight:800}.spro-tenancy-stagebar article.done{color:var(--spro-emerald);background:#faf8f4}.spro-tenancy-stagebar article.done i{border-color:var(--spro-emerald);color:#fff;background:var(--spro-emerald)}.spro-tenancy-stagebar article.current{box-shadow:inset 0 -4px #c68e55}
.spro-tenancy-layout{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:17px;align-items:start}.spro-tenancy-layout>main,.spro-tenancy-rail{display:grid;gap:17px}.spro-tenancy-identity dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:5px 19px 20px}.spro-tenancy-identity dl div{padding:14px;border:1px solid var(--spro-line-soft);border-width:1px 0 0 1px}.spro-tenancy-identity dl div:nth-child(3n){border-right-width:1px}.spro-tenancy-identity dt,.spro-tenancy-identity dd{display:block;margin:0}.spro-tenancy-identity dt{color:var(--spro-muted);font-size:11px}.spro-tenancy-identity dd{margin-top:5px;font-size:14px;font-weight:850}.spro-tenancy-kyc-list{display:grid;padding:0 19px 19px}.spro-tenancy-kyc-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:16px 0;border-top:1px solid var(--spro-line-soft)}.spro-tenancy-kyc-list>article:first-child{border-top:0}.spro-tenancy-kyc-list article>div>span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-tenancy-kyc-list h3{margin:4px 0;font-size:15px}.spro-tenancy-kyc-list p{margin:0;color:var(--spro-muted);font-size:12px}.spro-tenancy-evidence-links{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:7px}.spro-tenancy-evidence-links a,.spro-tenancy-kyc-list form button{padding:7px 9px;border:1px solid #d3ccbd;border-radius:7px;color:var(--spro-emerald);background:#faf8f3;font:800 11px var(--spro-font);text-decoration:none}.spro-tenancy-kyc-list form{display:grid;grid-column:1/-1;grid-template-columns:190px minmax(0,1fr) auto;gap:8px}.spro-tenancy-kyc-list select,.spro-tenancy-kyc-list input{min-height:43px;padding:8px;border:1px solid #d9d4c8;border-radius:8px;background:#fff;font:600 13px var(--spro-font)}.spro-tenancy-agreement-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;margin:0 19px;border:1px solid var(--spro-line);border-radius:11px}.spro-tenancy-agreement-summary>span{padding:13px;border-left:1px solid var(--spro-line-soft)}.spro-tenancy-agreement-summary>span:first-child{border-left:0}.spro-tenancy-agreement-summary b,.spro-tenancy-agreement-summary small{display:block}.spro-tenancy-agreement-summary b{font-size:13px}.spro-tenancy-agreement-summary small{margin-top:3px;color:var(--spro-muted);font-size:10px}.spro-tenancy-signers{display:grid;padding:12px 19px 19px}.spro-tenancy-signers article{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:12px 0;border-top:1px solid var(--spro-line-soft)}.spro-tenancy-signers article>i{display:grid;width:31px;height:31px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-style:normal}.spro-tenancy-signers b,.spro-tenancy-signers small{display:block}.spro-tenancy-signers b{font-size:13px}.spro-tenancy-signers small{color:var(--spro-muted);font-size:11px}.spro-tenancy-signers a,.spro-tenancy-certificate a{color:var(--spro-emerald);font-size:11px;font-weight:850;text-decoration:none}.spro-tenancy-certificate{padding:0 19px 19px}.spro-tenancy-documents>div{display:grid;padding:0 19px 18px}.spro-tenancy-documents article{display:flex;align-items:center;gap:11px;padding:13px 0;border-top:1px solid var(--spro-line-soft)}.spro-tenancy-documents article i{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;color:#fff;background:var(--spro-emerald);font-style:normal}.spro-tenancy-documents b,.spro-tenancy-documents small{display:block}.spro-tenancy-documents small{margin-top:3px;color:var(--spro-muted);font-size:11px}.spro-tenancy-documents>div>p{color:var(--spro-muted);font-size:13px}
.spro-tenancy-rail{position:sticky;top:92px}.spro-tenancy-rail>section{padding:21px}.spro-tenancy-rail>section>span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.1em}.spro-tenancy-rail h2{margin:6px 0;font:550 25px var(--spro-display)}.spro-tenancy-rail>section>p{color:var(--spro-muted);font-size:12px;line-height:1.6}.spro-tenancy-rail form{display:grid;gap:10px;margin-top:13px;padding-top:13px;border-top:1px solid var(--spro-line-soft)}.spro-tenancy-rail label{display:grid;gap:6px;font-size:12px;font-weight:800}.spro-tenancy-rail select,.spro-tenancy-rail textarea{box-sizing:border-box;width:100%;min-height:46px;padding:10px;border:1px solid #d9d4c8;border-radius:9px;background:#fff;font:500 14px/1.5 var(--spro-font)}.spro-tenancy-process>div{display:grid;margin-top:12px}.spro-tenancy-process article{display:grid;grid-template-columns:10px minmax(0,1fr);gap:9px;padding:11px 0;border-top:1px solid var(--spro-line-soft)}.spro-tenancy-process article>i{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#c48d56}.spro-tenancy-process b,.spro-tenancy-process small{display:block}.spro-tenancy-process b{font-size:12px}.spro-tenancy-process small{margin-top:3px;color:var(--spro-muted);font-size:10px}.spro-tenancy-process>a{color:var(--spro-emerald);font-size:11px;font-weight:850;text-decoration:none}.status-kyc,.status-approval,.status-signature,.status-scheduled,.status-clearance{color:#754c22!important;background:#ffecd9!important}.status-completed,.status-verified,.status-approved,.status-signed{color:var(--spro-emerald)!important;background:#f4f0e8!important}.status-rejected,.status-expired,.status-cancelled{color:#8d4d45!important;background:#fff0ed!important}
@media(max-width:1120px){.spro-tenancy-case-hero,.spro-tenancy-layout{grid-template-columns:1fr}.spro-tenancy-case-hero>aside{border-top:1px solid rgba(255,255,255,.13);border-left:0}.spro-tenancy-rail{position:static;grid-template-columns:1fr 1fr}.spro-tenancy-stagebar{overflow-x:auto}.spro-tenancy-stagebar article{min-width:125px}}
@media(max-width:760px){.spro-tenancy-metrics,.spro-tenancy-case-grid,.spro-tenancy-rail{grid-template-columns:1fr}.spro-tenancy-metrics article{border-top:1px solid var(--spro-line-soft);border-left:0}.spro-tenancy-metrics article:first-child{border-top:0}.spro-tenancy-identity dl,.spro-tenancy-agreement-summary{grid-template-columns:1fr 1fr}.spro-tenancy-identity dl div:nth-child(3n){border-right-width:0}.spro-tenancy-identity dl div:nth-child(2n),.spro-tenancy-agreement-summary>span:nth-child(2n){border-right-width:1px}.spro-tenancy-kyc-list form{grid-template-columns:1fr}.spro-tenancy-signers article{grid-template-columns:34px minmax(0,1fr)}.spro-tenancy-signers article>a{grid-column:2}.spro-tenancy-case-hero>div,.spro-tenancy-case-hero>aside{padding:24px 20px}.spro-tenancy-case-hero h1{font-size:42px}.spro-tenancy-rail .spro-button{display:flex;min-height:48px;align-items:center;justify-content:center}}

/* SOCIETY PRO tenancy depth pass: visible lifecycle readiness and CRUD workbenches. */
.spro-tenancy-readiness{overflow:hidden;margin:0 0 18px}.spro-tenancy-admin-grid{grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr)}.spro-tenancy-workbench-matrix,.spro-tenancy-feature-map,.spro-tenancy-action-register{overflow:hidden;margin:0 0 18px}.spro-tenancy-workbench-matrix>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 18px;max-height:760px;overflow:auto}.spro-tenancy-workbench-matrix article{display:grid;gap:7px;min-height:142px;padding:14px;border:1px solid var(--spro-line);border-radius:15px;background:#fff;box-shadow:0 10px 24px rgba(7,59,53,.04)}.spro-tenancy-workbench-matrix article>span{width:max-content;padding:5px 8px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:11px;font-weight:900;text-transform:uppercase}.spro-tenancy-workbench-matrix b{font:560 20px/1.12 var(--spro-display);color:var(--spro-forest)}.spro-tenancy-workbench-matrix small{color:var(--spro-muted);font-size:13px;line-height:1.42}.spro-tenancy-workbench-matrix p{display:flex;flex-wrap:wrap;gap:7px;align-self:end;margin:0}.spro-tenancy-workbench-matrix p a{padding:7px 9px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#faf8f4;font-size:12px;font-weight:900;text-decoration:none}.spro-tenancy-feature-map>div{display:grid;gap:9px;padding:0 18px 18px;max-height:760px;overflow:auto}.spro-tenancy-feature-map article{padding:13px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(145deg,#fff,#fbfaf8)}.spro-tenancy-feature-map b{display:block;color:var(--spro-forest);font-size:15px}.spro-tenancy-feature-map small{display:block;margin-top:4px;color:var(--spro-muted);font-size:13px;line-height:1.42}.spro-tenancy-action-register .spro-row-actions{display:flex;flex-wrap:wrap;gap:6px}.spro-tenancy-action-register .spro-row-actions a{padding:7px 9px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#faf8f4;font-size:12px;font-weight:900;text-decoration:none}.spro-tenancy-action-register .spro-row-actions .danger{color:#a34239;background:#fff4f2;border-color:#efd0ca}.spro-tenancy-action-register td{vertical-align:top}.spro-tenancy-action-register td b,.spro-tenancy-action-register td small{display:block}.spro-tenancy-action-register td small{margin-top:3px;color:var(--spro-muted);font-size:12px}.spro-tenancy-action-register .spro-table-muted{display:block;min-width:150px;color:var(--spro-muted);font-size:13px;line-height:1.4}
@media(max-width:1240px){.spro-tenancy-admin-grid{grid-template-columns:1fr}.spro-tenancy-workbench-matrix>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.spro-tenancy-workbench-matrix>div,.spro-tenancy-feature-map>div{grid-template-columns:1fr;padding:0 13px 13px}.spro-tenancy-workbench-matrix article{min-height:0}.spro-tenancy-action-register .spro-table{min-width:1060px}}

/* Per-site, no-code public navigation studio. */
.spro-navigation-studio{margin-bottom:17px}.spro-navigation-form{display:grid;gap:18px;padding:0 22px 24px}.spro-menu-mode{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0;padding:0;border:0}.spro-menu-mode legend{grid-column:1/-1;margin-bottom:3px;color:var(--spro-muted);font-size:14px;font-weight:800}.spro-menu-mode label{display:flex;align-items:flex-start;gap:11px;padding:16px;border:1px solid var(--spro-line);border-radius:12px;background:#fbfaf9;cursor:pointer}.spro-menu-mode label:has(input:checked){border-color:#ad9b75;background:#f8f5ee;box-shadow:0 0 0 2px rgba(12,103,88,.08)}.spro-menu-mode input{margin-top:4px;accent-color:var(--spro-emerald)}.spro-menu-mode b,.spro-menu-mode small{display:block}.spro-menu-mode b{font-size:15px}.spro-menu-mode small{margin-top:3px;color:var(--spro-muted);font-size:12px;line-height:1.5}.spro-navigation-groups{display:grid;gap:10px}.spro-navigation-group{overflow:hidden;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-navigation-group>summary{display:flex;min-height:65px;align-items:center;justify-content:space-between;gap:15px;padding:0 18px;list-style:none;background:#f9f8f6;cursor:pointer}.spro-navigation-group>summary::-webkit-details-marker{display:none}.spro-navigation-group>summary span,.spro-navigation-group>summary b,.spro-navigation-group>summary small{display:block}.spro-navigation-group>summary b{font-size:15px}.spro-navigation-group>summary small{margin-top:2px;color:var(--spro-muted);font-size:12px}.spro-navigation-group>summary strong{color:var(--spro-emerald);font-size:13px}.spro-navigation-group>div{display:grid;gap:16px;padding:18px}.spro-navigation-items{display:grid;gap:9px}.spro-navigation-items>article{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(230px,1fr) minmax(260px,1.4fr);gap:11px;align-items:end;padding:13px;border:1px solid var(--spro-line-soft);border-radius:11px;background:#fcfcfb}.spro-navigation-items article>header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}.spro-navigation-items header b{font-size:13px}.spro-navigation-items header small{color:var(--spro-muted);font-size:12px}.spro-navigation-form>.spro-form-actions{justify-content:flex-end}

/* Final workspace readability contract: never use micro-copy for a decision. */
.spro-app{font-size:16px;line-height:1.55}
.spro-app small{font-size:12px;line-height:1.45}
.spro-app :is(button,input,select,textarea,label,td,th){font-size:14px}
.spro-app :is(input,select,textarea){line-height:1.45}
.spro-app :is(.spro-nav-label,.spro-eyebrow,.spro-panel-head>div>span:first-child){font-size:12px;line-height:1.4}
.spro-app .spro-side-nav a{font-size:14px}.spro-app .spro-side-nav a>small{font-size:12px}.spro-app .spro-context span{font-size:12px}.spro-app .spro-context b{font-size:15px}
.spro-app .spro-topbar :is(a,button,summary,input,select){font-size:14px}
.spro-app .spro-status,.spro-app .spro-priority{font-size:12px}
.spro-rent-public{font-size:16px;line-height:1.55}.spro-rent-public small{font-size:12px}.spro-rent-public :is(a,button,input,select,textarea,label){font-size:14px}.spro-rent-header nav a{font-size:14px}
@media(max-width:900px){.spro-navigation-items>article{grid-template-columns:1fr 1fr}.spro-navigation-items .wide{grid-column:1/-1}}
@media(max-width:620px){.spro-menu-mode,.spro-navigation-items>article{grid-template-columns:1fr}.spro-navigation-items .wide{grid-column:auto}.spro-navigation-form{padding-inline:15px}.spro-navigation-group>div{padding:13px}.spro-navigation-items article>header{align-items:flex-start;flex-direction:column;gap:3px}}

/* Record rows behave like links while preserving native controls inside them. */
.spro-clickable-row{cursor:pointer;transition:background .16s,box-shadow .16s}.spro-clickable-row:hover{background:#f8f6f2}.spro-clickable-row:focus-visible{outline:3px solid rgba(12,103,88,.26);outline-offset:-3px;background:#f8f6f2}.spro-select-column{width:42px;text-align:center}.spro-select-column input{width:18px;height:18px;accent-color:var(--spro-emerald)}.spro-bulk-record-form{display:grid}.spro-bulk-record-actions{display:flex;min-height:68px;align-items:center;gap:14px;padding:11px 16px;border-top:1px solid var(--spro-line);background:#f9f8f6}.spro-bulk-record-actions>span{margin-right:auto;color:var(--spro-muted);font-size:13px}.spro-bulk-record-actions>span b{color:var(--spro-ink)}.spro-bulk-record-actions>small{margin-right:auto;color:var(--spro-muted)}.spro-bulk-record-actions label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800}.spro-bulk-record-actions select{min-height:42px;padding:8px 34px 8px 10px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}
@media(max-width:760px){.spro-bulk-record-actions{align-items:stretch;flex-direction:column}.spro-bulk-record-actions>span,.spro-bulk-record-actions>small{margin-right:0}.spro-bulk-record-actions label{justify-content:space-between}.spro-bulk-record-actions select{flex:1}}

/* Vendor delivery microsite command centre. */
.spro-vendor-command-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 16px}.spro-vendor-command-grid>a{position:relative;overflow:hidden;min-height:190px;padding:18px;border:1px solid var(--spro-line);border-radius:17px;color:var(--spro-ink);background:linear-gradient(145deg,#fff,#faf9f7);text-decoration:none;box-shadow:0 15px 34px rgba(11,62,54,.06);transition:transform .16s,box-shadow .16s}.spro-vendor-command-grid>a:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(11,62,54,.11)}.spro-vendor-command-grid>a::after{position:absolute;right:-28px;bottom:-32px;width:108px;height:108px;border-radius:999px;background:rgba(12,103,88,.09);content:""}.spro-vendor-command-grid span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.spro-vendor-command-grid strong{display:block;margin:8px 0 12px;font:600 42px/.9 var(--spro-display)}.spro-vendor-command-grid h2{margin:0 0 8px;font:600 18px/1.15 var(--spro-display)}.spro-vendor-command-grid p{margin:0;color:var(--spro-muted);font-size:14px;line-height:1.45}.spro-vendor-command-grid em{display:inline-block;margin-top:15px;color:var(--spro-emerald);font-size:14px;font-style:normal;font-weight:850}.spro-vendor-command-grid>a.tone-attention{border-color:#f0d0a2;background:linear-gradient(145deg,#fff9ef,#fff)}.spro-vendor-command-grid>a.tone-finance{border-color:#dfd2b6;background:linear-gradient(145deg,#fefbf7,#fff)}.spro-vendor-command-grid>a.tone-market{border-color:#e8dbbf;background:linear-gradient(145deg,#fdfaf4,#fff)}.spro-vendor-command-grid>a.tone-governance{border-color:#ede3cc;background:linear-gradient(145deg,#fefbf7,#fff)}
.spro-vendor-admin-workbench{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 19px 19px}.spro-vendor-admin-workbench a{display:grid;gap:6px;padding:16px;border:1px solid var(--spro-line);border-radius:13px;color:var(--spro-ink);background:#fdfcfb;text-decoration:none}.spro-vendor-admin-workbench a:hover{border-color:var(--spro-emerald);background:#f8f6f2}.spro-vendor-admin-workbench b{font-size:15px}.spro-vendor-admin-workbench small{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-vendor-playbooks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--spro-line-soft)}.spro-vendor-playbooks article{padding:18px;background:#fff}.spro-vendor-playbooks h3{margin:0 0 12px;font:600 18px var(--spro-display)}.spro-vendor-playbooks ol{display:grid;gap:9px;margin:0;padding:0;list-style:none;counter-reset:vendor-step}.spro-vendor-playbooks li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:center;color:var(--spro-muted);font-size:14px;line-height:1.35;counter-increment:vendor-step}.spro-vendor-playbooks li::before{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-size:11px;font-weight:900;content:counter(vendor-step)}
.spro-vendor-command-table{overflow:auto;padding:0 19px 18px}.spro-vendor-command-table table{width:100%;min-width:920px;border-collapse:collapse;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-vendor-command-table th{padding:12px 14px;color:var(--spro-muted);background:#f8f7f4;font-size:12px;font-weight:900;letter-spacing:.08em;text-align:left;text-transform:uppercase}.spro-vendor-command-table td{padding:14px;border-top:1px solid var(--spro-line-soft);font-size:14px;vertical-align:middle}.spro-vendor-command-table td b,.spro-vendor-command-table td small{display:block}.spro-vendor-command-table td small{margin-top:3px;color:var(--spro-muted);font-size:13px}.spro-vendor-command-table td>a{color:var(--spro-emerald);font-weight:850;text-decoration:none}.spro-table-progress{display:block;width:120px;height:9px;overflow:hidden;border-radius:999px;background:#ece9e2}.spro-table-progress i{display:block;width:var(--progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,#0c2767,#d6a56d)}
.spro-project-command-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 17px}.spro-project-command-strip a{display:grid;gap:5px;min-height:116px;padding:15px;border:1px solid var(--spro-line);border-radius:14px;color:var(--spro-ink);background:linear-gradient(145deg,#fff,#faf9f7);text-decoration:none}.spro-project-command-strip a:hover{border-color:var(--spro-emerald);box-shadow:0 14px 30px rgba(11,62,54,.08)}.spro-project-command-strip b{font-size:15px}.spro-project-command-strip small{color:var(--spro-muted);font-size:13px;line-height:1.45}
@media(max-width:1180px){.spro-vendor-command-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-vendor-playbooks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1180px){.spro-project-command-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.spro-vendor-command-grid,.spro-vendor-admin-workbench,.spro-vendor-playbooks,.spro-project-command-strip{grid-template-columns:1fr}.spro-vendor-command-grid>a,.spro-project-command-strip a{min-height:0}.spro-vendor-command-table{padding-inline:13px}}

/* Final accessible type floors for resident, staff, vendor and sign-in surfaces. */
.spro-app small,.spro-app dt,.spro-app figcaption{font-size:13px!important;line-height:1.45!important}
.spro-app :is(button,input,select,textarea,label,td,th){font-size:14px!important}
.spro-app :is(.spro-nav-label,.spro-eyebrow,.spro-status,.spro-priority,.spro-panel-head>div>span:first-child){font-size:12px!important;line-height:1.4!important}
.spro-app .spro-side-nav a,.spro-app .spro-topbar :is(a,button,summary,input,select){font-size:14px!important}
.spro-app .spro-mobile-dock :is(a,button){font-size:12px!important}
.spro-auth :is(small,.spro-auth-proof span,.spro-auth-photo-note,.spro-auth-divider span,.spro-auth-assurance,.spro-auth-switch,.spro-auth-alert,.spro-auth-panel>footer){font-size:13px!important;line-height:1.45!important}
.spro-auth .spro-auth-kicker,.spro-auth .spro-auth-heading>span{font-size:12px!important;line-height:1.4!important}
.spro-auth :is(button,input,select,textarea,label,.spro-auth-submit,.spro-auth-secondary){font-size:15px!important}
.spro-rent-public small,.spro-rent-public figcaption{font-size:13px!important;line-height:1.45!important}
.spro-rent-public :is(a,button,input,select,textarea,label){font-size:14px!important}


/* Resident booking calendars, event planning and smart-building asset intelligence. */
.spro-booking-intelligence{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:16px;margin:0 0 18px}.spro-resident-calendar-panel,.spro-calendar-overlays,.spro-event-planner,.spro-process-report-shortcuts,.spro-asset-command-map,.spro-asset-telemetry-grid{animation:sproStudioReveal .45s cubic-bezier(.2,.78,.25,1) both}.spro-availability-calendar{display:grid;grid-template-columns:repeat(7,minmax(154px,1fr));gap:10px;overflow:auto;padding:0 18px 20px}.spro-availability-day{min-height:215px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(180deg,#fff,#fcfbfa)}.spro-availability-day header{padding:13px;border-bottom:1px solid var(--spro-line-soft)}.spro-availability-day header span,.spro-availability-day header small{display:block;color:var(--spro-muted);font-size:12px;font-weight:800}.spro-availability-day header b{display:block;margin:4px 0;color:var(--spro-forest);font-size:17px}.spro-availability-day>div{display:grid;gap:6px;padding:10px}.spro-availability-day>div>span,.spro-availability-day>div>em{display:grid;grid-template-columns:1fr auto;gap:6px;padding:9px;border-left:4px solid #d8d2c6;border-radius:9px;background:#f7f6f4;color:#202b46;font-size:12px;font-style:normal}.spro-availability-day>div b,.spro-availability-day>div small{display:block}.spro-availability-day>div small{color:var(--spro-muted);font-size:11px}.spro-availability-day .is-available{border-left-color:#0d2f80;background:#f7f3ea}.spro-availability-day .is-booked{border-left-color:#bc7a25;background:#fff3e8}.spro-availability-day .is-blackout{border-left-color:#b85247;background:#fff2ef}.spro-availability-day .is-restricted,.spro-availability-day .is-quota{border-left-color:#938058;background:#fbf8f2}.spro-overlay-list{display:grid;gap:8px;max-height:445px;overflow:auto;padding:0 18px 20px}.spro-overlay-list a,.spro-overlay-list p{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:58px;padding:10px;border:1px solid var(--spro-line);border-radius:12px;background:#fff;color:inherit;text-decoration:none}.spro-overlay-list i{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:12px;font-style:normal;font-weight:900}.spro-overlay-list b,.spro-overlay-list small{display:block}.spro-overlay-list small{margin-top:2px;color:var(--spro-muted);font-size:12px}.spro-overlay-list em{color:var(--spro-emerald);font-size:12px;font-style:normal;font-weight:850}.spro-event-planner{margin-bottom:18px}.spro-event-calendar-strip{display:grid;grid-template-columns:repeat(14,minmax(122px,1fr));gap:8px;overflow:auto;padding:0 18px 17px}.spro-event-calendar-strip article{min-height:145px;padding:11px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-event-calendar-strip span,.spro-event-calendar-strip small,.spro-event-calendar-strip em{display:block;color:var(--spro-muted);font-size:11px;font-style:normal}.spro-event-calendar-strip b{display:block;margin:3px 0 8px;color:var(--spro-forest);font-size:15px}.spro-event-calendar-strip a{display:block;margin-top:7px;padding:7px 8px;border-radius:8px;color:#0b2665;background:#f5f1e8;font-size:12px;line-height:1.25;text-decoration:none}.spro-gantt-board{padding:0 18px 20px}.spro-gantt-board header,.spro-gantt-board>div{display:grid;grid-template-columns:260px minmax(320px,1fr) 70px;align-items:center;gap:13px}.spro-gantt-board header{padding:8px 0;color:var(--spro-muted);font-size:12px;font-weight:850}.spro-gantt-board>div{min-height:60px;border-top:1px solid var(--spro-line-soft)}.spro-gantt-board a{color:inherit;text-decoration:none}.spro-gantt-board b,.spro-gantt-board small{display:block}.spro-gantt-board small{margin-top:3px;color:var(--spro-muted);font-size:12px}.spro-gantt-track{position:relative;height:28px;overflow:hidden;border-radius:999px;background:repeating-linear-gradient(90deg,#f3f1ee 0,#f3f1ee 8px,#faf9f8 8px,#faf9f8 16px)}.spro-gantt-track>span{position:absolute;top:4px;bottom:4px;overflow:hidden;border-radius:999px;background:#ddd7c9;box-shadow:0 5px 14px rgba(13,91,75,.12)}.spro-gantt-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b296e,#ebc191);transform-origin:left;animation:sproScaleX .8s ease both}.spro-gantt-board em{color:var(--spro-forest);font-size:13px;font-style:normal;font-weight:900}.spro-process-report-shortcuts{margin:0 0 18px;overflow:hidden}.spro-process-report-shortcuts>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-process-report-shortcuts a{display:grid;min-height:86px;align-content:start;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:linear-gradient(145deg,#fff,#fcfbfa);color:inherit;text-decoration:none;transition:.18s ease}.spro-process-report-shortcuts a:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(17,58,49,.08)}.spro-process-report-shortcuts span{width:max-content;padding:4px 7px;border-radius:999px;color:#0d296c;background:#f2ede2;font-size:11px;font-weight:900}.spro-process-report-shortcuts b{font-size:14px;line-height:1.25}.spro-process-report-shortcuts small{color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-asset-command-map{display:grid;grid-template-columns:minmax(320px,.55fr) minmax(420px,1fr);gap:18px;margin:0 0 16px;padding:19px;border:1px solid var(--spro-line);border-radius:19px;background:linear-gradient(135deg,#0a183a,#0b2767);color:#fff;overflow:hidden}.spro-asset-map-copy span{color:#ebc191;font-size:12px;font-weight:900;letter-spacing:.12em}.spro-asset-map-copy h2{max-width:560px;margin:10px 0;font:550 clamp(30px,3vw,46px)/1.04 var(--spro-display)}.spro-asset-map-copy p{max-width:620px;margin:0;color:#d9d2c4;font-size:15px;line-height:1.6}.spro-asset-map-copy div{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.spro-asset-map-copy a{padding:8px 10px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#faf6ed;background:rgba(255,255,255,.08);font-size:12px;text-decoration:none}.spro-asset-map-stage{position:relative;min-height:390px;border:1px solid rgba(255,255,255,.16);border-radius:17px;background:radial-gradient(circle at 72% 30%,rgba(216,235,145,.2),transparent 15%),linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.02));overflow:hidden}.spro-map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:36px 36px}.spro-map-point{position:absolute;display:grid;min-width:62px;place-items:center;gap:3px;transform:translate(-50%,-50%);color:#0b1a3c;text-align:center;text-decoration:none;z-index:2}.spro-map-point span{display:grid;width:34px;height:34px;place-items:center;border:2px solid #fff;border-radius:50%;background:#ebc191;box-shadow:0 10px 22px rgba(0,0,0,.2);font-weight:900}.spro-map-point small{padding:2px 6px;border-radius:999px;color:#fff;background:rgba(0,0,0,.32);font-size:10px}.spro-map-point.status-attention span{background:#ffcf8b}.spro-asset-telemetry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}.spro-asset-telemetry-grid article{padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-asset-telemetry-grid span,.spro-asset-telemetry-grid small,.spro-asset-telemetry-grid em{display:block;color:var(--spro-muted);font-size:12px;font-style:normal}.spro-asset-telemetry-grid b{display:block;margin:6px 0 3px;color:var(--spro-forest);font-size:15px}.spro-asset-telemetry-grid strong{display:block;margin-top:9px;font-size:13px}.spro-process-report-shortcuts.compact>div{grid-template-columns:repeat(5,minmax(0,1fr))}
@keyframes sproScaleX{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:1100px){.spro-booking-intelligence,.spro-asset-command-map{grid-template-columns:1fr}.spro-process-report-shortcuts>div,.spro-process-report-shortcuts.compact>div,.spro-asset-telemetry-grid{grid-template-columns:repeat(2,1fr)}.spro-gantt-board header,.spro-gantt-board>div{grid-template-columns:210px minmax(300px,1fr) 60px}}
@media(max-width:760px){.spro-availability-calendar{grid-template-columns:repeat(7,165px);padding-inline:12px}.spro-booking-intelligence{grid-template-columns:1fr}.spro-event-calendar-strip{grid-template-columns:repeat(14,135px);padding-inline:12px}.spro-gantt-board{overflow:auto;padding-inline:12px}.spro-gantt-board header,.spro-gantt-board>div{min-width:680px}.spro-process-report-shortcuts>div,.spro-process-report-shortcuts.compact>div,.spro-asset-telemetry-grid{grid-template-columns:1fr}.spro-asset-command-map{padding:15px}.spro-asset-map-stage{min-height:310px}}

/* Resident, staff, vendor and service-orchestration custom surfaces. */
.spro-resident-action-board{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.spro-resident-action-board>a{display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;gap:8px 11px;min-height:142px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;color:var(--spro-ink);background:linear-gradient(145deg,#fff,#fbfaf7);text-decoration:none;box-shadow:0 12px 28px rgba(7,59,53,.05);transition:.18s}.spro-resident-action-board>a:hover{border-color:var(--spro-emerald);transform:translateY(-2px);box-shadow:0 18px 38px rgba(7,59,53,.1)}.spro-resident-action-board i{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(135deg,#07173b,#0e2f7d);font-style:normal;font-weight:900}.spro-resident-action-board span{min-width:0}.spro-resident-action-board b,.spro-resident-action-board small{display:block}.spro-resident-action-board b{font-size:15px;line-height:1.2}.spro-resident-action-board small{margin-top:4px;color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-resident-action-board em{grid-column:1/-1;align-self:end;width:max-content;padding:5px 9px;border-radius:999px;color:#0c2767;background:#f2eee4;font-size:12px;font-style:normal;font-weight:850}.spro-resident-lifecycle,.spro-resident-service-command{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(320px,.72fr);gap:16px}.spro-resident-lifecycle-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--spro-line-soft)}.spro-resident-lifecycle-cards>div{display:flex;gap:12px;min-height:118px;padding:17px;background:#fff}.spro-resident-lifecycle-cards i{display:grid;flex:0 0 40px;height:40px;place-items:center;border-radius:12px;color:#0c2767;background:#f4f0e7;font-size:12px;font-style:normal;font-weight:900}.spro-resident-lifecycle-cards b,.spro-resident-lifecycle-cards strong,.spro-resident-lifecycle-cards small{display:block}.spro-resident-lifecycle-cards b{color:var(--spro-muted);font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.spro-resident-lifecycle-cards strong{margin:4px 0;color:var(--spro-ink);font:560 18px/1.15 var(--spro-display)}.spro-resident-lifecycle-cards small{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-resident-next-list,.spro-resident-journey-list,.spro-resident-wallet-list{display:grid;padding:0 18px 18px}.spro-resident-next-list>a,.spro-resident-wallet-list>a,.spro-resident-wallet-list>span{display:grid;grid-template-columns:1fr auto;gap:5px 12px;min-height:64px;align-items:center;padding:12px 0;border-top:1px solid var(--spro-line-soft);color:inherit;text-decoration:none}.spro-resident-next-list>a:first-child,.spro-resident-wallet-list>a:first-child,.spro-resident-wallet-list>span:first-child{border-top:0}.spro-resident-next-list b,.spro-resident-next-list small,.spro-resident-wallet-list b,.spro-resident-wallet-list small{display:block}.spro-resident-next-list small,.spro-resident-wallet-list small,.spro-resident-wallet-list>p{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-resident-next-list em,.spro-resident-wallet-list em{color:var(--spro-emerald);font-size:12px;font-style:normal;font-weight:850}.spro-resident-clear-state{display:grid;justify-items:center;padding:28px;color:var(--spro-muted);text-align:center}.spro-resident-clear-state i{display:grid;width:46px;height:46px;place-items:center;margin-bottom:8px;border-radius:50%;color:#fff;background:var(--spro-emerald);font-style:normal}.spro-resident-journey-list>a{display:grid;gap:8px;padding:15px 0;border-top:1px solid var(--spro-line-soft);color:inherit;text-decoration:none}.spro-resident-journey-list>a:first-child{border-top:0}.spro-resident-journey-list header{display:flex;align-items:center;gap:9px}.spro-resident-journey-list header b{min-width:0;flex:1;font-size:15px}.spro-resident-journey-list header em{color:var(--spro-muted);font-size:12px;font-style:normal}.spro-resident-journey-list>a>small{color:var(--spro-muted);font-size:13px}.spro-resident-wallet-list>a,.spro-resident-wallet-list>span{grid-template-columns:36px minmax(0,1fr) auto}.spro-resident-wallet-list i{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#0c2767;background:#f4f0e7;font-style:normal;font-weight:900}.spro-staff-duty-command{display:grid;gap:12px;margin:0 0 18px}.spro-staff-duty-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.spro-staff-duty-cards>a{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:86px;padding:13px;border:1px solid var(--spro-line);border-radius:16px;color:inherit;background:#fff;text-decoration:none;box-shadow:0 12px 26px rgba(7,59,53,.05)}.spro-staff-duty-cards i{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;color:#fff;background:var(--spro-forest);font-style:normal;font-weight:900}.spro-staff-duty-cards b,.spro-staff-duty-cards small{display:block}.spro-staff-duty-cards b{font-size:16px}.spro-staff-duty-cards small{color:var(--spro-muted);font-size:13px}.spro-staff-duty-cards strong{font:600 28px var(--spro-display)}.spro-staff-duty-ops{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.spro-staff-duty-ops article{padding:16px;border:1px solid var(--spro-line);border-radius:16px;background:linear-gradient(145deg,#fff,#faf9f7)}.spro-staff-duty-ops article>span{display:block;margin-bottom:8px;color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.1em}.spro-staff-duty-ops p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:9px 0;border-top:1px solid var(--spro-line-soft)}.spro-staff-duty-ops p:first-of-type{border-top:0}.spro-staff-duty-ops b{font-size:14px}.spro-staff-duty-ops small{color:var(--spro-muted);font-size:13px;text-align:right}.spro-touch-head p{font-size:14px!important}.spro-touch-clock span{font-size:13px!important}.spro-touch-tabs button{min-height:74px}.spro-touch-tabs button span{font-size:15px}.spro-touch-tabs button small{font-size:13px!important}.spro-touch-service-fields input{font-size:16px!important}.spro-vendor-surface-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 16px}.spro-vendor-surface-grid article{display:grid;align-content:start;min-height:158px;padding:17px;border:1px solid var(--spro-line);border-radius:16px;background:linear-gradient(145deg,#fff,#faf9f7);box-shadow:0 12px 28px rgba(7,59,53,.05)}.spro-vendor-surface-grid i{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;color:#fff;background:var(--spro-forest);font-style:normal;font-weight:900}.spro-vendor-surface-grid span{margin-top:12px;color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-vendor-surface-grid strong{margin:5px 0;font:560 24px var(--spro-display)}.spro-vendor-surface-grid small{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-vendor-readiness{margin-bottom:16px}.spro-vendor-compliance-list,.spro-vendor-worker-list{display:grid;padding:0 18px 18px}.spro-vendor-compliance-list>div,.spro-vendor-worker-list>div{display:flex;align-items:center;gap:12px;min-height:66px;padding:12px 0;border-top:1px solid var(--spro-line-soft)}.spro-vendor-compliance-list>div:first-child,.spro-vendor-worker-list>div:first-child{border-top:0}.spro-vendor-compliance-list i{display:grid;flex:0 0 34px;height:34px;place-items:center;border-radius:10px;color:#fff;background:#c37a32;font-style:normal;font-weight:900}.spro-vendor-compliance-list .ready i{background:var(--spro-emerald)}.spro-vendor-compliance-list b,.spro-vendor-compliance-list strong,.spro-vendor-compliance-list small,.spro-vendor-worker-list b,.spro-vendor-worker-list small{display:block}.spro-vendor-compliance-list b{color:var(--spro-muted);font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.spro-vendor-compliance-list strong{margin:2px 0;font-size:15px}.spro-vendor-compliance-list small,.spro-vendor-worker-list small,.spro-vendor-worker-list>p{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-vendor-worker-list p{min-width:0;flex:1;margin:0}.spro-vendor-worker-list em{padding:5px 8px;border-radius:999px;color:#0b2768;background:#f3efe5;font-size:12px;font-style:normal;font-weight:850}.spro-project-orchestration-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;margin-bottom:17px}.spro-project-journey{display:grid;padding:0 18px 18px}.spro-project-journey>div{display:grid;grid-template-columns:36px minmax(0,1fr) 120px;gap:11px;align-items:center;min-height:72px;border-top:1px solid var(--spro-line-soft)}.spro-project-journey>div:first-child{border-top:0}.spro-project-journey i{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:#858a97;font-style:normal;font-weight:900}.spro-project-journey .tone-done i{background:var(--spro-emerald)}.spro-project-journey b,.spro-project-journey strong,.spro-project-journey small{display:block}.spro-project-journey b{color:var(--spro-muted);font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.spro-project-journey strong{margin:2px 0;font-size:15px}.spro-project-journey small{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-project-journey em{display:block;height:10px;overflow:hidden;border-radius:999px;background:#eceae5}.spro-project-journey em span{display:block;width:var(--progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b2767,#deab70);animation:sproScaleX .8s ease both}.spro-project-finance-gates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--spro-line-soft)}.spro-project-finance-gates>div{display:grid;min-height:118px;padding:17px;background:#fff}.spro-project-finance-gates span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-project-finance-gates strong{margin:7px 0;font:560 24px var(--spro-display)}.spro-project-finance-gates small{align-self:end;color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-project-gantt-panel{overflow:hidden;margin-bottom:17px}.spro-project-gantt-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 18px}.spro-project-gantt-list article{padding:15px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(145deg,#fff,#fbfaf8)}.spro-project-gantt-list article.status-rejected{border-color:#e6b9b3;background:#fff8f7}.spro-project-gantt-list header,.spro-project-gantt-list footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.spro-project-gantt-list header b{font-size:15px}.spro-project-gantt-list header span{padding:4px 7px;border-radius:999px;color:#0b2768;background:#f3efe5;font-size:12px;font-weight:850}.spro-project-gantt-list p{min-height:42px;color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-gantt-bar{height:12px;overflow:hidden;border-radius:999px;background:#ebe8e1}.spro-gantt-bar i{display:block;width:var(--progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b2767,#e8bc89);animation:sproScaleX .75s ease both}.spro-project-gantt-list footer{margin-top:10px}.spro-project-gantt-list footer small{color:var(--spro-muted);font-size:12px}.spro-project-gantt-list footer a{color:var(--spro-emerald);font-size:12px;font-weight:850;text-decoration:none}
@media(max-width:1180px){.spro-resident-action-board{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-resident-lifecycle,.spro-resident-service-command,.spro-project-orchestration-grid{grid-template-columns:1fr}.spro-vendor-surface-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-project-gantt-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.spro-staff-duty-cards,.spro-staff-duty-ops{grid-template-columns:1fr 1fr}.spro-resident-lifecycle-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.spro-resident-action-board,.spro-resident-lifecycle-cards,.spro-staff-duty-cards,.spro-staff-duty-ops,.spro-vendor-surface-grid,.spro-project-finance-gates,.spro-project-gantt-list{grid-template-columns:1fr}.spro-resident-action-board>a{min-height:0}.spro-project-journey>div{grid-template-columns:34px minmax(0,1fr)}.spro-project-journey em{grid-column:2}.spro-vendor-readiness{grid-template-columns:1fr}.spro-staff-duty-cards>a{grid-template-columns:42px minmax(0,1fr) auto}}

/* SOCIETY PRO deep operating surfaces: resident, service, maintenance, module and payable workbenches. */
.spro-ops-surface{margin:0 0 18px;padding:20px;border:1px solid var(--spro-line);border-radius:20px;background:linear-gradient(135deg,#fbfaf8,#fff);box-shadow:0 16px 38px rgba(7,59,53,.06)}
.spro-section-title{display:grid;gap:5px;margin:0 0 16px}.spro-section-title span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.11em}.spro-section-title h2{margin:0;font:560 clamp(28px,3vw,42px)/1.06 var(--spro-display)}.spro-section-title p{max-width:960px;margin:0;color:var(--spro-muted);font-size:15px;line-height:1.6}
.spro-process-lane-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.spro-ops-surface .spro-process-lane{display:grid;box-sizing:border-box;min-width:0;align-content:start;gap:10px;min-height:212px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-process-lane:hover{border-color:var(--spro-emerald);box-shadow:0 14px 30px rgba(7,59,53,.09);transform:translateY(-2px)}.spro-process-lane i{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,#07173b,#0d2f7f);font-style:normal;font-weight:900}.spro-process-lane b,.spro-process-lane small,.spro-process-lane strong,.spro-process-lane em{display:block}.spro-process-lane b{font-size:16px;line-height:1.2}.spro-process-lane small{color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-process-lane strong{margin-top:auto;font:560 30px var(--spro-display)}.spro-process-lane em{width:max-content;padding:6px 9px;border-radius:999px;color:#0c2767;background:#f3eee3;font-size:12px;font-style:normal;font-weight:900}
.spro-surface-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px;margin:0 0 18px}.spro-surface-grid.maintenance{grid-template-columns:1fr 1fr}.spro-domain-control,.spro-portal-cards,.spro-zone-command,.spro-calendar-command,.spro-vendor-responsibility,.spro-module-blueprint,.spro-payable-journey{overflow:hidden}.spro-domain-table{display:grid;padding:0 18px 18px}.spro-domain-table a{display:grid;grid-template-columns:minmax(0,1fr) 170px 86px;gap:12px;align-items:center;min-height:72px;padding:12px 0;border-top:1px solid var(--spro-line-soft);color:inherit;text-decoration:none}.spro-domain-table a:first-child{border-top:0}.spro-domain-table b,.spro-domain-table small{display:block}.spro-domain-table b{font-size:16px}.spro-domain-table small{margin-top:3px;color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-domain-table em{color:var(--spro-muted);font-size:13px;font-style:normal}.spro-domain-table strong{justify-self:end;color:#0c2767;font-size:13px}
.spro-portal-cards>div,.spro-module-blueprint>div,.spro-vendor-responsibility>div{display:grid;gap:10px;padding:0 18px 18px}.spro-portal-cards a,.spro-module-blueprint a,.spro-vendor-responsibility a{display:grid;gap:7px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:linear-gradient(145deg,#fff,#faf9f8);text-decoration:none}.spro-portal-cards b,.spro-module-blueprint b,.spro-vendor-responsibility b{font-size:16px}.spro-portal-cards small,.spro-module-blueprint small,.spro-vendor-responsibility small{color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-portal-cards span,.spro-module-blueprint span{display:flex;flex-wrap:wrap;gap:6px}.spro-portal-cards i,.spro-module-blueprint i{padding:5px 8px;border-radius:999px;color:#0c2767;background:#f5f1e8;font-size:12px;font-style:normal;font-weight:850}.spro-vendor-responsibility a span{color:var(--spro-emerald);font-size:12px;font-weight:850}
.spro-maintenance-lanes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.spro-maintenance-lanes article{display:grid;gap:12px;min-height:190px;padding:15px;border:1px solid var(--spro-line);border-radius:16px;background:#fff}.spro-maintenance-lanes header{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px}.spro-maintenance-lanes header>span{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;color:#fff;background:var(--spro-forest);font-size:12px;font-weight:900}.spro-maintenance-lanes b,.spro-maintenance-lanes small,.spro-maintenance-lanes strong{display:block}.spro-maintenance-lanes b{font-size:15px;line-height:1.25}.spro-maintenance-lanes small{margin-top:3px;color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-maintenance-lanes strong{grid-column:1/-1;width:max-content;padding:5px 8px;border-radius:999px;color:#0d2868;background:#f3efe5;font-size:12px}.spro-maintenance-lanes p{margin:auto 0 0;color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-zone-command>div,.spro-calendar-command>div{display:grid;gap:9px;padding:0 18px 18px}.spro-zone-command article{display:grid;grid-template-columns:110px minmax(0,1fr);gap:6px 13px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-zone-command article span{grid-row:1/4;width:max-content;padding:5px 8px;border-radius:999px;color:#0c2767;background:#f5f1e8;font-size:12px;font-weight:900}.spro-zone-command article b{font-size:15px}.spro-zone-command article small,.spro-zone-command article em{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-zone-command article em{font-style:normal;font-weight:800;color:#313b53}
.spro-calendar-command a{display:grid;grid-template-columns:145px minmax(0,1fr) 90px;align-items:center;gap:10px;min-height:70px;padding:12px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none}.spro-calendar-command a span,.spro-calendar-command a small{color:var(--spro-muted);font-size:12px}.spro-calendar-command a b{font-size:15px}.spro-calendar-command a em{justify-self:end;color:#0d2868;font-size:12px;font-style:normal;font-weight:900}
.spro-resident-lifecycle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.spro-resident-lifecycle-grid a{display:grid;gap:8px;min-height:170px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;color:inherit;background:#fff;text-decoration:none;transition:.18s}.spro-resident-lifecycle-grid a:hover{border-color:var(--spro-emerald);box-shadow:0 14px 30px rgba(7,59,53,.08);transform:translateY(-2px)}.spro-resident-lifecycle-grid span{font:560 32px var(--spro-display)}.spro-resident-lifecycle-grid b{font-size:16px}.spro-resident-lifecycle-grid small{color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-resident-lifecycle-grid em{margin-top:auto;color:var(--spro-emerald);font-size:12px;font-style:normal;font-weight:900}
.spro-persona-matrix{margin:0 0 18px}.spro-persona-matrix>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 18px 18px}.spro-persona-matrix article{display:grid;gap:7px;padding:15px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(145deg,#fff,#faf9f8)}.spro-persona-matrix b{font-size:16px}.spro-persona-matrix small{color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-persona-matrix span{color:#313b53;font-size:12px;font-weight:850}
.spro-payable-command{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;margin:0 0 17px}.spro-linked-delivery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 18px 18px}.spro-linked-delivery-grid a{display:grid;gap:6px;min-height:118px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:#fff;text-decoration:none}.spro-linked-delivery-grid span,.spro-tax-profile dt,.spro-payable-control-cards span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-linked-delivery-grid b{font-size:16px;line-height:1.2}.spro-linked-delivery-grid small{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-tax-profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:0 18px 18px;background:var(--spro-line-soft)}.spro-tax-profile div{display:grid;gap:5px;padding:14px;background:#fff}.spro-tax-profile dt,.spro-tax-profile dd{margin:0}.spro-tax-profile dd{font-size:14px;font-weight:800}.spro-payable-journey{margin:0 0 17px}.spro-payable-journey>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 18px 18px}.spro-payable-journey article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-payable-journey i{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;color:#fff;background:#898e9b;font-style:normal;font-weight:900}.spro-payable-journey article.done i{background:var(--spro-emerald)}.spro-payable-journey article.active i{background:#bd7a2c}.spro-payable-journey b,.spro-payable-journey small{display:block}.spro-payable-journey b{font-size:15px}.spro-payable-journey small{margin-top:4px;color:var(--spro-muted);font-size:12px;line-height:1.45}.spro-payable-control-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 17px}.spro-payable-control-cards article{display:grid;gap:5px;min-height:115px;padding:15px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-payable-control-cards b{font:560 25px var(--spro-display)}.spro-payable-control-cards small{color:var(--spro-muted);font-size:13px;line-height:1.4}
.spro-payable-workbench-head h1{max-width:780px}.spro-payable-workbench-tabs{margin:0 0 17px;padding:10px}.spro-payable-workbench-tabs nav{display:flex;flex-wrap:wrap;gap:8px}.spro-payable-workbench-tabs a{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid var(--spro-line);border-radius:999px;color:#0b2767;background:#fff;font-size:13px;font-weight:850;text-decoration:none}.spro-payable-workbench-tabs a.active{border-color:#0b2767;color:#fff;background:#0b2767}.spro-payable-workbench-tabs b{display:grid;min-width:24px;height:24px;place-items:center;border-radius:999px;background:#f7f4ed;color:inherit;font-size:11px}.spro-payable-ledger-table td small{display:block;margin-top:3px;color:var(--spro-muted);font-size:12px}.spro-payable-due{display:inline-flex;min-height:26px;align-items:center;padding:0 8px;border-radius:999px;background:#f7f4ee;color:#0b2767;font-size:11px;font-weight:900}.spro-payable-due.overdue,.spro-payable-due.correction{background:#fff0ec;color:#9c433c}.spro-payable-due.paid{background:#f8f4ec;color:#7a5e23}.spro-payable-projects{overflow:hidden}.spro-payable-projects>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 18px}.spro-payable-projects article{display:grid;gap:6px;padding:15px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-payable-projects article>span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-payable-projects h3{margin:0;font-size:16px}.spro-payable-projects p,.spro-payable-projects small{margin:0;color:var(--spro-muted);font-size:12px;line-height:1.45}
@media(max-width:1180px){.spro-process-lane-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-maintenance-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-linked-delivery-grid,.spro-payable-journey>div,.spro-payable-control-cards,.spro-resident-lifecycle-grid,.spro-persona-matrix>div,.spro-payable-projects>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-payable-command,.spro-surface-grid,.spro-surface-grid.maintenance{grid-template-columns:1fr}}
@media(max-width:760px){.spro-process-lane-grid,.spro-maintenance-lanes,.spro-linked-delivery-grid,.spro-payable-journey>div,.spro-payable-control-cards,.spro-resident-lifecycle-grid,.spro-persona-matrix>div,.spro-tax-profile,.spro-payable-projects>div{grid-template-columns:1fr}.spro-ops-surface{padding:15px}.spro-domain-table a,.spro-calendar-command a,.spro-zone-command article{grid-template-columns:1fr}.spro-domain-table strong,.spro-calendar-command a em{justify-self:start}.spro-process-lane,.spro-resident-lifecycle-grid a{min-height:0}.spro-linked-delivery-grid a{min-height:0}.spro-payable-workbench-tabs nav{display:grid;grid-template-columns:1fr 1fr}.spro-payable-workbench-tabs a{justify-content:space-between}}

/* SOCIETY PRO depth pass: security, tenancy, facility, event, governance and public module surfaces. */
.spro-process-lane-grid.compact .spro-process-lane{min-height:0}
.spro-security-depth-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px;margin:0 0 18px}.spro-security-mode-list,.spro-visitor-mix-list{display:grid;gap:9px;padding:0 18px 18px}.spro-security-mode-list>div,.spro-visitor-mix-list>div{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-security-mode-list b{font-size:15px}.spro-security-mode-list small{color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-visitor-mix-list>div{grid-template-columns:minmax(0,1fr) auto;align-items:center}.spro-visitor-mix-list span{color:var(--spro-ink);font-size:14px;font-weight:850}.spro-visitor-mix-list strong{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font:560 18px var(--spro-display)}.spro-visitor-mix-list p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-tenancy-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}.spro-tenancy-status-grid article{display:grid;gap:6px;min-height:132px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;background:linear-gradient(145deg,#fff,#fbfaf8);box-shadow:0 10px 24px rgba(7,59,53,.04)}.spro-tenancy-status-grid span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.spro-tenancy-status-grid strong{font:560 32px var(--spro-display)}.spro-tenancy-status-grid small{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-amenity-command-grid,.spro-governance-control-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.spro-amenity-command-grid a,.spro-governance-control-grid a{display:grid;gap:6px;min-height:148px;padding:15px;border:1px solid var(--spro-line);border-radius:15px;color:inherit;background:#fff;text-decoration:none;transition:.18s}.spro-amenity-command-grid a:hover,.spro-governance-control-grid a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 28px rgba(7,59,53,.08);transform:translateY(-2px)}.spro-amenity-command-grid span,.spro-governance-control-grid span{color:var(--spro-emerald);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.spro-amenity-command-grid strong,.spro-governance-control-grid strong{font:560 30px var(--spro-display)}.spro-amenity-command-grid small,.spro-governance-control-grid small{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-amenity-lifecycle,.spro-contract-lifecycle{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:12px}.spro-contract-lifecycle{grid-template-columns:repeat(5,minmax(0,1fr))}.spro-amenity-lifecycle article,.spro-contract-lifecycle article{display:grid;gap:7px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(145deg,#fff,#faf9f7)}.spro-amenity-lifecycle i,.spro-contract-lifecycle i{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font-size:12px;font-style:normal;font-weight:900}.spro-amenity-lifecycle b,.spro-contract-lifecycle b{font-size:15px}.spro-amenity-lifecycle small,.spro-contract-lifecycle small{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-event-command-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 18px}.spro-event-command-strip article{display:grid;gap:5px;min-height:118px;padding:15px;border:1px solid var(--spro-line);border-radius:15px;background:#fff;box-shadow:0 10px 24px rgba(7,59,53,.04)}.spro-event-command-strip span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.spro-event-command-strip strong{font:560 25px var(--spro-display)}.spro-event-command-strip small{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-public-module-flow{max-width:1180px;margin:20px auto;padding:20px;border:1px solid rgba(255,255,255,.28);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(247,250,248,.96));box-shadow:0 20px 55px rgba(9,45,39,.12)}.spro-public-module-flow header{display:flex;gap:15px;align-items:flex-start;margin-bottom:14px}.spro-public-module-flow header>span{display:grid;width:54px;height:54px;place-items:center;border-radius:17px;color:#fff;background:#0b2259;font-size:25px}.spro-public-module-flow small{color:#0b2767;font-size:12px;font-weight:900;letter-spacing:.1em}.spro-public-module-flow h2{margin:4px 0;font:560 clamp(27px,3vw,39px)/1.05 var(--spro-display)}.spro-public-module-flow p{margin:0;color:#535b6e;font-size:15px;line-height:1.55}.spro-public-module-flow>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.spro-public-module-flow article{display:grid;gap:7px;padding:14px;border:1px solid #e7e4dc;border-radius:15px;background:#fff}.spro-public-module-flow article b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:#0b2767;font-size:12px}.spro-public-module-flow article span{font-weight:900}.spro-public-module-flow article small{color:#535b6e;font-size:13px;font-weight:500;letter-spacing:0;line-height:1.45}
@media(max-width:1180px){.spro-security-depth-grid{grid-template-columns:1fr}.spro-tenancy-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-amenity-command-grid,.spro-governance-control-grid,.spro-amenity-lifecycle,.spro-contract-lifecycle,.spro-event-command-strip,.spro-public-module-flow>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.spro-tenancy-status-grid,.spro-amenity-command-grid,.spro-governance-control-grid,.spro-amenity-lifecycle,.spro-contract-lifecycle,.spro-event-command-strip,.spro-public-module-flow>div{grid-template-columns:1fr}.spro-public-module-flow{margin:14px 12px;padding:16px}.spro-public-module-flow header{display:grid}}

/* SOCIETY PRO depth pass: asset, utility and smart-building command surfaces. */
.spro-asset-command-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.spro-asset-command-grid a{display:grid;gap:6px;min-height:150px;padding:15px;border:1px solid var(--spro-line);border-radius:15px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-asset-command-grid a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 28px rgba(7,59,53,.08);transform:translateY(-2px)}.spro-asset-command-grid span,.spro-asset-utility-grid span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.spro-asset-command-grid strong,.spro-asset-utility-grid strong{font:560 30px var(--spro-display)}.spro-asset-command-grid small,.spro-asset-utility-grid small{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-asset-lifecycle{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:12px}.spro-asset-lifecycle article{display:grid;gap:7px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(145deg,#fff,#faf9f7)}.spro-asset-lifecycle i{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font-size:12px;font-style:normal;font-weight:900}.spro-asset-lifecycle b{font-size:15px}.spro-asset-lifecycle small{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-asset-utility-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 18px}.spro-asset-utility-grid article{display:grid;gap:6px;min-height:132px;padding:15px;border:1px solid var(--spro-line);border-radius:15px;background:linear-gradient(145deg,#fff,#fbfaf8);box-shadow:0 10px 24px rgba(7,59,53,.04)}
.spro-asset-intelligence-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,.9fr) minmax(340px,1.1fr);gap:16px;margin:0 0 18px}.spro-asset-category-list,.spro-asset-exception-list,.spro-asset-usecase-list{display:grid;gap:9px;padding:0 18px 18px}.spro-asset-category-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-asset-category-list span{font-size:14px;font-weight:850}.spro-asset-category-list strong{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font:560 16px var(--spro-display)}.spro-asset-category-list p,.spro-asset-exception-list p{margin:0;color:var(--spro-muted);font-size:13px}.spro-asset-exception-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:13px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none}.spro-asset-exception-list b{font-size:15px}.spro-asset-exception-list small{grid-column:1;color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-asset-exception-list em{grid-row:1/3;grid-column:2;align-self:center;color:#0b2767;font-size:12px;font-style:normal;font-weight:900;text-align:right}.spro-asset-usecase-list{margin:0;counter-reset:sproAssetUse}.spro-asset-usecase-list li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:start;padding:11px;border:1px solid var(--spro-line);border-radius:12px;background:#fff;color:var(--spro-muted);font-size:13px;line-height:1.45;list-style:none}.spro-asset-usecase-list li::before{counter-increment:sproAssetUse;content:counter(sproAssetUse,decimal-leading-zero);display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font-size:11px;font-weight:900}
@media(max-width:1180px){.spro-asset-command-grid,.spro-asset-lifecycle,.spro-asset-utility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-asset-intelligence-grid{grid-template-columns:1fr}}
@media(max-width:720px){.spro-asset-command-grid,.spro-asset-lifecycle,.spro-asset-utility-grid{grid-template-columns:1fr}.spro-asset-exception-list a{grid-template-columns:1fr}.spro-asset-exception-list em{grid-row:auto;grid-column:1;text-align:left}}

/* SOCIETY PRO depth pass: resident finance, documents and secure communication workbenches. */
.spro-finance-command-grid,.spro-document-command-grid,.spro-message-command-grid,.spro-record-quality-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}.spro-finance-command-grid article,.spro-document-command-grid article,.spro-message-command-grid article,.spro-record-quality-strip article{display:grid;gap:6px;min-height:126px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;background:linear-gradient(145deg,#fff,#faf9f7);box-shadow:0 10px 24px rgba(7,59,53,.045)}.spro-finance-command-grid span,.spro-document-command-grid span,.spro-message-command-grid span,.spro-record-quality-strip span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.spro-finance-command-grid strong,.spro-document-command-grid strong,.spro-message-command-grid strong,.spro-record-quality-strip strong{font:560 29px/1 var(--spro-display)}.spro-finance-command-grid p,.spro-document-command-grid p,.spro-message-command-grid p,.spro-record-quality-strip p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-lifecycle-lanes.compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}.spro-lifecycle-lanes.compact article{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;min-height:142px;padding:15px;border:1px solid var(--spro-line);border-radius:16px;background:#fff}.spro-lifecycle-lanes.compact i{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font-size:11px;font-style:normal;font-weight:900}.spro-lifecycle-lanes.compact h2{margin:0;font-size:16px}.spro-lifecycle-lanes.compact p,.spro-lifecycle-lanes.compact small{display:block;margin:5px 0 0;color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-lifecycle-lanes.compact small{color:var(--spro-emerald);font-weight:900}
.spro-finance-breakdown-grid,.spro-document-intelligence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-mini-bars{display:grid;gap:8px;padding:0 18px 18px}.spro-mini-bars>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:12px 13px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-mini-bars span{font-size:14px;font-weight:850}.spro-mini-bars b{display:grid;min-width:36px;height:36px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font:560 15px var(--spro-display)}.spro-mini-bars strong{justify-self:end;color:var(--spro-emerald);font-size:13px}.spro-mini-bars p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-admin-command-strip,.spro-report-shortcuts{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px;align-items:start;margin:0 0 18px;padding:18px;border:1px solid var(--spro-line);border-radius:18px;background:linear-gradient(135deg,#fff,#faf8f5);box-shadow:0 12px 30px rgba(7,59,53,.05)}.spro-admin-command-strip header span,.spro-report-shortcuts header span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.spro-admin-command-strip h2,.spro-report-shortcuts h2{margin:4px 0;font:560 25px/1.1 var(--spro-display)}.spro-admin-command-strip p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.5}.spro-admin-command-strip>div,.spro-report-shortcuts>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.spro-admin-command-strip a,.spro-report-shortcuts a{display:grid;gap:5px;min-height:76px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-admin-command-strip a:hover,.spro-report-shortcuts a:hover{border-color:var(--spro-emerald);box-shadow:0 11px 24px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-admin-command-strip b,.spro-report-shortcuts b{font-size:15px;line-height:1.2}.spro-admin-command-strip small,.spro-report-shortcuts small{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-quality-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 18px}.spro-quality-grid article{display:grid;gap:6px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-quality-grid article.state-ready{border-color:#d9cfb9;background:#fbf9f5}.spro-quality-grid article.state-review,.spro-quality-grid article.state-open{border-color:#ead0b7;background:#fff8f0}.spro-quality-grid article.state-missing{border-color:#efc2bd;background:#fff4f2}.spro-quality-grid span{width:max-content;padding:4px 7px;border-radius:999px;color:#0c2767;background:#f3efe5;font-size:10px;font-weight:900;text-transform:uppercase}.spro-quality-grid h2{margin:0;font-size:15px}.spro-quality-grid p{margin:0;color:var(--spro-muted);font-size:12px;line-height:1.45}
.spro-document-type-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-document-type-list>div{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-document-type-list b,.spro-document-type-list small{display:block}.spro-document-type-list small{color:var(--spro-emerald);font-size:11px;font-weight:900;text-transform:uppercase}.spro-document-type-list p{margin:0;color:var(--spro-muted);font-size:12px;line-height:1.45}
@media(max-width:1180px){.spro-finance-command-grid,.spro-document-command-grid,.spro-message-command-grid,.spro-record-quality-strip,.spro-lifecycle-lanes.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-quality-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-admin-command-strip,.spro-report-shortcuts{grid-template-columns:1fr}}
@media(max-width:760px){.spro-finance-command-grid,.spro-document-command-grid,.spro-message-command-grid,.spro-record-quality-strip,.spro-lifecycle-lanes.compact,.spro-finance-breakdown-grid,.spro-document-intelligence-grid,.spro-quality-grid,.spro-admin-command-strip>div,.spro-report-shortcuts>div,.spro-document-type-list{grid-template-columns:1fr}.spro-mini-bars>div{grid-template-columns:1fr}.spro-mini-bars b{width:36px}.spro-admin-command-strip,.spro-report-shortcuts{padding:15px}}

/* SOCIETY PRO depth pass: asset zone health, maintenance calendar and project orchestration. */
.spro-asset-zone-board{margin:0 0 18px;padding:18px;border:1px solid var(--spro-line);border-radius:18px;background:linear-gradient(135deg,#fff,#faf9f6);box-shadow:0 14px 32px rgba(7,59,53,.055)}.spro-asset-zone-board>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.spro-asset-zone-board article{display:grid;gap:5px;min-height:130px;padding:15px;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-asset-zone-board article.tone-warn{border-color:#ead0b6;background:#fff8f0}.spro-asset-zone-board article.tone-down{border-color:#efbeb7;background:#fff3f0}.spro-asset-zone-board span,.spro-asset-signal-list span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.spro-asset-zone-board strong,.spro-asset-signal-list strong{font:560 31px/1 var(--spro-display)}.spro-asset-zone-board small,.spro-asset-zone-board em,.spro-asset-signal-list small{display:block;color:var(--spro-muted);font-size:13px;font-style:normal;line-height:1.42}.spro-asset-zone-board em{margin-top:auto;color:#313b53;font-weight:850}
.spro-asset-ops-grid,.spro-asset-maintenance-board{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px;margin:0 0 18px}.spro-asset-maintenance-board{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)}.spro-asset-signal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-asset-signal-list>div{display:grid;gap:6px;min-height:126px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-asset-signal-list>div.tone-warn{border-color:#ead0b6;background:#fff8f0}.spro-asset-signal-list>div.tone-good{border-color:#e0d6bf;background:#fbf9f5}
.spro-asset-control-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-asset-control-matrix>div{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-asset-control-matrix b{font-size:15px}.spro-asset-control-matrix span{width:max-content;padding:4px 8px;border-radius:999px;color:#0c2767;background:#f5f1e7;font-size:11px;font-weight:900}.spro-asset-control-matrix small,.spro-asset-control-matrix em{color:var(--spro-muted);font-size:12px;line-height:1.4}.spro-asset-control-matrix em{font-style:normal;font-weight:850;color:#313b53}
.spro-asset-calendar-strip{display:grid;grid-template-columns:repeat(14,minmax(96px,1fr));gap:8px;overflow:auto;padding:0 18px 16px}.spro-asset-calendar-strip article{min-height:104px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-asset-calendar-strip article.state-busy{border-color:#e4ded1;background:#fbf8f3}.spro-asset-calendar-strip span,.spro-asset-calendar-strip small{display:block;color:var(--spro-muted);font-size:11px}.spro-asset-calendar-strip b{display:block;margin:5px 0;color:var(--spro-forest);font-size:15px}.spro-asset-plan-list,.spro-asset-orchestration-list{display:grid;gap:8px;padding:0 18px 18px}.spro-asset-plan-list a,.spro-asset-orchestration-list a{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-asset-plan-list a:hover,.spro-asset-orchestration-list a:hover{border-color:var(--spro-emerald);box-shadow:0 11px 24px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-asset-plan-list b,.spro-asset-orchestration-list b{font-size:15px}.spro-asset-plan-list small,.spro-asset-plan-list em,.spro-asset-orchestration-list small,.spro-asset-orchestration-list em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.4}.spro-asset-plan-list em,.spro-asset-orchestration-list em{color:#313b53;font-weight:850}.spro-asset-orchestration-list span{width:max-content;padding:4px 7px;border-radius:999px;color:#0c2767;background:#f5f1e7;font-size:10px;font-weight:900}.spro-asset-orchestration-list strong{margin-top:2px;font-size:13px}
@media(max-width:1180px){.spro-asset-zone-board>div,.spro-asset-ops-grid,.spro-asset-maintenance-board{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-asset-calendar-strip{grid-template-columns:repeat(14,112px)}}
@media(max-width:760px){.spro-asset-zone-board>div,.spro-asset-ops-grid,.spro-asset-maintenance-board,.spro-asset-signal-list,.spro-asset-control-matrix{grid-template-columns:1fr}.spro-asset-zone-board{padding:15px}.spro-asset-calendar-strip{padding-inline:12px}}

/* SOCIETY PRO depth pass: asset passports, provider readiness and traceability. */
.spro-asset-passport-grid,.spro-asset-governance-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:16px;margin:0 0 18px}.spro-asset-governance-grid{grid-template-columns:minmax(340px,.72fr) minmax(0,1fr) minmax(320px,.72fr)}.spro-asset-passport-grid>.spro-panel,.spro-asset-governance-grid>.spro-panel{animation:sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both}.spro-asset-onboarding-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 18px}.spro-asset-onboarding-groups article{min-height:168px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(180deg,#fff,#fcfbfa)}.spro-asset-onboarding-groups b{display:block;margin-bottom:9px;color:var(--spro-forest);font-size:15px}.spro-asset-onboarding-groups ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.spro-asset-onboarding-groups li{display:flex;gap:7px;color:var(--spro-muted);font-size:12px;line-height:1.38}.spro-asset-onboarding-groups li:before{content:"✓";display:grid;width:18px;height:18px;flex:0 0 18px;place-items:center;border-radius:50%;color:#0b296f;background:#f3eee4;font-size:10px;font-weight:900}.spro-asset-passport-list,.spro-asset-provider-list{display:grid;gap:9px;max-height:520px;overflow:auto;padding:0 18px 18px}.spro-asset-passport-list a,.spro-asset-provider-list a{display:grid;gap:5px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-asset-passport-list a:hover,.spro-asset-provider-list a:hover{border-color:var(--spro-emerald);box-shadow:0 13px 26px rgba(7,59,53,.075);transform:translateY(-1px)}.spro-asset-passport-list span,.spro-asset-provider-list span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e8;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.spro-asset-passport-list b,.spro-asset-provider-list strong{font-size:15px}.spro-asset-passport-list small,.spro-asset-passport-list em,.spro-asset-provider-list small{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.42}.spro-asset-passport-list i{position:relative;display:block;height:9px;margin-top:4px;overflow:hidden;border-radius:999px;background:#eceae6;font-style:normal}.spro-asset-passport-list i:before{content:"";display:block;width:var(--w);height:100%;border-radius:999px;background:linear-gradient(90deg,#0b296f,#c7b48b)}.spro-asset-passport-list i strong{position:absolute;right:0;top:-20px;color:#313b53;font-size:11px}.spro-asset-passport-list u,.spro-asset-trace-flow u{color:#313b53;font-size:12px;font-weight:850;text-decoration:none}.spro-asset-blueprint-list{columns:2;gap:18px;margin:0;padding:0 18px 18px;list-style:none}.spro-asset-blueprint-list li{break-inside:avoid;display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;margin:0 0 8px;padding:9px;border:1px solid var(--spro-line);border-radius:11px;background:#fff;color:var(--spro-muted);font-size:12px;line-height:1.36}.spro-asset-blueprint-list li:before{counter-increment:sproAssetBlueprint;content:counter(sproAssetBlueprint,decimal-leading-zero);display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font-size:9px;font-weight:900}.spro-asset-blueprint-list{counter-reset:sproAssetBlueprint}.spro-asset-provider-list a{grid-template-columns:minmax(0,1fr) auto}.spro-asset-provider-list span,.spro-asset-provider-list small{grid-column:1/-1}.spro-asset-provider-list strong{grid-column:2;grid-row:1/3;font:650 26px/1 var(--spro-display);color:var(--spro-forest)}.spro-asset-trace-flow{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:9px;overflow:auto;padding:0 18px 18px}.spro-asset-trace-flow article{position:relative;min-height:170px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-asset-trace-flow article:not(:last-child):after{content:"→";position:absolute;right:-14px;top:46%;z-index:2;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-size:12px;font-weight:900}.spro-asset-trace-flow span{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:11px;font-weight:900}.spro-asset-trace-flow b{display:block;margin-top:12px;color:var(--spro-forest);font-size:15px}.spro-asset-trace-flow small,.spro-asset-trace-flow em{display:block;margin-top:6px;color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.38}.spro-asset-visibility-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 18px}.spro-asset-visibility-split>div{padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-asset-visibility-split b{display:block;margin-bottom:8px;color:var(--spro-forest);font-size:15px}.spro-asset-visibility-split small{display:block;padding:7px 0;border-top:1px solid var(--spro-line-soft);color:var(--spro-muted);font-size:12px;line-height:1.35}
@media(max-width:1220px){.spro-asset-governance-grid{grid-template-columns:1fr 1fr}.spro-asset-governance-grid>.spro-panel:last-child{grid-column:1/-1}.spro-asset-trace-flow{grid-template-columns:repeat(5,170px)}}@media(max-width:900px){.spro-asset-passport-grid,.spro-asset-governance-grid{grid-template-columns:1fr}.spro-asset-onboarding-groups,.spro-asset-visibility-split{grid-template-columns:1fr}.spro-asset-blueprint-list{columns:1}.spro-asset-trace-flow article:not(:last-child):after{display:none}}@media(max-width:560px){.spro-asset-onboarding-groups,.spro-asset-passport-list,.spro-asset-provider-list,.spro-asset-trace-flow,.spro-asset-visibility-split{padding-inline:12px}.spro-asset-trace-flow{grid-template-columns:1fr;overflow:visible}.spro-asset-trace-flow article{min-height:0}}

/* SOCIETY PRO depth pass: asset record 360 operating workspace. */
.spro-record-asset-hero{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:16px;margin:0 0 18px;padding:20px;border:1px solid var(--spro-line);border-radius:20px;background:linear-gradient(135deg,#0b1b3f,#0d2866 52%,#d9a46f);color:#fff;box-shadow:0 24px 60px rgba(7,59,53,.16);animation:sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both}.spro-record-asset-hero span{color:#ece7dc;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-asset-hero h2{margin:8px 0 7px;font:600 34px/1.05 var(--spro-display)}.spro-record-asset-hero p{max-width:620px;margin:0;color:#f4f0e7;font-size:15px;line-height:1.5}.spro-record-asset-hero>div:last-child{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.spro-record-asset-hero article{display:grid;gap:5px;min-height:128px;padding:14px;border:1px solid rgba(255,255,255,.22);border-radius:15px;background:rgba(255,255,255,.12);backdrop-filter:blur(14px)}.spro-record-asset-hero article strong{overflow-wrap:anywhere;font:650 22px/1.08 var(--spro-display)}.spro-record-asset-hero article small{color:#f8f5ee;font-size:12px;line-height:1.35}
.spro-record-asset-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:16px;margin:0 0 18px}.spro-record-asset-grid.wide{grid-template-columns:1.25fr .75fr}.spro-record-asset-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-asset-readiness>div{display:grid;grid-template-columns:30px minmax(0,1fr);gap:4px 9px;align-items:start;min-height:92px;padding:12px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-record-asset-readiness i{display:grid;width:30px;height:30px;grid-row:span 2;place-items:center;border-radius:50%;color:#fff;background:#bc7a25;font-size:11px;font-style:normal;font-weight:900}.spro-record-asset-readiness .is-ready i{background:var(--spro-emerald)}.spro-record-asset-readiness b{color:var(--spro-forest);font-size:14px}.spro-record-asset-readiness small{color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-record-asset-sensor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-asset-sensor-grid>div{min-height:88px;padding:13px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}.spro-record-asset-sensor-grid>div.metric{background:#faf8f4}.spro-record-asset-sensor-grid span{display:block;color:var(--spro-muted);font-size:12px;font-weight:850;text-transform:uppercase}.spro-record-asset-sensor-grid b{display:block;margin-top:8px;overflow-wrap:anywhere;color:var(--spro-forest);font-size:17px}
.spro-record-asset-flow{display:grid;grid-template-columns:repeat(5,minmax(138px,1fr));gap:9px;overflow:auto;padding:18px}.spro-record-asset-flow article{position:relative;min-height:132px;padding:13px;border:1px solid #e4d0bc;border-radius:13px;background:#fff8f0}.spro-record-asset-flow article.complete{border-color:#e0d6bf;background:#fbf8f1}.spro-record-asset-flow article:not(:last-child):after{content:"→";position:absolute;right:-14px;top:44%;z-index:2;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-weight:900}.spro-record-asset-flow span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:11px;font-weight:900}.spro-record-asset-flow b{display:block;margin-top:10px;color:var(--spro-forest);font-size:14px}.spro-record-asset-flow small{display:block;margin-top:6px;color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-record-asset-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-asset-actions a{display:grid;gap:6px;min-height:110px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-asset-actions a:hover,.spro-record-asset-workspace a:hover,.spro-record-asset-report-list a:hover{border-color:var(--spro-emerald);box-shadow:0 11px 24px rgba(7,59,53,.075);transform:translateY(-1px)}.spro-record-asset-actions b{font-size:15px}.spro-record-asset-actions small{color:var(--spro-muted);font-size:12px;line-height:1.38}
.spro-record-asset-workspace{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-record-asset-workspace .spro-record-360-card>div{display:grid;gap:8px;max-height:460px;overflow:auto;padding:0 18px 18px}.spro-record-asset-workspace a{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-asset-workspace b{font-size:14px}.spro-record-asset-workspace small,.spro-record-asset-workspace em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.36}.spro-record-asset-workspace em{color:#313b53;font-weight:850}.spro-record-asset-workspace p{padding:0 18px 18px;color:var(--spro-muted);font-size:13px}.spro-record-asset-visibility{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px}.spro-record-asset-visibility>div{padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-asset-visibility b{display:block;margin-bottom:8px;color:var(--spro-forest);font-size:15px}.spro-record-asset-visibility small{display:block;padding:8px 0;border-top:1px solid var(--spro-line-soft);color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-record-asset-report-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:360px;overflow:auto;padding:18px}.spro-record-asset-report-list a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 9px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-asset-report-list span{display:grid;width:40px;height:40px;grid-row:span 2;place-items:center;border-radius:10px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900}.spro-record-asset-report-list b{font-size:13px}.spro-record-asset-report-list small{color:var(--spro-muted);font-size:11px;line-height:1.35}
@media(max-width:1180px){.spro-record-asset-hero,.spro-record-asset-grid,.spro-record-asset-grid.wide,.spro-record-asset-workspace{grid-template-columns:1fr}.spro-record-asset-hero>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-asset-readiness{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-asset-flow{grid-template-columns:repeat(5,170px)}}@media(max-width:720px){.spro-record-asset-hero{padding:16px}.spro-record-asset-hero h2{font-size:28px}.spro-record-asset-hero>div:last-child,.spro-record-asset-readiness,.spro-record-asset-sensor-grid,.spro-record-asset-actions,.spro-record-asset-visibility,.spro-record-asset-report-list{grid-template-columns:1fr}.spro-record-asset-flow{grid-template-columns:1fr;overflow:visible}.spro-record-asset-flow article{min-height:0}.spro-record-asset-flow article:not(:last-child):after{display:none}.spro-record-asset-readiness,.spro-record-asset-sensor-grid,.spro-record-asset-actions,.spro-record-asset-flow,.spro-record-asset-workspace .spro-record-360-card>div,.spro-record-asset-visibility,.spro-record-asset-report-list{padding:13px}}

/* SOCIETY PRO depth pass: maintenance work-order 360 orchestration. */
.spro-record-workorder-hero{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:16px;margin:0 0 18px;padding:20px;border:1px solid #ead0b6;border-radius:20px;background:linear-gradient(135deg,#16213b,#7b5b25 60%,#f4b26f);color:#fff;box-shadow:0 24px 60px rgba(70,48,18,.16);animation:sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both}.spro-record-workorder-hero span{color:#ffefdf;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-workorder-hero h2{margin:8px 0 7px;font:600 34px/1.05 var(--spro-display)}.spro-record-workorder-hero p{max-width:650px;margin:0;color:#fff3e8;font-size:15px;line-height:1.5}.spro-record-workorder-hero>div:last-child{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.spro-record-workorder-hero article{display:grid;gap:5px;min-height:128px;padding:14px;border:1px solid rgba(255,255,255,.26);border-radius:15px;background:rgba(255,255,255,.13);backdrop-filter:blur(14px)}.spro-record-workorder-hero article strong{overflow-wrap:anywhere;font:650 22px/1.08 var(--spro-display)}.spro-record-workorder-hero article small{color:#fff6ec;font-size:12px;line-height:1.35}
.spro-record-workorder-linked{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}.spro-record-workorder-linked a{display:grid;gap:6px;min-height:126px;padding:15px;border:1px solid var(--spro-line);border-radius:15px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-workorder-linked a:hover,.spro-record-workorder-actions a:hover,.spro-record-workorder-orchestration a:hover,.spro-record-workorder-report-list a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-record-workorder-linked span{color:#0b296f;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.spro-record-workorder-linked b{color:var(--spro-forest);font-size:17px}.spro-record-workorder-linked small{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-record-workorder-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:16px;margin:0 0 18px}.spro-record-workorder-flow{display:grid;grid-template-columns:repeat(6,minmax(126px,1fr));gap:9px;overflow:auto;padding:18px}.spro-record-workorder-flow article{position:relative;min-height:138px;padding:13px;border:1px solid #ead0b6;border-radius:13px;background:#fff8f0}.spro-record-workorder-flow article.complete{border-color:#e0d6bf;background:#fbf8f2}.spro-record-workorder-flow article:not(:last-child):after{content:"→";position:absolute;right:-14px;top:44%;z-index:2;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-weight:900}.spro-record-workorder-flow span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:11px;font-weight:900}.spro-record-workorder-flow b{display:block;margin-top:10px;color:var(--spro-forest);font-size:14px}.spro-record-workorder-flow small{display:block;margin-top:6px;color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-record-workorder-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-workorder-actions a{display:grid;gap:6px;min-height:112px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-workorder-actions b{font-size:15px}.spro-record-workorder-actions small{color:var(--spro-muted);font-size:12px;line-height:1.38}
.spro-record-workorder-ledger{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:420px;overflow:auto;padding:18px}.spro-record-workorder-ledger.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-workorder-ledger article{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-record-workorder-ledger b{font-size:14px}.spro-record-workorder-ledger small{color:var(--spro-muted);font-size:12px;line-height:1.36}.spro-record-workorder-ledger span{width:max-content;padding:4px 7px;border-radius:999px;color:#0b296f;background:#f5f1e8;font-size:10px;font-weight:900}.spro-record-workorder-ledger p{grid-column:1/-1;margin:0;color:var(--spro-muted);font-size:13px}
.spro-record-workorder-orchestration{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-record-workorder-orchestration .spro-record-360-card>div{display:grid;gap:8px;max-height:460px;overflow:auto;padding:0 18px 18px}.spro-record-workorder-orchestration a{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-workorder-orchestration b{font-size:14px}.spro-record-workorder-orchestration small,.spro-record-workorder-orchestration em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.36}.spro-record-workorder-orchestration em{color:#313b53;font-weight:850}.spro-record-workorder-orchestration p{padding:0 18px 18px;color:var(--spro-muted);font-size:13px}
.spro-record-workorder-finance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-workorder-finance article{display:grid;gap:6px;min-height:112px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-workorder-finance span{color:#0b296f;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.spro-record-workorder-finance strong{font:650 24px/1 var(--spro-display);color:var(--spro-forest)}.spro-record-workorder-finance small{color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-record-workorder-report-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:360px;overflow:auto;padding:18px}.spro-record-workorder-report-list a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 9px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-workorder-report-list span{display:grid;width:40px;height:40px;grid-row:span 2;place-items:center;border-radius:10px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900}.spro-record-workorder-report-list b{font-size:13px}.spro-record-workorder-report-list small{color:var(--spro-muted);font-size:11px;line-height:1.35}
@media(max-width:1180px){.spro-record-workorder-hero,.spro-record-workorder-grid{grid-template-columns:1fr}.spro-record-workorder-hero>div:last-child,.spro-record-workorder-linked{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-workorder-flow{grid-template-columns:repeat(6,160px)}.spro-record-workorder-orchestration{grid-template-columns:1fr}}@media(max-width:720px){.spro-record-workorder-hero{padding:16px}.spro-record-workorder-hero h2{font-size:28px}.spro-record-workorder-hero>div:last-child,.spro-record-workorder-linked,.spro-record-workorder-actions,.spro-record-workorder-ledger,.spro-record-workorder-ledger.compact,.spro-record-workorder-finance,.spro-record-workorder-report-list{grid-template-columns:1fr}.spro-record-workorder-flow{grid-template-columns:1fr;overflow:visible}.spro-record-workorder-flow article{min-height:0}.spro-record-workorder-flow article:not(:last-child):after{display:none}.spro-record-workorder-flow,.spro-record-workorder-actions,.spro-record-workorder-ledger,.spro-record-workorder-orchestration .spro-record-360-card>div,.spro-record-workorder-finance,.spro-record-workorder-report-list{padding:13px}}

/* SOCIETY PRO depth pass: service project orchestration cockpit. */
.spro-service-cockpit{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 16px}.spro-service-cockpit article{display:grid;gap:6px;min-height:142px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:0 10px 26px rgba(7,59,53,.045);animation:sproStudioReveal .38s cubic-bezier(.2,.78,.25,1) both}.spro-service-cockpit article.tone-warn{border-color:#efc3b7;background:#fff7f4}.spro-service-cockpit article.tone-good{border-color:#dfd3b9;background:#fbf8f3}.spro-service-cockpit span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.spro-service-cockpit strong{font:610 28px/1.05 var(--spro-display);color:var(--spro-forest);overflow-wrap:anywhere}.spro-service-cockpit small{margin-top:auto;color:var(--spro-muted);font-size:13px;line-height:1.4}
.spro-service-command-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:16px;margin:0 0 17px}.spro-service-command-grid.compact{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)}.spro-service-stakeholder-list,.spro-service-control-matrix,.spro-service-workorder-list,.spro-service-role-visibility{display:grid;gap:9px;max-height:520px;overflow:auto;padding:0 18px 18px}.spro-service-stakeholder-list article,.spro-service-control-matrix article,.spro-service-workorder-list a,.spro-service-workorder-list article,.spro-service-role-visibility article{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff;color:inherit;text-decoration:none;transition:.18s ease}.spro-service-workorder-list a:hover,.spro-service-report-shortcuts a:hover{border-color:var(--spro-emerald);box-shadow:0 11px 24px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-service-stakeholder-list span,.spro-service-workorder-list span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.spro-service-stakeholder-list b,.spro-service-control-matrix b,.spro-service-workorder-list b,.spro-service-role-visibility b{color:var(--spro-forest);font-size:15px}.spro-service-stakeholder-list small,.spro-service-stakeholder-list em,.spro-service-control-matrix small,.spro-service-workorder-list small,.spro-service-workorder-list em,.spro-service-role-visibility small{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.4}.spro-service-stakeholder-list em,.spro-service-workorder-list em{color:#313b53;font-weight:850}.spro-service-control-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-service-control-matrix span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e7;font-size:11px;font-weight:900}.spro-service-workorder-list strong{color:#313b53;font-size:13px}.spro-service-workorder-list p{margin:0;color:var(--spro-muted);font-size:13px}.spro-service-role-visibility article small{display:grid;gap:3px;padding-top:7px;border-top:1px solid var(--spro-line-soft)}.spro-service-role-visibility i{color:#0b296f;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}.spro-service-report-shortcuts{margin:0 0 17px}.spro-service-report-shortcuts>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 18px 18px}.spro-service-report-shortcuts a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:5px 9px;min-height:76px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-service-report-shortcuts a span{display:grid;width:40px;height:40px;grid-row:span 2;place-items:center;border-radius:10px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900}.spro-service-report-shortcuts a b{font-size:13px;line-height:1.25}.spro-service-report-shortcuts a small{color:var(--spro-muted);font-size:11px;line-height:1.3}
@media(max-width:1180px){.spro-service-cockpit{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-service-command-grid,.spro-service-command-grid.compact{grid-template-columns:1fr}.spro-service-report-shortcuts>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.spro-service-cockpit,.spro-service-control-matrix,.spro-service-report-shortcuts>div{grid-template-columns:1fr}.spro-service-stakeholder-list,.spro-service-control-matrix,.spro-service-workorder-list,.spro-service-role-visibility,.spro-service-report-shortcuts>div{padding-inline:13px}.spro-service-cockpit article{min-height:0}}

/* SOCIETY PRO depth pass: security policy, evidence and incident command surfaces. */
.spro-security-policy-grid,.spro-security-ops-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-security-analytics-grid{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(280px,.7fr) minmax(340px,1fr);gap:16px;margin:0 0 18px}.spro-policy-card-list,.spro-persona-access-list,.spro-security-incident-list,.spro-entry-evidence-list,.spro-security-count-list,.spro-capture-matrix{display:grid;gap:9px;padding:0 18px 18px}.spro-policy-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-policy-card-list>div,.spro-persona-access-list>div,.spro-capture-matrix>div{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-policy-card-list span{width:max-content;padding:4px 8px;border-radius:999px;color:#0c2767;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}.spro-policy-card-list b,.spro-persona-access-list b,.spro-capture-matrix b{font-size:15px}.spro-policy-card-list small,.spro-persona-access-list small,.spro-capture-matrix small{color:var(--spro-muted);font-size:12px;line-height:1.45}
.spro-security-incident-list a,.spro-entry-evidence-list a{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-security-incident-list a:hover,.spro-entry-evidence-list a:hover{border-color:var(--spro-emerald);box-shadow:0 11px 24px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-security-incident-list span,.spro-entry-evidence-list span{width:max-content;padding:4px 8px;border-radius:999px;color:#fff;background:var(--spro-forest);font-size:10px;font-weight:900;text-transform:uppercase}.spro-security-incident-list b,.spro-entry-evidence-list b{font-size:15px}.spro-security-incident-list small,.spro-security-incident-list em,.spro-entry-evidence-list small,.spro-entry-evidence-list em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.4}.spro-security-incident-list em,.spro-entry-evidence-list em{color:#313b53;font-weight:850}.spro-security-incident-list p,.spro-entry-evidence-list p,.spro-security-count-list p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-security-count-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-security-count-list span{font-size:14px;font-weight:850}.spro-security-count-list strong{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-forest);font:560 17px var(--spro-display)}
@media(max-width:1180px){.spro-security-policy-grid,.spro-security-ops-board,.spro-security-analytics-grid{grid-template-columns:1fr}.spro-policy-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.spro-policy-card-list{grid-template-columns:1fr}.spro-policy-card-list,.spro-persona-access-list,.spro-security-incident-list,.spro-entry-evidence-list,.spro-security-count-list,.spro-capture-matrix{padding-inline:12px}}

/* SOCIETY PRO depth pass: amenity/facility booking 360 cockpit. */
.spro-record-facility-hero{display:grid;grid-template-columns:minmax(0,.68fr) minmax(0,1.32fr);gap:16px;margin:0 0 18px;padding:20px;border:1px solid #e1dbcf;border-radius:22px;color:#fff;background:radial-gradient(circle at 82% 16%,rgba(255,255,255,.22),transparent 26%),linear-gradient(128deg,#05122f,#0b296e 58%,#a88b4d);box-shadow:0 24px 60px rgba(7,59,53,.16);animation:sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both}.spro-record-facility-hero span{color:#fbe4c9;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-facility-hero h2{margin:8px 0 7px;font:600 35px/1.05 var(--spro-display)}.spro-record-facility-hero p{max-width:680px;margin:0;color:#f8f5ee;font-size:15px;line-height:1.5}.spro-record-facility-hero>div:last-child{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.spro-record-facility-hero article{display:grid;gap:5px;min-height:130px;padding:14px;border:1px solid rgba(255,255,255,.25);border-radius:15px;background:rgba(255,255,255,.13);backdrop-filter:blur(14px)}.spro-record-facility-hero article strong{overflow-wrap:anywhere;font:650 22px/1.08 var(--spro-display)}.spro-record-facility-hero article small{color:#fbf6ec;font-size:12px;line-height:1.35}
.spro-record-facility-grid{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(360px,.87fr);gap:16px;margin:0 0 18px}.spro-record-facility-grid.policy{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-facility-flow{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:9px;overflow:auto;padding:18px}.spro-record-facility-flow article{position:relative;min-height:138px;padding:13px;border:1px solid #e2dfd7;border-radius:13px;background:#fbfaf8}.spro-record-facility-flow article.complete{border-color:#e0d6bf;background:#fbf8f1}.spro-record-facility-flow article:not(:last-child):after{content:"→";position:absolute;right:-14px;top:44%;z-index:2;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-weight:900}.spro-record-facility-flow span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:11px;font-weight:900}.spro-record-facility-flow b{display:block;margin-top:10px;color:var(--spro-forest);font-size:14px}.spro-record-facility-flow small{display:block;margin-top:6px;color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-facility-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-facility-actions a{display:grid;gap:6px;min-height:110px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-facility-actions a:hover,.spro-record-facility-slot-rules a:hover,.spro-record-facility-triple a:hover,.spro-record-facility-maintenance a:hover,.spro-record-facility-report-list a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-record-facility-actions b{font-size:15px}.spro-record-facility-actions small{color:var(--spro-muted);font-size:12px;line-height:1.38}
.spro-record-facility-policy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-facility-policy article{display:grid;gap:6px;min-height:128px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-facility-policy span{color:#0b296f;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-facility-policy strong{color:var(--spro-forest);font:640 21px/1.08 var(--spro-display)}.spro-record-facility-policy small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-facility-slot-rules{margin:0 0 18px;overflow:hidden}.spro-record-facility-slot-rules>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:430px;overflow:auto;padding:0 18px 18px}.spro-record-facility-slot-rules a{display:grid;gap:6px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-facility-slot-rules b{color:var(--spro-forest);font-size:15px}.spro-record-facility-slot-rules small,.spro-record-facility-slot-rules em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.4}.spro-record-facility-slot-rules span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}.spro-record-facility-slot-rules p{grid-column:1/-1;color:var(--spro-muted);font-size:13px}
.spro-record-facility-calendar{margin:0 0 18px;overflow:hidden}.spro-record-facility-calendar>div{display:grid;grid-template-columns:repeat(14,minmax(190px,1fr));gap:10px;overflow:auto;padding:0 18px 18px}.spro-record-facility-calendar>div>article{display:grid;gap:10px;min-height:330px;padding:14px;border:1px solid var(--spro-line);border-radius:15px;background:#fff}.spro-record-facility-calendar article.has-open-slots{border-color:#ded2b9;background:linear-gradient(180deg,#fcfaf5,#fff)}.spro-record-facility-calendar article.no-open-slots{background:#faf7f2}.spro-record-facility-calendar article>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;padding:0;border:0}.spro-record-facility-calendar article>header span{color:#0b296f;font-size:10px;font-weight:900;text-transform:uppercase}.spro-record-facility-calendar article>header b{font:630 19px var(--spro-display);color:var(--spro-forest)}.spro-record-facility-calendar article>header small{grid-column:1/-1;color:var(--spro-muted);font-size:11px}.spro-record-facility-calendar-counts{display:flex;flex-wrap:wrap;gap:5px}.spro-record-facility-calendar-counts span,.spro-record-facility-calendar footer small{padding:4px 7px;border-radius:999px;background:#f5f3ee;color:#313b53;font-size:10px;font-weight:800}.spro-record-facility-slot-list{display:grid;gap:6px}.spro-record-facility-slot-list>span{display:grid;gap:3px;padding:8px;border:1px solid #e8e4dc;border-radius:10px;background:#fff}.spro-record-facility-slot-list>span.open{border-color:#d8c9aa;background:#faf7f0}.spro-record-facility-slot-list>span.blocked{opacity:.86}.spro-record-facility-slot-list b{font-size:12px}.spro-record-facility-slot-list small,.spro-record-facility-slot-list em{color:var(--spro-muted);font-size:10px;font-style:normal;line-height:1.35}.spro-record-facility-slot-list p,.spro-record-facility-calendar>div>p{color:var(--spro-muted);font-size:12px}.spro-record-facility-calendar footer{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}
.spro-record-facility-triple{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-record-facility-triple .spro-record-360-card>div,.spro-record-facility-maintenance{display:grid;gap:8px;max-height:470px;overflow:auto;padding:0 18px 18px}.spro-record-facility-triple a,.spro-record-facility-maintenance a{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-facility-triple b,.spro-record-facility-maintenance b{font-size:14px}.spro-record-facility-triple small,.spro-record-facility-triple em,.spro-record-facility-maintenance small,.spro-record-facility-maintenance em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.36}.spro-record-facility-triple span,.spro-record-facility-maintenance span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}.spro-record-facility-triple em,.spro-record-facility-maintenance em{color:#313b53;font-weight:850}.spro-record-facility-triple p,.spro-record-facility-maintenance p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-record-facility-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-facility-resource-grid section{display:grid;gap:7px;min-height:180px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-facility-resource-grid b{color:var(--spro-forest);font-size:15px}.spro-record-facility-resource-grid small{display:block;padding-top:7px;border-top:1px solid var(--spro-line-soft);color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-record-facility-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-facility-roles article{display:grid;gap:8px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-facility-roles b{color:var(--spro-forest);font-size:15px}.spro-record-facility-roles small{display:grid;gap:3px;color:var(--spro-muted);font-size:12px;line-height:1.38}.spro-record-facility-roles i{color:#0b296f;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}.spro-record-facility-report-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:370px;overflow:auto;padding:18px}.spro-record-facility-report-list a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 9px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-facility-report-list span{display:grid;width:40px;height:40px;grid-row:span 2;place-items:center;border-radius:10px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900}.spro-record-facility-report-list b{font-size:13px}.spro-record-facility-report-list small{color:var(--spro-muted);font-size:11px;line-height:1.35}
@media(max-width:1180px){.spro-record-facility-hero,.spro-record-facility-grid,.spro-record-facility-grid.policy,.spro-record-facility-triple{grid-template-columns:1fr}.spro-record-facility-hero>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-facility-flow{grid-template-columns:repeat(6,160px)}.spro-record-facility-policy,.spro-record-facility-slot-rules>div,.spro-record-facility-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-facility-calendar>div{grid-template-columns:repeat(14,220px)}}@media(max-width:720px){.spro-record-facility-hero{padding:16px}.spro-record-facility-hero h2{font-size:28px}.spro-record-facility-hero>div:last-child,.spro-record-facility-actions,.spro-record-facility-policy,.spro-record-facility-slot-rules>div,.spro-record-facility-resource-grid,.spro-record-facility-roles,.spro-record-facility-report-list{grid-template-columns:1fr}.spro-record-facility-flow{grid-template-columns:1fr;overflow:visible}.spro-record-facility-flow article{min-height:0}.spro-record-facility-flow article:not(:last-child):after{display:none}.spro-record-facility-calendar>div{grid-template-columns:1fr;overflow:visible}.spro-record-facility-flow,.spro-record-facility-actions,.spro-record-facility-policy,.spro-record-facility-slot-rules>div,.spro-record-facility-calendar>div,.spro-record-facility-triple .spro-record-360-card>div,.spro-record-facility-maintenance,.spro-record-facility-resource-grid,.spro-record-facility-roles,.spro-record-facility-report-list{padding:13px}}

/* SOCIETY PRO depth pass: people, resident and owner lifecycle 360. */
.spro-record-people-hero{display:grid;grid-template-columns:minmax(0,.58fr) minmax(0,1.42fr);gap:16px;margin:0 0 18px;padding:20px;border:1px solid #e2dfd8;border-radius:22px;color:#fff;background:radial-gradient(circle at 86% 14%,rgba(244,197,111,.22),transparent 26%),linear-gradient(128deg,#09142f,#0c2767 60%,#76602f);box-shadow:0 24px 60px rgba(7,59,53,.16);animation:sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both}.spro-record-people-hero span{color:#fbe4c9;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-people-hero h2{margin:8px 0 7px;font:600 35px/1.05 var(--spro-display)}.spro-record-people-hero p{max-width:680px;margin:0;color:#f8f5ee;font-size:15px;line-height:1.5}.spro-record-people-hero>div:last-child{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.spro-record-people-hero article{display:grid;gap:5px;min-height:130px;padding:14px;border:1px solid rgba(255,255,255,.25);border-radius:15px;background:rgba(255,255,255,.13);backdrop-filter:blur(14px)}.spro-record-people-hero article strong{overflow-wrap:anywhere;font:650 22px/1.08 var(--spro-display)}.spro-record-people-hero article small{color:#fbf6ec;font-size:12px;line-height:1.35}
.spro-record-people-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:16px;margin:0 0 18px}.spro-record-people-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-people-readiness>div{display:grid;grid-template-columns:32px minmax(0,1fr);gap:3px 10px;min-height:112px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-record-people-readiness i{grid-row:span 2;display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:#a66b3a;font-style:normal;font-weight:900}.spro-record-people-readiness .is-ready i{background:var(--spro-emerald)}.spro-record-people-readiness b{color:var(--spro-forest);font-size:14px}.spro-record-people-readiness small{color:var(--spro-muted);font-size:12px;line-height:1.36}
.spro-record-people-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:560px;overflow:auto;padding:18px}.spro-record-people-actions a{display:grid;gap:6px;min-height:110px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-people-actions a:hover,.spro-record-people-triple a:hover,.spro-record-people-reporting a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-record-people-actions b{font-size:15px}.spro-record-people-actions small{color:var(--spro-muted);font-size:12px;line-height:1.38}
.spro-record-people-identity{margin:0 0 18px;overflow:hidden}.spro-record-people-identity>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-record-people-identity article{display:grid;gap:6px;min-height:124px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-people-identity span{color:#0b296f;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-people-identity strong{color:var(--spro-forest);font:640 20px/1.08 var(--spro-display);overflow-wrap:anywhere}.spro-record-people-identity small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-people-triple{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-record-people-triple .spro-record-360-card>div{display:grid;gap:8px;max-height:470px;overflow:auto;padding:0 18px 18px}.spro-record-people-triple a{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-people-triple b{font-size:14px}.spro-record-people-triple small,.spro-record-people-triple em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.36}.spro-record-people-triple span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}.spro-record-people-triple em{color:#313b53;font-weight:850}.spro-record-people-triple p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-record-people-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-people-resource-grid section{display:grid;gap:7px;min-height:200px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-people-resource-grid b{color:var(--spro-forest);font-size:15px}.spro-record-people-resource-grid small{display:block;padding-top:7px;border-top:1px solid var(--spro-line-soft);color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-record-people-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-people-roles article{display:grid;gap:8px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-people-roles b{color:var(--spro-forest);font-size:15px}.spro-record-people-roles small{display:grid;gap:3px;color:var(--spro-muted);font-size:12px;line-height:1.38}.spro-record-people-roles i{color:#0b296f;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}
.spro-record-people-reporting{margin:0 0 18px;overflow:hidden}.spro-record-people-reporting>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-height:390px;overflow:auto;padding:0 18px 18px}.spro-record-people-reporting a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 9px;min-height:78px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-people-reporting span{display:grid;width:40px;height:40px;grid-row:span 2;place-items:center;border-radius:10px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900}.spro-record-people-reporting b{font-size:13px}.spro-record-people-reporting small{color:var(--spro-muted);font-size:11px;line-height:1.35}
@media(max-width:1240px){.spro-record-people-hero,.spro-record-people-grid,.spro-record-people-triple{grid-template-columns:1fr}.spro-record-people-hero>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-record-people-readiness,.spro-record-people-identity>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-people-reporting>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.spro-record-people-hero{padding:16px}.spro-record-people-hero h2{font-size:28px}.spro-record-people-hero>div:last-child,.spro-record-people-readiness,.spro-record-people-actions,.spro-record-people-identity>div,.spro-record-people-resource-grid,.spro-record-people-roles,.spro-record-people-reporting>div{grid-template-columns:1fr}.spro-record-people-readiness,.spro-record-people-actions,.spro-record-people-identity>div,.spro-record-people-triple .spro-record-360-card>div,.spro-record-people-resource-grid,.spro-record-people-roles,.spro-record-people-reporting>div{padding:13px}.spro-record-people-actions{max-height:none}.spro-record-people-readiness>div,.spro-record-people-identity article,.spro-record-people-hero article{min-height:0}}

/* SOCIETY PRO depth pass: vendor, contractor and partner 360 cockpit. */
.spro-record-vendor-hero{display:grid;grid-template-columns:minmax(0,.58fr) minmax(0,1.42fr);gap:16px;margin:0 0 18px;padding:20px;border:1px solid #e0ddd6;border-radius:22px;color:#fff;background:radial-gradient(circle at 84% 13%,rgba(255,216,139,.26),transparent 25%),linear-gradient(128deg,#10192f,#0b235c 58%,#9c743e);box-shadow:0 24px 60px rgba(7,59,53,.16);animation:sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both}.spro-record-vendor-hero span{color:#ffe3c2;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-vendor-hero h2{margin:8px 0 7px;font:600 35px/1.05 var(--spro-display)}.spro-record-vendor-hero p{max-width:720px;margin:0;color:#fbf8f1;font-size:15px;line-height:1.5}.spro-record-vendor-hero>div:last-child{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.spro-record-vendor-hero article{display:grid;gap:5px;min-height:130px;padding:14px;border:1px solid rgba(255,255,255,.24);border-radius:15px;background:rgba(255,255,255,.13);backdrop-filter:blur(14px)}.spro-record-vendor-hero article strong{overflow-wrap:anywhere;font:650 22px/1.08 var(--spro-display)}.spro-record-vendor-hero article small{color:#ffefdc;font-size:12px;line-height:1.35}
.spro-record-vendor-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:16px;margin:0 0 18px}.spro-record-vendor-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-vendor-readiness>div{display:grid;grid-template-columns:32px minmax(0,1fr);gap:3px 10px;min-height:112px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-record-vendor-readiness i{grid-row:span 2;display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:#a66b3a;font-style:normal;font-weight:900}.spro-record-vendor-readiness .is-ready i{background:var(--spro-emerald)}.spro-record-vendor-readiness b{color:var(--spro-forest);font-size:14px}.spro-record-vendor-readiness small{color:var(--spro-muted);font-size:12px;line-height:1.36}
.spro-record-vendor-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:560px;overflow:auto;padding:18px}.spro-record-vendor-actions a{display:grid;gap:6px;min-height:110px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-vendor-actions a:hover,.spro-record-vendor-triple a:hover,.spro-record-vendor-list a:hover,.spro-record-vendor-reporting a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-record-vendor-actions b{font-size:15px}.spro-record-vendor-actions small{color:var(--spro-muted);font-size:12px;line-height:1.38}
.spro-record-vendor-identity{margin:0 0 18px;overflow:hidden}.spro-record-vendor-identity>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-record-vendor-identity article{display:grid;gap:6px;min-height:124px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-vendor-identity span{color:#0b296f;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-vendor-identity strong{color:var(--spro-forest);font:640 20px/1.08 var(--spro-display);overflow-wrap:anywhere}.spro-record-vendor-identity small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-vendor-flow-card{margin:0 0 18px;overflow:hidden}.spro-record-vendor-flow{display:grid;grid-template-columns:repeat(6,minmax(135px,1fr));gap:9px;overflow:auto;padding:0 18px 18px}.spro-record-vendor-flow article{position:relative;min-height:138px;padding:13px;border:1px solid #e2dfd7;border-radius:13px;background:#fbfaf8}.spro-record-vendor-flow article.complete{border-color:#e0d6bf;background:#fbf8f1}.spro-record-vendor-flow article.current{border-color:#efc27e;background:#fff5eb}.spro-record-vendor-flow article.blocked{border-color:#e6b5a0;background:#fff4ef}.spro-record-vendor-flow article:not(:last-child):after{content:"→";position:absolute;right:-14px;top:44%;z-index:2;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-weight:900}.spro-record-vendor-flow span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:11px;font-weight:900}.spro-record-vendor-flow b{display:block;margin-top:10px;color:var(--spro-forest);font-size:14px}.spro-record-vendor-flow small{display:block;margin-top:6px;color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-vendor-triple{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-record-vendor-triple .spro-record-360-card>div,.spro-record-vendor-list{display:grid;gap:8px;max-height:470px;overflow:auto;padding:0 18px 18px}.spro-record-vendor-triple a,.spro-record-vendor-list a{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-vendor-triple b,.spro-record-vendor-list b{font-size:14px}.spro-record-vendor-triple small,.spro-record-vendor-triple em,.spro-record-vendor-list small,.spro-record-vendor-list em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.36}.spro-record-vendor-triple span,.spro-record-vendor-list span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}.spro-record-vendor-triple em,.spro-record-vendor-list em{color:#313b53;font-weight:850}.spro-record-vendor-triple p,.spro-record-vendor-list p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-record-vendor-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-vendor-resource-grid section{display:grid;align-content:start;gap:7px;min-height:200px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-vendor-resource-grid b{color:var(--spro-forest);font-size:15px}.spro-record-vendor-resource-grid small{display:block;padding-top:7px;border-top:1px solid var(--spro-line-soft);color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-record-vendor-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-vendor-roles article{display:grid;gap:8px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-vendor-roles b{color:var(--spro-forest);font-size:15px}.spro-record-vendor-roles small{display:grid;gap:3px;color:var(--spro-muted);font-size:12px;line-height:1.38}.spro-record-vendor-roles i{color:#0b296f;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}
.spro-record-vendor-reporting{margin:0 0 18px;overflow:hidden}.spro-record-vendor-reporting>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-height:390px;overflow:auto;padding:0 18px 18px}.spro-record-vendor-reporting a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 9px;min-height:78px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-vendor-reporting span{display:grid;width:40px;height:40px;grid-row:span 2;place-items:center;border-radius:10px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900}.spro-record-vendor-reporting b{font-size:13px}.spro-record-vendor-reporting small{color:var(--spro-muted);font-size:11px;line-height:1.35}
@media(max-width:1240px){.spro-record-vendor-hero,.spro-record-vendor-grid,.spro-record-vendor-triple{grid-template-columns:1fr}.spro-record-vendor-hero>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-record-vendor-readiness,.spro-record-vendor-identity>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-vendor-flow{grid-template-columns:repeat(6,165px)}.spro-record-vendor-reporting>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.spro-record-vendor-hero{padding:16px}.spro-record-vendor-hero h2{font-size:28px}.spro-record-vendor-hero>div:last-child,.spro-record-vendor-readiness,.spro-record-vendor-actions,.spro-record-vendor-identity>div,.spro-record-vendor-resource-grid,.spro-record-vendor-roles,.spro-record-vendor-reporting>div{grid-template-columns:1fr}.spro-record-vendor-flow{grid-template-columns:1fr;overflow:visible}.spro-record-vendor-flow article{min-height:0}.spro-record-vendor-flow article:not(:last-child):after{display:none}.spro-record-vendor-readiness,.spro-record-vendor-actions,.spro-record-vendor-identity>div,.spro-record-vendor-flow,.spro-record-vendor-triple .spro-record-360-card>div,.spro-record-vendor-list,.spro-record-vendor-resource-grid,.spro-record-vendor-roles,.spro-record-vendor-reporting>div{padding:13px}.spro-record-vendor-actions,.spro-record-vendor-list{max-height:none}.spro-record-vendor-readiness>div,.spro-record-vendor-identity article,.spro-record-vendor-hero article{min-height:0}}

/* SOCIETY PRO depth pass: flat, shop and space 360 cockpit. */
.spro-record-space-hero{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:16px;margin:0 0 18px;padding:20px;border:1px solid #e2ded6;border-radius:22px;color:#fff;background:radial-gradient(circle at 82% 13%,rgba(255,255,255,.24),transparent 25%),linear-gradient(128deg,#071433,#0c2663 58%,#7b5f24);box-shadow:0 24px 60px rgba(7,59,53,.16);animation:sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both}.spro-record-space-hero span{color:#f9f1e0;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-space-hero h2{margin:8px 0 7px;font:600 35px/1.05 var(--spro-display)}.spro-record-space-hero p{max-width:720px;margin:0;color:#f8f5ee;font-size:15px;line-height:1.5}.spro-record-space-hero>div:last-child{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.spro-record-space-hero article{display:grid;gap:5px;min-height:130px;padding:14px;border:1px solid rgba(255,255,255,.24);border-radius:15px;background:rgba(255,255,255,.13);backdrop-filter:blur(14px)}.spro-record-space-hero article strong{overflow-wrap:anywhere;font:650 22px/1.08 var(--spro-display)}.spro-record-space-hero article small{color:#fdfaf3;font-size:12px;line-height:1.35}
.spro-record-space-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:16px;margin:0 0 18px}.spro-record-space-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-space-readiness>div{display:grid;grid-template-columns:32px minmax(0,1fr);gap:3px 10px;min-height:112px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-record-space-readiness i{grid-row:span 2;display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:#a66b3a;font-style:normal;font-weight:900}.spro-record-space-readiness .is-ready i{background:var(--spro-emerald)}.spro-record-space-readiness b{color:var(--spro-forest);font-size:14px}.spro-record-space-readiness small{color:var(--spro-muted);font-size:12px;line-height:1.36}
.spro-record-space-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:610px;overflow:auto;padding:18px}.spro-record-space-actions a{display:grid;gap:6px;min-height:108px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-space-actions a:hover,.spro-record-space-triple a:hover,.spro-record-space-list a:hover,.spro-record-space-resource-grid a:hover,.spro-record-space-reporting a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-record-space-actions b{font-size:15px}.spro-record-space-actions small{color:var(--spro-muted);font-size:12px;line-height:1.38}
.spro-record-space-identity{margin:0 0 18px;overflow:hidden}.spro-record-space-identity>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-record-space-identity article{display:grid;gap:6px;min-height:124px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-space-identity span{color:#0b296f;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-space-identity strong{color:var(--spro-forest);font:640 20px/1.08 var(--spro-display);overflow-wrap:anywhere}.spro-record-space-identity small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-space-flow-card{margin:0 0 18px;overflow:hidden}.spro-record-space-flow{display:grid;grid-template-columns:repeat(7,minmax(128px,1fr));gap:9px;overflow:auto;padding:0 18px 18px}.spro-record-space-flow article{position:relative;min-height:138px;padding:13px;border:1px solid #e2dfd7;border-radius:13px;background:#fbfaf8}.spro-record-space-flow article.complete{border-color:#e0d6bf;background:#fbf8f1}.spro-record-space-flow article.current{border-color:#efc27e;background:#fff5eb}.spro-record-space-flow article.blocked{border-color:#e6b5a0;background:#fff4ef}.spro-record-space-flow article:not(:last-child):after{content:"→";position:absolute;right:-14px;top:44%;z-index:2;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-weight:900}.spro-record-space-flow span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:11px;font-weight:900}.spro-record-space-flow b{display:block;margin-top:10px;color:var(--spro-forest);font-size:14px}.spro-record-space-flow small{display:block;margin-top:6px;color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-space-triple{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-record-space-triple .spro-record-360-card>div,.spro-record-space-list{display:grid;gap:8px;max-height:470px;overflow:auto;padding:0 18px 18px}.spro-record-space-list.compact{max-height:360px;padding-top:0}.spro-record-space-triple a,.spro-record-space-list a{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-space-triple b,.spro-record-space-list b{font-size:14px}.spro-record-space-triple small,.spro-record-space-triple em,.spro-record-space-list small,.spro-record-space-list em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.36}.spro-record-space-triple span,.spro-record-space-list span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}.spro-record-space-triple em,.spro-record-space-list em{color:#313b53;font-weight:850}.spro-record-space-triple p,.spro-record-space-list p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-record-space-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:18px}.spro-record-space-summary article{display:grid;gap:6px;min-height:118px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-space-summary span{color:#0b296f;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-space-summary strong{color:var(--spro-forest);font:640 20px/1.08 var(--spro-display);overflow-wrap:anywhere}.spro-record-space-summary small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-space-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-space-resource-grid section{display:grid;align-content:start;gap:7px;min-height:210px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-space-resource-grid b{color:var(--spro-forest);font-size:15px}.spro-record-space-resource-grid small{display:block;padding-top:7px;border-top:1px solid var(--spro-line-soft);color:var(--spro-muted);font-size:12px;line-height:1.4}.spro-record-space-resource-grid a{color:inherit;text-decoration:none}
.spro-record-space-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-space-roles article{display:grid;gap:8px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-space-roles b{color:var(--spro-forest);font-size:15px}.spro-record-space-roles small{display:grid;gap:3px;color:var(--spro-muted);font-size:12px;line-height:1.38}.spro-record-space-roles i{color:#0b296f;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}
.spro-record-space-reporting{margin:0 0 18px;overflow:hidden}.spro-record-space-reporting>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;max-height:420px;overflow:auto;padding:0 18px 18px}.spro-record-space-reporting a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 9px;min-height:78px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-space-reporting span{display:grid;width:40px;height:40px;grid-row:span 2;place-items:center;border-radius:10px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900}.spro-record-space-reporting b{font-size:13px}.spro-record-space-reporting small{color:var(--spro-muted);font-size:11px;line-height:1.35}
@media(max-width:1280px){.spro-record-space-hero,.spro-record-space-grid,.spro-record-space-triple{grid-template-columns:1fr}.spro-record-space-hero>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-record-space-readiness,.spro-record-space-identity>div,.spro-record-space-summary,.spro-record-space-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-space-flow{grid-template-columns:repeat(7,160px)}.spro-record-space-reporting>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.spro-record-space-hero{padding:16px}.spro-record-space-hero h2{font-size:28px}.spro-record-space-hero>div:last-child,.spro-record-space-readiness,.spro-record-space-actions,.spro-record-space-identity>div,.spro-record-space-summary,.spro-record-space-resource-grid,.spro-record-space-roles,.spro-record-space-reporting>div{grid-template-columns:1fr}.spro-record-space-flow{grid-template-columns:1fr;overflow:visible}.spro-record-space-flow article{min-height:0}.spro-record-space-flow article:not(:last-child):after{display:none}.spro-record-space-readiness,.spro-record-space-actions,.spro-record-space-identity>div,.spro-record-space-flow,.spro-record-space-triple .spro-record-360-card>div,.spro-record-space-list,.spro-record-space-summary,.spro-record-space-resource-grid,.spro-record-space-roles,.spro-record-space-reporting>div{padding:13px}.spro-record-space-actions,.spro-record-space-list{max-height:none}.spro-record-space-readiness>div,.spro-record-space-identity article,.spro-record-space-hero article{min-height:0}}

/* SOCIETY PRO depth pass: resident-safe invoice, tax and collection 360 cockpit. */
.spro-record-invoice-hero{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:16px;margin:0 0 18px;padding:20px;border:1px solid #e4e1d9;border-radius:22px;color:#fff;background:radial-gradient(circle at 83% 13%,rgba(255,255,255,.26),transparent 25%),linear-gradient(128deg,#10192d,#0b2767 56%,#b58338);box-shadow:0 24px 60px rgba(7,59,53,.16);animation:sproStudioReveal .42s cubic-bezier(.2,.78,.25,1) both}.spro-record-invoice-hero span{color:#ffe5c7;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-invoice-hero h2{margin:8px 0 7px;font:600 35px/1.05 var(--spro-display)}.spro-record-invoice-hero p{max-width:720px;margin:0;color:#fff0e2;font-size:15px;line-height:1.5}.spro-record-invoice-hero>div:last-child{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.spro-record-invoice-hero article{display:grid;gap:5px;min-height:130px;padding:14px;border:1px solid rgba(255,255,255,.24);border-radius:15px;background:rgba(255,255,255,.13);backdrop-filter:blur(14px)}.spro-record-invoice-hero article strong{overflow-wrap:anywhere;font:650 22px/1.08 var(--spro-display)}.spro-record-invoice-hero article small{color:#ffefdc;font-size:12px;line-height:1.35}
.spro-record-invoice-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:16px;margin:0 0 18px}.spro-record-invoice-grid.wide{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr)}.spro-record-invoice-grid.policy{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-invoice-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-invoice-readiness>div{display:grid;grid-template-columns:32px minmax(0,1fr);gap:3px 10px;min-height:112px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-record-invoice-readiness i{grid-row:span 2;display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:#aa7130;font-style:normal;font-weight:900}.spro-record-invoice-readiness .is-ready i{background:var(--spro-emerald)}.spro-record-invoice-readiness b{color:var(--spro-forest);font-size:14px}.spro-record-invoice-readiness small{color:var(--spro-muted);font-size:12px;line-height:1.36}
.spro-record-invoice-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:610px;overflow:auto;padding:18px}.spro-record-invoice-actions a{display:grid;gap:6px;min-height:108px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-invoice-actions a:hover,.spro-record-invoice-triple a:hover,.spro-record-invoice-reporting a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-record-invoice-actions b{font-size:15px}.spro-record-invoice-actions small{color:var(--spro-muted);font-size:12px;line-height:1.38}
.spro-record-invoice-party{margin:0 0 18px;overflow:hidden}.spro-record-invoice-party>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-record-invoice-party article{display:grid;gap:6px;min-height:124px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-invoice-party span,.spro-record-invoice-tax span,.spro-record-invoice-totals span{color:#0b296f;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-record-invoice-party strong,.spro-record-invoice-tax strong,.spro-record-invoice-totals strong{overflow-wrap:anywhere;color:var(--spro-forest);font:640 20px/1.08 var(--spro-display)}.spro-record-invoice-party small,.spro-record-invoice-tax small,.spro-record-invoice-totals small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-invoice-flow-card{margin:0 0 18px;overflow:hidden}.spro-record-invoice-flow{display:grid;grid-template-columns:repeat(6,minmax(135px,1fr));gap:9px;overflow:auto;padding:0 18px 18px}.spro-record-invoice-flow article{position:relative;min-height:138px;padding:13px;border:1px solid #e2dfd7;border-radius:13px;background:#fbfaf8}.spro-record-invoice-flow article.complete{border-color:#e0d6bf;background:#fbf8f1}.spro-record-invoice-flow article.current{border-color:#efc27e;background:#fff5eb}.spro-record-invoice-flow article.pending{border-color:#e5ddd0;background:#faf5f1}.spro-record-invoice-flow article:not(:last-child):after{content:"→";position:absolute;right:-14px;top:44%;z-index:2;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:var(--spro-emerald);font-weight:900}.spro-record-invoice-flow span{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;color:#fff;background:var(--spro-forest);font-size:11px;font-weight:900}.spro-record-invoice-flow b{display:block;margin-top:10px;color:var(--spro-forest);font-size:14px}.spro-record-invoice-flow small{display:block;margin-top:6px;color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-invoice-lines{display:grid;gap:8px;max-height:620px;overflow:auto;padding:18px}.spro-record-invoice-lines>article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-invoice-lines>article>span{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;color:#0b296f;background:#f5f1e7;font-size:11px;font-weight:900}.spro-record-invoice-lines b{display:block;color:var(--spro-forest);font-size:15px}.spro-record-invoice-lines small,.spro-record-invoice-lines em{display:block;margin-top:4px;color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.36}.spro-record-invoice-lines em{color:#313b53;font-weight:850}.spro-record-invoice-lines div div{display:grid;gap:3px;margin-top:8px;padding-top:8px;border-top:1px solid var(--spro-line-soft)}.spro-record-invoice-lines p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-record-invoice-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-invoice-totals article{display:grid;gap:6px;min-height:104px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-invoice-totals article:last-child{grid-column:1/-1;border-color:#dcd1b9;background:linear-gradient(145deg,#faf7f0,#fff)}.spro-record-invoice-totals article:last-child strong{font-size:28px}
.spro-record-invoice-tax{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:18px}.spro-record-invoice-tax article{display:grid;gap:6px;min-height:118px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-invoice-policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}.spro-record-invoice-policy-grid section{display:grid;align-content:start;gap:7px;min-height:190px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-invoice-policy-grid b{color:var(--spro-forest);font-size:15px}.spro-record-invoice-policy-grid small{display:block;padding-top:7px;border-top:1px solid var(--spro-line-soft);color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-record-invoice-triple{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}.spro-record-invoice-triple .spro-record-360-card>div{display:grid;gap:8px;max-height:470px;overflow:auto;padding:0 18px 18px}.spro-record-invoice-triple a,.spro-record-invoice-triple article article{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-invoice-triple b{font-size:14px}.spro-record-invoice-triple small,.spro-record-invoice-triple em{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.36}.spro-record-invoice-triple span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}.spro-record-invoice-triple em{color:#313b53;font-weight:850}.spro-record-invoice-triple p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-record-invoice-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px}.spro-record-invoice-roles article{display:grid;gap:8px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}.spro-record-invoice-roles b{color:var(--spro-forest);font-size:15px}.spro-record-invoice-roles small{display:grid;gap:3px;color:var(--spro-muted);font-size:12px;line-height:1.38}.spro-record-invoice-roles i{color:#0b296f;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}
.spro-record-invoice-reporting{overflow:hidden}.spro-record-invoice-reporting>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:420px;overflow:auto;padding:0 18px 18px}.spro-record-invoice-reporting a{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 9px;min-height:78px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-record-invoice-reporting span{display:grid;width:40px;height:40px;grid-row:span 2;place-items:center;border-radius:10px;color:#0b296f;background:#f5f1e7;font-size:10px;font-weight:900}.spro-record-invoice-reporting b{font-size:13px}.spro-record-invoice-reporting small{color:var(--spro-muted);font-size:11px;line-height:1.35}
@media(max-width:1280px){.spro-record-invoice-hero,.spro-record-invoice-grid,.spro-record-invoice-grid.wide,.spro-record-invoice-grid.policy,.spro-record-invoice-triple{grid-template-columns:1fr}.spro-record-invoice-hero>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-record-invoice-readiness,.spro-record-invoice-party>div,.spro-record-invoice-tax,.spro-record-invoice-policy-grid,.spro-record-invoice-roles,.spro-record-invoice-reporting>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-record-invoice-flow{grid-template-columns:repeat(6,165px)}}@media(max-width:720px){.spro-record-invoice-hero{padding:16px}.spro-record-invoice-hero h2{font-size:28px}.spro-record-invoice-hero>div:last-child,.spro-record-invoice-readiness,.spro-record-invoice-actions,.spro-record-invoice-party>div,.spro-record-invoice-totals,.spro-record-invoice-tax,.spro-record-invoice-policy-grid,.spro-record-invoice-roles,.spro-record-invoice-reporting>div{grid-template-columns:1fr}.spro-record-invoice-flow{grid-template-columns:1fr;overflow:visible}.spro-record-invoice-flow article{min-height:0}.spro-record-invoice-flow article:not(:last-child):after{display:none}.spro-record-invoice-readiness,.spro-record-invoice-actions,.spro-record-invoice-party>div,.spro-record-invoice-flow,.spro-record-invoice-lines,.spro-record-invoice-totals,.spro-record-invoice-tax,.spro-record-invoice-policy-grid,.spro-record-invoice-triple .spro-record-360-card>div,.spro-record-invoice-roles,.spro-record-invoice-reporting>div{padding:13px}.spro-record-invoice-actions,.spro-record-invoice-lines,.spro-record-invoice-triple .spro-record-360-card>div{max-height:none}.spro-record-invoice-readiness>div,.spro-record-invoice-party article,.spro-record-invoice-hero article,.spro-record-invoice-tax article{min-height:0}.spro-record-invoice-lines>article{grid-template-columns:1fr}.spro-record-invoice-lines>article>span{width:38px;height:38px}}

/* SOCIETY PRO depth pass: transactional vendor and service workbenches. */
.spro-transaction-queue-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 18px}
.spro-transaction-queue-grid a{display:grid;gap:7px;min-height:158px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;color:inherit;background:linear-gradient(145deg,#fff,#fbfaf7);text-decoration:none;box-shadow:0 12px 28px rgba(7,59,53,.05);transition:.18s ease}
.spro-transaction-queue-grid a:hover{border-color:var(--spro-emerald);box-shadow:0 15px 34px rgba(7,59,53,.09);transform:translateY(-2px)}
.spro-transaction-queue-grid span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.spro-transaction-queue-grid strong{font:600 34px/1 var(--spro-display)}
.spro-transaction-queue-grid small{color:var(--spro-muted);font-size:13px;line-height:1.43}
.spro-transaction-queue-grid em{align-self:end;width:max-content;padding:6px 9px;border-radius:999px;color:#0b2767;background:#f5f1e7;font-size:12px;font-style:normal;font-weight:900}
.spro-transaction-charts{overflow:hidden;margin:0 0 18px}
.spro-transaction-charts>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-transaction-charts article{padding:15px;border:1px solid var(--spro-line);border-radius:15px;background:#fff;box-shadow:0 10px 24px rgba(7,59,53,.04)}
.spro-transaction-charts article header span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-transaction-charts article h3{margin:5px 0 12px;font:560 23px/1.1 var(--spro-display)}
.spro-mini-bars{display:grid;gap:9px}
.spro-mini-bars p{display:grid;grid-template-columns:112px minmax(0,1fr) 44px;gap:9px;align-items:center;margin:0}
.spro-mini-bars span{overflow:hidden;color:#2c3549;font-size:13px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}
.spro-mini-bars i{position:relative;height:12px;overflow:hidden;border-radius:999px;background:#eeebe6}
.spro-mini-bars i:after{content:"";display:block;width:min(100%,calc((var(--value,0) * 9%) + 6%));height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b2767,#d99f5d);animation:sproScaleX .85s cubic-bezier(.2,.78,.25,1) both}
.spro-mini-bars .tone-rose i:after{background:linear-gradient(90deg,#a94e48,#f0b38d)}
.spro-mini-bars .tone-amber i:after{background:linear-gradient(90deg,#a86c2b,#ecb47b)}
.spro-mini-bars .tone-blue i:after{background:linear-gradient(90deg,#8a6a25,#e6ca8e)}
.spro-mini-bars .tone-teal i:after{background:linear-gradient(90deg,#0b2767,#c7ac71)}
.spro-mini-bars .tone-green i:after{background:linear-gradient(90deg,#163272,#d8b569)}
.spro-mini-bars .tone-slate i:after{background:linear-gradient(90deg,#575d6c,#bfc3cc)}
.spro-mini-bars strong{justify-self:end;color:var(--spro-forest);font-size:13px}
.spro-transaction-table{max-height:720px;overflow:auto}
.spro-transaction-table.compact{max-height:720px}
.spro-transaction-table a{grid-template-columns:minmax(0,1fr) 70px 60px;min-height:66px}
.spro-transaction-table b{font-size:15px}
.spro-transaction-table small{font-size:12px}
.spro-transaction-table em{font-size:11px;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:1240px){.spro-transaction-queue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-transaction-charts>div{grid-template-columns:1fr}.spro-mini-bars p{grid-template-columns:145px minmax(0,1fr) 44px}}
@media(max-width:720px){.spro-transaction-queue-grid{grid-template-columns:1fr}.spro-transaction-queue-grid a{min-height:0}.spro-transaction-charts>div{padding:0 13px 13px}.spro-mini-bars p,.spro-transaction-table a{grid-template-columns:1fr}.spro-mini-bars strong{justify-self:start}.spro-mini-bars i{height:13px}}

/* SOCIETY PRO depth pass: vendor transactional action desk and RFQ entry. */
.spro-vendor-action-desk{overflow:hidden;margin:0 0 18px}
.spro-vendor-action-desk>div:not(.spro-empty-state){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-vendor-action-desk form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:15px;border:1px solid var(--spro-line);border-radius:15px;background:linear-gradient(145deg,#fff,#fbfaf8)}
.spro-vendor-action-desk form label,.spro-vendor-bid-entry label{display:grid;gap:6px;color:#263046;font-size:13px;font-weight:850}
.spro-vendor-action-desk form label.wide,.spro-vendor-bid-entry label.wide{grid-column:1/-1}
.spro-vendor-action-desk span,.spro-vendor-bid-entry label span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.spro-vendor-action-desk input,.spro-vendor-action-desk select,.spro-vendor-action-desk textarea,.spro-vendor-bid-entry input,.spro-vendor-bid-entry select,.spro-vendor-bid-entry textarea{box-sizing:border-box;width:100%;min-height:44px;padding:10px 11px;border:1px solid #dad5c9;border-radius:10px;background:#fff;font:600 14px/1.45 var(--spro-font)}
.spro-vendor-action-desk textarea,.spro-vendor-bid-entry textarea{resize:vertical}
.spro-vendor-action-desk button,.spro-vendor-bid-entry button{grid-column:1/-1;min-height:44px;border:0;border-radius:10px;color:#fff;background:linear-gradient(135deg,#0b2767,#7d5c16);font:900 13px var(--spro-font);cursor:pointer}
.spro-vendor-action-desk .spro-upload.compact{grid-column:1/-1;min-height:70px;border-color:#d5ccb7;background:#fbf9f6}
.spro-vendor-action-desk .spro-upload.compact span{color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:0;text-transform:none}
.spro-vendor-action-desk .spro-upload.compact b{color:#17223d;font-size:14px;line-height:1.25}
.spro-vendor-action-desk .spro-upload.compact small{color:var(--spro-muted);font-size:12px;line-height:1.45}
.spro-vendor-admin-instruction{margin:0 18px 18px;border-color:#d9cfb9!important;background:linear-gradient(145deg,#faf7f1,#fff)!important}
.spro-vendor-bid-entry{margin-top:12px;padding:10px;border:1px solid #e6e2d8;border-radius:12px;background:#fbfaf8}
.spro-vendor-bid-entry summary{cursor:pointer;color:#0b2767;font-size:13px;font-weight:900}
.spro-vendor-bid-entry form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}
.spro-vendor-bid-entry .wide{grid-column:1/-1}
.spro-vendor-bid-entry button{grid-column:1/-1}
.spro-vendor-procurement-rfqs .spro-panel-head h2{max-width:760px}.spro-procurement-rfq-card>small{display:block;margin-top:6px;line-height:1.6}.spro-procurement-line-offers{display:grid;gap:10px}.spro-procurement-line-offers fieldset{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:12px;border:1px solid #e6e2d9;border-radius:10px;background:#fff}.spro-procurement-line-offers legend{padding:0 5px;color:#0b2767;font-size:12px;font-weight:900}.spro-procurement-line-offers fieldset>p,.spro-procurement-line-offers fieldset>small{grid-column:1/-1;margin:0;color:var(--spro-muted);font-size:12px;line-height:1.5}.spro-procurement-line-offers fieldset>small{color:var(--spro-faint);font-weight:750}.spro-procurement-quote-entry{background:#faf8f5}.spro-procurement-quote-entry button{background:linear-gradient(135deg,#0a235f,#6f5722)}
.spro-vendor-journal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-vendor-journal a,.spro-vendor-journal p{display:grid;gap:6px;min-height:116px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:#fff;text-decoration:none}
.spro-vendor-journal a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}
.spro-vendor-journal span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b2767;background:#f5f1e7;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-vendor-journal b{font-size:14px}
.spro-vendor-journal small,.spro-vendor-journal em,.spro-vendor-journal p{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-vendor-journal .spro-evidence-line{color:#0b2767;font-weight:800}
.spro-vendor-journal em{margin-top:auto;font-style:normal;font-weight:800;color:#313b53}
@media(max-width:1100px){.spro-vendor-action-desk>div:not(.spro-empty-state),.spro-vendor-journal{grid-template-columns:1fr}.spro-vendor-bid-entry form{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-procurement-line-offers fieldset{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.spro-vendor-action-desk>div:not(.spro-empty-state),.spro-vendor-journal{padding:0 13px 13px}.spro-vendor-action-desk form,.spro-vendor-bid-entry form,.spro-procurement-line-offers fieldset{grid-template-columns:1fr}.spro-vendor-action-desk input,.spro-vendor-action-desk select,.spro-vendor-action-desk textarea,.spro-vendor-bid-entry input,.spro-vendor-bid-entry select,.spro-vendor-bid-entry textarea{font-size:15px}.spro-vendor-admin-instruction{margin:0 13px 13px}}

/* SOCIETY PRO depth pass: vendor workflow spine and runbook evidence. */
.spro-vendor-stage-board{overflow:hidden;margin:0 0 18px}.spro-vendor-stage-board>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:var(--spro-line-soft)}.spro-vendor-stage-board>div>a{display:grid;gap:8px;min-height:152px;padding:17px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-vendor-stage-board>div>a:hover{z-index:1;box-shadow:0 16px 34px rgba(7,59,53,.1);transform:translateY(-1px)}.spro-vendor-stage-board span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-vendor-stage-board strong{font:620 38px/1 var(--spro-display);color:var(--spro-forest)}.spro-vendor-stage-board small{color:var(--spro-muted);font-size:13px;line-height:1.42}.spro-vendor-stage-board a.tone-risk{background:#fff8f3}.spro-vendor-stage-board a.tone-finance{background:#fdfbf5}.spro-vendor-stage-board a.tone-market{background:#fdfbf6}.spro-vendor-stage-board a.tone-governance{background:#fefcf8}.spro-vendor-stage-board a.tone-delivery,.spro-vendor-stage-board a.tone-attention{background:#fcfaf7}
.spro-vendor-runbooks{overflow:hidden;margin:0 0 18px}.spro-vendor-runbooks>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px}.spro-vendor-runbooks article{display:grid;gap:13px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;background:linear-gradient(145deg,#fff,#fbfaf8);box-shadow:0 12px 28px rgba(7,59,53,.045)}.spro-vendor-runbooks article.tone-blocked{border-color:#efc7b8;background:linear-gradient(145deg,#fff8f4,#fff)}.spro-vendor-runbooks article.tone-done{border-color:#dcd3bf;background:linear-gradient(145deg,#fbf9f4,#fff)}.spro-vendor-runbooks article>header{display:flex;align-items:flex-start;justify-content:space-between;gap:13px}.spro-vendor-runbooks article>header span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-vendor-runbooks h3{margin:4px 0;font:560 21px/1.12 var(--spro-display)}.spro-vendor-runbooks article>header small{display:block;color:var(--spro-muted);font-size:12px;line-height:1.4}.spro-vendor-runbooks article>header>a{flex:0 0 auto;padding:8px 10px;border:1px solid #d8cfbd;border-radius:9px;color:var(--spro-emerald);background:#f8f6f2;font-size:12px;font-weight:900;text-decoration:none}.spro-vendor-runbook-progress{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:9px;align-items:center}.spro-vendor-runbook-progress i{height:10px;overflow:hidden;border-radius:999px;background:#edeae4}.spro-vendor-runbook-progress i:before{display:block;width:var(--progress);height:100%;border-radius:999px;background:linear-gradient(90deg,#0b296f,#d6a56d);content:""}.spro-vendor-runbook-progress b{color:#313b53;font-size:12px}.spro-vendor-runbooks ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.spro-vendor-runbooks li>a{display:grid;gap:5px;min-height:112px;padding:11px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none}.spro-vendor-runbooks li b{font-size:13px}.spro-vendor-runbooks li span{width:max-content;padding:4px 7px;border-radius:999px;color:#0b296f;background:#f5f1e8;font-size:10px;font-weight:900;text-transform:uppercase}.spro-vendor-runbooks li.state-blocked span{color:#9c433c;background:#fff0ed}.spro-vendor-runbooks li.state-waiting span,.spro-vendor-runbooks li.state-next span{color:#8b6123;background:#ffefdf}.spro-vendor-runbooks li.state-pending span{color:#5b606d;background:#f2f0ed}.spro-vendor-runbooks li.state-done span{color:#fff;background:var(--spro-emerald)}.spro-vendor-runbooks li small{color:var(--spro-muted);font-size:11px;line-height:1.38}
.spro-vendor-process-feed{overflow:hidden;margin:0 0 18px}.spro-vendor-process-feed>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 18px 18px}.spro-vendor-process-feed a,.spro-vendor-process-feed p{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none}.spro-vendor-process-feed a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-vendor-process-feed span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:10px;font-weight:900;text-transform:uppercase}.spro-vendor-process-feed b{font-size:14px}.spro-vendor-process-feed small,.spro-vendor-process-feed p{color:var(--spro-muted);font-size:12px;line-height:1.4}
@media(max-width:1220px){.spro-vendor-stage-board>div{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-vendor-runbooks ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.spro-vendor-runbooks>div,.spro-vendor-process-feed>div{grid-template-columns:1fr}.spro-vendor-runbooks article>header{display:grid}.spro-vendor-runbooks article>header>a{width:max-content}}
@media(max-width:680px){.spro-vendor-stage-board>div,.spro-vendor-runbooks ol{grid-template-columns:1fr}.spro-vendor-runbooks>div,.spro-vendor-process-feed>div{padding:0 13px 13px}.spro-vendor-stage-board>div>a{min-height:0}.spro-vendor-runbooks li>a{min-height:0}}

/* SOCIETY PRO depth pass: vendor-created service intake and reliability reporting. */
.spro-vendor-intake{overflow:hidden;margin:0 0 18px}.spro-vendor-intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px}.spro-vendor-intake-grid form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px;border:1px solid var(--spro-line);border-radius:16px;background:linear-gradient(145deg,#fff,#fbfaf8);box-shadow:0 10px 24px rgba(7,59,53,.045)}.spro-vendor-intake-grid label{display:grid;gap:6px;color:#263046;font-size:13px;font-weight:850}.spro-vendor-intake-grid label.wide{grid-column:1/-1}.spro-vendor-intake-grid label span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.spro-vendor-intake-grid input,.spro-vendor-intake-grid select,.spro-vendor-intake-grid textarea{box-sizing:border-box;width:100%;min-height:46px;padding:10px 11px;border:1px solid #dad5c9;border-radius:10px;background:#fff;font:600 14px/1.45 var(--spro-font)}.spro-vendor-intake-grid textarea{resize:vertical}.spro-vendor-intake-grid button{grid-column:1/-1;min-height:46px;border:0;border-radius:10px;color:#fff;background:linear-gradient(135deg,#0b2767,#7d5c16);font:900 13px var(--spro-font);cursor:pointer}.spro-vendor-reliability-ledger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 18px 18px}.spro-vendor-reliability-ledger a,.spro-vendor-reliability-ledger p{display:grid;gap:6px;min-height:126px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-vendor-reliability-ledger a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-vendor-reliability-ledger a.tone-risk{border-color:#efc7b8;background:#fff8f4}.spro-vendor-reliability-ledger a.tone-recovery{border-color:#dcd3bf;background:#fbf9f4}.spro-vendor-reliability-ledger span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:10px;font-weight:900;text-transform:uppercase}.spro-vendor-reliability-ledger a.tone-risk span{color:#9c433c;background:#fff0ed}.spro-vendor-reliability-ledger a.tone-recovery span{color:#fff;background:var(--spro-emerald)}.spro-vendor-reliability-ledger b{font-size:14px}.spro-vendor-reliability-ledger small,.spro-vendor-reliability-ledger em,.spro-vendor-reliability-ledger p{color:var(--spro-muted);font-size:12px;font-style:normal;line-height:1.4}
@media(max-width:1100px){.spro-vendor-intake-grid,.spro-vendor-reliability-ledger{grid-template-columns:1fr}}
@media(max-width:720px){.spro-vendor-intake-grid,.spro-vendor-reliability-ledger{padding:0 13px 13px}.spro-vendor-intake-grid form{grid-template-columns:1fr}.spro-vendor-intake-grid input,.spro-vendor-intake-grid select,.spro-vendor-intake-grid textarea{font-size:15px}.spro-vendor-reliability-ledger a{min-height:0}}

/* SOCIETY PRO depth pass: resident-safe service command workbench. */
.spro-service-lifecycle-board{overflow:hidden;margin:0 0 18px}.spro-service-lifecycle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 18px}.spro-service-lifecycle-grid>article{display:grid;grid-template-rows:auto 1fr auto;min-height:382px;border:1px solid var(--spro-line);border-radius:18px;background:linear-gradient(145deg,#fff,#fbfaf8);box-shadow:0 14px 32px rgba(7,59,53,.052);overflow:hidden}.spro-service-lifecycle-grid>article>header{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;padding:16px;border-bottom:1px solid var(--spro-line-soft)}.spro-service-lifecycle-grid>article>header i{display:grid;width:46px;height:46px;place-items:center;border-radius:15px;color:#fff;background:linear-gradient(135deg,#07173b,#0b2767);font-size:12px;font-style:normal;font-weight:900}.spro-service-lifecycle-grid>article>header b,.spro-service-lifecycle-grid>article>header strong,.spro-service-lifecycle-grid>article>header small{display:block}.spro-service-lifecycle-grid>article>header b{font-size:17px;color:var(--spro-forest)}.spro-service-lifecycle-grid>article>header strong{margin:4px 0;font:620 34px/1 var(--spro-display);color:var(--spro-ink)}.spro-service-lifecycle-grid>article>header small{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-service-lifecycle-grid>article>div{display:grid;gap:8px;align-content:start;padding:12px}.spro-service-lifecycle-grid>article>div>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;min-height:64px;padding:10px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}.spro-service-lifecycle-grid>article>div>a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}.spro-service-lifecycle-grid em{display:inline-grid;min-width:54px;min-height:28px;place-items:center;padding:0 7px;border-radius:999px;color:#0b2767;background:#f5f1e7;font-size:10px;font-style:normal;font-weight:900;text-align:center}.spro-service-lifecycle-grid em.p0,.spro-service-lifecycle-grid em.p1{color:#9c433c;background:#fff0ed}.spro-service-lifecycle-grid em.p2{color:#80591f;background:#ffefdf}.spro-service-lifecycle-grid b,.spro-service-lifecycle-grid small{display:block}.spro-service-lifecycle-grid>article>div>a b{font-size:14px;line-height:1.25}.spro-service-lifecycle-grid>article>div>a small{margin-top:3px;color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-service-lifecycle-grid>article>div>a strong{justify-self:end;color:#313b53;font-size:12px;text-align:right}.spro-service-lifecycle-grid footer{padding:12px 16px;border-top:1px solid var(--spro-line-soft);background:#fdfcfb}.spro-service-lifecycle-grid footer a{color:var(--spro-emerald);font-size:13px;font-weight:900;text-decoration:none}.spro-service-control-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;margin:0 0 18px}.spro-service-finance-command,.spro-service-escalation-command,.spro-service-action-launcher{overflow:hidden}.spro-service-finance-command>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--spro-line-soft)}.spro-service-finance-command a{display:grid;gap:7px;min-height:142px;padding:16px;color:inherit;background:#fff;text-decoration:none}.spro-service-finance-command span,.spro-service-escalation-command b{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.spro-service-finance-command strong{font:600 26px/1.08 var(--spro-display);color:var(--spro-forest)}.spro-service-finance-command small,.spro-service-escalation-command small,.spro-service-action-launcher small{color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-service-escalation-command>div{display:grid;gap:8px;padding:0 18px 18px}.spro-service-escalation-command a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center;padding:13px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:#fff;text-decoration:none}.spro-service-escalation-command strong{font:600 26px/1 var(--spro-display);color:var(--spro-forest)}.spro-service-escalation-command small{grid-column:1/-1}.spro-service-action-launcher{margin:0 0 18px}.spro-service-action-launcher>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0 18px 18px}.spro-service-action-launcher a{display:grid;gap:8px;min-height:128px;padding:15px;border:1px solid var(--spro-line);border-radius:16px;color:inherit;background:linear-gradient(145deg,#fff,#fbfaf8);text-decoration:none;box-shadow:0 12px 28px rgba(7,59,53,.045);transition:.18s ease}.spro-service-action-launcher a:hover,.spro-service-finance-command a:hover,.spro-service-escalation-command a:hover{border-color:var(--spro-emerald);box-shadow:0 13px 29px rgba(7,59,53,.09);transform:translateY(-1px)}.spro-service-action-launcher b{font-size:15px;color:var(--spro-forest)}.spro-service-action-launcher em{align-self:end;width:max-content;padding:5px 8px;border-radius:999px;color:#0b2767;background:#f5f1e7;font-size:12px;font-style:normal;font-weight:900}.spro-service-table .spro-row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.spro-service-table .spro-row-actions form{display:inline-flex;align-items:center;gap:5px}.spro-service-table .spro-row-actions button,.spro-service-table .spro-row-actions select{min-height:30px;padding:0 8px;border:1px solid #dad5c9;border-radius:8px;background:#fff;color:#252f46;font:850 11px var(--spro-font);cursor:pointer}.spro-service-table .spro-row-actions button{color:#0b2767;background:#f8f6f2}.spro-service-table .spro-row-actions .danger{color:#a34239}
@media(max-width:1240px){.spro-service-lifecycle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-service-control-grid{grid-template-columns:1fr}.spro-service-finance-command>div,.spro-service-action-launcher>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.spro-service-lifecycle-grid,.spro-service-escalation-command>div,.spro-service-action-launcher>div{padding:0 13px 13px}.spro-service-lifecycle-grid,.spro-service-finance-command>div,.spro-service-action-launcher>div{grid-template-columns:1fr}.spro-service-lifecycle-grid>article{min-height:0}.spro-service-lifecycle-grid>article>div>a{grid-template-columns:1fr}.spro-service-lifecycle-grid em{width:max-content}.spro-service-lifecycle-grid>article>div>a strong{justify-self:start;text-align:left}.spro-service-table .spro-row-actions{display:grid}.spro-service-table .spro-row-actions form{display:grid;grid-template-columns:1fr auto}}

.spro-service-readiness{overflow:hidden;margin:0 0 18px}.spro-readiness-score{display:grid;justify-items:end;gap:4px;text-align:right}.spro-readiness-score strong{font:650 clamp(30px,4vw,48px)/1 var(--spro-display);color:var(--spro-forest)}.spro-readiness-score small{max-width:240px;color:var(--spro-muted);font-size:13px;line-height:1.4}.spro-readiness-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0 18px 18px}.spro-readiness-grid a{display:grid;gap:7px;min-height:144px;padding:15px;border:1px solid var(--spro-line);border-radius:16px;color:inherit;background:linear-gradient(145deg,#fff,#fbfaf8);text-decoration:none;box-shadow:0 12px 28px rgba(7,59,53,.045);transition:.18s ease}.spro-readiness-grid a:hover{border-color:var(--spro-emerald);box-shadow:0 15px 32px rgba(7,59,53,.09);transform:translateY(-1px)}.spro-readiness-grid a.tone-action{border-color:#efc3b7;background:linear-gradient(145deg,#fff7f4,#fff)}.spro-readiness-grid a.tone-warn{border-color:#eac39d;background:linear-gradient(145deg,#fff8f0,#fff)}.spro-readiness-grid a.tone-good{border-color:#dfd3b9;background:linear-gradient(145deg,#fbf8f3,#fff)}.spro-readiness-grid span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.spro-readiness-grid strong{font:620 34px/1 var(--spro-display);color:var(--spro-forest)}.spro-readiness-grid small{color:var(--spro-muted);font-size:13px;line-height:1.42}.spro-readiness-grid em{align-self:end;width:max-content;padding:6px 9px;border-radius:999px;color:#0b2767;background:#f5f1e7;font-size:12px;font-style:normal;font-weight:900}.spro-service-production-grid{grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr)}.spro-service-metadata-studio,.spro-service-workbench-matrix{overflow:hidden}.spro-service-metadata-studio>div{display:grid;gap:12px;padding:0 18px 18px;max-height:830px;overflow:auto}.spro-service-metadata-studio>div>article{display:grid;gap:12px;padding:15px;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:0 10px 24px rgba(7,59,53,.04)}.spro-service-metadata-studio>div>article.needs-work{border-color:#eac39d;background:linear-gradient(145deg,#fff8f0,#fff)}.spro-service-metadata-studio article header span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-service-metadata-studio article h3{margin:4px 0 3px;font:560 23px/1.12 var(--spro-display);color:var(--spro-forest)}.spro-service-metadata-studio article p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-category-flags{display:flex;flex-wrap:wrap;gap:6px}.spro-category-flags i{padding:5px 8px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:12px;font-style:normal;font-weight:850}.spro-category-flags i.warn{color:#8a5919;background:#ffe7cf}.spro-category-flags i.good{color:#0b2767;background:#f3eddf}.spro-service-schema-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px}.spro-service-schema-preview section{display:grid;align-content:start;gap:7px;padding:11px;border:1px solid var(--spro-line-soft);border-radius:13px;background:#fdfcfb}.spro-service-schema-preview b{color:var(--spro-forest);font-size:13px}.spro-service-schema-preview span{display:grid;gap:2px;padding:8px;border-radius:10px;background:#fff}.spro-service-schema-preview strong{font-size:13px;color:#252d3f}.spro-service-schema-preview small,.spro-service-schema-preview em{color:var(--spro-muted);font-size:12px;line-height:1.35}.spro-service-schema-preview em{font-style:normal}.spro-service-metadata-studio footer a{color:var(--spro-emerald);font-size:13px;font-weight:900;text-decoration:none}.spro-service-workbench-matrix>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 18px;max-height:830px;overflow:auto}.spro-service-workbench-matrix article{display:grid;gap:7px;min-height:148px;padding:14px;border:1px solid var(--spro-line);border-radius:15px;background:#fff;box-shadow:0 10px 24px rgba(7,59,53,.04)}.spro-service-workbench-matrix article>span{width:max-content;padding:5px 8px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:11px;font-weight:900;text-transform:uppercase}.spro-service-workbench-matrix b{font:560 20px/1.12 var(--spro-display);color:var(--spro-forest)}.spro-service-workbench-matrix small{color:var(--spro-muted);font-size:13px;line-height:1.42}.spro-service-workbench-matrix p{display:flex;flex-wrap:wrap;gap:7px;align-self:end;margin:0}.spro-service-workbench-matrix p a{padding:7px 9px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#faf8f4;font-size:12px;font-weight:900;text-decoration:none}
@media(max-width:1240px){.spro-readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-service-production-grid{grid-template-columns:1fr}.spro-service-workbench-matrix>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.spro-readiness-score{justify-items:start;text-align:left}.spro-readiness-grid,.spro-service-metadata-studio>div,.spro-service-workbench-matrix>div{grid-template-columns:1fr;padding:0 13px 13px}.spro-service-schema-preview{grid-template-columns:1fr}.spro-readiness-grid a,.spro-service-workbench-matrix article{min-height:0}}

/* SOCIETY PRO depth pass: production site and microsite catalog. */
.spro-site-catalog-hero{background:radial-gradient(circle at 82% 12%,rgba(209,180,112,.24),transparent 36%),linear-gradient(135deg,#07173b,#0b2259 48%,#101623);color:#fff;border:0;box-shadow:0 24px 70px rgba(7,59,53,.18)}.spro-site-catalog-hero h1{color:#fff}.spro-site-catalog-hero p{color:rgba(255,255,255,.82)}.spro-site-catalog-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.spro-site-catalog-kpis article{display:grid;gap:6px;min-height:126px;padding:17px;border:1px solid var(--spro-line);border-radius:18px;background:linear-gradient(145deg,#fff,#faf9f7);box-shadow:0 14px 34px rgba(7,59,53,.055)}.spro-site-catalog-kpis span{color:var(--spro-emerald);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-site-catalog-kpis strong{font:620 clamp(25px,3vw,38px)/1 var(--spro-display);color:var(--spro-forest)}.spro-site-catalog-kpis small{color:var(--spro-muted);font-size:13px;line-height:1.45}.spro-site-catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}.spro-site-catalog-toolbar label{display:flex;align-items:center;gap:10px;flex:1;min-height:50px;padding:0 14px;border:1px solid var(--spro-line);border-radius:999px;background:#fff;box-shadow:0 10px 28px rgba(7,59,53,.04)}.spro-site-catalog-toolbar label i{color:var(--spro-emerald);font-style:normal;font-weight:900}.spro-site-catalog-toolbar input{width:100%;border:0;outline:0;background:transparent;font:650 15px var(--spro-font);color:var(--spro-ink)}.spro-site-catalog-toolbar nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.spro-site-catalog-toolbar nav a{padding:10px 12px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#faf8f4;font-size:13px;font-weight:900;text-decoration:none}.spro-configured-sites,.spro-site-url-table{overflow:hidden;margin:0 0 18px}.spro-configured-sites .spro-table td,.spro-site-url-table .spro-table td{vertical-align:top}.spro-site-url-table strong{display:inline-grid;min-width:42px;height:30px;place-items:center;border-radius:999px;color:#fff;background:linear-gradient(135deg,#0b2767,#b78655);font:900 12px var(--spro-font)}.spro-muted{color:var(--spro-muted);font-size:13px}.spro-site-catalog-groups{display:grid;gap:18px;margin:0 0 18px}.spro-site-catalog-group{display:grid;gap:12px}.spro-site-catalog-group>header{display:flex;align-items:center;gap:13px}.spro-site-catalog-group>header>span{display:grid;width:44px;height:44px;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,#07173b,#0b2767);font-size:12px;font-weight:900}.spro-site-catalog-group h2{margin:0;font:560 clamp(24px,3vw,34px)/1.08 var(--spro-display);color:var(--spro-ink)}.spro-site-catalog-group p{margin:4px 0 0;color:var(--spro-muted);font-size:14px}.spro-site-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.spro-site-card{display:grid;gap:13px;padding:16px;border:1px solid var(--spro-line);border-radius:18px;background:#fff;box-shadow:0 14px 32px rgba(7,59,53,.05)}.spro-site-card>div>span{color:var(--spro-emerald);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spro-site-card h3{margin:4px 0 6px;font:560 23px/1.1 var(--spro-display)}.spro-site-card h3 a{color:inherit;text-decoration:none}.spro-site-card p{margin:0;color:var(--spro-muted);font-size:14px;line-height:1.5}.spro-site-card dl{display:grid;grid-template-columns:1.2fr .8fr;gap:1px;margin:0;overflow:hidden;border:1px solid var(--spro-line-soft);border-radius:12px;background:var(--spro-line-soft)}.spro-site-card dl div{padding:10px;background:#fbfaf9}.spro-site-card dt{margin:0 0 3px;color:var(--spro-muted);font-size:11px;font-weight:900;text-transform:uppercase}.spro-site-card dd{margin:0;color:#263046;font-size:13px;font-weight:850;line-height:1.35}.spro-site-card ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.spro-site-card ul li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;color:#313b53;font-size:13px;line-height:1.35}.spro-site-card ul li:before{content:"✓";display:grid;width:18px;height:18px;place-items:center;border-radius:50%;color:#fff;background:#0b2767;font-size:10px;font-weight:900}.spro-site-card details{border:1px solid var(--spro-line-soft);border-radius:13px;background:#fbfaf8}.spro-site-card summary{padding:11px 12px;color:var(--spro-emerald);font-size:13px;font-weight:900;cursor:pointer}.spro-site-card ol{display:grid;gap:6px;margin:0;padding:0 13px 13px 35px;color:#313b53;font-size:13px;line-height:1.4}.spro-site-card footer{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.spro-deep-feature-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 22px}.spro-numbered-feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0 18px 18px;counter-reset:sproTopFeature;list-style:none}.spro-numbered-feature-list li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:start;padding:10px;border:1px solid var(--spro-line);border-radius:12px;background:#fff;color:#313b53;font-size:12px;line-height:1.38}.spro-numbered-feature-list li:before{counter-increment:sproTopFeature;content:counter(sproTopFeature,decimal-leading-zero);display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#07173b,#0b2767);font-size:10px;font-weight:900}
@media(max-width:1200px){.spro-site-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-deep-feature-lists,.spro-site-catalog-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-site-catalog-toolbar{align-items:stretch;flex-direction:column}.spro-site-catalog-toolbar nav{justify-content:flex-start}.spro-numbered-feature-list{grid-template-columns:1fr}}
@media(max-width:760px){.spro-site-card-grid,.spro-deep-feature-lists,.spro-site-catalog-kpis{grid-template-columns:1fr}.spro-site-catalog-group>header{align-items:flex-start}.spro-site-card dl{grid-template-columns:1fr}.spro-site-catalog-toolbar nav a{width:100%;box-sizing:border-box;text-align:center}.spro-numbered-feature-list{padding:0 13px 13px}.spro-configured-sites .spro-table,.spro-site-url-table .spro-table{min-width:960px}}

/* SOCIETY PRO table defaults: search, sort, pagination and row navigation. */
.spro-table-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 18px 12px;padding:10px;border:1px solid var(--spro-line);border-radius:14px;background:linear-gradient(145deg,#fff,#fbfaf8);box-shadow:0 10px 24px rgba(7,59,53,.045)}.spro-table-auto-search{display:flex;align-items:center;gap:9px;flex:1;min-width:220px;padding:0 11px;border:1px solid #ddd8cc;border-radius:999px;background:#fff}.spro-table-auto-search i{color:var(--spro-emerald);font-style:normal;font-weight:900}.spro-table-auto-search input{width:100%;min-height:40px;border:0;outline:0;background:transparent;color:var(--spro-ink);font:650 14px var(--spro-font)}.spro-table-pager{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.spro-table-pager select,.spro-table-pager button{min-height:38px;padding:0 11px;border:1px solid #dad5c9;border-radius:10px;background:#fff;color:#242e46;font:800 12px var(--spro-font)}.spro-table-pager button{cursor:pointer}.spro-table-pager button:disabled{cursor:not-allowed;opacity:.45}.spro-table-pager span,.spro-table-pager b{color:var(--spro-muted);font-size:12px}.spro-table .spro-sort-button{display:inline-flex;align-items:center;gap:5px;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:inherit;cursor:pointer}.spro-table .spro-sort-button:after{content:"↕";margin-left:auto;color:#8f95a5;font-size:11px}.spro-table th[aria-sort="ascending"] .spro-sort-button:after{content:"↑";color:var(--spro-emerald)}.spro-table th[aria-sort="descending"] .spro-sort-button:after{content:"↓";color:var(--spro-emerald)}.spro-table tbody tr[data-row-href]{cursor:pointer}.spro-table tbody tr[data-row-href]:hover{background:#faf8f3}.spro-table tbody tr[data-row-href]:focus{outline:3px solid rgba(11,103,88,.2);outline-offset:-3px}
.spro-table-new{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;text-decoration:none}.spro-table-new span[aria-hidden]{font-weight:900}
@media(max-width:760px){.spro-table-tools{align-items:stretch;flex-direction:column;margin:0 13px 12px}.spro-table-auto-search{min-width:0}.spro-table-pager{justify-content:flex-start}.spro-table-pager select,.spro-table-pager button{flex:1}.spro-table-new{justify-content:center}}

/* SOCIETY PRO operations studio: visible CRUD, process and report command surface. */
.spro-ops-command-center{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:16px;margin:0 0 18px;padding:18px;border:1px solid #ddd7cb;border-radius:22px;background:radial-gradient(circle at 88% 0,rgba(197,164,103,.25),transparent 32%),linear-gradient(135deg,#07173b,#0b245f 54%,#fbfaf8 54%);box-shadow:0 24px 70px rgba(7,59,53,.13)}
.spro-ops-command-copy{display:grid;align-content:center;gap:11px;color:#fff}
.spro-ops-command-copy h2{margin:0;font:620 clamp(30px,4vw,48px)/1 var(--spro-display);letter-spacing:-.045em;color:#fff}
.spro-ops-command-copy p{max-width:640px;margin:0;color:rgba(255,255,255,.82);font-size:15px;line-height:1.55}
.spro-ops-command-copy>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.spro-ops-command-copy>div span{padding:8px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:#f7f4ec;font-size:12px;font-weight:900}
.spro-ops-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.spro-ops-command-card{display:grid;gap:8px;min-height:150px;padding:16px;border:1px solid #e7e4dc;border-radius:18px;color:inherit;background:rgba(255,255,255,.94);text-decoration:none;box-shadow:0 14px 36px rgba(7,59,53,.08);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.spro-ops-command-card:hover{border-color:var(--spro-emerald);box-shadow:0 18px 38px rgba(7,59,53,.12);transform:translateY(-2px)}
.spro-ops-command-card span{width:max-content;padding:5px 8px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.spro-ops-command-card b{font:560 23px/1.1 var(--spro-display);color:var(--spro-forest)}
.spro-ops-command-card p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-ops-command-card em{align-self:end;color:#242e47;font-size:12px;font-style:normal;font-weight:900}
.spro-ops-surface-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}
.spro-ops-surface-strip article{overflow:hidden;border:1px solid var(--spro-line);border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(7,59,53,.055)}
.spro-ops-surface-strip article>span{display:block;padding:13px 16px;border-bottom:1px solid var(--spro-line-soft);color:var(--spro-emerald);background:#fbfaf7;font-size:11px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.spro-ops-surface-strip article>div{display:grid;gap:8px;padding:12px}
.spro-ops-surface-strip a{display:grid;gap:4px;padding:11px;border:1px solid var(--spro-line);border-radius:13px;color:inherit;background:#fff;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.spro-ops-surface-strip a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}
.spro-ops-surface-strip b{font-size:14px;color:var(--spro-forest)}
.spro-ops-surface-strip small,.spro-ops-surface-strip p{margin:0;color:var(--spro-muted);font-size:12px;line-height:1.42}
.spro-ops-surface-strip .spro-inline-action{display:inline-grid;width:max-content;margin:0 12px 12px;color:#0b2767;background:#f8f5f0;font-weight:900}
.spro-module-surface-tabs{position:sticky;top:calc(var(--spro-topbar) + 8px);z-index:22;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 16px;padding:8px;border:1px solid var(--spro-line);border-radius:15px;background:rgba(255,255,255,.96);box-shadow:0 14px 34px rgba(7,59,53,.065);backdrop-filter:blur(12px)}
.spro-module-surface-tabs a{display:grid;gap:2px;min-height:52px;align-content:center;padding:8px 12px;border:1px solid #e1ddd5;border-radius:11px;color:var(--spro-ink);background:#fff;text-decoration:none}.spro-module-surface-tabs a.active{border-color:var(--spro-emerald);color:#fff;background:var(--spro-emerald);box-shadow:0 10px 24px rgba(7,59,53,.14)}.spro-module-surface-tabs b{font-size:13px}.spro-module-surface-tabs small{color:var(--spro-muted);font-size:11px}.spro-module-surface-tabs a.active small{color:#eee7d9}
.spro-ops-focused-reports{overflow:hidden;border:1px solid var(--spro-line);border-radius:20px;background:#fff;box-shadow:var(--spro-shadow)}.spro-ops-focused-reports>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px;border-bottom:1px solid var(--spro-line-soft);background:linear-gradient(145deg,#fbfaf8,#fff)}.spro-ops-focused-reports>header span,.spro-ops-focused-reports article>span{color:var(--spro-emerald);font-size:11px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.spro-ops-focused-reports h2{margin:6px 0;font:560 30px/1.08 var(--spro-display);color:var(--spro-forest)}.spro-ops-focused-reports p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.55}.spro-ops-focused-reports>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:16px}.spro-ops-focused-reports article{display:grid;align-content:start;gap:12px;min-width:0;padding:16px;border:1px solid var(--spro-line);border-radius:15px;background:linear-gradient(145deg,#fff,#fcfbf9)}.spro-ops-focused-reports article>div{display:grid;gap:8px}.spro-ops-focused-reports article a{display:grid;gap:4px;padding:11px;border:1px solid #e3dfd7;border-radius:11px;color:inherit;background:#fff;text-decoration:none}.spro-ops-focused-reports article a:hover{border-color:var(--spro-emerald);box-shadow:0 10px 22px rgba(7,59,53,.07)}.spro-ops-focused-reports article b{color:var(--spro-forest);font-size:14px}.spro-ops-focused-reports article small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-bulk-record-actions-disabled{justify-content:flex-start;min-height:auto}
.spro-bulk-record-actions-disabled small{color:#6a7772;font-size:13px;line-height:1.45}
.spro-operations-filter-stack{display:grid;justify-items:end;gap:9px;min-width:min(560px,100%)}
.spro-operations-filter-stack .spro-table-search{width:100%;max-width:560px}
.spro-operations-status-filter{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px;max-width:720px}
.spro-operations-status-filter button{min-height:34px;font-size:12px}
.spro-operations-table caption{padding:12px 16px;color:var(--spro-muted);background:#fdfcfb;font-size:13px;line-height:1.45;text-align:left}
@media(max-width:1180px){.spro-ops-command-center{grid-template-columns:1fr;background:radial-gradient(circle at 90% 0,rgba(197,164,103,.25),transparent 30%),linear-gradient(135deg,#07173b,#0b245f)}.spro-ops-surface-strip,.spro-ops-focused-reports>div{grid-template-columns:1fr}.spro-ops-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.spro-module-surface-tabs{top:64px;grid-template-columns:repeat(2,minmax(0,1fr));margin-inline:-4px;border-radius:13px}.spro-module-surface-tabs a{min-height:48px}.spro-ops-command-center{margin-inline:-4px;padding:14px;border-radius:18px}.spro-ops-command-grid{grid-template-columns:1fr}.spro-ops-command-card{min-height:0}.spro-ops-command-copy h2{font-size:34px}.spro-ops-command-copy p{font-size:14px}.spro-ops-surface-strip{gap:10px}.spro-ops-surface-strip article>div{padding:10px}.spro-ops-focused-reports>header{display:grid;padding:17px}.spro-operations-filter-stack{justify-items:stretch;width:100%}.spro-operations-status-filter{justify-content:flex-start}.spro-operations-status-filter button{flex:1 1 130px}}
@media(max-width:430px){.spro-module-surface-tabs{grid-template-columns:1fr}}

/* SOCIETY PRO operations forms: sectioned full-page CRUD authoring. */
.spro-button-soft{border-color:#ded7c9;color:#0b2767;background:#f8f5ee}.spro-button-soft:hover{border-color:#b8ab8f;background:#f3eee2}
.spro-record-action-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}
.spro-record-form-command{display:grid;grid-template-columns:minmax(220px,.42fr) minmax(280px,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #dfd9cd;border-radius:14px;background:linear-gradient(145deg,#fff,#fbfaf7);box-shadow:0 12px 30px rgba(7,59,53,.055)}
.spro-record-form-command>div,.spro-record-form-command>div span,.spro-record-form-command>div b,.spro-record-form-command>div small{display:block;min-width:0}.spro-record-form-command>div span{color:var(--spro-emerald);font-size:10px;font-weight:950;letter-spacing:.11em}.spro-record-form-command>div b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--spro-forest);font-size:15px}.spro-record-form-command>div small{color:var(--spro-muted);font-size:12px}
.spro-record-field-search{display:flex;align-items:center;gap:9px;min-width:0;padding:0 12px;border:1px solid #dcd6c9;border-radius:999px;background:#fff}.spro-record-field-search i{color:var(--spro-emerald);font-style:normal;font-weight:950}.spro-record-field-search input{width:100%;min-width:0;min-height:42px;border:0;outline:0;background:transparent;color:var(--spro-ink);font:650 14px var(--spro-font)}
.spro-record-form-command nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.spro-record-form-command nav a,.spro-record-form-command nav button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;padding:0 12px;border:1px solid #dcd6c9;border-radius:10px;color:#0b2767;background:#fff;font:850 12px var(--spro-font);text-decoration:none;cursor:pointer}.spro-record-form-command nav button{border-color:var(--spro-emerald);color:#fff;background:var(--spro-emerald)}
.spro-record-field-empty{padding:18px;border:1px dashed #d7d0c1;border-radius:14px;color:var(--spro-muted);background:#fff;text-align:center;font-size:13px}[data-record-field][hidden],.spro-record-field-section[hidden],.spro-record-section-nav a[hidden],.spro-record-field-empty[hidden]{display:none!important}
.spro-record-footer>div{flex-wrap:wrap;justify-content:flex-end}
.spro-anchor-target{display:block;height:0;overflow:hidden;visibility:hidden;scroll-margin-top:124px}
.spro-record-section-stack{display:grid;gap:16px;width:100%;max-width:100%;min-width:0;overflow:hidden}
.spro-record-section-nav{display:grid;gap:7px;margin:15px 0;padding:14px 0;border-top:1px solid var(--spro-line-soft);border-bottom:1px solid var(--spro-line-soft)}
.spro-record-section-nav a{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:42px;padding:7px;border-radius:10px;color:inherit;text-decoration:none}
.spro-record-section-nav a:hover{background:#f7f4ee}
.spro-record-section-nav span{display:grid;width:30px;height:30px;place-items:center;border-radius:999px;color:#fff;background:linear-gradient(135deg,#07173b,#0b2767);font-size:10px;font-weight:900}
.spro-record-section-nav b{font-size:12px;color:var(--spro-forest)}
.spro-record-section-nav small{justify-self:end;color:var(--spro-muted);font-size:10px;font-weight:800}
.spro-record-form-guidance{overflow:hidden;border:1px solid #dfd9cd;border-radius:22px;background:linear-gradient(145deg,#fff,#fbfaf8);box-shadow:0 18px 48px rgba(7,59,53,.08);animation:sproStudioReveal .32s ease both}
.spro-record-form-guidance>header{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:18px;align-items:stretch;padding:21px;border-bottom:1px solid var(--spro-line-soft);background:radial-gradient(circle at 95% 0,rgba(196,162,88,.2),transparent 30%),linear-gradient(135deg,#fcfbf8,#f7f4ee)}
.spro-record-form-guidance>header>div>span,.spro-record-guidance-grid>article>span{color:var(--spro-emerald);font-size:11px;font-weight:950;letter-spacing:.11em;text-transform:uppercase}
.spro-record-form-guidance h2{margin:7px 0 6px;color:var(--spro-forest);font:580 clamp(27px,3.4vw,39px)/1.04 var(--spro-display);letter-spacing:-.035em}
.spro-record-form-guidance p{max-width:880px;margin:0;color:var(--spro-muted);font-size:15px;line-height:1.55}
.spro-record-form-guidance>header nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:start;max-height:242px;overflow:auto}
.spro-record-form-guidance>header nav a{display:grid;gap:4px;min-height:74px;padding:12px;border:1px solid #e3dfd6;border-radius:14px;color:inherit;background:#fff;text-decoration:none;transition:.18s ease}
.spro-record-form-guidance>header nav a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 24px rgba(7,59,53,.08);transform:translateY(-1px)}
.spro-record-form-guidance nav b{color:var(--spro-forest);font-size:14px}
.spro-record-form-guidance nav small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-guidance-grid{display:grid;grid-template-columns:1.18fr .92fr .9fr;gap:12px;padding:17px}
.spro-record-guidance-grid>article{display:grid;align-content:start;gap:10px;min-height:215px;padding:16px;border:1px solid var(--spro-line);border-radius:17px;background:#fff;box-shadow:0 12px 28px rgba(7,59,53,.045)}
.spro-record-guidance-grid ol,.spro-record-guidance-grid ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.spro-record-guidance-grid ol{counter-reset:sproRecordFlow}
.spro-record-guidance-grid ol li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:start}
.spro-record-guidance-grid ol li:before{counter-increment:sproRecordFlow;content:counter(sproRecordFlow,decimal-leading-zero);display:grid;width:32px;height:32px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#07173b,#0b2767);font-size:10px;font-weight:950}
.spro-record-guidance-grid li b{display:block;color:var(--spro-forest);font-size:14px}
.spro-record-guidance-grid li small,.spro-record-guidance-grid ul li,.spro-record-guidance-grid section small{display:block;color:var(--spro-muted);font-size:12px;line-height:1.42}
.spro-record-guidance-grid ul li{position:relative;padding-left:23px}
.spro-record-guidance-grid ul li:before{position:absolute;left:0;top:1px;display:grid;width:16px;height:16px;place-items:center;border-radius:50%;color:#fff;background:#0b2767;font-size:9px;font-weight:900;content:"✓"}
.spro-record-guidance-grid section{display:grid;gap:5px;padding:10px;border:1px solid var(--spro-line-soft);border-radius:13px;background:#fcfbf9}
.spro-record-guidance-grid section+section{margin-top:8px}
.spro-record-guidance-grid section b{color:var(--spro-forest);font-size:13px}
.spro-record-guidance-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 17px 17px}
.spro-record-guidance-presets article{display:grid;gap:7px;padding:13px;border:1px solid #e5e1d8;border-radius:15px;background:#fff}
.spro-record-guidance-presets b{color:var(--spro-forest);font-size:14px}
.spro-record-guidance-presets small{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-record-guidance-presets code{display:block;overflow:auto;padding:10px;border-radius:11px;color:#11234c;background:#f8f5ef;font-size:12px;line-height:1.45;white-space:pre-wrap}
.spro-record-orchestration-preview{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,.72fr) minmax(260px,.72fr);gap:10px;padding:0 17px 17px}
.spro-record-orchestration-preview>div,.spro-record-orchestration-preview>section{display:grid;gap:8px;align-content:start;padding:13px;border:1px solid #e5e1d8;border-radius:15px;background:#fff}
.spro-record-orchestration-preview>div{grid-template-columns:repeat(3,minmax(0,1fr))}
.spro-record-orchestration-preview article{display:grid;gap:4px;min-width:0;padding:10px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fcfbf9}
.spro-record-orchestration-preview article span,.spro-record-orchestration-preview header span{color:var(--spro-emerald);font-size:10px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}
.spro-record-orchestration-preview article b{color:var(--spro-forest);font:560 24px/1.05 var(--spro-display)}
.spro-record-orchestration-preview article small{overflow-wrap:anywhere;color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-record-orchestration-preview section header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.spro-record-orchestration-preview section header b{color:var(--spro-forest);font-size:13px}
.spro-record-orchestration-preview section>div{display:grid;gap:6px}
.spro-record-orchestration-preview section article{grid-template-columns:88px minmax(0,1fr);align-items:center;min-height:44px;padding:8px 10px}
.spro-record-form-chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0}
.spro-record-form-chips span{padding:6px 8px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#faf8f3;font-size:11px;font-weight:900}
@media(max-width:1180px){.spro-record-orchestration-preview{grid-template-columns:1fr}.spro-record-orchestration-preview>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.spro-record-form-guidance>header,.spro-record-guidance-grid{grid-template-columns:1fr}.spro-record-form-guidance>header nav,.spro-record-guidance-presets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.spro-record-orchestration-preview>div{grid-template-columns:1fr}.spro-record-orchestration-preview section article{grid-template-columns:1fr}}
@media(max-width:650px){.spro-record-form-guidance>header{padding:16px}.spro-record-form-guidance>header nav,.spro-record-guidance-presets{grid-template-columns:1fr}.spro-record-guidance-grid,.spro-record-guidance-presets,.spro-record-orchestration-preview{padding:13px}.spro-record-guidance-presets{padding-top:0}.spro-record-form-guidance h2{font-size:28px}}
.spro-record-field-section{overflow:hidden;border:1px solid var(--spro-line);border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(7,59,53,.052);scroll-margin-top:120px}
.spro-record-field-section>header{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--spro-line-soft);background:linear-gradient(145deg,#fbfaf8,#fff)}
.spro-record-field-section>header>span{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,#07173b,#0b2767);font-size:12px;font-weight:950}
.spro-record-field-section>header h2{margin:0;font:560 24px/1.12 var(--spro-display);color:var(--spro-forest)}
.spro-record-field-section>header p{margin:4px 0 0;color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-record-field-section .spro-record-fields{border:0;border-radius:0;box-shadow:none}
@media(max-width:900px){.spro-record-action-bar{justify-content:flex-start}.spro-anchor-target{scroll-margin-top:18px}.spro-record-section-nav{display:flex;overflow-x:auto}.spro-record-section-nav a{min-width:210px;flex:none}.spro-record-field-section{scroll-margin-top:18px}}
@media(max-width:860px){.spro-record-form-command{grid-template-columns:1fr}.spro-record-form-command nav{justify-content:flex-start}.spro-record-form-command nav a,.spro-record-form-command nav button{flex:1 1 120px}}
@media(max-width:620px){.spro-record-header>div:last-child{grid-template-columns:1fr}.spro-record-form-command nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.spro-record-form-command nav a,.spro-record-form-command nav button{width:100%;min-width:0;white-space:normal;text-align:center}.spro-record-field-section>header{grid-template-columns:1fr}.spro-record-field-section>header>span{width:max-content;min-width:42px}.spro-record-section-nav a{min-width:180px}}
@media(max-width:430px){.spro-record-form-command nav{grid-template-columns:1fr}}

/* SOCIETY PRO agreement studio: focused, business-owned contract lifecycle. */
.spro-module-jumpbar{position:sticky;top:calc(var(--spro-topbar) + 8px);z-index:20;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:8px;border:1px solid var(--spro-line);border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(7,59,53,.055);backdrop-filter:blur(12px)}
.spro-module-jumpbar a{display:inline-flex;min-height:36px;align-items:center;padding:0 13px;border-radius:999px;color:#0b2767;background:#f8f5ee;font-size:13px;font-weight:900;text-decoration:none}
.spro-module-jumpbar a:hover{color:#fff;background:var(--spro-emerald)}
.spro-agreement-head h1,.spro-agreement-detail-head h1{letter-spacing:-.04em}
.spro-agreement-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;overflow:hidden;border-top:1px solid var(--spro-line-soft);background:var(--spro-line-soft)}
.spro-agreement-steps article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;min-height:112px;padding:17px;background:#fff}
.spro-agreement-steps i,.spro-agreement-stagebar i{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#07173b,#0b2767);font-size:11px;font-style:normal;font-weight:900}
.spro-agreement-steps b,.spro-agreement-stagebar b{display:block;font-size:15px}
.spro-agreement-steps small,.spro-agreement-stagebar small{display:block;margin-top:4px;color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-agreement-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-agreement-action-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px}
.spro-agreement-action-grid a{display:grid;gap:6px;min-height:104px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;color:inherit;background:linear-gradient(145deg,#fff,#fbfaf8);text-decoration:none}
.spro-agreement-action-grid a:hover{border-color:var(--spro-emerald);box-shadow:0 12px 26px rgba(7,59,53,.08);transform:translateY(-1px)}
.spro-agreement-action-grid b{font-size:14px}.spro-agreement-action-grid small{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-agreement-table td{vertical-align:top}.spro-agreement-table small{display:block;margin-top:3px;color:var(--spro-muted)}
.spro-agreement-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.spro-record-fields.compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-record-fields.compact .spro-form-field{margin:0}
.spro-agreement-stagebar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;overflow:hidden;margin:0 0 18px;border:1px solid var(--spro-line);border-radius:18px;background:var(--spro-line-soft)}
.spro-agreement-stagebar article{display:grid;gap:8px;min-height:138px;padding:16px;background:#fff}
.spro-agreement-stagebar article.complete{background:linear-gradient(145deg,#faf7f2,#fff)}
.spro-agreement-stagebar article.pending{opacity:.72}
.spro-agreement-stagebar article.current{box-shadow:inset 0 -4px 0 #b78655}
.spro-agreement-detail-grid,.spro-agreement-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 18px;align-items:start}
.spro-agreement-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;padding:0 18px 18px;background:var(--spro-line-soft)}
.spro-agreement-dl div{min-height:70px;padding:13px;background:#fff}.spro-agreement-dl dt{color:var(--spro-muted);font-size:11px;font-weight:900;text-transform:uppercase}.spro-agreement-dl dd{margin:5px 0 0;color:#17223d;font-size:14px;font-weight:850;line-height:1.35}
.spro-agreement-list{display:grid;gap:9px;padding:0 18px 18px}.spro-agreement-list article{padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}.spro-agreement-list b{color:#17223d;font-size:14px}.spro-agreement-list p{margin:5px 0 0;color:var(--spro-muted);font-size:13px;line-height:1.5}
.spro-agreement-signers{display:grid;gap:1px;border-top:1px solid var(--spro-line-soft);background:var(--spro-line-soft)}
.spro-agreement-signers article{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:14px 18px;background:#fff}.spro-agreement-signers i{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:#0b2767;font-style:normal;font-weight:900}.spro-agreement-signers b,.spro-agreement-signers small{display:block}.spro-agreement-signers small{color:var(--spro-muted);font-size:12px}.spro-agreement-signers a{color:var(--spro-emerald);font-size:12px;font-weight:900;text-decoration:none}
.spro-agreement-action-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 18px;align-items:start}
.spro-action-form{display:grid;gap:10px;padding:0 18px 18px}.spro-action-form .spro-form-field,.spro-inline-actions .spro-form-field{margin:0}.spro-inline-actions{display:flex;flex-wrap:wrap;gap:9px;padding:0 18px 18px}.spro-inline-actions input{min-height:40px;padding:9px 11px;border:1px solid #dbd6ca;border-radius:9px;background:#fff;font:600 14px var(--spro-font)}
.spro-signer-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.spro-signer-row label{display:grid;gap:6px;color:#263046;font-size:13px;font-weight:850}.spro-signer-row span{color:var(--spro-emerald);font-size:11px;font-weight:900;text-transform:uppercase}.spro-signer-row input{min-height:42px;padding:9px 11px;border:1px solid #dbd6ca;border-radius:9px;background:#fff;font:600 14px var(--spro-font)}
.spro-agreement-audit{display:grid;gap:1px;border-top:1px solid var(--spro-line-soft);background:var(--spro-line-soft)}.spro-agreement-audit article{padding:14px 18px;background:#fff}.spro-agreement-audit b,.spro-agreement-audit small{display:block}.spro-agreement-audit small{margin-top:3px;color:var(--spro-muted);font-size:12px}.spro-agreement-audit p{margin:6px 0 0;color:#313b53;font-size:13px;line-height:1.5}
@media(max-width:1180px){.spro-agreement-steps,.spro-agreement-stagebar{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-agreement-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-agreement-form-grid,.spro-agreement-detail-grid,.spro-agreement-two-col,.spro-agreement-action-board{grid-template-columns:1fr}}
@media(max-width:760px){.spro-module-jumpbar{position:static;border-radius:18px}.spro-module-jumpbar a{flex:1;justify-content:center}.spro-agreement-steps,.spro-agreement-stagebar,.spro-record-fields.compact,.spro-agreement-action-grid,.spro-agreement-action-grid.compact,.spro-agreement-dl,.spro-signer-row{grid-template-columns:1fr}.spro-agreement-signers article{grid-template-columns:38px minmax(0,1fr)}.spro-agreement-signers article>a{grid-column:2}.spro-agreement-action-grid,.spro-record-fields.compact,.spro-agreement-list,.spro-action-form,.spro-inline-actions{padding-inline:13px}.spro-agreement-stagebar article{min-height:0}}

/* SOCIETY PRO preventive maintenance planner: cyclic calendar, RACI, finance and conformance. */
.spro-pm-command{display:grid;gap:14px;margin:0 0 18px;padding:16px;border:1px solid #dbd6ca;border-radius:10px;background:#fdfcfb;box-shadow:0 16px 38px rgba(7,59,53,.07)}
.spro-pm-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px;border:1px solid #d7d1c4;border-radius:8px;color:#fff;background:linear-gradient(135deg,#07173b,#0b2767 58%,#9b7331)}
.spro-pm-hero span,.spro-pm-command article>span,.spro-pm-finance-panel article span,.spro-pm-life article span,.spro-pm-taxonomy article span,.spro-pm-shop article span{font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.spro-pm-hero h2{max-width:820px;margin:6px 0 5px;font:560 clamp(30px,3vw,42px)/1.04 var(--spro-display);letter-spacing:0}
.spro-pm-hero p{max-width:860px;margin:0;color:#e8e2d6;font-size:14px;line-height:1.55}
.spro-pm-hero nav{display:flex;align-items:center;gap:8px;flex:none;min-height:42px;padding:4px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.1)}
.spro-pm-hero nav a{display:grid;width:36px;height:36px;place-items:center;border-radius:7px;color:#fff;background:rgba(255,255,255,.12);font-size:22px;text-decoration:none}
.spro-pm-hero nav strong{min-width:130px;color:#fff;font-size:14px;text-align:center}
.spro-pm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.spro-pm-kpis article{display:grid;gap:6px;min-height:116px;padding:14px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}
.spro-pm-kpis article.tone-warn{border-color:#e7bd8e;background:#fff8ef}
.spro-pm-kpis article.tone-good{border-color:#dbd0b8;background:#fbf8f3}
.spro-pm-kpis span{color:var(--spro-emerald)}
.spro-pm-kpis strong{overflow-wrap:anywhere;color:var(--spro-forest);font:620 27px/1.04 var(--spro-display)}
.spro-pm-kpis small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-pm-workspace{display:grid;grid-template-columns:minmax(640px,1fr) minmax(300px,370px);gap:12px;align-items:start}
.spro-pm-calendar{overflow:hidden;border:1px solid var(--spro-line);border-radius:8px;background:#fff}
.spro-pm-calendar>header{display:grid;grid-template-columns:repeat(7,minmax(116px,1fr));gap:1px;background:var(--spro-line-soft)}
.spro-pm-calendar>header span{padding:10px;color:#404a60;background:#f8f7f5;font-size:11px;font-weight:900;text-align:center;text-transform:uppercase}
.spro-pm-calendar>div{display:grid;grid-template-columns:repeat(7,minmax(116px,1fr));gap:1px;overflow:auto;background:var(--spro-line-soft)}
.spro-pm-day{display:grid;grid-template-rows:auto minmax(106px,1fr);min-height:176px;min-width:116px;background:#fff;outline:0}
.spro-pm-day.out-month{background:#faf9f8;color:#8b9691}
.spro-pm-day.today{box-shadow:inset 0 0 0 2px var(--spro-emerald)}
.spro-pm-day.state-critical{background:#fff7f5}
.spro-pm-day.drop-active{background:#f6f2ea;box-shadow:inset 0 0 0 2px #876620}
.spro-pm-day>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;align-items:center;min-height:44px;padding:8px;border-bottom:1px solid var(--spro-line-soft)}
.spro-pm-day>header span{color:var(--spro-muted);font-size:10px;font-weight:900;text-transform:uppercase}
.spro-pm-day>header b{color:var(--spro-forest);font-size:16px}
.spro-pm-day>header small{grid-column:1/-1;color:#756c5a;font-size:10px;font-weight:800}
.spro-pm-day>[data-pm-dropzone]{display:grid;align-content:start;gap:6px;padding:7px}
.spro-pm-event,.spro-pm-plan-due{display:grid;grid-template-columns:30px minmax(0,1fr);gap:4px 7px;width:100%;min-height:64px;padding:8px;border:1px solid #e5e2db;border-radius:7px;color:inherit;background:#fff;text-align:left;cursor:pointer}
.spro-pm-event:hover,.spro-pm-event.active,.spro-pm-plan-due:hover{border-color:var(--spro-emerald);box-shadow:0 8px 18px rgba(7,59,53,.09)}
.spro-pm-event.dragging{opacity:.55}
.spro-pm-event span,.spro-pm-plan-due span{display:grid;width:28px;height:28px;grid-row:span 2;place-items:center;border-radius:6px;color:#fff;background:#464f64;font-size:10px;font-weight:900}
.spro-pm-event.priority-p0 span,.spro-pm-event.priority-p1 span,.spro-pm-event.life-critical span,.spro-pm-plan-due.life-critical span{background:#a8483e}
.spro-pm-event.priority-p2 span{background:#0b2767}
.spro-pm-event.status-completed span,.spro-pm-event.status-closed span{background:#7a622f}
.spro-pm-event.status-deferred span,.spro-pm-event.status-blocked span{background:#bd7b34}
.spro-pm-event b,.spro-pm-plan-due b{overflow:hidden;color:var(--spro-forest);font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.spro-pm-event small,.spro-pm-plan-due small{overflow:hidden;color:var(--spro-muted);font-size:10px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.spro-pm-plan-due{border-style:dashed;background:#fff8f0}
.spro-pm-plan-due span{background:#8d5c2a}
.spro-pm-inspector{position:sticky;top:calc(var(--spro-topbar) + 12px);overflow:hidden;border:1px solid #ded9cf;border-radius:8px;background:#fff;box-shadow:0 14px 32px rgba(7,59,53,.07)}
.spro-pm-inspector>header{display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px;align-items:center;padding:14px;border-bottom:1px solid var(--spro-line-soft);background:#fbfaf7}
.spro-pm-inspector>header>span{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;color:#fff;background:var(--spro-forest);font-size:13px;font-weight:900}
.spro-pm-inspector h3{margin:0;color:var(--spro-forest);font-size:18px;line-height:1.15}
.spro-pm-inspector p{margin:4px 0 0;color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-pm-inspector dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;background:var(--spro-line-soft)}
.spro-pm-inspector dl div{min-height:66px;padding:10px;background:#fff}
.spro-pm-inspector dt{color:var(--spro-muted);font-size:10px;font-weight:900;text-transform:uppercase}
.spro-pm-inspector dd{margin:4px 0 0;overflow-wrap:anywhere;color:#262d3f;font-size:12px;font-weight:800;line-height:1.3}
.spro-pm-controls{display:grid;gap:9px;padding:12px;border-top:1px solid var(--spro-line-soft);background:#fcfcfb}
.spro-pm-controls label{display:grid;gap:5px;color:#293145;font-size:12px;font-weight:850}
.spro-pm-controls select,.spro-pm-controls input{box-sizing:border-box;width:100%;min-height:42px;padding:9px 10px;border:1px solid #dbd5c9;border-radius:8px;background:#fff;color:var(--spro-ink);font:600 13px var(--spro-font)}
.spro-pm-controls>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.spro-pm-controls button{min-height:40px;border:1px solid #d9d3c6;border-radius:8px;color:#0b2767;background:#fff;font-size:12px;font-weight:900;cursor:pointer}
.spro-pm-controls button:hover{border-color:var(--spro-emerald);background:#f8f5ed}
.spro-pm-inspector footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-top:1px solid var(--spro-line-soft)}
.spro-pm-inspector footer a{color:#0b2767;font-size:12px;font-weight:900;text-decoration:none}
.spro-pm-inspector footer span{color:var(--spro-muted);font-size:11px;font-weight:850}
.spro-pm-finance-grid,.spro-pm-catalog-grid,.spro-pm-feature-coverage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 18px;align-items:start}
.spro-pm-finance-panel,.spro-pm-analytics-panel,.spro-pm-raci,.spro-pm-gaps,.spro-pm-life,.spro-pm-taxonomy,.spro-pm-shop,.spro-pm-owner-rules,.spro-pm-process-mining,.spro-pm-feature-coverage>.spro-panel{overflow:hidden}
.spro-pm-finance-panel>div{display:grid;grid-template-columns:repeat(5,minmax(128px,1fr));gap:1px;background:var(--spro-line-soft)}
.spro-pm-finance-panel article{display:grid;gap:5px;min-height:118px;padding:14px;background:#fff}
.spro-pm-finance-panel strong{color:var(--spro-forest);font:600 24px/1.05 var(--spro-display)}
.spro-pm-finance-panel small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-pm-bars{display:grid;gap:8px;padding:0 18px 18px}
.spro-pm-bars h3{margin:8px 0 2px;color:#293246;font-size:13px;text-transform:uppercase}
.spro-pm-bars>div{display:grid;grid-template-columns:minmax(120px,.42fr) minmax(130px,1fr) 36px;gap:8px;align-items:center}
.spro-pm-bars span{overflow:hidden;color:#313b53;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.spro-pm-bars i{height:10px;overflow:hidden;border-radius:999px;background:#efede9}
.spro-pm-bars b{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0b2767,#c59667)}
.spro-pm-bars strong{color:#293246;font-size:12px;text-align:right}
.spro-pm-three{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:16px;margin:0 0 18px;align-items:start}
.spro-pm-raci>div,.spro-pm-gaps>div,.spro-pm-life>div,.spro-pm-taxonomy>div,.spro-pm-shop>div,.spro-pm-owner-rules>div{display:grid;gap:9px;max-height:520px;overflow:auto;padding:0 18px 18px}
.spro-pm-raci article,.spro-pm-gaps article,.spro-pm-life article,.spro-pm-taxonomy article,.spro-pm-shop article,.spro-pm-owner-rules article{display:grid;gap:6px;padding:12px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}
.spro-pm-raci article b,.spro-pm-gaps article b,.spro-pm-life article b,.spro-pm-taxonomy article b,.spro-pm-shop article b,.spro-pm-owner-rules article b{color:var(--spro-forest);font-size:14px}
.spro-pm-raci small,.spro-pm-gaps small,.spro-pm-life small,.spro-pm-taxonomy small,.spro-pm-shop small,.spro-pm-owner-rules small{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-pm-raci dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:4px 0;background:var(--spro-line-soft)}
.spro-pm-raci dl div{min-height:58px;padding:8px;background:#fbfaf8}
.spro-pm-raci dt{color:#0b2767;font-size:10px;font-weight:950}
.spro-pm-raci dd{margin:3px 0 0;color:#2d3547;font-size:11px;font-weight:800;line-height:1.25}
.spro-pm-raci em,.spro-pm-gaps em,.spro-pm-life em,.spro-pm-shop em,.spro-pm-owner-rules em{color:#37425b;font-size:11px;font-style:normal;font-weight:850;line-height:1.35}
.spro-pm-gaps article>span,.spro-pm-owner-rules article>span{width:max-content;padding:4px 7px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-pm-gaps article.risk-high{border-color:#e4b7af;background:#fff7f5}
.spro-pm-gaps article.risk-medium{border-color:#eac5a0;background:#fff8f0}
.spro-pm-life article span{color:#9a4038}
.spro-pm-taxonomy p{display:flex;flex-wrap:wrap;gap:5px;margin:4px 0 0}
.spro-pm-taxonomy i{padding:5px 7px;border-radius:999px;color:#313b53;background:#f6f3ee;font-size:11px;font-style:normal;font-weight:800}
.spro-pm-shop article.status-today{border-color:#e7bd8e;background:#fff8ef}
.spro-pm-owner-rules,.spro-pm-process-mining{margin:0 0 18px}
.spro-pm-owner-rules>div{grid-template-columns:repeat(5,minmax(0,1fr));max-height:none}
.spro-pm-process-mining>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--spro-line-soft)}
.spro-pm-process-mining a{display:grid;gap:6px;min-height:138px;padding:14px;color:inherit;background:#fff;text-decoration:none}
.spro-pm-process-mining a:hover{background:#fbf9f4}
.spro-pm-process-mining span{width:max-content;padding:4px 7px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-pm-process-mining a.status-empty span{color:#77552a;background:#ffead5}
.spro-pm-process-mining b{color:var(--spro-forest);font-size:14px;line-height:1.25}
.spro-pm-process-mining small,.spro-pm-process-mining em{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-pm-process-mining em{align-self:end;font-style:normal;font-weight:850}
.spro-pm-feature-coverage ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:620px;overflow:auto;margin:0;padding:0 18px 18px;list-style:none}
.spro-pm-feature-coverage li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:5px 8px;align-items:start;min-height:72px;padding:10px;border:1px solid var(--spro-line);border-radius:8px;background:#fff}
.spro-pm-feature-coverage li span{display:grid;width:34px;height:34px;grid-row:span 2;place-items:center;border-radius:50%;color:#fff;background:#0b2767;font-size:10px;font-weight:900}
.spro-pm-feature-coverage li b{color:var(--spro-forest);font-size:12px;line-height:1.3}
.spro-pm-feature-coverage li small{color:var(--spro-muted);font-size:11px}
@media(max-width:1240px){.spro-pm-workspace,.spro-pm-finance-grid,.spro-pm-catalog-grid,.spro-pm-feature-coverage,.spro-pm-three{grid-template-columns:1fr}.spro-pm-inspector{position:static}.spro-pm-owner-rules>div,.spro-pm-process-mining>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-pm-finance-panel>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.spro-pm-command{padding:11px}.spro-pm-hero{display:grid;padding:14px}.spro-pm-hero h2{font-size:30px}.spro-pm-hero nav{justify-content:space-between}.spro-pm-kpis{grid-template-columns:1fr}.spro-pm-workspace{display:block}.spro-pm-calendar{overflow:visible;margin-bottom:12px}.spro-pm-calendar>header{display:none}.spro-pm-calendar>div{display:grid;grid-template-columns:1fr;gap:1px;overflow:visible}.spro-pm-day{grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto;min-width:0;min-height:0}.spro-pm-day.state-open{display:none}.spro-pm-day>header{display:grid;grid-template-columns:1fr;align-content:start;min-height:0;border-right:1px solid var(--spro-line-soft);border-bottom:0}.spro-pm-day>header b{font-size:20px}.spro-pm-day>[data-pm-dropzone]{min-height:72px;padding:8px}.spro-pm-event,.spro-pm-plan-due{min-height:58px}.spro-pm-event b,.spro-pm-event small,.spro-pm-plan-due b,.spro-pm-plan-due small{white-space:normal}.spro-pm-inspector dl,.spro-pm-finance-panel>div,.spro-pm-owner-rules>div,.spro-pm-process-mining>div,.spro-pm-feature-coverage ol{grid-template-columns:1fr}.spro-pm-controls>div{grid-template-columns:1fr}.spro-pm-raci>div,.spro-pm-gaps>div,.spro-pm-life>div,.spro-pm-taxonomy>div,.spro-pm-shop>div,.spro-pm-owner-rules>div,.spro-pm-feature-coverage ol{padding-inline:13px}.spro-pm-process-mining a{min-height:0}.spro-pm-raci dl{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-pm-bars>div{grid-template-columns:1fr 1fr 34px}}

/* SOCIETY PRO finance command: 50 surfaces, 100 features, locale tax. */
.spro-search-icon{position:relative;display:inline-block;width:14px;height:14px;flex:0 0 14px;font-size:0}.spro-search-icon:before{position:absolute;left:1px;top:1px;width:8px;height:8px;border:2px solid currentColor;border-radius:50%;content:""}.spro-search-icon:after{position:absolute;right:1px;bottom:1px;width:6px;height:2px;border-radius:999px;background:currentColor;transform:rotate(45deg);transform-origin:center;content:""}
.spro-finance-cockpit-head h1{max-width:980px}
.spro-finance-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.spro-finance-surface-board{overflow:visible;margin:0 0 18px;padding:18px;border-radius:18px}
.spro-finance-surface-group{margin:18px 0 0}
.spro-finance-surface-group>header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 10px}
.spro-finance-surface-group>header span{color:#0b2767;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-finance-surface-group h3{margin:4px 0;color:var(--spro-forest);font:560 24px/1.12 var(--spro-display)}
.spro-finance-surface-group p{max-width:820px;margin:0;color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-finance-surface-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.spro-finance-surface-card{display:grid;grid-template-rows:auto auto auto 1fr auto;gap:10px;min-height:315px;padding:15px;border:1px solid var(--spro-line);border-radius:14px;background:#fff;box-shadow:0 12px 28px rgba(7,59,53,.045)}
.spro-finance-surface-card.locked{background:#fff8f1;border-color:#eac8a7}
.spro-finance-surface-card>header{display:grid;grid-template-columns:54px minmax(0,1fr);gap:5px 10px;align-items:start}
.spro-finance-surface-card>header span{display:grid;width:50px;height:50px;grid-row:span 2;place-items:center;border-radius:12px;color:#fff;background:#0b2767;font-size:12px;font-weight:900}
.spro-finance-surface-card:nth-child(4n+2)>header span{background:#8d7031}
.spro-finance-surface-card:nth-child(4n+3)>header span{background:#9d6430}
.spro-finance-surface-card:nth-child(4n+4)>header span{background:#8b4241}
.spro-finance-surface-card b{overflow:hidden;color:var(--spro-forest);font-size:17px;line-height:1.2;text-overflow:ellipsis}
.spro-finance-surface-card small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-finance-surface-card p{margin:0;color:#394258;font-size:13px;line-height:1.45}
.spro-finance-surface-card dl{display:grid;grid-template-columns:1fr;gap:1px;margin:0;overflow:hidden;border:1px solid var(--spro-line-soft);border-radius:10px;background:var(--spro-line-soft)}
.spro-finance-surface-card dl div{display:grid;gap:3px;padding:9px;background:#fdfcfb}
.spro-finance-surface-card dt,.spro-finance-detail-dl dt{color:#0b2767;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-finance-surface-card dd,.spro-finance-detail-dl dd{margin:0;color:#293246;font-size:12px;font-weight:780;line-height:1.35}
.spro-finance-surface-card ul,.spro-finance-check-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.spro-finance-surface-card li,.spro-finance-check-list li{position:relative;padding-left:16px;color:#3f485d;font-size:12px;line-height:1.35}
.spro-finance-surface-card li:before,.spro-finance-check-list li:before{position:absolute;left:0;top:.45em;width:7px;height:7px;border-radius:50%;background:#c59667;content:""}
.spro-finance-surface-card footer{display:flex;flex-wrap:wrap;gap:7px;align-self:end}
.spro-finance-surface-card footer a,.spro-finance-surface-card footer span,.spro-finance-export-actions a,.spro-finance-export-row span{display:inline-flex;min-height:30px;align-items:center;padding:0 10px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#f8f5ee;font-size:11px;font-weight:900;text-decoration:none}
.spro-finance-surface-card footer a:hover,.spro-finance-export-actions a:hover{color:#fff;background:#0b2767}
.spro-finance-detail-grid,.spro-finance-surface-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 18px;align-items:start}
.spro-finance-policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:0 18px 18px;background:var(--spro-line-soft)}
.spro-finance-policy-grid div{display:grid;gap:5px;min-height:92px;padding:13px;background:#fff}
.spro-finance-policy-grid span{color:#0b2767;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-finance-policy-grid strong{color:var(--spro-forest);font:560 23px/1.08 var(--spro-display)}
.spro-finance-policy-grid small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-finance-ledger-table td{vertical-align:top}
.spro-finance-ledger-table td:nth-child(3),.spro-finance-ledger-table td:nth-child(4){min-width:160px;white-space:normal}
.spro-finance-feature-list{overflow:hidden;margin:0 0 18px}
.spro-finance-feature-list>section{padding:0 18px 18px}
.spro-finance-feature-list>section>header{display:grid;gap:4px;margin:4px 0 10px}
.spro-finance-feature-list>section>header span{color:#0b2767;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-finance-feature-list h3{margin:0;color:var(--spro-forest);font:560 22px/1.1 var(--spro-display)}
.spro-finance-feature-list p{margin:0;color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-finance-feature-list ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0 18px 18px;list-style:none}
.spro-finance-feature-list li,.spro-finance-feature-list a{min-width:0}
.spro-finance-feature-list li>a,.spro-finance-feature-list li{display:grid;grid-template-columns:54px 54px minmax(0,1fr);gap:8px;align-items:start;min-height:66px;padding:10px;border:1px solid var(--spro-line);border-radius:10px;color:#293246;background:#fff;text-decoration:none;font-size:12px;line-height:1.35}
.spro-finance-feature-list li>a:hover{border-color:#0b2767;background:#fbf9f4}
.spro-finance-feature-list li span,.spro-finance-feature-list li b{display:grid;min-height:28px;place-items:center;border-radius:999px;font-size:10px;font-weight:900}
.spro-finance-feature-list li span{color:#fff;background:#0b2767}
.spro-finance-feature-list li b{color:#77552a;background:#ffe8d0}
.spro-finance-detail-dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 18px 18px;overflow:hidden;border:1px solid var(--spro-line-soft);border-radius:12px;background:var(--spro-line-soft)}
.spro-finance-detail-dl div{display:grid;gap:5px;padding:13px;background:#fff}
.spro-finance-action-list{display:grid;gap:8px;margin:0;padding:0 18px 18px;list-style:none}
.spro-finance-action-list li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;align-items:center;min-height:52px;padding:10px;border:1px solid var(--spro-line);border-radius:10px;background:#fff;color:#293246;font-size:13px;line-height:1.35}
.spro-finance-action-list span{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;color:#fff;background:#8d7031;font-size:11px;font-weight:900}
.spro-finance-export-row{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 14px}
.spro-finance-export-actions{display:flex;flex-wrap:wrap;gap:7px;padding:0 18px 18px}
.spro-finance-related-list{display:grid;gap:8px;padding:0 18px 18px}
.spro-finance-related-list a{display:grid;grid-template-columns:54px minmax(0,1fr);gap:4px 10px;align-items:center;min-height:62px;padding:10px;border:1px solid var(--spro-line);border-radius:10px;color:inherit;background:#fff;text-decoration:none}
.spro-finance-related-list a:hover{border-color:#0b2767;background:#fbf9f4}
.spro-finance-related-list span{display:grid;width:48px;height:34px;grid-row:span 2;place-items:center;border-radius:999px;color:#fff;background:#0b2767;font-size:11px;font-weight:900}
.spro-finance-related-list b{color:var(--spro-forest);font-size:14px;line-height:1.25}
.spro-finance-related-list small{color:var(--spro-muted);font-size:12px;line-height:1.35}
@media(max-width:1240px){.spro-finance-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-finance-detail-grid,.spro-finance-surface-detail-grid{grid-template-columns:1fr}.spro-finance-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.spro-finance-surface-group>div,.spro-finance-feature-list ol{grid-template-columns:1fr}.spro-finance-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-finance-surface-group>header{display:block}.spro-finance-surface-card{min-height:0}.spro-finance-detail-dl{grid-template-columns:1fr}}
@media(max-width:560px){.spro-finance-kpi-grid,.spro-finance-policy-grid{grid-template-columns:1fr}.spro-finance-feature-list li>a,.spro-finance-feature-list li{grid-template-columns:44px minmax(0,1fr)}.spro-finance-feature-list li b{display:none}.spro-finance-surface-card>header{grid-template-columns:46px minmax(0,1fr)}.spro-finance-surface-card>header span{width:42px;height:42px}.spro-finance-action-list li{grid-template-columns:36px minmax(0,1fr)}.spro-finance-action-list span{width:32px;height:32px}.spro-finance-surface-board{padding:13px}}

/* SOCIETY PRO depth pass: production-visible persona permission cockpit. */
.spro-persona-readiness{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}
.spro-persona-readiness article{display:grid;gap:7px;min-height:118px;padding:16px;border:1px solid var(--spro-line);border-radius:15px;background:linear-gradient(145deg,#fff,#fbfaf8);box-shadow:0 12px 30px rgba(7,59,53,.045)}
.spro-persona-readiness article.tone-attention{border-color:#e6c79f;background:#fff9ef}
.spro-persona-readiness span,.spro-persona-permission-totals span{color:#0b2767;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-persona-readiness strong,.spro-persona-permission-totals strong{color:var(--spro-forest);font:560 28px/1.05 var(--spro-display)}
.spro-persona-readiness small,.spro-persona-permission-totals small{color:var(--spro-muted);font-size:13px;line-height:1.4}
.spro-persona-permission-cockpit{overflow:hidden;margin:0 0 16px}
.spro-persona-permission-cockpit .spro-panel-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.spro-persona-permission-cockpit .spro-panel-actions a{display:inline-flex;min-height:36px;align-items:center;padding:0 12px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#f8f5ee;font-size:13px;font-weight:850;text-decoration:none}
.spro-persona-permission-cockpit .spro-panel-actions a:hover{color:#fff;background:#0b2767}
.spro-persona-permission-totals{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:1px;margin:0 18px 14px;overflow:hidden;border:1px solid var(--spro-line-soft);border-radius:14px;background:var(--spro-line-soft)}
.spro-persona-permission-totals article{display:grid;gap:5px;min-height:118px;padding:13px;background:#fff}
.spro-persona-permission-totals article.tone-attention{background:#fff9ef}
.spro-persona-permission-totals strong{font-size:27px}
.spro-persona-permission-totals small{font-size:11px}
.spro-persona-permission-table{padding:0 18px 18px}
.spro-persona-permission-table table{min-width:1320px}
.spro-persona-permission-table caption{padding:0 0 10px;color:var(--spro-muted);font-size:13px;text-align:left;white-space:normal}
.spro-persona-permission-table td{vertical-align:top;white-space:normal}
.spro-persona-permission-table td:nth-child(n+5):nth-child(-n+10){text-align:center}
.spro-persona-bool{display:inline-flex;min-height:28px;align-items:center;justify-content:center;padding:0 9px;border-radius:999px;background:#f4f2ee;color:#66736f;font-size:12px;font-weight:900;white-space:nowrap}
.spro-persona-bool.yes{background:#f5f0e5;color:#0b2767}
.spro-persona-bool.attention{background:#fff0d7;color:#865817}
.spro-persona-bool.no{background:#f3f4f5;color:#9aa39f}
.spro-persona-permission-table .spro-row-actions{display:flex;flex-wrap:wrap;gap:6px}
.spro-persona-permission-table .spro-row-actions a{display:inline-flex;min-height:29px;align-items:center;padding:0 9px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#fbf9f5;font-size:12px;font-weight:850;text-decoration:none}
.spro-persona-permission-table .spro-row-actions a:hover{color:#fff;background:#0b2767}
@media(max-width:1240px){.spro-persona-readiness{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-persona-permission-totals{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.spro-persona-readiness,.spro-persona-permission-totals{grid-template-columns:1fr}.spro-persona-permission-cockpit .spro-panel-head{align-items:flex-start;flex-direction:column}.spro-persona-permission-cockpit .spro-panel-actions{width:100%;justify-content:flex-start}.spro-persona-permission-totals{margin-inline:13px}.spro-persona-permission-table{padding-inline:13px}.spro-persona-readiness article,.spro-persona-permission-totals article{min-height:0}}

/* SOCIETY PRO depth pass: society shop and commerce microsites. */
.spro-shop-hero,.spro-shop-cart-hero,.spro-shop-ops-hero,.spro-shop-order-hero{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:0;overflow:hidden;margin:0 0 18px;border-radius:24px;color:#fff;background:radial-gradient(circle at 82% 13%,rgba(220,235,147,.2),transparent 28%),linear-gradient(125deg,#06122f,#0a276b);box-shadow:0 22px 55px rgba(7,59,53,.18)}
.spro-shop-hero>div,.spro-shop-cart-hero>div,.spro-shop-ops-hero>div,.spro-shop-order-hero>div{padding:clamp(30px,5vw,60px)}
.spro-shop-hero span,.spro-shop-cart-hero span,.spro-shop-ops-hero span,.spro-shop-order-hero span,.spro-shop-product-detail article>span{color:#ecc9a0;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.spro-shop-hero h1,.spro-shop-cart-hero h1,.spro-shop-ops-hero h1,.spro-shop-order-hero h1{max-width:900px;margin:8px 0;font:560 clamp(40px,6vw,68px)/.98 var(--spro-display)}
.spro-shop-hero p,.spro-shop-cart-hero p,.spro-shop-ops-hero p,.spro-shop-order-hero p{max-width:860px;color:#ddd7c9;font-size:16px;line-height:1.62}
.spro-shop-hero>div>div,.spro-shop-ops-hero nav,.spro-shop-order-hero nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.spro-shop-hero b,.spro-shop-ops-hero nav a,.spro-shop-order-hero nav a{padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#fff;background:rgba(255,255,255,.08);font-size:12px;font-weight:850;text-decoration:none}
.spro-shop-hero aside,.spro-shop-cart-hero aside{display:grid;align-content:center;padding:32px;border-left:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.08)}
.spro-shop-hero aside strong,.spro-shop-cart-hero aside strong{font:600 44px/1 var(--spro-display)}
.spro-shop-hero aside small,.spro-shop-cart-hero aside small{color:#d5cdbc;font-size:13px;line-height:1.45}
.spro-shop-hero aside a{width:max-content;margin-top:14px;color:#efcfab;font-size:13px;font-weight:850;text-decoration:none}
.spro-shop-filter{display:grid;grid-template-columns:2fr repeat(4,minmax(130px,1fr)) auto;gap:9px;margin:0 0 18px;padding:14px;border:1px solid var(--spro-line);border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(7,59,53,.045)}
.spro-shop-filter label,.spro-shop-checkout label,.spro-shop-order-side label{display:grid;gap:6px;color:#263046;font-size:13px;font-weight:850}
.spro-shop-filter input,.spro-shop-filter select,.spro-shop-checkout input,.spro-shop-checkout select,.spro-shop-checkout textarea,.spro-shop-order-side select,.spro-shop-order-side textarea,.spro-shop-product-detail input,.spro-shop-qty{box-sizing:border-box;width:100%;min-height:44px;padding:10px 11px;border:1px solid #dad5c9;border-radius:10px;background:#fff;font:600 14px/1.45 var(--spro-font)}
.spro-shop-filter button,.spro-shop-grid form button,.spro-shop-cart-actions button,.spro-shop-checkout button,.spro-shop-admin-actions button,.spro-shop-replenishments button,.spro-shop-order-side button,.spro-shop-product-detail button{min-height:44px;padding:0 14px;border:0;border-radius:10px;color:#fff;background:linear-gradient(135deg,#0b2767,#7d5c16);font:900 13px var(--spro-font);cursor:pointer}
.spro-shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}
.spro-shop-grid>article{overflow:hidden;border:1px solid var(--spro-line);border-radius:18px;background:#fff;box-shadow:0 16px 34px rgba(7,59,53,.055)}
.spro-shop-product-photo{display:grid;min-height:210px;place-items:center;background:#f2efe7 center/cover no-repeat;color:#0b2767;text-decoration:none}
.spro-shop-product-photo span{display:grid;width:70px;height:70px;place-items:center;border-radius:20px;background:#fff;font:700 24px var(--spro-display)}
.spro-shop-grid>article>div{display:grid;gap:9px;padding:15px}
.spro-shop-grid small,.spro-shop-grid p,.spro-shop-product-detail p,.spro-shop-order-side p,.spro-shop-replenishments p{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-shop-grid h2{margin:0;font:560 21px/1.15 var(--spro-display)}
.spro-shop-grid h2 a{color:var(--spro-forest);text-decoration:none}
.spro-shop-grid dl,.spro-shop-product-detail dl,.spro-shop-checkout dl,.spro-shop-order-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid var(--spro-line-soft);border-radius:12px;background:var(--spro-line-soft)}
.spro-shop-grid dl div,.spro-shop-product-detail dl div,.spro-shop-checkout dl div,.spro-shop-order-totals div{display:grid;gap:4px;padding:10px;background:#fdfcfb}
.spro-shop-grid dt,.spro-shop-product-detail dt,.spro-shop-checkout dt,.spro-shop-order-totals dt,.spro-shop-party-grid span{color:#0b2767;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.spro-shop-grid dd,.spro-shop-product-detail dd,.spro-shop-checkout dd,.spro-shop-order-totals dd{margin:0;color:#293246;font-size:13px;font-weight:800}
.spro-shop-grid form{display:grid;grid-template-columns:94px minmax(0,1fr);gap:8px;align-items:center}
.spro-shop-proof{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 18px}
.spro-shop-proof article{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px;align-items:start;padding:10px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}
.spro-shop-proof span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:#0b2767;font-size:10px;font-weight:900}
.spro-shop-proof b{color:#283146;font-size:12px;line-height:1.35}
.spro-shop-product-detail{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:18px;margin:0 0 18px}
.spro-shop-product-detail figure{min-height:520px;margin:0;border-radius:24px;background:#f2efe7 center/cover no-repeat;box-shadow:0 18px 44px rgba(7,59,53,.09)}
.spro-shop-product-detail figure span{display:grid;height:100%;place-items:center;color:#0b2767;font:560 38px var(--spro-display)}
.spro-shop-product-detail article{display:grid;align-content:center;gap:14px;padding:28px;border:1px solid var(--spro-line);border-radius:24px;background:#fff}
.spro-shop-product-detail h1{margin:0;color:var(--spro-forest);font:560 clamp(38px,5vw,66px)/1 var(--spro-display)}
.spro-shop-product-detail form{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:9px;align-items:end}
.spro-shop-product-detail form a{align-self:center;color:#0b2767;font-size:13px;font-weight:850;text-decoration:none}
.spro-shop-cart-layout,.spro-shop-ops-grid,.spro-shop-order-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:16px;margin:0 0 18px}
.spro-shop-cart-actions{display:flex;flex-wrap:wrap;gap:9px;padding:14px 18px;border-top:1px solid var(--spro-line-soft)}
.spro-shop-cart-actions a{align-self:center;color:#0b2767;font-size:13px;font-weight:850;text-decoration:none}
.spro-shop-checkout dl,.spro-shop-order-totals{margin:0 18px 14px}
.spro-shop-checkout form,.spro-shop-order-side form{display:grid;gap:10px;padding:0 18px 18px}
.spro-shop-alert{margin:0 18px 18px;padding:12px;border:1px solid #e7c08b;border-radius:12px;background:#fff5eb;color:#784a1d;font-size:13px}
.spro-shop-ops-hero aside,.spro-shop-order-hero aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:center;padding:24px;border-left:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.08)}
.spro-shop-ops-hero aside article,.spro-shop-order-hero aside article{display:grid;gap:6px;min-height:120px;padding:14px;border:1px solid rgba(255,255,255,.17);border-radius:14px;background:rgba(255,255,255,.08)}
.spro-shop-ops-hero aside strong,.spro-shop-order-hero aside strong{font:560 26px/1.05 var(--spro-display)}
.spro-shop-admin-actions>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-shop-admin-actions form{display:grid;gap:9px;padding:14px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}
.spro-shop-seller-bars,.spro-shop-replenishments,.spro-shop-order-side section{display:grid;gap:9px;padding:0 18px 18px}
.spro-shop-seller-bars article,.spro-shop-replenishments article,.spro-shop-order-side section article{display:grid;gap:5px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}
.spro-shop-seller-bars span,.spro-shop-replenishments span,.spro-shop-order-side section span{width:max-content;padding:4px 8px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-shop-seller-bars b,.spro-shop-replenishments b,.spro-shop-order-side section b{color:var(--spro-forest);font-size:14px}
.spro-shop-seller-bars em{color:#313b53;font-size:12px;font-style:normal;font-weight:850}
.spro-shop-seller-bars i{display:block;height:10px;border-radius:999px;background:linear-gradient(90deg,#0b2767 var(--bar),#ece9e4 0)}
.spro-shop-party-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-shop-party-grid article{display:grid;gap:6px;padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}
.spro-shop-party-grid b{font-size:15px}
.spro-shop-party-grid small{color:var(--spro-muted);font-size:12px;line-height:1.35}
@media(max-width:1240px){.spro-shop-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-shop-proof{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-shop-product-detail,.spro-shop-cart-layout,.spro-shop-ops-grid,.spro-shop-order-layout{grid-template-columns:1fr}.spro-shop-party-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.spro-shop-hero,.spro-shop-cart-hero,.spro-shop-ops-hero,.spro-shop-order-hero{grid-template-columns:1fr}.spro-shop-hero>div,.spro-shop-cart-hero>div,.spro-shop-ops-hero>div,.spro-shop-order-hero>div{padding:25px 19px}.spro-shop-hero aside,.spro-shop-cart-hero aside,.spro-shop-ops-hero aside,.spro-shop-order-hero aside{border-top:1px solid rgba(255,255,255,.13);border-left:0}.spro-shop-filter,.spro-shop-grid,.spro-shop-proof,.spro-shop-admin-actions>div,.spro-shop-party-grid,.spro-shop-grid dl,.spro-shop-product-detail dl,.spro-shop-checkout dl,.spro-shop-order-totals,.spro-shop-product-detail form{grid-template-columns:1fr}.spro-shop-product-detail figure{min-height:320px}.spro-shop-grid form{grid-template-columns:88px minmax(0,1fr)}}

/* Society Pro procurement command */
.spro-procurement-page .spro-page-head p{max-width:930px}
.spro-procurement-head .spro-page-actions{align-self:end}
.spro-procurement-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.spro-procurement-metrics article{position:relative;min-height:118px;overflow:hidden;padding:18px 20px;border:1px solid var(--spro-line);border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(24,47,40,.05)}
.spro-procurement-metrics article:before{position:absolute;inset:0 0 auto;height:4px;background:var(--metric-color,var(--spro-emerald));content:""}
.spro-procurement-metrics .tone-emerald{--metric-color:var(--spro-emerald)}
.spro-procurement-metrics .tone-amber{--metric-color:var(--spro-orange)}
.spro-procurement-metrics .tone-blue{--metric-color:var(--spro-blue)}
.spro-procurement-metrics .tone-ink{--metric-color:#272d3c}
.spro-procurement-metrics .tone-red{--metric-color:var(--spro-coral)}
.spro-procurement-metrics .tone-gold{--metric-color:var(--spro-gold)}
.spro-procurement-metrics .tone-violet{--metric-color:var(--spro-violet)}
.spro-procurement-metrics span,.spro-procurement-hero span,.spro-procurement-research a b{color:var(--spro-emerald);font-size:11px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.spro-procurement-metrics strong{display:block;margin-top:8px;color:var(--spro-ink);font:600 28px/1 var(--spro-display)}
.spro-procurement-metrics small{display:block;margin-top:8px;color:var(--spro-muted);font-size:13px;line-height:1.4}
.spro-procurement-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.45fr);overflow:hidden;margin-bottom:16px;border:1px solid rgba(11,83,72,.18);border-radius:18px;color:#fff;background:linear-gradient(125deg,#07173b 0%,#0c2767 63%,#203d55 100%);box-shadow:0 18px 45px rgba(7,59,53,.18)}
.spro-procurement-hero>div{padding:clamp(28px,4vw,48px)}
.spro-procurement-hero span{color:#ecc9a1}
.spro-procurement-hero h2{max-width:780px;margin:11px 0 10px;font:560 clamp(30px,4vw,48px)/1.05 var(--spro-display)}
.spro-procurement-hero p{max-width:760px;margin:0;color:#e2ddd2;font-size:15px;line-height:1.7}
.spro-procurement-hero>div>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.spro-procurement-hero b{min-height:34px;padding:8px 11px;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;background:rgba(255,255,255,.08);font-size:12px}
.spro-procurement-hero aside{display:grid;align-content:center;gap:10px;padding:28px;border-left:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08)}
.spro-procurement-hero aside strong{font:650 64px/1 var(--spro-display)}
.spro-procurement-hero aside small{max-width:280px;color:#e2ddd2;font-size:13px;line-height:1.55}
.spro-procurement-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}
.spro-procurement-flow a{display:grid;min-height:138px;grid-template-rows:auto 1fr auto;gap:10px;padding:15px;border:1px solid var(--spro-line);border-radius:12px;color:inherit;background:#fff;text-decoration:none;box-shadow:0 8px 24px rgba(24,47,40,.05)}
.spro-procurement-flow i{display:grid;width:36px;height:30px;place-items:center;border-radius:8px;color:#0b2051;background:#f1ece2;font-size:11px;font-style:normal;font-weight:850}
.spro-procurement-flow b,.spro-procurement-objects b,.spro-procurement-queue b{display:block;color:var(--spro-ink);font-size:15px;overflow-wrap:anywhere}
.spro-procurement-flow small,.spro-procurement-objects small,.spro-procurement-queue small{display:block;margin-top:4px;color:var(--spro-muted);font-size:12px;line-height:1.45}
.spro-procurement-flow strong{justify-self:start;min-width:38px;padding:5px 8px;border-radius:999px;color:#fff;background:var(--spro-forest);font-size:12px}
.spro-procurement-grid{display:grid;grid-template-columns:minmax(0,.58fr) minmax(0,.42fr);gap:16px;margin-bottom:16px}
.spro-procurement-domain-panel>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-procurement-domain-panel p{min-height:86px;margin:0;padding:14px;border:1px solid var(--spro-line-soft);border-radius:10px;background:#fcfbfa}
.spro-procurement-domain-panel b{display:block;color:var(--spro-ink);font-size:14px}
.spro-procurement-domain-panel small{display:block;margin-top:5px;color:var(--spro-muted);font-size:12px;line-height:1.45}
.spro-procurement-transparency>div{display:grid;gap:10px;padding:0 18px 18px}
.spro-procurement-transparency section{padding:15px;border:1px solid var(--spro-line-soft);border-radius:10px;background:linear-gradient(180deg,#fff,#faf9f7)}
.spro-procurement-transparency span,.spro-procurement-features header span,.spro-procurement-objects article>span,.spro-procurement-data-model h3{color:var(--spro-emerald);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.spro-procurement-transparency strong{display:block;margin-top:5px;font:600 24px/1.1 var(--spro-display)}
.spro-procurement-transparency small{display:block;margin-top:6px;color:var(--spro-muted);font-size:12px;line-height:1.5}
.spro-procurement-data-model{margin-bottom:16px}
.spro-procurement-data-model>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0 18px 18px}
.spro-procurement-data-model article{padding:16px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fff}
.spro-procurement-data-model h3{margin:0 0 12px}
.spro-procurement-data-model ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.spro-procurement-data-model li{position:relative;padding-left:15px;color:#414a5e;font-size:12px;line-height:1.4}
.spro-procurement-data-model li:before{position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--spro-gold);content:""}
.spro-procurement-objects{margin-bottom:16px}
.spro-procurement-objects>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-procurement-objects article{display:grid;gap:7px;min-height:152px;padding:15px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fcfbfa}
.spro-procurement-objects p{display:flex;flex-wrap:wrap;gap:7px;margin:auto 0 0}
.spro-procurement-objects a,.spro-procurement-queue a,.spro-procurement-research a{color:var(--spro-emerald);font-size:12px;font-weight:800;text-decoration:none}
.spro-procurement-objects p a{min-height:32px;padding:0 10px;border:1px solid #dcd7cb;border-radius:8px;line-height:30px}
.spro-procurement-actions{margin-bottom:16px}
.spro-procurement-actions>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-procurement-actions article{position:relative;display:grid;gap:10px;min-height:220px;padding:15px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fff;box-shadow:0 8px 22px rgba(24,47,40,.04)}
.spro-procurement-actions article:before{position:absolute;inset:0 auto 0 0;width:4px;border-radius:12px 0 0 12px;background:var(--action-color,#0b2767);content:""}
.spro-procurement-actions .tone-next{--action-color:#0b2767}
.spro-procurement-actions .tone-warn{--action-color:#c88223}
.spro-procurement-actions header{display:grid;gap:4px;padding-left:4px}
.spro-procurement-actions header span{width:max-content;padding:4px 7px;border-radius:999px;color:#0b2767;background:#f5f1e8;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-procurement-actions h3{margin:0;color:var(--spro-ink);font:650 17px/1.25 var(--spro-display)}
.spro-procurement-actions header a{color:var(--spro-blue);font-size:12px;font-weight:850;text-decoration:none}
.spro-procurement-actions p{margin:0;color:#3d465a;font-size:12px;line-height:1.45}
.spro-procurement-actions small{display:block;margin-top:-3px;color:#9a6a1e;font-size:11px;font-weight:800}
.spro-procurement-actions form{display:grid;gap:8px;margin-top:auto}
.spro-procurement-actions input:not([type=hidden]){box-sizing:border-box;width:100%;min-height:38px;padding:9px 10px;border:1px solid #dad5c9;border-radius:8px;background:#fcfbfa;color:var(--spro-ink);font:700 12px/1.35 var(--spro-font)}
.spro-procurement-actions button{min-height:38px;padding:0 12px;border:0;border-radius:8px;color:#fff;background:linear-gradient(135deg,#0b2767,#8d6819);font:900 12px var(--spro-font);cursor:pointer}
.spro-procurement-audit{margin-bottom:16px}
.spro-procurement-audit>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-procurement-audit article{display:grid;gap:6px;min-height:132px;padding:14px;border:1px solid var(--spro-line-soft);border-radius:12px;background:linear-gradient(180deg,#fff,#faf9f7)}
.spro-procurement-audit time{color:#525a6e;font-size:11px;font-weight:850}
.spro-procurement-audit span{width:max-content;max-width:100%;padding:4px 7px;border-radius:999px;color:#313b54;background:#f3f1ed;font-size:10px;font-weight:900;text-transform:uppercase;overflow-wrap:anywhere}
.spro-procurement-audit b{color:var(--spro-ink);font-size:13px;line-height:1.3;overflow-wrap:anywhere}
.spro-procurement-audit small{color:var(--spro-muted);font-size:11px;line-height:1.45}
.spro-procurement-queue>div{display:grid;padding:0 18px 18px}
.spro-procurement-queue a,.spro-procurement-queue section{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;padding:14px 0;border-top:1px solid var(--spro-line-soft)}
.spro-procurement-queue a:first-child,.spro-procurement-queue section:first-child{border-top:0}
.spro-procurement-queue strong{color:var(--spro-ink);font-size:14px;white-space:nowrap}
.spro-procurement-queue em{grid-column:1/-1;color:var(--spro-muted);font-size:12px;font-style:normal}
.spro-procurement-exceptions{margin-bottom:16px}
.spro-procurement-exceptions>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-procurement-exceptions a,.spro-procurement-exceptions section{display:grid;gap:7px;min-height:112px;padding:14px;border:1px solid #ead5b6;border-radius:12px;color:inherit;background:#fff8f1;text-decoration:none}
.spro-procurement-exceptions span,.spro-procurement-suppliers span{color:#9a6a1e;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-procurement-exceptions b{color:var(--spro-ink);font-size:14px}
.spro-procurement-exceptions small{color:#715b37;font-size:12px;line-height:1.45}
.spro-procurement-grid-wide{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.spro-procurement-table-panel{min-width:0;overflow:hidden}
.spro-procurement-table{min-width:980px}
.spro-procurement-table td{vertical-align:top}
.spro-procurement-table td>a{color:var(--spro-emerald);text-decoration:none}
.spro-procurement-table tr.tone-alert td{background:#fff8f4}
.spro-procurement-table tr.tone-alert td:first-child{border-left:4px solid var(--spro-coral)}
.spro-procurement-table tr.tone-warn td{background:#fff8f2}
.spro-procurement-table tr.tone-warn td:first-child{border-left:4px solid var(--spro-orange)}
.spro-procurement-table tr.tone-ok td:first-child{border-left:4px solid var(--spro-emerald)}
.spro-procurement-table .spro-status{display:inline-flex;min-height:24px;align-items:center;padding:0 8px;border-radius:999px;background:#f6f3ee;color:#0b2767;font-size:10px;font-weight:900}
.spro-procurement-goods-plan{overflow:hidden;margin-bottom:16px}
.spro-procurement-goods-plan .spro-procurement-table{min-width:1180px}
.spro-procurement-intake-form{overflow:hidden;margin-bottom:18px}
.spro-procurement-intake-form>.spro-panel-head,.spro-procurement-intake-form>header{align-items:center}
.spro-procurement-intake-form button,.spro-procurement-goods-forms form button,.spro-procurement-form-footer button{min-height:40px;padding:0 14px;border:0;border-radius:8px;color:#fff;background:linear-gradient(135deg,#0b2767,#8d6819);font:900 12px var(--spro-font);cursor:pointer}
.spro-procurement-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0}
.spro-procurement-form-grid label,.spro-procurement-goods-forms form label{display:grid;gap:6px;min-width:0}
.spro-procurement-form-grid label.wide,.spro-procurement-goods-forms form label.wide{grid-column:1/-1}
.spro-procurement-form-grid span,.spro-procurement-goods-forms form label>span{color:#313b54;font-size:11px;font-weight:900;text-transform:uppercase}
.spro-procurement-form-grid input,.spro-procurement-form-grid select,.spro-procurement-form-grid textarea,.spro-procurement-goods-forms form input,.spro-procurement-goods-forms form select,.spro-procurement-goods-forms form textarea{box-sizing:border-box;width:100%;min-height:40px;padding:9px 10px;border:1px solid #dad5c9;border-radius:8px;background:#fcfbfa;color:var(--spro-ink);font:700 13px/1.35 var(--spro-font)}
.spro-procurement-form-grid textarea,.spro-procurement-goods-forms form textarea{min-height:72px;resize:vertical}
.spro-procurement-intake-form>.spro-procurement-form-grid,.spro-procurement-rfq-prep,.spro-procurement-line-builder,.spro-procurement-form-footer{padding:0 18px 18px}
.spro-procurement-rfq-prep,.spro-procurement-line-builder{display:grid;gap:14px;border-top:1px solid var(--spro-line-soft);padding-top:18px}
.spro-procurement-rfq-prep>header,.spro-procurement-line-builder>header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.spro-procurement-rfq-prep>header span,.spro-procurement-line-builder>header span{color:var(--spro-emerald);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-procurement-rfq-prep>header h2,.spro-procurement-line-builder>header h2{margin:0;color:var(--spro-ink);font:650 20px/1.2 var(--spro-display)}
.spro-check-row{display:grid!important;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;padding:12px;border:1px solid #e7e2d8;border-radius:10px;background:#fbf9f6}
.spro-check-row input,.spro-procurement-switch-row input,.spro-supplier-invite-grid input{accent-color:var(--spro-emerald)}
.spro-check-row b,.spro-supplier-invite-grid b{display:block;color:var(--spro-ink);font-size:13px}
.spro-check-row small,.spro-supplier-invite-grid small{display:block;margin-top:3px;color:var(--spro-muted);font-size:11px;line-height:1.4}
.spro-procurement-switch-row{display:flex;flex-wrap:wrap;gap:9px}
.spro-procurement-switch-row label{display:flex;min-height:34px;align-items:center;gap:7px;padding:0 10px;border:1px solid #e2dfd8;border-radius:8px;background:#fff;color:#313b54;font-size:12px;font-weight:850}
.spro-procurement-switch-row.compact{padding-top:2px}
.spro-supplier-invite-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.spro-supplier-invite-grid label{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;min-height:64px;padding:11px;border:1px solid var(--spro-line-soft);border-radius:10px;background:#fff}
.spro-procurement-line-builder fieldset{display:grid;gap:12px;margin:0;padding:14px;border:1px solid var(--spro-line-soft);border-radius:10px;background:#fff}
.spro-procurement-line-builder legend{padding:0 8px;color:var(--spro-blue);font-size:11px;font-weight:900;text-transform:uppercase}
.spro-procurement-form-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid var(--spro-line-soft);padding-top:14px}
.spro-procurement-form-footer a{color:var(--spro-muted);font-size:13px;font-weight:850;text-decoration:none}
.spro-procurement-goods-forms>.spro-panel{overflow:hidden}
.spro-procurement-goods-forms form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-procurement-goods-forms form button{grid-column:1/-1;justify-self:start}
.spro-procurement-goods-forms form label.spro-check{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;min-height:40px;padding:10px;border:1px solid #e7e2d8;border-radius:8px;background:#fbf9f6}
.spro-procurement-goods-forms form label.spro-check input{width:18px;height:18px;min-height:18px;margin:1px 0 0;padding:0;accent-color:var(--spro-emerald)}
.spro-procurement-goods-forms form label.spro-check span{color:var(--spro-ink);font-size:12px;line-height:1.35;text-transform:none}
.spro-upload.compact{position:relative;grid-template-columns:42px minmax(0,1fr)!important;align-items:center;min-height:68px;padding:12px;border:1px dashed #d1c9b8;border-radius:10px;background:#fbfaf8;cursor:pointer}
.spro-upload.compact input{position:absolute;inset:0;opacity:0;cursor:pointer}
.spro-upload.compact i{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;color:#fff;background:#0b2767;font-style:normal;font-weight:900}
.spro-upload.compact b{display:block;color:var(--spro-ink);font-size:13px}
.spro-upload.compact small{display:block;margin-top:3px;color:var(--spro-muted);font-size:11px;line-height:1.4}
.spro-procurement-feature-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-procurement-feature-grid article{display:grid;align-content:start;gap:10px;padding:14px;border:1px solid var(--spro-line-soft);border-radius:10px;background:#fff}
.spro-procurement-feature-grid h3{margin:0;color:var(--spro-ink);font:650 16px/1.2 var(--spro-display)}
.spro-procurement-feature-grid ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.spro-procurement-feature-grid li{display:grid;grid-template-columns:74px minmax(0,1fr);gap:7px;align-items:start;padding-top:7px;border-top:1px solid var(--spro-line-soft)}
.spro-procurement-feature-grid li:first-child{border-top:0;padding-top:0}
.spro-procurement-feature-grid li b{color:var(--spro-blue);font-size:10px}
.spro-procurement-feature-grid li span{color:#333b4f;font-size:11px;line-height:1.35}
.spro-procurement-suppliers{margin-bottom:16px}
.spro-procurement-suppliers>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-procurement-suppliers article{display:grid;gap:12px;min-height:150px;padding:15px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fff}
.spro-procurement-suppliers header{display:grid;gap:5px}
.spro-procurement-suppliers a,.spro-procurement-suppliers b{color:var(--spro-ink);font-size:15px;font-weight:850;text-decoration:none;overflow-wrap:anywhere}
.spro-procurement-suppliers small{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-procurement-suppliers dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid var(--spro-line-soft);border-radius:10px;background:var(--spro-line-soft)}
.spro-procurement-suppliers dl div{display:grid;gap:3px;padding:9px;background:#fcfbfa}
.spro-procurement-suppliers dt{color:var(--spro-muted);font-size:9px;font-weight:900;text-transform:uppercase}
.spro-procurement-suppliers dd{margin:0;color:var(--spro-ink);font-size:13px;font-weight:850;line-height:1.25}
.spro-procurement-features{margin-bottom:16px}
.spro-procurement-features>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 18px 18px}
.spro-procurement-features article{overflow:hidden;border:1px solid var(--spro-line);border-radius:12px;background:#fff}
.spro-procurement-features article>header{min-height:118px;padding:16px;border-bottom:1px solid var(--spro-line-soft);background:#faf9f7}
.spro-procurement-features header span{display:inline-grid;width:34px;height:28px;place-items:center;margin-bottom:10px;border-radius:8px;color:#0b2051;background:#eee8dc}
.spro-procurement-features h3{margin:0;font:600 19px/1.2 var(--spro-display)}
.spro-procurement-features p{margin:7px 0 0;color:var(--spro-muted);font-size:12px;line-height:1.45}
.spro-procurement-features ol{display:grid;gap:0;margin:0;padding:0;list-style:none}
.spro-procurement-features li{display:grid;grid-template-columns:86px minmax(0,1fr) 118px;gap:7px 12px;min-height:76px;padding:13px 16px;border-top:1px solid var(--spro-line-soft)}
.spro-procurement-features li:first-child{border-top:0}
.spro-procurement-features li>span{align-self:start;color:var(--spro-blue);font-size:10px;font-weight:850}
.spro-procurement-features li b{color:var(--spro-ink);font-size:13px;overflow-wrap:anywhere}
.spro-procurement-features li small{grid-column:2/3;color:var(--spro-muted);font-size:12px;line-height:1.45}
.spro-procurement-features li em{grid-column:3/4;grid-row:1/span 2;justify-self:end;align-self:center;max-width:118px;padding:5px 7px;border-radius:999px;color:#694018;background:#f8e8d8;font-size:10px;font-style:normal;font-weight:800;text-align:right}
.spro-procurement-research>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-procurement-research a{min-height:126px;padding:15px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fff}
.spro-procurement-research a small{display:block;margin-top:7px;color:var(--spro-muted);font-size:12px;font-weight:500;line-height:1.5}
@media(max-width:1180px){.spro-procurement-metrics,.spro-procurement-flow,.spro-procurement-objects>div,.spro-procurement-actions>div,.spro-procurement-audit>div,.spro-procurement-research>div,.spro-procurement-exceptions>div,.spro-procurement-suppliers>div,.spro-supplier-invite-grid,.spro-procurement-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-procurement-data-model>div,.spro-procurement-features>div,.spro-procurement-form-grid,.spro-procurement-goods-forms form{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.spro-procurement-hero,.spro-procurement-grid,.spro-procurement-domain-panel>div{grid-template-columns:1fr}.spro-procurement-hero aside{border-left:0;border-top:1px solid rgba(255,255,255,.14)}}
@media(max-width:760px){body.spro-procurement-page .spro-page-head p{max-width:100%;width:auto;overflow-wrap:anywhere}body.spro-procurement-page .spro-page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;max-width:100%;overflow:visible}body.spro-procurement-page .spro-page-actions .spro-button{box-sizing:border-box;width:100%;min-width:0;min-height:48px;justify-content:center;padding:8px 10px;text-align:center;white-space:normal;overflow-wrap:anywhere}body.spro-procurement-page .spro-page-actions .spro-button-primary{grid-column:1/-1}}
@media(max-width:640px){.spro-procurement-metrics,.spro-procurement-flow,.spro-procurement-objects>div,.spro-procurement-actions>div,.spro-procurement-audit>div,.spro-procurement-research>div,.spro-procurement-exceptions>div,.spro-procurement-suppliers>div,.spro-supplier-invite-grid,.spro-procurement-form-grid,.spro-procurement-goods-forms form,.spro-procurement-feature-grid{grid-template-columns:1fr}.spro-procurement-intake-form>.spro-procurement-form-grid,.spro-procurement-rfq-prep,.spro-procurement-line-builder,.spro-procurement-form-footer,.spro-procurement-goods-forms form,.spro-procurement-feature-grid{padding-inline:13px}.spro-procurement-rfq-prep>header,.spro-procurement-line-builder>header,.spro-procurement-form-footer{align-items:flex-start;flex-direction:column}.spro-procurement-intake-form>.spro-panel-head button{width:100%}.spro-procurement-features li{grid-template-columns:72px minmax(0,1fr)}.spro-procurement-features li em{grid-column:2/3;grid-row:auto;justify-self:start;max-width:100%;text-align:left}}
@media(max-width:520px){body.spro-procurement-page .spro-page-actions{grid-template-columns:1fr}}
.spro-table-statusbar{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 14px}
.spro-table-statusbar button{min-height:36px;padding:0 12px;border:1px solid #dad5c9;border-radius:999px;color:#313b54;background:#fff;font:850 12px var(--spro-font);cursor:pointer;transition:.16s ease}
.spro-table-statusbar button:hover,.spro-table-statusbar button.active{border-color:#0b2767;color:#fff;background:#0b2767;box-shadow:0 8px 18px rgba(11,103,88,.14)}
.spro-transaction-ledger-panel{overflow:hidden;margin:0 0 18px}
.spro-transaction-ledger-panel table{min-width:1120px}
.spro-transaction-ledger-panel td:first-child{min-width:280px;white-space:normal}
.spro-transaction-ledger-panel td:nth-child(7) a{white-space:nowrap}
.spro-project-analytics-panel{margin-bottom:17px}
.spro-project-analytics-panel .spro-canvas-shell{margin:0 0 12px;min-height:250px}
.spro-project-analytics-panel .spro-canvas-shell canvas{height:250px;min-height:250px}
.spro-vendor-section .spro-canvas-shell{margin:10px 0 12px}
@media(max-width:720px){.spro-table-statusbar{padding:0 13px 12px}.spro-table-statusbar button{flex:1 1 auto}.spro-project-analytics-panel .spro-canvas-shell,.spro-project-analytics-panel .spro-canvas-shell canvas{min-height:220px;height:220px}}

/* Split amenity booking pages */
.spro-facility-picker{display:none}
.spro-facility-tabs{border-radius:18px}
.spro-amenity-selector-panel{margin:0 0 18px;overflow:hidden}
.spro-facility-selector{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;padding:0 18px 18px}
.spro-facility-selector .spro-field{margin:0}
.spro-facility-selector select{min-height:48px;border-radius:10px;font-size:15px}
.spro-booking-calendar-shell{padding:18px}
.spro-booking-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.spro-booking-calendar-grid .spro-calendar-day{min-width:0}
.spro-time-slot>span{display:grid;gap:8px;min-height:116px}
.spro-time-slot small{margin:0 0 4px}
.spro-slot-book-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;align-self:end;padding:0 12px;border:1px solid #0b2767;border-radius:9px;color:#fff;background:#0b2767;font-size:13px;font-weight:900;text-decoration:none;touch-action:manipulation}
.spro-slot-book-button:focus-visible{outline:3px solid rgba(11,103,88,.22);outline-offset:2px}
.spro-booking-intelligence{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:18px;margin:0 0 18px}
.spro-facility-maintenance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-facility-maintenance-grid article{display:grid;align-content:start;gap:8px;min-width:0}
.spro-facility-maintenance-grid h3{margin:0;color:var(--spro-forest);font-size:16px}
.spro-facility-maintenance-grid a,.spro-facility-maintenance-grid article>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--spro-line-soft);border-radius:10px;color:inherit;background:#fcfbfa;text-decoration:none}
.spro-facility-maintenance-grid b,.spro-facility-maintenance-grid small{display:block}
.spro-facility-maintenance-grid b{color:var(--spro-ink);font-size:14px}
.spro-facility-maintenance-grid small{margin-top:3px;color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-facility-maintenance-grid em{color:#0b2767;font-size:12px;font-style:normal;font-weight:900;white-space:nowrap}
.spro-overlay-list>div{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 0;border-top:1px solid var(--spro-line-soft)}
.spro-overlay-list>div:first-child{border-top:0}
.spro-overlay-list>div>i{display:grid;width:32px;height:32px;place-items:center;border-radius:8px;color:#0b2767;background:#f5f1e8;font-size:11px;font-style:normal;font-weight:900}
.spro-booking-create-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;gap:18px}
.spro-booking-form-card,.spro-booking-amount-card,.spro-booking-table-page{overflow:hidden;margin:0 0 18px}
.spro-booking-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 18px 18px}
.spro-booking-detail-grid .spro-field{margin:0}
.spro-booking-detail-grid input,.spro-booking-detail-grid select,.spro-booking-detail-grid textarea{font-size:15px}
.spro-booking-detail-grid textarea{min-height:108px}
.spro-booking-amount-card dl{display:grid;gap:1px;margin:0;padding:0 18px 18px}
.spro-booking-amount-card dl div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 0;border-top:1px solid var(--spro-line-soft)}
.spro-booking-amount-card dl div:first-child{border-top:0}
.spro-booking-amount-card dt{color:var(--spro-muted);font-size:12px;font-weight:900;text-transform:uppercase}
.spro-booking-amount-card dd{margin:0;color:var(--spro-ink);font-size:14px;font-weight:850;text-align:right}
.spro-booking-decision-form{display:grid;gap:10px;padding:0 18px 18px}
.spro-booking-decision-form .spro-field{margin:0}
.spro-booking-decision-form>div,.spro-booking-side-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 18px}
.spro-booking-side-actions .spro-button{flex:1}
.spro-booking-table-toolbar{display:grid;grid-template-columns:minmax(190px,280px) minmax(260px,1fr) auto;align-items:end;gap:10px;padding:0 18px 18px}
.spro-booking-table-toolbar .spro-field{margin:0}
.spro-booking-table-toolbar .spro-table-search{height:48px}
.spro-booking-table-toolbar .spro-table-search input{width:100%;font-size:14px}
.spro-booking-delete-card{max-width:760px}
.spro-booking-delete-card .spro-record-footer{margin-top:18px}
.spro-table-actions .danger{border-color:#efc8c1;color:#a64138;background:#fff3f0}
@media(max-width:1180px){.spro-booking-calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.spro-booking-intelligence,.spro-booking-create-shell{grid-template-columns:1fr}.spro-booking-amount-card{order:-1}}
@media(max-width:760px){.spro-facility-selector,.spro-booking-table-toolbar,.spro-booking-detail-grid,.spro-facility-maintenance-grid{grid-template-columns:1fr}.spro-facility-selector .spro-button,.spro-booking-table-toolbar .spro-button{width:100%}.spro-booking-calendar-shell{padding:13px}.spro-booking-calendar-grid{grid-template-columns:1fr}.spro-slot-legend{overflow:visible;flex-wrap:wrap}.spro-time-slot>span{min-height:104px}.spro-booking-create-shell{gap:12px}.spro-record-footer>div{width:100%}.spro-record-footer .spro-button{justify-content:center;flex:1}.spro-module-jumpbar.spro-facility-tabs a{min-width:0}}
@media(max-width:760px){.spro-event-calendar-strip{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-inline:13px}.spro-gantt-board{overflow:visible;padding-inline:13px}.spro-gantt-board header{display:none}.spro-gantt-board>div{grid-template-columns:1fr;min-width:0;gap:8px;padding:12px 0}.spro-gantt-track{height:20px}.spro-gantt-board em{justify-self:start}}
@media(max-width:480px){.spro-event-calendar-strip{grid-template-columns:1fr}}
.spro-amenity-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 18px}
.spro-amenity-report-panel{overflow:hidden;margin:0 0 18px}
.spro-report-bars{display:grid;gap:10px;padding:0 18px 18px}
.spro-report-bars section{display:grid;grid-template-columns:minmax(130px,.38fr) minmax(120px,1fr) auto;align-items:center;gap:12px;min-height:42px}
.spro-report-bars span,.spro-report-finance-list dt,.spro-report-mini-metrics span,.spro-report-owner-list span,.spro-process-flow-list span,.spro-process-event-feed span{color:#0b2767;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-report-bars i{display:block;height:12px;border-radius:999px;background:linear-gradient(90deg,#0b2767 var(--bar),#edeae4 0)}
.spro-report-bars b{color:var(--spro-ink);font-size:13px;text-align:right}
.spro-report-bars p{margin:0;color:var(--spro-muted);font-size:13px}
.spro-report-finance-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 18px 18px;overflow:hidden;border:1px solid var(--spro-line-soft);border-radius:12px;background:var(--spro-line-soft)}
.spro-report-finance-list div{display:grid;gap:5px;padding:12px;background:#fcfbfa}
.spro-report-finance-list dd{margin:0;color:var(--spro-ink);font-size:15px;font-weight:900}
.spro-utilization-list,.spro-report-owner-list,.spro-process-flow-list,.spro-process-event-feed{display:grid;gap:10px;padding:0 18px 18px}
.spro-utilization-list article{display:grid;gap:10px;padding:14px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fff}
.spro-utilization-list header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}
.spro-utilization-list b,.spro-utilization-list small{display:block}
.spro-utilization-list b{color:var(--spro-ink);font-size:15px}
.spro-utilization-list small{margin-top:4px;color:var(--spro-muted);font-size:12px}
.spro-utilization-list em{color:#0b2767;font-size:12px;font-style:normal;font-weight:900;text-align:right}
.spro-utilization-strip{display:flex;height:15px;overflow:hidden;border-radius:999px;background:#f4f2ed}
.spro-utilization-strip i{display:block;flex:0 0 var(--bar);height:100%}
.spro-utilization-strip .available{width:var(--bar);background:#0b2767}
.spro-utilization-strip .booked{width:var(--bar);background:#8d6819}
.spro-utilization-strip .blocked{width:var(--bar);background:#c88223}
.spro-utilization-list footer{display:flex;flex-wrap:wrap;gap:8px;color:var(--spro-muted);font-size:12px;font-weight:800}
.spro-utilization-list footer span{padding:5px 8px;border-radius:999px;background:#f5f3ee}
.spro-report-mini-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 18px 18px}
.spro-report-mini-metrics article,.spro-report-owner-list article,.spro-process-flow-list article,.spro-process-event-feed article{display:grid;gap:7px;padding:13px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fcfbfa}
.spro-report-mini-metrics strong{color:var(--spro-ink);font:650 22px/1 var(--spro-display)}
.spro-report-mini-metrics small,.spro-report-owner-list small,.spro-process-flow-list small,.spro-process-event-feed small{color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-report-owner-list b,.spro-process-flow-list b,.spro-process-event-feed b{color:var(--spro-ink);font-size:14px;line-height:1.35}
.spro-report-owner-list em,.spro-process-flow-list em,.spro-process-event-feed time{color:#313b54;font-size:11px;font-style:normal;font-weight:900}
.spro-process-flow-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.spro-process-event-feed{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1180px){.spro-amenity-report-grid,.spro-process-event-feed{grid-template-columns:1fr}.spro-report-mini-metrics,.spro-report-finance-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.spro-report-bars section{grid-template-columns:1fr;gap:6px}.spro-report-bars b{text-align:left}.spro-report-finance-list,.spro-report-mini-metrics,.spro-process-flow-list{grid-template-columns:1fr}.spro-utilization-list header{grid-template-columns:1fr}.spro-utilization-list em{text-align:left}.spro-amenity-report-grid{gap:12px}}
@media(max-width:760px){.spro-concierge-launch{right:12px;bottom:82px;width:52px;min-width:52px;padding:0;justify-content:center;border-radius:50%;font-size:0}.spro-concierge-launch span{margin:0}}
@media(max-width:760px){.spro-amenity-module-page .spro-concierge-launch,.spro-amenity-module-page .spro-mobile-dock{display:none}.spro-amenity-module-page .spro-shell{padding-bottom:0}}
.spro-page-head.compact{margin-bottom:14px}
.spro-project-control-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}
.spro-project-control-grid a{display:grid;gap:8px;min-height:150px;padding:16px;border:1px solid var(--spro-line-soft);border-radius:12px;color:inherit;background:linear-gradient(180deg,#fff,#fcfbf9);text-decoration:none}
.spro-project-control-grid span,.spro-project-form-panel header>span,.spro-project-subsection header span,.spro-project-report-config header span{color:#0b2767;font-size:10px;font-weight:900;letter-spacing:0;text-transform:uppercase}
.spro-project-control-grid strong{color:var(--spro-ink);font:650 24px/1.1 var(--spro-display)}
.spro-project-control-grid small{color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-project-control-grid em{align-self:end;color:#886518;font-size:12px;font-style:normal;font-weight:900}
.spro-project-form-panel{overflow:hidden;margin:0 0 18px;padding:18px}
.spro-project-form{display:grid;gap:16px;align-content:start}
.spro-project-create-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.spro-project-create-grid .span-2,.spro-project-form .span-2{grid-column:1/-1}
.spro-field input,.spro-field select,.spro-field textarea{width:100%;min-width:0}
.spro-project-subsection{display:grid;gap:14px;padding:16px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fcfbfa}
.spro-project-subsection header,.spro-project-report-config form>header{display:grid;gap:4px}
.spro-project-subsection header p,.spro-project-report-config form>header p{margin:0;color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-project-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.spro-project-checkbox-grid>label{display:grid;gap:10px;padding:13px;border:1px solid var(--spro-line-soft);border-radius:12px;background:#fff}
.spro-project-checkbox-grid ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}
.spro-project-checkbox-grid li label,.spro-project-report-checkboxes label{display:flex;align-items:flex-start;gap:8px;color:var(--spro-ink);font-size:13px;font-weight:800;line-height:1.35}
.spro-project-repeat-row{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:13px;border:1px solid #e8e4db;border-radius:12px;background:#fff}
.spro-project-repeat-row>strong{display:grid;width:42px;height:42px;place-items:center;border-radius:10px;color:#0b2767;background:#f5f1e8;font-size:12px}
.spro-project-execution-forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 18px;align-items:start}
.spro-project-execution-forms.compact{grid-template-columns:1fr;padding:0;margin-top:16px}
.spro-project-execution-forms>.spro-panel{overflow:hidden;padding:18px}
.spro-project-table-page{overflow:hidden;margin:0 0 18px}
.spro-project-table-page .spro-table td small,.spro-project-report-library .spro-table td small{display:block;margin-top:4px;color:var(--spro-muted);font-size:12px}
.spro-project-management-dock{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 18px}
.spro-project-management-dock a{display:grid;gap:7px;padding:14px;border:1px solid var(--spro-line-soft);border-radius:12px;color:inherit;background:#fff;text-decoration:none}
.spro-project-management-dock span{color:#886518;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-project-management-dock b{color:var(--spro-ink);font-size:14px;line-height:1.25}
.spro-project-management-dock small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-project-report-config{overflow:hidden;margin:0 0 18px;padding:18px}
.spro-project-report-checkboxes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:340px;overflow:auto;padding:4px}
.spro-project-report-checkboxes label{padding:10px;border:1px solid var(--spro-line-soft);border-radius:10px;background:#fff}
.spro-project-report-checkboxes span{display:grid;gap:2px}
.spro-project-report-checkboxes b{color:#0b2767;font-size:11px}
.spro-project-report-grid.spro-transaction-charts>div{grid-template-columns:repeat(3,minmax(0,1fr))}
.spro-project-report-library{overflow:hidden;margin:0 0 18px}
.spro-project-surface-readiness{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 18px}
.spro-project-surface-readiness a{display:grid;gap:7px;min-height:132px;padding:14px;border:1px solid var(--spro-line-soft);border-radius:12px;color:inherit;background:#fff;text-decoration:none}
.spro-project-surface-readiness a.tone-good{border-color:#dcd1b9;background:#fbf8f3}
.spro-project-surface-readiness a.tone-warn{border-color:#eed3a6;background:#fff3e8}
.spro-project-surface-readiness span,.spro-project-report-datasets .spro-eyebrow{color:#0b2767;font-size:10px;font-weight:900;text-transform:uppercase}
.spro-project-surface-readiness strong{color:var(--spro-ink);font:650 22px/1 var(--spro-display)}
.spro-project-surface-readiness small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-project-surface-readiness em{align-self:end;color:#886518;font-size:12px;font-style:normal;font-weight:900}
.spro-project-report-datasets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 18px}
.spro-project-report-datasets>.spro-panel{overflow:hidden}
.spro-project-report-datasets .spro-ticket-toolbar h2{margin:3px 0 0;color:var(--spro-ink);font:650 18px/1.2 var(--spro-display)}
.spro-project-report-datasets .spro-ticket-toolbar p{margin:4px 0 0;max-width:560px;color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-project-report-datasets .spro-table-wrap{max-height:330px;overflow:auto}
.spro-project-report-datasets .spro-table{min-width:760px}
.spro-project-report-grid.spro-transaction-charts>div{max-height:880px;overflow:auto;padding-right:6px}
.spro-project-mini-table a strong{font-size:20px}
.spro-service-control-alert.success{border-color:#dcd1b9;background:#f8f5ed}
.spro-progress.compact{height:8px;min-width:110px;margin-bottom:4px}
@media(max-width:1280px){.spro-project-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-project-management-dock{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-project-report-grid.spro-transaction-charts>div{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-project-report-checkboxes{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-project-surface-readiness{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-project-report-datasets{grid-template-columns:1fr}}
@media(max-width:900px){.spro-project-execution-forms,.spro-project-checkbox-grid{grid-template-columns:1fr}.spro-project-create-grid{grid-template-columns:1fr}.spro-project-repeat-row{grid-template-columns:1fr}.spro-project-repeat-row>strong{width:36px;height:36px}.spro-project-management-dock{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.spro-project-control-grid,.spro-project-management-dock,.spro-project-report-grid.spro-transaction-charts>div,.spro-project-report-checkboxes,.spro-project-surface-readiness{grid-template-columns:1fr}.spro-project-control-grid a,.spro-project-surface-readiness a{min-height:0}.spro-project-form-panel,.spro-project-execution-forms>.spro-panel,.spro-project-report-config{padding:13px}.spro-project-checkbox-grid ul{grid-template-columns:1fr}}
.spro-panel-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.spro-panel-actions a{display:inline-flex;min-height:36px;align-items:center;padding:0 12px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#f8f5ee;font-size:13px;font-weight:850;text-decoration:none}
.spro-panel-actions a:hover{color:#fff;background:#0b2767}
.spro-event-table-page,.spro-event-category-atlas,.spro-event-blueprint-selector,.spro-event-form-section,.spro-event-report-ops{overflow:hidden;margin:0 0 18px}
.spro-event-table-toolbar,.spro-event-selector-form{display:grid;grid-template-columns:220px 170px 220px minmax(260px,1fr) auto;gap:10px;align-items:end;padding:0 18px 18px}
.spro-event-selector-form{grid-template-columns:minmax(300px,620px) auto}
.spro-event-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-event-type-grid article{display:grid;align-content:start;gap:8px;padding:13px;border:1px solid var(--spro-line);border-radius:14px;background:#fff}
.spro-event-type-grid h3{margin:0 0 2px;color:var(--spro-forest);font-size:14px}
.spro-event-type-grid a{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center;min-height:58px;padding:8px;border:1px solid var(--spro-line-soft);border-radius:10px;color:inherit;background:#fcfbfa;text-decoration:none}
.spro-event-type-grid a>span{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;color:#fff;background:#0b2767;font-size:12px;font-weight:900}
.spro-event-type-grid b,.spro-event-type-grid small{display:block;min-width:0}
.spro-event-type-grid b{font-size:13px;line-height:1.25}
.spro-event-type-grid small{margin-top:3px;color:var(--spro-muted);font-size:11px;line-height:1.35}
.spro-event-create-form{display:grid;gap:18px}
.spro-event-create-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.spro-event-create-form .span-2{grid-column:span 2}
.spro-event-form-section .spro-project-create-grid{padding:0 18px 18px}
.spro-event-form-section textarea{min-height:96px}
.spro-field-error{color:#a94438;font-weight:800}
.spro-event-role-chips,.spro-event-checkbox-grid{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 18px}
.spro-event-role-chips span,.spro-event-checkbox-grid label{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:8px 10px;border:1px solid var(--spro-line);border-radius:999px;background:#fff;color:#18243f;font-size:12px;font-weight:850}
.spro-event-checkbox-grid input{width:16px;height:16px;accent-color:#0b2767}
.spro-event-plan-table input,.spro-event-plan-table select,.spro-event-raci-table input{width:100%;min-width:138px;min-height:38px;padding:0 9px;border:1px solid var(--spro-line);border-radius:9px;background:#fff;color:var(--spro-ink);font:inherit}
.spro-event-raci-table input{min-width:170px}
.spro-event-crud-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-event-crud-grid article,.spro-event-raci-cards article,.spro-event-support-grid article,.spro-event-report-grid article{padding:13px;border:1px solid var(--spro-line);border-radius:13px;background:#fff}
.spro-event-crud-grid span,.spro-event-raci-cards span,.spro-event-field-review span{display:block;color:#0b2767;font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}
.spro-event-crud-grid b,.spro-event-raci-cards b{display:block;margin:5px 0;color:var(--spro-forest);font-size:14px;line-height:1.25}
.spro-event-crud-grid small,.spro-event-raci-cards small{display:block;color:var(--spro-muted);font-size:12px;line-height:1.45}
.spro-event-report-mini{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 18px 18px}
.spro-event-report-mini span,.spro-event-report-mini a{display:block;padding:9px;border:1px solid var(--spro-line-soft);border-radius:10px;background:#fcfbfa;color:var(--spro-muted);font-size:12px;line-height:1.35;text-decoration:none}
.spro-event-report-mini a.active{border-color:#d4c6a9;color:#0b2767;background:#f9f6ef}
.spro-event-report-mini a:hover{border-color:#0b2767;color:#0b2767}
.spro-event-report-mini b{display:inline-block;margin-right:6px;color:#0b2767}
.spro-event-field-review{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-event-field-review div{min-height:78px;padding:12px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}
.spro-event-field-review b{display:block;margin-top:6px;color:var(--spro-forest);font-size:13px;line-height:1.35;overflow-wrap:anywhere}
.spro-event-invite-summary{display:grid;gap:8px;margin:0;padding:0 18px 18px}
.spro-event-invite-summary div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;min-height:48px;padding:10px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}
.spro-event-invite-summary dt{color:#0b2767;font-size:12px;font-weight:900}
.spro-event-invite-summary dd{margin:0;color:var(--spro-ink);font-size:13px;line-height:1.45}
.spro-event-raci-cards,.spro-event-support-grid,.spro-event-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-event-support-grid h3,.spro-event-report-grid h3{margin:0 0 8px;color:var(--spro-forest);font-size:14px}
.spro-event-support-grid p,.spro-event-report-grid p{margin:0 0 7px;color:var(--spro-muted);font-size:13px;line-height:1.45}
.spro-event-hero-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.spro-event-hero-actions a,.spro-event-blueprint-locked{display:inline-flex;min-height:38px;align-items:center;gap:8px;padding:0 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;background:rgba(255,255,255,.1);font-size:13px;font-weight:850;text-decoration:none}
.spro-event-hero-actions a.danger{border-color:rgba(255,180,170,.45);color:#ffe8e3}
.spro-event-blueprint-locked{display:grid;margin:0 18px 18px;border-color:var(--spro-line);border-radius:12px;color:var(--spro-forest);background:#fff}
.spro-event-blueprint-locked span{color:var(--spro-muted);font-size:12px}
.spro-page-actions .danger,.spro-button.danger{border-color:#efc8c1!important;color:#a64138!important;background:#fff3f0!important}
.spro-event-plan-table textarea{width:100%;min-width:180px;min-height:58px;padding:9px;border:1px solid var(--spro-line);border-radius:9px;background:#fff;color:var(--spro-ink);font:inherit;resize:vertical}
.spro-event-plan-table td:last-child{min-width:220px}
.spro-event-plan-table td:last-child select{margin-top:7px}
.spro-event-access-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-event-access-strip article{display:grid;gap:5px;padding:12px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}
.spro-event-access-strip span,.spro-event-access-grid h3,.spro-event-issued-passes span{color:#0b2767;font-size:11px;font-weight:900;text-transform:uppercase}
.spro-event-access-strip b{color:var(--spro-ink);font:650 22px/1 var(--spro-display)}
.spro-event-access-strip small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-event-access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 18px 18px}
.spro-event-access-grid article{display:grid;align-content:start;gap:8px;padding:13px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}
.spro-event-access-grid h3{margin:0}
.spro-event-access-grid p{display:grid;gap:3px;margin:0;padding-top:8px;border-top:1px solid var(--spro-line-soft);color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-event-access-grid p:first-of-type{border-top:0;padding-top:0}
.spro-event-access-grid b{color:var(--spro-ink);font-size:13px}
.spro-event-invite-form{display:grid;gap:12px;padding:0 18px 18px}
.spro-event-checkbox-grid.compact{padding:0}
.spro-event-mobile-issue{overflow:hidden;margin:0 0 18px;scroll-margin-top:calc(var(--spro-topbar) + 18px);border-color:#d4c6a9;background:linear-gradient(135deg,#fbf8f2,#fff)}
.spro-event-mobile-form{display:grid;gap:13px;padding:0 18px 18px}
.spro-event-mobile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.spro-event-mobile-advanced{border:1px solid #e7e2d7;border-radius:12px;background:#fff}
.spro-event-mobile-advanced summary{min-height:44px;padding:12px 14px;color:#0b2767;font-size:13px;font-weight:850;cursor:pointer}
.spro-event-mobile-advanced>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:0 14px 14px}
.spro-event-inline-check{display:flex;min-height:46px;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--spro-line);border-radius:10px;background:#fcfbfa;color:#18243f;font-size:13px;font-weight:850}
.spro-event-inline-check input{width:17px;height:17px;accent-color:#0b2767}
.spro-event-issued-passes{overflow:hidden;margin:0 0 18px}
.spro-event-issued-passes>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px}
.spro-event-issued-passes article{display:grid;grid-template-columns:112px minmax(0,1fr);gap:13px;padding:14px;border:1px solid #e0d6bf;border-radius:13px;background:#fbf9f5}
.spro-event-issued-passes img{width:112px;height:112px;border:1px solid var(--spro-line);border-radius:10px;background:#fff}
.spro-event-issued-passes h3{margin:4px 0 8px;color:var(--spro-ink);font:650 17px/1.2 var(--spro-display)}
.spro-event-issued-passes textarea{width:100%;min-height:78px;padding:9px;border:1px solid var(--spro-line);border-radius:10px;background:#fff;color:var(--spro-ink);font:800 12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}
.spro-event-issued-passes small{display:block;margin-top:7px;color:var(--spro-muted);font-size:12px;line-height:1.4}
.spro-pass-action-row{display:flex!important;flex-wrap:wrap;gap:8px;margin-top:12px}
.spro-pass-action-row .spro-button{box-sizing:border-box;min-height:44px;white-space:normal}
.spro-pass-action-row a.spro-button{text-decoration:none}
.spro-pass-action-row button[disabled]{opacity:.62;cursor:wait}
.spro-table-actions.stacked{display:grid;grid-template-columns:repeat(3,max-content);gap:6px}
.spro-table-actions form{margin:0}
.spro-table-actions button{min-height:30px;padding:0 9px;border:1px solid #e0dbcf;border-radius:999px;color:#0b2767;background:#f8f5ee;font-size:12px;font-weight:850;cursor:pointer}
.spro-table-actions button.danger{border-color:#efc8c1;color:#a64138;background:#fff3f0}
.spro-event-cancel-form{display:grid;gap:14px;padding:0 18px 18px}
.spro-event-delete-card{overflow:hidden}
.spro-event-module-page .spro-page-head,
.spro-event-module-page .spro-page-head>div:first-child,
.spro-event-project-hero,
.spro-event-project-hero>div,
.spro-event-create-grid,
.spro-event-create-grid>*,
.spro-event-invite-form,
.spro-event-table-toolbar,
.spro-event-selector-form,
.spro-event-access-grid>*,
.spro-event-command-strip>*,
.spro-event-type-grid>*,
.spro-event-report-grid>*{min-width:0}
.spro-event-module-page .spro-page-head{align-items:flex-start;flex-wrap:wrap}
.spro-event-module-page .spro-page-actions{max-width:100%;flex-wrap:wrap;justify-content:flex-end}
.spro-event-module-page .spro-page-actions .spro-button{box-sizing:border-box;min-width:0;white-space:normal}
.spro-event-module-page .spro-facility-metrics{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.spro-event-module-page .spro-facility-metrics strong{overflow-wrap:anywhere}
.spro-event-module-page .spro-event-table-toolbar{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.spro-event-module-page .spro-event-table-toolbar .spro-table-search{grid-column:auto;min-width:0}
.spro-event-module-page .spro-event-table-toolbar .spro-button{width:100%;justify-content:center}
.spro-event-module-page .spro-transaction-charts>div>*{min-width:0}
.spro-event-module-page .spro-transaction-charts article h3{overflow-wrap:anywhere}
.spro-event-module-page .spro-canvas-shell{min-width:0}
.spro-event-project-hero{grid-template-columns:minmax(0,1fr) minmax(220px,300px);overflow:hidden}
.spro-event-project-hero h1{overflow-wrap:anywhere}
.spro-event-project-score .spro-button{box-sizing:border-box;width:100%;justify-content:center;white-space:normal}
.spro-event-project-score form,
.spro-event-project-score select,
.spro-event-project-score button{max-width:100%}
.spro-event-invite-form .spro-project-create-grid,
.spro-event-form-section .spro-project-create-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.spro-event-invite-form .spro-project-create-grid .span-2,
.spro-event-form-section .spro-project-create-grid .span-2{grid-column:1/-1}
@media(max-width:1280px){.spro-event-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-event-crud-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-event-table-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.spro-event-table-toolbar .spro-table-search{grid-column:span 2}}
@media(max-width:900px){.spro-event-create-grid,.spro-event-raci-cards,.spro-event-support-grid,.spro-event-report-grid,.spro-event-access-grid,.spro-event-issued-passes>div{grid-template-columns:1fr}.spro-event-access-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-event-create-form .span-2{grid-column:auto}.spro-event-type-grid,.spro-event-report-mini,.spro-event-field-review{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-event-table-toolbar{grid-template-columns:1fr}.spro-event-table-toolbar .spro-table-search{grid-column:auto}.spro-panel-actions{justify-content:flex-start}}
@media(max-width:620px){.spro-event-type-grid,.spro-event-report-mini,.spro-event-field-review,.spro-event-crud-grid,.spro-event-access-strip,.spro-event-mobile-fields,.spro-event-mobile-advanced>div{grid-template-columns:1fr}.spro-event-selector-form{grid-template-columns:1fr}.spro-event-invite-summary div{grid-template-columns:1fr}.spro-event-role-chips,.spro-event-checkbox-grid,.spro-event-form-section .spro-project-create-grid,.spro-event-crud-grid,.spro-event-report-mini,.spro-event-field-review,.spro-event-raci-cards,.spro-event-support-grid,.spro-event-report-grid,.spro-event-access-grid,.spro-event-access-strip,.spro-event-invite-form,.spro-event-issued-passes>div,.spro-event-cancel-form,.spro-event-mobile-form{padding-inline:13px}.spro-event-issued-passes article{grid-template-columns:1fr}.spro-event-issued-passes img{width:156px;height:156px}.spro-pass-action-row{display:grid!important;grid-template-columns:1fr}.spro-pass-action-row .spro-button{width:100%;justify-content:center}.spro-table-actions.stacked{grid-template-columns:1fr}}

.spro-focus-head{margin-bottom:16px}
.spro-focus-head h1{max-width:880px}
.spro-focus-head p{max-width:900px}
.spro-focus-button-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}
.spro-focus-button-grid>a{display:grid;align-content:start;gap:7px;min-height:132px;padding:17px;border:1px solid var(--spro-line);border-radius:8px;color:var(--spro-ink);background:#fff;text-decoration:none;box-shadow:0 12px 28px rgba(7,59,53,.045);transition:transform .16s,box-shadow .16s,border-color .16s}
.spro-focus-button-grid>a:hover{border-color:#0b2767;transform:translateY(-1px);box-shadow:0 18px 34px rgba(7,59,53,.09)}
.spro-focus-button-grid span{width:max-content;max-width:100%;padding:4px 8px;border-radius:999px;color:#0b2767;background:#f5f1e9;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.spro-focus-button-grid b{color:#13203d;font:650 17px/1.2 var(--spro-display)}
.spro-focus-button-grid small{color:var(--spro-muted);font-size:13px;line-height:1.42}
.spro-focus-button-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}
.spro-focus-button-grid.compact>a{min-height:104px}
.spro-focus-page .spro-panel,.spro-focus-page .spro-vendor-two-col,.spro-focus-page .spro-procurement-grid{margin-bottom:16px}
.spro-focus-disclosure{overflow:hidden;border:1px solid var(--spro-line);border-radius:8px;background:#fff}
.spro-focus-disclosure>summary{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;min-height:58px;padding:14px 18px;color:var(--spro-ink);list-style:none;cursor:pointer}
.spro-focus-disclosure>summary::-webkit-details-marker{display:none}
.spro-focus-disclosure>summary span{color:#0b2767;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.spro-focus-disclosure>summary b{font:650 17px/1.2 var(--spro-display)}
.spro-focus-disclosure[open]>summary{border-bottom:1px solid var(--spro-line-soft);background:#fbfaf7}
.spro-focus-disclosure[open]>summary:after{content:"Collapse";justify-self:start;margin-top:4px;color:var(--spro-muted);font-size:11px;font-weight:800}
.spro-focus-disclosure:not([open])>summary:after{content:"Open";justify-self:start;margin-top:4px;color:#0b2767;font-size:11px;font-weight:850}
.spro-focus-page .spro-table-wrap,.spro-focus-page .spro-vendor-command-table{max-height:470px;overflow:auto}
.spro-focus-page .spro-vendor-list,.spro-focus-page .spro-vendor-inbox,.spro-focus-page .spro-vendor-projects,.spro-focus-page .spro-vendor-journal,.spro-focus-page .spro-vendor-reliability-ledger,.spro-focus-page .spro-vendor-scorecards,.spro-focus-page .spro-vendor-runbooks>div,.spro-focus-page .spro-vendor-process-feed>div,.spro-focus-page .spro-procurement-actions>div,.spro-focus-page .spro-procurement-audit>div,.spro-focus-page .spro-procurement-features>div,.spro-focus-page .spro-procurement-feature-grid{max-height:560px;overflow:auto}
.spro-focus-page .spro-procurement-actions>div{padding-bottom:18px}
.spro-focus-hub-page .spro-page-head{margin-bottom:16px}
.spro-focus-hub-page .spro-shell-main{min-height:auto}
@media(max-width:1180px){.spro-focus-button-grid,.spro-focus-button-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.spro-focus-button-grid,.spro-focus-button-grid.compact{grid-template-columns:1fr}.spro-focus-button-grid>a{min-height:0}.spro-focus-disclosure>summary{padding:13px}.spro-focus-page .spro-table-wrap,.spro-focus-page .spro-vendor-command-table{max-height:420px}}
.spro-feature-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}
.spro-feature-summary-grid article{display:grid;gap:6px;min-width:0;padding:16px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}
.spro-feature-summary-grid span,.spro-feature-toggle-card header span{color:#0b2767;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.spro-feature-summary-grid b{color:var(--spro-forest);font:650 24px/1.1 var(--spro-display);overflow-wrap:anywhere}
.spro-feature-summary-grid small{color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-inline-admin-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.spro-inline-admin-form .spro-field{min-width:190px;margin:0}
.spro-feature-toggle-form{display:grid;gap:14px;padding:0 18px 18px}
.spro-feature-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) max-content;gap:12px;align-items:center}
.spro-feature-toolbar .spro-table-search{min-width:0}
.spro-feature-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.spro-feature-toggle-card{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid var(--spro-line);border-radius:12px;background:#fff}
.spro-feature-toggle-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0;border:0}
.spro-feature-toggle-card h3{margin:2px 0 0;color:var(--spro-forest);font:650 18px/1.2 var(--spro-display)}
.spro-feature-toggle-card>div{display:grid;gap:8px}
.spro-feature-toggle-card label{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;min-height:52px;padding:10px;border:1px solid #e9e4d9;border-radius:10px;background:#fbfaf8}
.spro-feature-toggle-card input{width:18px;height:18px;margin:2px 0 0;accent-color:#0b2767}
.spro-feature-toggle-card b{display:block;color:var(--spro-ink);font-size:13px;line-height:1.25}
.spro-feature-toggle-card small{display:block;margin-top:3px;color:var(--spro-muted);font-size:12px;line-height:1.35}
.spro-feature-disabled-panel{border-color:#e6c9b6;background:#fffaf4}
.spro-feature-disabled-panel .spro-source-grid article{background:#fff}
.spro-settings-card h3{margin:0 0 12px;color:var(--spro-forest);font:650 18px/1.2 var(--spro-display)}
.spro-table code{display:block;max-width:280px;overflow-wrap:anywhere;padding:3px 0;color:#0b2767;font-size:12px}
@media(max-width:1100px){.spro-feature-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spro-feature-group-grid{grid-template-columns:1fr}.spro-feature-toolbar{grid-template-columns:1fr}.spro-feature-toolbar .spro-button{width:100%;justify-content:center}}
@media(max-width:620px){.spro-feature-summary-grid{grid-template-columns:1fr}.spro-feature-toggle-form{padding-inline:13px}.spro-inline-admin-form{width:100%;display:grid;grid-template-columns:1fr}.spro-inline-admin-form .spro-field,.spro-inline-admin-form .spro-button{width:100%;min-width:0}.spro-feature-toggle-card{padding:12px}.spro-feature-toggle-card label{min-height:58px}}
@media(max-width:700px){.spro-event-module-page .spro-concierge-launch{display:none}}

/* ============================================================================
   OBSIDIAN & SAPPHIRE — authoritative redesign layer (loaded last, wins cascade)
   Unifies the shell ground, editorial serif headings, the ONE table standard
   (always-visible horizontal scrollbar + sticky always-visible actions/edit
   column), sapphire/bronze accents and a theme-aware dark mode.
   ========================================================================== */

/* --- Shell ground: porcelain page, white cards float above it ---------------- */
.spro-app{background:var(--spro-ivory);color:var(--spro-ink)}
.spro-main{background:transparent}
.spro-panel,.spro-card,.spro-metric-card,.spro-kpi-card{background:var(--spro-paper)}

/* --- Editorial display serif on primary headings (Cormorant Garamond) -------- */
.spro-page-head h1,.spro-panel-head h2,.spro-object-nav>header b,
.spro-preview-hero h2,.spro-auth-story h1,.spro-feature-hero h1,
.spro-report-hero h1,.spro-facility-feature h2{
  font-family:var(--spro-display);letter-spacing:-.01em;font-weight:600;
}
.spro-page-head h1{font-weight:600;letter-spacing:-.015em}

/* --- Sapphire accent polish -------------------------------------------------- */
.spro-eyebrow{color:var(--spro-gold)}
.spro-button-primary,.spro-button.spro-button-primary{background:var(--spro-emerald);border-color:var(--spro-emerald);color:#fff}
.spro-button-primary:hover,.spro-button.spro-button-primary:hover{background:var(--spro-emerald-2);border-color:var(--spro-emerald-2)}
a{color:var(--spro-emerald)}

/* --- THE unified table standard --------------------------------------------- */
.spro-table-wrap{
  width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;
  scrollbar-width:thin;scrollbar-color:var(--spro-emerald) var(--spro-ivory-2);
  padding-bottom:1px;
}
.spro-table-wrap::-webkit-scrollbar{height:11px;-webkit-appearance:none}
.spro-table-wrap::-webkit-scrollbar-track{background:var(--spro-ivory-2);border-radius:999px}
.spro-table-wrap::-webkit-scrollbar-thumb{
  background:linear-gradient(90deg,var(--spro-emerald),var(--spro-emerald-2));
  border-radius:999px;border:2px solid var(--spro-ivory-2);
}
.spro-table-wrap::-webkit-scrollbar-thumb:hover{background:var(--spro-emerald)}
/* readable, consistent cell rhythm (earlier micro-type sizes were unreadable) */
.spro-table{border-collapse:collapse;width:100%}
.spro-table th{padding:11px 14px;color:var(--spro-faint);background:var(--spro-ivory-2);
  font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  border-bottom:1px solid var(--spro-line);white-space:nowrap}
.spro-table td{padding:12px 14px;color:var(--spro-ink);font-size:13.5px;
  border-bottom:1px solid var(--spro-line-soft)}
.spro-table td>b{font-size:13.5px;color:var(--spro-ink)}
.spro-table td>small{font-size:11.5px;color:var(--spro-faint)}
.spro-table tbody tr:hover{background:var(--spro-mint)}
.spro-table input[type=checkbox]{accent-color:var(--spro-emerald)}

/* --- Always-visible edit / actions column (sticky to the right edge) --------- */
.spro-table:has(.spro-row-actions) th:last-child,
.spro-table:has(.spro-row-action) th:last-child{
  position:sticky;right:0;z-index:3;background:var(--spro-ivory-2)}
.spro-table td:has(.spro-row-actions),
.spro-table td:has(.spro-row-action),
.spro-table td:has(.spro-row-edit){
  position:sticky;right:0;z-index:2;background:var(--spro-paper);
  box-shadow:-16px 0 20px -14px rgba(15,20,36,.28)}
.spro-table tbody tr:hover td:has(.spro-row-actions),
.spro-table tbody tr:hover td:has(.spro-row-action),
.spro-table tbody tr:hover td:has(.spro-row-edit){background:var(--spro-mint)}
/* edit-icon pill: high-contrast, never faded */
.spro-row-actions{display:flex;gap:6px;opacity:1;visibility:visible}
.spro-row-actions a,.spro-row-action{opacity:1;visibility:visible}
.spro-row-actions a{padding:6px 9px;border-radius:8px;color:var(--spro-emerald);
  background:var(--spro-mint);font-size:12px;font-weight:800;text-decoration:none;
  border:1px solid transparent}
.spro-row-actions a:hover{color:#fff;background:var(--spro-emerald);border-color:var(--spro-emerald)}
.spro-row-actions a.danger{color:var(--spro-coral);background:#fbeae8}
.spro-row-actions a.danger:hover{color:#fff;background:var(--spro-coral)}
.spro-row-action{color:var(--spro-emerald);cursor:pointer}
.spro-table-footer b{background:var(--spro-emerald)!important;color:#fff}

/* --- Chart wrappers inherit token surfaces (proc_charts uses var(--ink) etc) -- */
.spro-chart svg,.rc-card svg{max-width:100%;height:auto}

/* ============================================================================
   DARK MODE — token flip + core surface overrides. Applied when the OS prefers
   dark or when an explicit data-theme="dark" is set. Structural surfaces flip;
   sapphire/bronze accents brighten for AA contrast on dark.
   ========================================================================== */
@media (prefers-color-scheme: dark){:root[data-theme="dark"]{
  --spro-ink:#f6f3ee;--spro-muted:#bdb6a7;--spro-faint:#7f8899;
  --spro-line:#2a3242;--spro-line-soft:#232a38;
  --spro-paper:#171c27;--spro-ivory:#0f131c;--spro-ivory-2:#1c2230;
  --spro-forest:#0b0f18;--spro-emerald:#e4bc67;--spro-emerald-2:#eaca86;
  --spro-mint:#1b2437;--spro-gold:#d29b63;--spro-champagne:#2a2318;
  --ink:#f6f3ee;--muted:#bdb6a7;--panel:#171c27;--panel2:#1c2230;--line:#2a3242;
  --acc:#e4bc67;--rc-accent:#e4bc67;
  --chart1:#e4bc67;--chart2:#d29b63;--chart3:#b6a88b;--chart4:#eaca86;
  --chart5:#c0a06a;--chart6:#b0904a;--chart7:#93866b;--chart8:#d0ba8a;
  --spro-shadow:0 16px 44px rgba(0,0,0,.5);color-scheme:dark;
}}
:root[data-theme="dark"]{
  --spro-ink:#f6f3ee;--spro-muted:#bdb6a7;--spro-faint:#7f8899;
  --spro-line:#2a3242;--spro-line-soft:#232a38;
  --spro-paper:#171c27;--spro-ivory:#0f131c;--spro-ivory-2:#1c2230;
  --spro-forest:#0b0f18;--spro-emerald:#e4bc67;--spro-emerald-2:#eaca86;
  --spro-mint:#1b2437;--spro-gold:#d29b63;--spro-champagne:#2a2318;
  --ink:#f6f3ee;--muted:#bdb6a7;--panel:#171c27;--panel2:#1c2230;--line:#2a3242;
  --acc:#e4bc67;--rc-accent:#e4bc67;
  --chart1:#e4bc67;--chart2:#d29b63;--chart3:#b6a88b;--chart4:#eaca86;
  --chart5:#c0a06a;--chart6:#b0904a;--chart7:#93866b;--chart8:#d0ba8a;
  --spro-shadow:0 16px 44px rgba(0,0,0,.5);color-scheme:dark;
}
/* Structural surfaces (.spro-app/.spro-panel/.spro-table/...) are token-driven
   in the light layer above, so they flip automatically under the dark tokens. */

/* --- _spro_table.html canonical partial support ----------------------------- */
.spro-th-sort{display:inline-flex;align-items:center;gap:5px;color:inherit;text-decoration:none;cursor:pointer}
.spro-th-sort:hover{color:var(--spro-emerald)}
.spro-th-sort.is-active{color:var(--spro-emerald)}
.spro-sort-caret{font-size:9px;opacity:.6}
.spro-th-sort.is-active .spro-sort-caret{opacity:1}
.spro-actions-col{text-align:right;white-space:nowrap}
.spro-table th.spro-actions-col,.spro-table td.spro-actions-col{position:sticky;right:0;z-index:2;background:var(--spro-paper);box-shadow:-16px 0 20px -14px rgba(15,20,36,.28)}
.spro-table th.spro-actions-col{background:var(--spro-ivory-2);z-index:3}
.spro-table tbody tr:hover td.spro-actions-col{background:var(--spro-mint)}
.spro-table-empty{padding:26px 14px!important;text-align:center;color:var(--spro-faint);font-size:13.5px}
.spro-pagelink,.spro-pageoff{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid var(--spro-line);border-radius:8px;background:var(--spro-paper);color:var(--spro-ink);text-decoration:none;font-size:13px}
.spro-pagelink:hover{border-color:var(--spro-emerald);color:var(--spro-emerald)}
.spro-pageoff{opacity:.4}

/* ============================================================================
   STANDARD COMPONENT SET — the ONE token-driven kit (tile / KPI / card / panel
   / button / chip / badge / chart container). New surfaces use these; bespoke
   families below are reskinned to render identically.
   ========================================================================== */
.spro-tile,.spro-kpi,.spro-metric,.spro-stat{
  background:var(--spro-paper);border:1px solid var(--spro-line);border-radius:var(--spro-radius);
  padding:16px 18px;position:relative;overflow:hidden;box-shadow:var(--spro-shadow-soft)}
.spro-tile .value,.spro-kpi .value,.spro-metric .value,.spro-stat .value,
.spro-tile>b,.spro-kpi>b{font:600 30px/1.05 var(--spro-display);color:var(--spro-ink);letter-spacing:-.01em;display:block}
.spro-tile .label,.spro-kpi .label,.spro-metric .label,.spro-stat .label{
  color:var(--spro-faint);font-size:11px;margin-top:6px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
.spro-tile .detail,.spro-kpi .detail{color:var(--spro-muted);font-size:12.5px;margin-top:4px}
.spro-tile.accent::before,.spro-kpi.accent::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--spro-emerald)}

.spro-card{background:var(--spro-paper);border:1px solid var(--spro-line);border-radius:var(--spro-radius);padding:18px 20px;box-shadow:var(--spro-shadow-soft)}

.spro-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid transparent;font-size:14px;font-weight:700;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,color .15s,transform .15s}
.spro-btn:hover{transform:translateY(-1px)}
.spro-btn-primary{background:var(--spro-emerald);border-color:var(--spro-emerald);color:#fff}
.spro-btn-primary:hover{background:var(--spro-emerald-2);border-color:var(--spro-emerald-2)}
.spro-btn-ghost,.spro-btn-quiet{background:var(--spro-paper);border-color:var(--spro-line);color:var(--spro-ink)}
.spro-btn-ghost:hover,.spro-btn-quiet:hover{border-color:var(--spro-emerald);color:var(--spro-emerald)}
.spro-btn-gold{background:var(--spro-gold);border-color:var(--spro-gold);color:#fff}

.spro-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:999px;border:1px solid var(--spro-line);background:var(--spro-paper);color:var(--spro-ink);font-size:13px;font-weight:600}
.spro-chip.is-active,.spro-chip.on{background:var(--spro-emerald);border-color:var(--spro-emerald);color:#fff}

.spro-badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.02em;background:var(--spro-mint);color:#a0771f}
.spro-badge.good{background:var(--spro-mint);color:#a0771f}
.spro-badge.warn{background:#f7efe0;color:#9a6410}
.spro-badge.bad{background:#fbeae8;color:#b23b30}
.spro-badge.muted{background:#eceae4;color:#6b7280}

.spro-chart,.spro-chart-container{background:var(--spro-paper);border:1px solid var(--spro-line);border-radius:var(--spro-radius);padding:16px}
.spro-chart svg,.spro-chart-container svg{max-width:100%;height:auto}

/* ============================================================================
   BESPOKE FAMILY CONVERGENCE — reskin each family's card / tile / KPI / pill /
   button so ~20 legacy prefixes render as the single standard. Colour was
   already unified by the palette recolor; this normalises shape + typography.
   (rc-* is handled in _recovery_head.html.)
   ========================================================================== */
.est-card,.cw-card,.cm-card,.cs-card,.bnb-card,.rj-card,.jr-card,.tr-card,.bk-card,
.rp-card,.rr-card,.pe-card,.pc-card,.fin-card,.sr-card,.asset-card,.amenity-card,.cms-card{
  background:var(--spro-paper);border:1px solid var(--spro-line);border-radius:var(--spro-radius);box-shadow:var(--spro-shadow-soft)}
.est-kpi,.cw-kpi,.cm-kpi,.cs-kpi,.bnb-kpi,.rj-kpi,.jr-kpi,.tr-kpi,.bk-kpi,.rp-kpi,
.rr-kpi,.pe-kpi,.pc-kpi,.fin-kpi,.sr-kpi,.est-tile,.cw-tile,.cs-tile,.fin-tile,.pc-tile{
  background:var(--spro-paper);border:1px solid var(--spro-line);border-radius:var(--spro-radius);box-shadow:var(--spro-shadow-soft)}
.est-pill,.cw-pill,.cm-pill,.cs-pill,.bnb-pill,.rj-pill,.jr-pill,.tr-pill,.bk-pill,
.rp-pill,.rr-pill,.pe-pill,.pc-pill,.fin-pill,.sr-pill,.est-badge,.cw-badge,.fin-badge{
  display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:800;background:var(--spro-mint);color:#a0771f}
.est-btn,.cw-btn,.cm-btn,.cs-btn,.bnb-btn,.rj-btn,.jr-btn,.tr-btn,.bk-btn,.rp-btn,
.rr-btn,.pe-btn,.pc-btn,.fin-btn,.sr-btn{
  min-height:44px;border-radius:10px;font-weight:700;border:1px solid var(--spro-emerald);background:var(--spro-emerald);color:#fff}

/* Family convergence — segmented tabs + stat/metric primitives */
.est-tabs,.cw-tabs,.cm-tabs,.cs-tabs,.bnb-tabs,.rj-tabs,.jr-tabs,.tr-tabs,.bk-tabs,
.rp-tabs,.rr-tabs,.pe-tabs,.pc-tabs,.fin-tabs,.sr-tabs{display:flex;gap:7px;flex-wrap:wrap}
.est-tabs a,.cw-tabs a,.cm-tabs a,.cs-tabs a,.bnb-tabs a,.rj-tabs a,.jr-tabs a,.tr-tabs a,
.bk-tabs a,.rp-tabs a,.rr-tabs a,.pe-tabs a,.pc-tabs a,.fin-tabs a,.sr-tabs a{
  padding:8px 14px;border-radius:999px;border:1px solid var(--spro-line);text-decoration:none;
  color:var(--spro-ink);font-size:13px;font-weight:600;background:var(--spro-paper)}
.est-tabs a.on,.cw-tabs a.on,.cm-tabs a.on,.cs-tabs a.on,.bnb-tabs a.on,.rj-tabs a.on,
.jr-tabs a.on,.tr-tabs a.on,.bk-tabs a.on,.rp-tabs a.on,.rr-tabs a.on,.pe-tabs a.on,
.pc-tabs a.on,.fin-tabs a.on,.sr-tabs a.on{background:var(--spro-emerald);color:#fff;border-color:var(--spro-emerald)}
.est-stat,.cw-stat,.cm-stat,.cs-stat,.bnb-stat,.rj-stat,.tr-stat,.bk-stat,.rp-stat,
.rr-stat,.pe-stat,.pc-stat,.fin-stat,.sr-stat,.est-metric,.cw-metric,.fin-metric,.pc-metric{
  background:var(--spro-paper);border:1px solid var(--spro-line);border-radius:var(--spro-radius);box-shadow:var(--spro-shadow-soft)}

/* ============================================================================
   COMPREHENSIVE FAMILY CONVERGENCE (scoped .spro-app so it wins over inline
   <style> family definitions). Every bespoke family's card / tile / kpi / stat
   / metric / pill / badge / tabs / btn / field renders as the ONE standard.
   ========================================================================== */
.spro-app .cs-card,
.spro-app .rj-card,
.spro-app .jr-card,
.spro-app .pe-card,
.spro-app .est-card,
.spro-app .rp-card,
.spro-app .rr-card,
.spro-app .sr-card,
.spro-app .bk-card,
.spro-app .pc-card,
.spro-app .tr-card,
.spro-app .fin-card,
.spro-app .cw-card,
.spro-app .bnb-card,
.spro-app .cm-card,
.spro-app .asset-card,
.spro-app .amenity-card{
  background:var(--spro-paper);border:1px solid var(--spro-line);border-radius:var(--spro-radius);box-shadow:var(--spro-shadow-soft);color:var(--spro-ink)}
.spro-app .cs-kpi,
.spro-app .cs-tile,
.spro-app .cs-stat,
.spro-app .cs-metric,
.spro-app .rj-kpi,
.spro-app .rj-tile,
.spro-app .rj-stat,
.spro-app .rj-metric,
.spro-app .jr-kpi,
.spro-app .jr-tile,
.spro-app .jr-stat,
.spro-app .jr-metric,
.spro-app .pe-kpi,
.spro-app .pe-tile,
.spro-app .pe-stat,
.spro-app .pe-metric,
.spro-app .est-kpi,
.spro-app .est-tile,
.spro-app .est-stat,
.spro-app .est-metric,
.spro-app .rp-kpi,
.spro-app .rp-tile,
.spro-app .rp-stat,
.spro-app .rp-metric,
.spro-app .rr-kpi,
.spro-app .rr-tile,
.spro-app .rr-stat,
.spro-app .rr-metric,
.spro-app .sr-kpi,
.spro-app .sr-tile,
.spro-app .sr-stat,
.spro-app .sr-metric,
.spro-app .bk-kpi,
.spro-app .bk-tile,
.spro-app .bk-stat,
.spro-app .bk-metric,
.spro-app .pc-kpi,
.spro-app .pc-tile,
.spro-app .pc-stat,
.spro-app .pc-metric,
.spro-app .tr-kpi,
.spro-app .tr-tile,
.spro-app .tr-stat,
.spro-app .tr-metric,
.spro-app .fin-kpi,
.spro-app .fin-tile,
.spro-app .fin-stat,
.spro-app .fin-metric,
.spro-app .cw-kpi,
.spro-app .cw-tile,
.spro-app .cw-stat,
.spro-app .cw-metric,
.spro-app .bnb-kpi,
.spro-app .bnb-tile,
.spro-app .bnb-stat,
.spro-app .bnb-metric,
.spro-app .cm-kpi,
.spro-app .cm-tile,
.spro-app .cm-stat,
.spro-app .cm-metric,
.spro-app .asset-kpi,
.spro-app .asset-tile,
.spro-app .asset-stat,
.spro-app .asset-metric,
.spro-app .amenity-kpi,
.spro-app .amenity-tile,
.spro-app .amenity-stat,
.spro-app .amenity-metric{
  background:var(--spro-paper);border:1px solid var(--spro-line);border-radius:var(--spro-radius);box-shadow:var(--spro-shadow-soft)}
.spro-app .cs-pill,
.spro-app .cs-badge,
.spro-app .rj-pill,
.spro-app .rj-badge,
.spro-app .jr-pill,
.spro-app .jr-badge,
.spro-app .pe-pill,
.spro-app .pe-badge,
.spro-app .est-pill,
.spro-app .est-badge,
.spro-app .rp-pill,
.spro-app .rp-badge,
.spro-app .rr-pill,
.spro-app .rr-badge,
.spro-app .sr-pill,
.spro-app .sr-badge,
.spro-app .bk-pill,
.spro-app .bk-badge,
.spro-app .pc-pill,
.spro-app .pc-badge,
.spro-app .tr-pill,
.spro-app .tr-badge,
.spro-app .fin-pill,
.spro-app .fin-badge,
.spro-app .cw-pill,
.spro-app .cw-badge,
.spro-app .bnb-pill,
.spro-app .bnb-badge,
.spro-app .cm-pill,
.spro-app .cm-badge,
.spro-app .asset-pill,
.spro-app .asset-badge,
.spro-app .amenity-pill,
.spro-app .amenity-badge{
  display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.02em;background:var(--spro-mint);color:#a0771f}
.spro-app .cs-tabs,
.spro-app .rj-tabs,
.spro-app .jr-tabs,
.spro-app .pe-tabs,
.spro-app .est-tabs,
.spro-app .rp-tabs,
.spro-app .rr-tabs,
.spro-app .sr-tabs,
.spro-app .bk-tabs,
.spro-app .pc-tabs,
.spro-app .tr-tabs,
.spro-app .fin-tabs,
.spro-app .cw-tabs,
.spro-app .bnb-tabs,
.spro-app .cm-tabs,
.spro-app .asset-tabs,
.spro-app .amenity-tabs{display:flex;gap:7px;flex-wrap:wrap}
.spro-app .cs-tabs a,
.spro-app .rj-tabs a,
.spro-app .jr-tabs a,
.spro-app .pe-tabs a,
.spro-app .est-tabs a,
.spro-app .rp-tabs a,
.spro-app .rr-tabs a,
.spro-app .sr-tabs a,
.spro-app .bk-tabs a,
.spro-app .pc-tabs a,
.spro-app .tr-tabs a,
.spro-app .fin-tabs a,
.spro-app .cw-tabs a,
.spro-app .bnb-tabs a,
.spro-app .cm-tabs a,
.spro-app .asset-tabs a,
.spro-app .amenity-tabs a{
  padding:8px 14px;border-radius:999px;border:1px solid var(--spro-line);text-decoration:none;color:var(--spro-ink);font-size:13px;font-weight:600;background:var(--spro-paper)}
.spro-app .cs-tabs a.on,
.spro-app .rj-tabs a.on,
.spro-app .jr-tabs a.on,
.spro-app .pe-tabs a.on,
.spro-app .est-tabs a.on,
.spro-app .rp-tabs a.on,
.spro-app .rr-tabs a.on,
.spro-app .sr-tabs a.on,
.spro-app .bk-tabs a.on,
.spro-app .pc-tabs a.on,
.spro-app .tr-tabs a.on,
.spro-app .fin-tabs a.on,
.spro-app .cw-tabs a.on,
.spro-app .bnb-tabs a.on,
.spro-app .cm-tabs a.on,
.spro-app .asset-tabs a.on,
.spro-app .amenity-tabs a.on,.spro-app .cs-tabs a.active,
.spro-app .rj-tabs a.active,
.spro-app .jr-tabs a.active,
.spro-app .pe-tabs a.active,
.spro-app .est-tabs a.active,
.spro-app .rp-tabs a.active,
.spro-app .rr-tabs a.active,
.spro-app .sr-tabs a.active,
.spro-app .bk-tabs a.active,
.spro-app .pc-tabs a.active,
.spro-app .tr-tabs a.active,
.spro-app .fin-tabs a.active,
.spro-app .cw-tabs a.active,
.spro-app .bnb-tabs a.active,
.spro-app .cm-tabs a.active,
.spro-app .asset-tabs a.active,
.spro-app .amenity-tabs a.active{background:var(--spro-emerald);color:#fff;border-color:var(--spro-emerald)}
.spro-app .cs-btn,
.spro-app .rj-btn,
.spro-app .jr-btn,
.spro-app .pe-btn,
.spro-app .est-btn,
.spro-app .rp-btn,
.spro-app .rr-btn,
.spro-app .sr-btn,
.spro-app .bk-btn,
.spro-app .pc-btn,
.spro-app .tr-btn,
.spro-app .fin-btn,
.spro-app .cw-btn,
.spro-app .bnb-btn,
.spro-app .cm-btn,
.spro-app .asset-btn,
.spro-app .amenity-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:10px;border:1px solid var(--spro-emerald);background:var(--spro-emerald);color:#fff;font-weight:700;font-size:14px;cursor:pointer;text-decoration:none}
.spro-app .cs-btn.g,
.spro-app .rj-btn.g,
.spro-app .jr-btn.g,
.spro-app .pe-btn.g,
.spro-app .est-btn.g,
.spro-app .rp-btn.g,
.spro-app .rr-btn.g,
.spro-app .sr-btn.g,
.spro-app .bk-btn.g,
.spro-app .pc-btn.g,
.spro-app .tr-btn.g,
.spro-app .fin-btn.g,
.spro-app .cw-btn.g,
.spro-app .bnb-btn.g,
.spro-app .cm-btn.g,
.spro-app .asset-btn.g,
.spro-app .amenity-btn.g,.spro-app .cs-btn.ghost,
.spro-app .rj-btn.ghost,
.spro-app .jr-btn.ghost,
.spro-app .pe-btn.ghost,
.spro-app .est-btn.ghost,
.spro-app .rp-btn.ghost,
.spro-app .rr-btn.ghost,
.spro-app .sr-btn.ghost,
.spro-app .bk-btn.ghost,
.spro-app .pc-btn.ghost,
.spro-app .tr-btn.ghost,
.spro-app .fin-btn.ghost,
.spro-app .cw-btn.ghost,
.spro-app .bnb-btn.ghost,
.spro-app .cm-btn.ghost,
.spro-app .asset-btn.ghost,
.spro-app .amenity-btn.ghost{background:var(--spro-paper);border-color:var(--spro-line);color:var(--spro-ink)}
.spro-app .cs-field input, .spro-app .cs-field select, .spro-app .cs-field textarea,
.spro-app .rj-field input, .spro-app .rj-field select, .spro-app .rj-field textarea,
.spro-app .jr-field input, .spro-app .jr-field select, .spro-app .jr-field textarea,
.spro-app .pe-field input, .spro-app .pe-field select, .spro-app .pe-field textarea,
.spro-app .est-field input, .spro-app .est-field select, .spro-app .est-field textarea,
.spro-app .rp-field input, .spro-app .rp-field select, .spro-app .rp-field textarea,
.spro-app .rr-field input, .spro-app .rr-field select, .spro-app .rr-field textarea,
.spro-app .sr-field input, .spro-app .sr-field select, .spro-app .sr-field textarea,
.spro-app .bk-field input, .spro-app .bk-field select, .spro-app .bk-field textarea,
.spro-app .pc-field input, .spro-app .pc-field select, .spro-app .pc-field textarea,
.spro-app .tr-field input, .spro-app .tr-field select, .spro-app .tr-field textarea,
.spro-app .fin-field input, .spro-app .fin-field select, .spro-app .fin-field textarea,
.spro-app .cw-field input, .spro-app .cw-field select, .spro-app .cw-field textarea,
.spro-app .bnb-field input, .spro-app .bnb-field select, .spro-app .bnb-field textarea,
.spro-app .cm-field input, .spro-app .cm-field select, .spro-app .cm-field textarea,
.spro-app .asset-field input, .spro-app .asset-field select, .spro-app .asset-field textarea,
.spro-app .amenity-field input, .spro-app .amenity-field select, .spro-app .amenity-field textarea{
  min-height:44px;padding:10px 12px;border:1px solid var(--spro-line);border-radius:10px;background:var(--spro-paper);color:var(--spro-ink);font-size:14px;font-family:inherit}

/* Bell-boy concierge floater */
.spro-bellboy{cursor:grab;touch-action:none}
.spro-bellboy.is-dragging{cursor:grabbing;user-select:none;box-shadow:0 22px 60px -18px rgba(20,19,15,.5)}
.spro-bellboy .spro-bellboy-icon{font-size:1.18rem;line-height:1;display:inline-block}

/* ── Desktop-persistent side navigation (mobile stays an off-canvas drawer) ──
   The app shell ships `.spro-sidebar-collapsed` so phones get a drawer. On
   desktop widths the navigation should always be visible and usable without a
   click, with the main content offset for it. Focus-form pages keep the
   deliberate full-screen (collapsed) treatment. */
@media (min-width: 1021px) {
  body.spro-app:not(.spro-focus-form) .spro-sidebar { transform: none; box-shadow: none; }
  body.spro-app:not(.spro-focus-form) .spro-shell { margin-left: var(--spro-sidebar); }
  body.spro-app:not(.spro-focus-form) .spro-menu-button,
  body.spro-app:not(.spro-focus-form) .spro-side-close { display: none; }
  body.spro-app:not(.spro-focus-form) .spro-sidebar-scrim { display: none; }
  body.spro-app:not(.spro-focus-form) .spro-sidebar { visibility: visible; }
}

/* ── Shared per-row action icons (View/Edit/Archive/Delete) — consistent clear
   golden-luxe icon buttons across SOCIETY PRO and HOSPITALITY PRO tables. ── */
.spro-row-icons{ display:flex; gap:6px; align-items:center; }
.spro-row-icons .ic-btn{ display:inline-flex; align-items:center; justify-content:center;
  width:30px; height:30px; border-radius:8px; border:1px solid var(--spro-line,#ece2c9);
  background:var(--spro-surface,#fffdf8); color:#7a6a45; font-size:14px; line-height:1;
  cursor:pointer; text-decoration:none; padding:0;
  transition:border-color .12s, background .12s, color .12s; }
.spro-row-icons .ic-btn:hover{ border-color:#c6a15b; color:#9a7b3a; background:#fbf4e2; }
.spro-row-icons .ic-btn.danger{ color:#a6483f; }
.spro-row-icons .ic-btn.danger:hover{ border-color:#a6483f; background:#f7e2df; color:#8a382f; }

/* metric-number formal font override */
.spro-metric-card>strong,.spro-tile>b,.spro-kpi>b,.spro-project-kpis strong,.spro-project-hero>aside strong,.spro-payable-metrics b,.spro-payable-hero>aside strong,.spro-pass-hero>aside>strong,.spro-checkout-hero>aside>strong,.spro-payable-hero>aside strong,.spro-kpi strong,.spro-stat b,.spro-stat strong,.spro-figure,.spro-metric-value{font-family:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;font-variant-numeric:tabular-nums;letter-spacing:-.01em}

/* Operations registers: one shared responsive admin workbench. */
body.spro-operations-page .spro-main {
  max-width: 100%;
}
body.spro-operations-page .spro-operations-head {
  align-items: end;
  gap: 22px;
  margin-bottom: 16px;
  padding: clamp(18px, 3vw, 30px);
  border: 1px solid var(--spro-line);
  border-radius: 18px;
  background: linear-gradient(135deg, #fff, #faf8f3);
  box-shadow: var(--spro-shadow-soft);
}
body.spro-operations-page .spro-operations-head h1 {
  max-width: 900px;
  margin-bottom: 8px;
  line-height: 1.02;
}
body.spro-operations-page .spro-operations-head p {
  max-width: 820px;
  margin-bottom: 0;
}
.spro-ops-head-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 0;
}
.spro-ops-head-stats div {
  min-width: 118px;
  padding: 9px 11px;
  border: 1px solid var(--spro-line-soft);
  border-radius: 8px;
  background: #fff;
}
.spro-ops-head-stats dt {
  color: var(--spro-faint);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.spro-ops-head-stats dd {
  overflow: hidden;
  max-width: 220px;
  margin: 2px 0 0;
  color: var(--spro-ink);
  font-size: 13px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.spro-operations-page .spro-page-actions {
  justify-content: flex-end;
}
body.spro-operations-page .spro-page-actions .spro-button-primary {
  min-width: 210px;
  box-shadow: 0 14px 32px rgba(196,148,43,.22);
}
body.spro-operations-page .spro-module-surface-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 16px;
  padding: 8px;
  border: 1px solid var(--spro-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(18,24,42,.05);
}
body.spro-operations-page .spro-module-surface-tabs a {
  min-height: 58px;
  padding: 11px 13px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: #faf9f6;
}
body.spro-operations-page .spro-module-surface-tabs a.active {
  border-color: rgba(196,148,43,.35);
  background: var(--spro-emerald);
  box-shadow: 0 8px 18px rgba(196,148,43,.18);
}
body.spro-operations-page .spro-module-surface-tabs a.active b,
body.spro-operations-page .spro-module-surface-tabs a.active small {
  color: #fff;
}
body.spro-operations-page .spro-operations-layout {
  grid-template-columns: minmax(210px, 240px) minmax(0, 1fr);
  gap: 16px;
}
body.spro-operations-page .spro-object-nav {
  border-radius: 12px;
}
body.spro-operations-page .spro-object-nav>header {
  padding: 15px;
  background: linear-gradient(135deg, var(--spro-ink-deep), #202845);
}
body.spro-operations-page .spro-object-nav>header b {
  font-size: 20px;
}
body.spro-operations-page .spro-object-nav nav {
  max-height: calc(100vh - 260px);
}
body.spro-operations-page .spro-object-nav nav a {
  min-height: 40px;
  grid-template-columns: 30px minmax(0,1fr) 26px;
  font-size: 12px;
}
body.spro-operations-page .spro-object-nav nav a span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.spro-operations-page .spro-operations-table-panel {
  border-radius: 14px;
}
body.spro-operations-page .spro-directory-toolbar {
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 15px;
  background: linear-gradient(180deg,#fff,#fbfaf8);
}
body.spro-operations-page .spro-operations-filter-stack {
  display: grid;
  justify-items: end;
  gap: 8px;
  width: min(620px, 100%);
}
body.spro-operations-page .spro-table-search {
  width: 100%;
  margin: 0;
}
body.spro-operations-page .spro-table-search input {
  min-width: 0;
  width: 100%;
}
body.spro-operations-page .spro-table-search button {
  min-width: 84px;
}
body.spro-operations-page .spro-operations-status-filter {
  max-width: 100%;
  overflow-x: auto;
}
body.spro-operations-page .spro-table-tools {
  justify-content: flex-end;
  margin: 0;
  padding: 11px 15px;
  border-width: 1px 0 0;
  border-radius: 0;
  box-shadow: none;
}
body.spro-operations-page .spro-table-tools .spro-table-new {
  display: none;
}
body.spro-operations-page .spro-table-pager {
  width: 100%;
}
body.spro-operations-page .spro-table-pager select {
  margin-right: auto;
}
body.spro-operations-page .spro-table-pager button {
  min-width: 42px;
  font-size: 0;
}
body.spro-operations-page .spro-table-pager button::first-letter {
  font-size: 0;
}
body.spro-operations-page .spro-table-pager button:first-of-type::after {
  content: "<";
  font-size: 14px;
}
body.spro-operations-page .spro-table-pager button:last-of-type::after {
  content: ">";
  font-size: 14px;
}
body.spro-operations-page .spro-table-footer[data-server-pager] {
  margin: 0;
  border-top: 1px solid var(--spro-line-soft);
}
body.spro-operations-page .spro-table-wrap {
  border-top: 1px solid var(--spro-line-soft);
}
body.spro-operations-page .spro-operations-table {
  min-width: 980px;
}
body.spro-operations-page .spro-operations-table th {
  background: #f2f6fb;
}
body.spro-operations-page .spro-operations-table td {
  max-width: 260px;
}
.spro-row-menu-heading,
.spro-row-menu-cell {
  width: 58px;
  text-align: right;
}
.spro-row-menu {
  position: relative;
  display: inline-block;
}
.spro-row-menu summary {
  display: inline-grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid var(--spro-line);
  border-radius: 8px;
  color: var(--spro-ink);
  background: #fff;
  font-weight: 900;
  list-style: none;
  cursor: pointer;
}
.spro-row-menu summary::-webkit-details-marker {
  display: none;
}
.spro-row-menu[open] summary {
  border-color: rgba(196,148,43,.5);
  color: #fff;
  background: var(--spro-emerald);
}
.spro-row-menu>div {
  position: absolute;
  right: 0;
  z-index: 18;
  display: grid;
  min-width: 170px;
  margin-top: 6px;
  padding: 6px;
  border: 1px solid var(--spro-line);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 38px rgba(18,24,42,.16);
}
.spro-row-menu a {
  padding: 9px 10px;
  border-radius: 7px;
  color: var(--spro-ink);
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  text-decoration: none;
}
.spro-row-menu a:hover {
  color: #fff;
  background: var(--spro-emerald);
}
.spro-row-menu a.danger {
  color: var(--spro-coral);
}
.spro-row-menu a.danger:hover {
  color: #fff;
  background: var(--spro-coral);
}
.spro-operations-empty {
  min-height: 190px;
}

@media (max-width: 1100px) {
  body.spro-operations-page .spro-operations-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  body.spro-operations-page .spro-object-nav {
    position: static;
  }
  body.spro-operations-page .spro-object-nav nav {
    display: flex;
    max-height: none;
    overflow-x: auto;
    padding: 8px;
  }
  body.spro-operations-page .spro-object-nav nav a {
    min-width: 205px;
  }
}

@media (max-width: 760px) {
  body.spro-operations-page .spro-main {
    padding-inline: 10px;
  }
  body.spro-operations-page .spro-operations-head {
    margin: -4px 0 12px;
    padding: 16px;
  }
  body.spro-operations-page .spro-operations-head h1 {
    font-size: 32px;
  }
  body.spro-operations-page .spro-page-actions,
  body.spro-operations-page .spro-page-actions .spro-button-primary {
    width: 100%;
  }
  body.spro-operations-page .spro-ops-head-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  body.spro-operations-page .spro-ops-head-stats div {
    min-width: 0;
  }
  body.spro-operations-page .spro-module-surface-tabs {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    overflow-x: auto;
    padding: 6px;
  }
  body.spro-operations-page .spro-directory-toolbar {
    display: grid;
  }
  body.spro-operations-page .spro-directory-toolbar>div:first-child {
    grid-template-columns: 38px minmax(0,1fr);
  }
  body.spro-operations-page .spro-operation-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
  }
  body.spro-operations-page .spro-operations-filter-stack {
    justify-items: stretch;
    width: 100%;
  }
  body.spro-operations-page .spro-table-search {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) 74px;
  }
  body.spro-operations-page .spro-table-search button {
    min-width: 0;
  }
  body.spro-operations-page .spro-table-tools {
    padding: 10px 12px;
  }
  body.spro-operations-page .spro-table-pager {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    align-items: center;
  }
  body.spro-operations-page .spro-table-pager select {
    width: 100%;
  }
  body.spro-operations-page .spro-table-pager span {
    grid-column: 1 / -1;
    order: 5;
  }
  body.spro-operations-page .spro-table-wrap {
    overflow: visible;
  }
  body.spro-operations-page .spro-operations-table {
    min-width: 0;
    border-collapse: separate;
    border-spacing: 0 10px;
  }
  body.spro-operations-page .spro-operations-table caption {
    display: none;
  }
  body.spro-operations-page .spro-operations-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
  }
  body.spro-operations-page .spro-operations-table tbody,
  body.spro-operations-page .spro-operations-table tr,
  body.spro-operations-page .spro-operations-table td {
    display: block;
    width: 100%;
  }
  body.spro-operations-page .spro-operations-table tr {
    box-sizing: border-box;
    overflow: hidden;
    border: 1px solid var(--spro-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(18,24,42,.06);
  }
  body.spro-operations-page .spro-operations-table td {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(96px,.34fr) minmax(0,1fr);
    gap: 12px;
    max-width: none;
    padding: 10px 12px;
    border: 0;
    border-top: 1px solid var(--spro-line-soft);
    white-space: normal;
  }
  body.spro-operations-page .spro-operations-table td:first-child {
    border-top: 0;
  }
  body.spro-operations-page .spro-operations-table td::before {
    content: attr(data-label);
    color: var(--spro-faint);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
  }
  body.spro-operations-page .spro-operations-table td:has(.spro-operations-empty) {
    display: block;
  }
  body.spro-operations-page .spro-operations-table td:has(.spro-operations-empty)::before {
    display: none;
  }
  body.spro-operations-page .spro-operations-table td.spro-select-column {
    grid-template-columns: minmax(96px,.34fr) auto;
    align-items: center;
  }
  body.spro-operations-page .spro-operations-table .spro-record-link b,
  body.spro-operations-page .spro-operations-table .spro-record-link small {
    white-space: normal;
  }
  body.spro-operations-page .spro-row-menu-cell {
    width: 100%;
    text-align: left;
  }
  body.spro-operations-page .spro-row-menu {
    justify-self: start;
  }
  body.spro-operations-page .spro-row-menu>div {
    right: auto;
    left: 0;
  }
  body.spro-operations-page .spro-operations-empty {
    min-height: 180px;
  }
  body.spro-operations-page .spro-operations-empty span,
  body.spro-operations-page .spro-operations-empty h3,
  body.spro-operations-page .spro-operations-empty p {
    grid-column: 1 / -1;
  }
}

@media (max-width: 520px) {
  body.spro-operations-page .spro-ops-head-stats {
    grid-template-columns: 1fr;
  }
  body.spro-operations-page .spro-module-surface-tabs {
    grid-template-columns: 1fr;
    overflow: visible;
  }
  body.spro-operations-page .spro-table-search {
    grid-template-columns: auto minmax(0,1fr);
  }
  body.spro-operations-page .spro-table-search button {
    grid-column: 1 / -1;
    width: 100%;
    margin: 0;
  }
  body.spro-operations-page .spro-table-pager {
    grid-template-columns: 1fr 44px auto 44px;
  }
  body.spro-operations-page .spro-table-pager b {
    justify-self: center;
  }
  body.spro-operations-page .spro-operations-table td {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}
