/* portal-lift.css — GENERATED by lift.mjs. Do not edit; edit ALLOWED in lift.mjs and re-run.
   Source: shredfast-athlete-portal/app/globals.css sha256 e7fb0f527e76b450ac9bf18edb1a40ba43c1c5900899d5b3a2156c607338f5bf
   Every selector is scoped under `.xd` (the <html> of each mock). `g:N` = the portal line.
   Counts: 224 rules · 230 selectors · 3 comma-lists trimmed · 2 keyframes · 6 at-rule wrappers. */
@keyframes mrise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes sf-rise {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: none; }
}
.xd {
  /* green — the single accent */
  --green: #4FFF8B;
  --green-press: #3BE678;
  --green-deep: #068A3D;
  --green-quiet: oklch(0.72 0.10 153);
  --green-dim: oklch(0.58 0.06 153);

  /* neutral ladder (green-tinted) — elevation by stepping */
  --c-void: oklch(0.135 0.006 152);
  --c-base: oklch(0.172 0.007 152);
  --c-surface: oklch(0.212 0.007 152);
  --c-surface-2: oklch(0.238 0.008 152);
  --c-raised: oklch(0.262 0.008 152);

  /* hairlines */
  --line: oklch(0.34 0.007 152 / .7);
  --line-soft: oklch(0.40 0.006 152 / .26);

  /* text ladder */
  --fg: oklch(0.97 0.004 152);
  --fg2: oklch(0.80 0.006 152);
  --fg3: oklch(0.63 0.007 152);
  --muted: oklch(0.55 0.008 152);
  --dim: oklch(0.42 0.006 152);

  --red: #FF6B6B;

  /* radii */
  --r-md: 18px;
  --r-lg: 24px;
  --r-xl: 28px;
  --r-cap: 60px;

  /* type */
  --font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;
  /* Exo 2 is now self-hosted via next/font (var --font-display-web) — no raw
     Google Fonts <link>, so no route emits a third-party subresource (R6). */
  --font-display: "Bio Sans", var(--font-display-web), "Inter", sans-serif;
  --font-body: var(--font);

  /* motion + soft elevation (single surgical surface per screen only) */
  --ease: cubic-bezier(.2, .9, .27, 1);
  --elev: 0 18px 40px -18px rgba(0, 0, 0, .7);
  --elev-soft: 0 10px 28px -16px rgba(0, 0, 0, .55);

  /* ── F2a blueprint-grid additions (Fuda T0-662, §01.2) — exactly 5 new vars.
     --green-fill is the mockup's dark-fill role (active nav / avatar / met
     dots / toast grounds); the mockup names it --green-deep, colliding with the
     repo --green-deep (#068A3D, V6 ladder of record) which is LEFT UNCHANGED.
     The event colours seed the palette F2c Calendar reuses. ── */
  --node: oklch(0.52 0.01 152 / .8);
  --amber: #E8B54A;
  --green-fill: oklch(0.30 0.075 153);
  --event-checkin: #A88CE6;
  --event-assess: #5CB8E6;
  /* T0-793: the Methodology & Anatomy event accent, AA-checked like its
     siblings (see the light-theme block below for the paired token). */
  --event-ma: #E68CB8;
  /* T0-838 — the two NON-TYPE states on the day-load bar. Deliberately
     near-achromatic: that is what lets them read as "not one of the five"
     rather than as a sixth event type. Measured by rendering the token and
     reading back the composited sRGB pixel, not eyeballed. Bar segments are
     non-text meaningful graphics, so the bar is WCAG 1.4.11's 3:1, not 4.5:1.
     --event-unavail  6.12:1 vs --c-base, 5.36:1 vs the --c-surface-2 track.
     --event-unknown  4.45:1 vs --c-base, 3.89:1 vs the track. */
  --event-unavail: oklch(0.66 0.012 152);
  --event-unknown: oklch(0.58 0.010 152);

  /* ── F2b on-accent ink trio (Fuda T0-663 §01.3) — exactly 3 new vars. Each is a
     literal already repeated across the ladder; naming it removes the repetition
     with ZERO computed-value change (var value == the replaced hex). The eight
     pre-existing sites are consolidated in the same commit that introduces these.
     Scrim whites (#fff / rgba over photographic-or-gradient plates) are NOT accent
     pairs and stay literal (advisory 2). ── */
  --on-green: #08160d;        /* ink on electric --green fills (btn-solid, play, cur node) */
  --on-green-fill: #eafff2;   /* ink on --green-fill dark fills (active nav, avatar, segtab/chip) */
  --on-green-tint: #bff5d1;   /* hover-brightened green text on ghost/outline hovers */

  /* ── F3a console dashboard (Fuda T0-666 §05.4) — exactly 1 new var. Ink on
     amber-tinted grounds: the needs-attention / stuck family (the mockup's
     #f2d79a). Consumed again by F3b pending chips and F3d stuck pills. No second
     new var without a Fuda amendment; the amber ground (--amber), node, and
     green-fill structural tokens already exist and are matched, not forked. ── */
  --on-amber: #f2d79a;

  /* ── T0-683 Genji light-mode switch (§01 C-1a) — exactly 3 new vars. These are
     BASE (dark) NO-OPS: --green-cta / --on-green-cta alias the electric CTA pair
     and --on-red aliases the existing .btn-solid-danger ink, so every computed
     value in the dark theme is byte-equivalent before and after this Fuda (the
     no-op invariant, proven at V-4). The LIGHT values live in the
     :root[data-theme="light"] override block below, pasted verbatim from
     artefacts/design-systems/shredfast/genji-light-tokens.css (the frozen design
     authority — zero token-value authorship here). ── */
  --green-cta: var(--green);
  --on-green-cta: var(--on-green);
  --on-red: #2a0808;
} /* g:9 */
.xd[data-theme="light"] {
  /* green — marine teal (operator palette); everyday accent + deepened tiers */
  --green:        #04998f;                /* everyday accent: ring/dots/toggle/edges/ghost */
  --green-press:  #027770;                /* pressed / deeper; also the deep CTA-fill tone */
  --green-deep:   #1F5763;                /* operator anchor: deep-green replacement / hover / secondary */
  --green-cta:    #027770;                /* DEEP-teal LARGE primary fills (signed .btn.fill tone) */
  --on-green-cta: #f2fdfb;                /* LIGHT ink on the DEEP CTA fill — 5.22:1 (AA). Genji lesson:
                                             the CTA is a DEEP fill (#027770) so it takes LIGHT ink; the
                                             small MID accent (#04998f) takes DARK --on-green. Both
                                             measured — the lesson is the matrix, not a hue rule. */
  --green-quiet:  #027770;                /* green-AS-TEXT on light void — 4.77:1 on --c-void (AA) */
  --green-dim:    oklch(0.66 0.07 189);

  /* neutrals — light teal-tinted chrome (hue ~194; never #fff) */
  --c-void:      oklch(0.955 0.012 194);  /* page + canvas backdrop */
  --c-base:      oklch(0.988 0.006 194);  /* topbar, ledger panel */
  --c-surface:   oklch(0.965 0.010 194);  /* chips, inputs, rows */
  --c-surface-2: oklch(0.945 0.013 194);
  --c-raised:    oklch(0.998 0.004 194);  /* popups, cards — elevated = lighter + shadow */

  /* hairlines — teal-tinted on light */
  --line:      oklch(0.85 0.022 194 / 0.9);
  --line-soft: oklch(0.90 0.015 194 / 0.7);

  /* text ladder — deep teal ink on light (never #000). Measured on --c-void: */
  --fg:    oklch(0.29 0.045 191);         /* primary ~#023532 — 12.21:1 (AAA) */
  --fg2:   oklch(0.41 0.052 202);         /* secondary ~#1F5763 — 7.59:1 (AAA) */
  --fg3:   oklch(0.53 0.038 194);         /* tertiary — 4.56:1 (AA); small labels */
  --muted: oklch(0.61 0.030 194);         /* 3.29:1 — AA LARGE-ONLY; not for small essential text */
  --dim:   oklch(0.71 0.022 194);         /* 2.25:1 — DECORATIVE/DISABLED/placeholder ONLY, never text */

  --red: #b5372b;                         /* deepened for light ground — 5.22:1 as text on --c-void (AA) */
  --on-red: #fff1f2;                      /* light ink on --red destructive button — 5.39:1 (AA) */

  /* on-accent inks */
  --on-green:      #042522;               /* DARK ink on MID accent --green #04998f (small fills) — 4.61:1 (AA) */
  --on-green-fill: #f2fdfb;               /* light ink on deep --green-fill grounds — 7.77:1 (AAA) */
  --on-green-tint: #027770;               /* green hover-text on light ground — 4.77:1 on --c-void (AA) */

  /* structural fills */
  --green-fill:    #1F5763;               /* deep anchor structural fill — active nav / avatar conduit */
  --node:          oklch(0.62 0.030 194 / 0.85);  /* node marker (non-text) */
  --amber:         oklch(0.60 0.13 66);   /* deepened amber — 3.59:1 as text (AA LARGE-ONLY; prefer fill+--on-amber) */
  --on-amber:      oklch(0.18 0.040 68);  /* near-black ink on --amber pills — 4.63:1 (AA) */
  --event-checkin: #6B4FC4;               /* violet event accent — 5.22:1 as label on --c-void (AA) */
  --event-assess:  #256690;               /* blue event accent — 5.47:1 as label on --c-void (AA) */
  --event-ma:      #A03A6B;               /* rose event accent (T0-793) — 5.63:1 as label on --c-void (AA) */
  --event-unavail: oklch(0.50 0.012 194); /* T0-838 achromatic Google-busy — 5.79:1 vs --c-base, 4.80:1 vs track */
  --event-unknown: oklch(0.60 0.010 194); /* T0-838 unknown outline — 3.80:1 vs --c-base, 3.15:1 vs track */

  /* elevation — soft teal-tinted shadow */
  --elev:      0 10px 30px oklch(0.42 0.05 202 / 0.16);
  --elev-soft: 0 6px 20px oklch(0.42 0.05 202 / 0.10);

  color-scheme: light;
} /* g:121 */
.xd * {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
} /* g:178 */
.xd, .xd body {
  background-color: var(--c-void);
  color: var(--fg);
  /* UAT round 4: a CLOSED slide-drawer parked at translateX(100%) still
     contributes scrollable overflow (transformed boxes extend the scroll area
     even off-viewport), producing a permanent horizontal scrollbar on any page
     with an always-mounted drawer. Clip horizontal overflow at the root — the
     design is a fixed-max grid; nothing legitimate scrolls the page sideways
     (wide tables own their own overflow). */
  overflow-x: clip;
} /* g:183 */
.xd body {
  font-family: var(--font);
  min-height: 100dvh;
  background-image: radial-gradient(140% 60% at 50% -8%,
      color-mix(in oklch, var(--green) 5%, transparent),
      transparent 52%);
  background-repeat: no-repeat;
  background-attachment: fixed;
} /* g:196 */
.xd .tnum { font-variant-numeric: tabular-nums; } /* g:333 */
.xd .app { display: grid; grid-template-columns: 226px 1fr; min-height: 100dvh; } /* g:336 */
.xd .side {
  border-right: 1px solid var(--line-soft);
  background: color-mix(in oklch, var(--c-base) 60%, var(--c-void));
  display: flex; flex-direction: column; padding: 0; gap: 5px;
  position: sticky; top: 0; height: 100dvh;
} /* g:337 */
.xd .brand { padding: 20px 14px 14px 18px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; text-decoration: none; } /* g:343 */
.xd .brand svg { height: 15px; width: auto; color: var(--green); display: block; } /* g:344 */
.xd .brandsub { font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--fg3); font-weight: 600; } /* g:345 */
.xd .ngrp { font-size: 9.5px; letter-spacing: .15em; text-transform: uppercase; color: var(--dim); padding: 13px 14px 5px 18px; font-weight: 600; } /* g:346 */
.xd .nav { display: flex; flex-direction: column; gap: 1px; } /* g:347 */
.xd .nav a {
  display: flex; align-items: center; gap: 11px; padding: 8px 14px 8px 18px;
  color: var(--fg3); font-size: 13px; font-weight: 500; text-decoration: none;
  transition: .14s var(--ease); border-left: 2px solid transparent; cursor: pointer;
} /* g:348 */
.xd .nav a:hover { background: var(--c-surface); color: var(--fg2); } /* g:353 */
.xd .nav a.on { background: var(--green-fill); color: var(--on-green-fill); border-left: 2px solid var(--green); } /* g:354 */
.xd .nav a svg { width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 1.7; flex-shrink: 0; } /* g:355 */
.xd .who { margin-top: auto; display: flex; align-items: center; gap: 10px; padding: 13px 14px 10px 18px; border-top: 1px solid var(--line-soft); } /* g:356 */
.xd .ava { width: 30px; height: 30px; display: grid; place-items: center; font-weight: 700; font-size: 12px; background: var(--green-fill); color: var(--on-green-fill); font-family: var(--font-display); overflow: hidden; } /* g:357 */
.xd .ava img { width: 100%; height: 100%; object-fit: cover; display: block; object-position: 50% 14%; transform: scale(1.52); transform-origin: 50% 14%; } /* g:358 */
.xd .who .nm { font-size: 12.5px; font-weight: 600; color: var(--fg); } /* g:359 */
.xd .who .rl { font-size: 10.5px; color: var(--fg3); } /* g:360 */
.xd .signout { padding: 4px 14px 14px 18px; } /* g:361 */
.xd .signout button {
  width: 100%; text-align: left; background: none; border: none; cursor: pointer;
  display: flex; align-items: center; gap: 9px; padding: 7px 0;
  color: var(--fg3); font-size: 12px; font-weight: 500; font-family: var(--font-body);
  transition: .14s var(--ease);
} /* g:362 */
.xd .signout button:hover { color: var(--fg); } /* g:368 */
.xd .signout button svg { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 1.9; } /* g:369 */
.xd .main { padding: 0; display: flex; flex-direction: column; min-height: 100dvh; } /* g:372 */
.xd .frame { position: relative; background: var(--line-soft); display: flex; flex-direction: column; gap: 1px; flex: 1; } /* g:373 */
.xd .gsec { background: var(--line-soft); display: grid; gap: 1px; } /* g:374 */
.xd .gcell { position: relative; background: var(--c-base); } /* g:375 */
.xd .gcell::before, .xd .gcell::after { content: ""; position: absolute; z-index: 4; pointer-events: none; opacity: .85; background: var(--node); } /* g:377 */
.xd .gcell::before { top: -1px; left: -1px; width: 9px; height: 1px; transform: translate(-50%, -50%); } /* g:378 */
.xd .gcell::after { top: -1px; left: -1px; width: 1px; height: 9px; transform: translate(-50%, -50%); } /* g:379 */
.xd .gsec > .gcell:first-child::before { width: 5px; left: -1px; transform: translate(0, -50%); } /* g:380 */
.xd .frame > .gsec:first-child > .gcell::before { display: none; } /* g:381 */
.xd .frame + .frame { margin-top: 14px; } /* g:384 */
.xd .gsec > .gcell:not(:first-child)::after { height: 5px; top: -1px; transform: translate(-50%, 0); } /* g:391 */
.xd .hero { padding: 30px 26px; display: flex; align-items: flex-end; gap: 24px; flex-wrap: wrap; background: radial-gradient(120% 140% at 0% 0%, color-mix(in oklch, var(--green) 8%, transparent), transparent 60%); } /* g:394 */
.xd .hero .hmain { flex: 1; min-width: 260px; } /* g:395 */
.xd .hero .eyebrow { display: inline-flex; align-items: center; gap: 8px; } /* g:396 */
.xd .eyebrow { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--green-quiet); font-weight: 600; } /* g:397 */
.xd .hero .eyebrow .d { width: 7px; height: 7px; border-radius: 50%; background: var(--green); } /* g:398 */
.xd .hero h1 { font-family: var(--font-display); font-size: 32px; font-weight: 700; letter-spacing: -.025em; margin-top: 10px; text-wrap: balance; } /* g:399 */
.xd .hero .sub { font-size: 14px; color: var(--fg2); margin-top: 9px; max-width: 520px; line-height: 1.55; } /* g:400 */
.xd .hero .sub b { color: var(--fg); font-weight: 700; } /* g:401 */
.xd .statcell { padding: 16px 20px; display: flex; flex-direction: column; gap: 8px; min-height: 104px; } /* g:493 */
.xd .statk { font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--fg3); font-weight: 600; display: flex; align-items: center; } /* g:517 */
.xd .statv { font-family: var(--font-display); font-size: 29px; font-weight: 700; letter-spacing: -.02em; font-variant-numeric: tabular-nums; line-height: 1; display: flex; align-items: baseline; gap: 3px; } /* g:518 */
.xd .statv .u { font-size: 14px; font-weight: 600; color: var(--muted); font-family: var(--font-body); } /* g:519 */
.xd .statv.awaiting { color: var(--dim); } /* g:524 */
.xd .statsub { font-size: 11.5px; color: var(--muted); margin-top: auto; } /* g:527 */
.xd .pcell { padding: 0; display: flex; flex-direction: column; } /* g:536 */
.xd .ptitle { padding: 15px 20px; display: flex; align-items: center; gap: 10px; border-bottom: 1px solid var(--line-soft); } /* g:537 */
.xd .ptitle .pt { font-family: var(--font-display); font-size: 14px; font-weight: 700; letter-spacing: -.01em; } /* g:538 */
.xd .ptitle .cnt { font-size: 11px; color: var(--fg3); font-weight: 600; background: var(--c-surface); padding: 2px 9px; border-radius: 60px; } /* g:539 */
.xd .ptitle .rt { margin-left: auto; } /* g:540 */
.xd .empty { padding: 26px 20px; text-align: center; color: var(--muted); font-size: 12.5px; } /* g:544 */
.xd .btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border-radius: 60px; font-size: 12.5px; font-weight: 600; height: 38px; padding: 0 18px; cursor: pointer; transition: .16s var(--ease); white-space: nowrap; border: 1px solid transparent; font-family: var(--font-body); } /* g:712 */
.xd .btn svg { width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 2; } /* g:713 */
.xd .btn:disabled { opacity: .42; cursor: not-allowed; } /* g:726 */
.xd .btn-solid { background: var(--green-cta); color: var(--on-green-cta); font-weight: 700; } /* g:727 */
.xd .btn-solid:hover { background: var(--green-press); } /* g:728 */
.xd .btn-ghost { background: transparent; border: 1px solid color-mix(in oklch, var(--green) 45%, transparent); color: var(--green-quiet); } /* g:729 */
.xd .btn-ghost:hover { border-color: var(--green); background: color-mix(in oklch, var(--green) 8%, transparent); color: var(--on-green-tint); } /* g:730 */
.xd .btn-line { background: transparent; border: 1px solid var(--line); color: var(--fg2); } /* g:731 */
.xd .btn-line:hover { border-color: var(--fg3); color: var(--fg); } /* g:732 */
.xd .btn-sm { height: 34px; padding: 0 14px; font-size: 12px; } /* g:733 */
.xd .mobar { display: none; align-items: stretch; padding: 0; min-height: 52px; border-bottom: 1px solid var(--line-soft); position: sticky; top: 0; background: var(--c-base); z-index: 55; } /* g:736 */
.xd .mobar .brandwrap { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 3px; padding: 0 15px; text-decoration: none; } /* g:737 */
.xd .mobar .mobwm { height: 14px; width: auto; color: var(--green); display: block; } /* g:738 */
.xd .mobar .mobsub { font-size: 9px; letter-spacing: .16em; text-transform: uppercase; color: var(--fg3); font-weight: 600; } /* g:739 */
.xd .hamburger { display: grid; place-items: center; width: 52px; border: none; border-right: 1px solid var(--line-soft); background: transparent; color: var(--fg2); cursor: pointer; } /* g:740 */
.xd .hamburger svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 2; } /* g:741 */
.xd .sidehead { display: flex; align-items: center; justify-content: space-between; } /* g:749 */
.xd .sidehead .brand { flex: 1 1 auto; } /* g:750 */
.xd .themehead { display: flex; align-items: center; } /* g:751 */
.xd .sidehead .themehead { padding-right: 16px; } /* g:752 */
.xd .mobar .themehead { margin-left: auto; padding: 0 15px; } /* g:753 */
.xd .theme-toggle {
  all: unset; cursor: pointer; display: grid; place-items: center;
  width: 34px; height: 34px; border-radius: var(--r-cap);
  color: var(--fg3); border: 1px solid var(--line-soft);
} /* g:759 */
.xd .theme-toggle:hover { color: var(--fg); background: var(--c-surface); } /* g:764 */
.xd .theme-toggle svg { width: 16px; height: 16px; } /* g:765 */
.xd .theme-toggle .moon { display: none; } /* g:766 */
.xd .theme-toggle .sun { display: block; } /* g:767 */
.xd[data-theme="light"] .theme-toggle .sun { display: none; } /* g:768 */
.xd[data-theme="light"] .theme-toggle .moon { display: block; } /* g:769 */
.xd .navscrim { display: none; position: fixed; inset: 0; background: rgba(0, 0, 0, .55); z-index: 65; } /* g:770 */
.xd .navscrim.show { display: block; } /* g:771 */
.xd .mscrim { display: none; position: fixed; inset: 0; background: rgba(0, 0, 0, .62); z-index: 88; } /* g:774 */
.xd .mscrim.show { display: block; } /* g:775 */
.xd .modal { display: none; position: fixed; inset: 0; z-index: 90; align-items: center; justify-content: center; padding: 24px; } /* g:776 */
.xd .modal.open { display: flex; } /* g:777 */
.xd .mcard { width: 480px; max-width: 96vw; max-height: 90vh; background: var(--c-base); border: 1px solid var(--line); display: flex; flex-direction: column; box-shadow: 0 30px 80px -24px rgba(0, 0, 0, .75); animation: mrise .26s var(--ease); } /* g:778 */
.xd .mhead { padding: 17px 22px; border-bottom: 1px solid var(--line-soft); display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; } /* g:780 */
.xd .mhead h2 { font-family: var(--font-display); font-size: 18px; font-weight: 700; } /* g:782 */
.xd .mbody { padding: 17px 22px; display: flex; flex-direction: column; gap: 13px; } /* g:783 */
.xd .mbody p { font-size: 12.5px; color: var(--fg3); line-height: 1.55; } /* g:784 */
.xd .mbody p b { color: var(--fg); } /* g:785 */
.xd .mfoot { padding: 14px 22px; border-top: 1px solid var(--line-soft); display: flex; gap: 10px; justify-content: flex-end; background: color-mix(in oklch, var(--c-base) 92%, transparent); } /* g:786 */
.xd .dclose { width: 32px; height: 32px; display: grid; place-items: center; color: var(--fg3); border: 1px solid var(--line-soft); flex-shrink: 0; background: none; cursor: pointer; } /* g:787 */
.xd .dclose:hover { color: var(--fg); border-color: var(--fg3); } /* g:788 */
.xd .dclose svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2; } /* g:789 */
.xd .fld { display: flex; flex-direction: column; gap: 6px; } /* g:790 */
.xd .fld .fl { font-size: 11.5px; color: var(--fg3); font-weight: 600; letter-spacing: .02em; } /* g:791 */
.xd .in { height: 44px; background: var(--c-surface); border: 1px solid var(--line-soft); padding: 0 13px; font-size: 13.5px; color: var(--fg); outline: none; transition: .16s var(--ease); font-family: var(--font-body); width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; } /* g:792 */
.xd .in::placeholder { color: var(--muted); } /* g:796 */
.xd .in:focus { border-color: var(--green-quiet); } /* g:797 */
.xd textarea.in { height: auto; padding: 11px 13px; resize: vertical; min-height: 64px; line-height: 1.5; } /* g:798 */
.xd .bp-rise { animation: sf-rise .5s var(--ease) backwards; } /* g:810 */
@media (max-width: 940px) {
  .xd .app { grid-template-columns: 1fr; } /* g:812 */
  .xd .side { display: flex; position: fixed; top: 0; left: 0; height: 100dvh; width: 236px; transform: translateX(-100%); transition: transform .28s var(--ease); z-index: 70; } /* g:813 */
  .xd .side.open { transform: translateX(0); box-shadow: 0 18px 50px -12px rgba(0, 0, 0, .7); } /* g:814 */
  .xd .main .mobar { display: flex; } /* g:815 */
  .xd .hero h1 { font-size: 26px; } /* g:817 */
}
@media (prefers-reduced-motion: reduce) {
  .xd .bp-rise, .xd .mcard { animation: none; } /* g:824 */
}
.xd .hcell { padding: 18px 22px; display: flex; align-items: flex-start; gap: 20px; flex-wrap: wrap; } /* g:842 */
.xd .hcell h1 { font-family: var(--font-display); font-size: 27px; font-weight: 700; letter-spacing: -.02em; margin-top: 6px; text-wrap: balance; } /* g:843 */
.xd .hcell .sub { color: var(--fg3); font-size: 13.5px; margin-top: 5px; } /* g:844 */
.xd .tools { margin-left: auto; display: flex; align-items: center; gap: 9px; flex-wrap: wrap; } /* g:845 */
.xd .segtab { display: inline-flex; border: 1px solid var(--line-soft); border-radius: 60px; overflow: hidden; } /* g:848 */
.xd .segtab button { height: 34px; padding: 0 16px; font-size: 12.5px; font-weight: 600; color: var(--fg3); background: transparent; border: none; cursor: pointer; transition: .14s var(--ease); display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-body); } /* g:849 */
.xd .segtab button.on { background: var(--green-fill); color: var(--on-green-fill); } /* g:850 */
.xd .segtab button svg { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 2; } /* g:851 */
.xd .chip { display: inline-flex; align-items: center; gap: 7px; height: 38px; padding: 0 15px; border-radius: 60px; border: 1px solid var(--line-soft); background: var(--c-void); color: var(--fg3); font-size: 12.5px; font-weight: 600; cursor: pointer; transition: .16s var(--ease); font-family: var(--font-body); } /* g:879 */
.xd .chip svg { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 1.9; } /* g:880 */
.xd .chip:hover { border-color: var(--green-quiet); color: var(--fg2); } /* g:881 */
.xd .chip.on { border-color: color-mix(in oklch, var(--amber) 55%, transparent); background: color-mix(in oklch, var(--amber) 12%, transparent); color: var(--amber); } /* g:882 */
.xd .ic { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--line-soft); color: var(--fg3); cursor: pointer; background: none; transition: .14s var(--ease); } /* g:976 */
.xd .ic:hover:not(:disabled) { border-color: var(--green-quiet); color: var(--fg); } /* g:977 */
.xd .ic:disabled { opacity: .35; cursor: not-allowed; } /* g:978 */
.xd .ic svg { width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 2; } /* g:979 */
.xd .calbar { padding: 11px 18px; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; min-height: 57px; } /* g:982 */
.xd select.in { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238f9a8f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: calc(100% - 13px) center; background-size: 14px; padding-right: 34px; } /* g:1316 */
@media (max-width: 720px) {
  .xd .calbar { gap: 9px; } /* g:1345 */
}
.xd .panel { border: 1px solid var(--line-soft); background: var(--c-base); } /* g:1405 */
.xd .panel .prow { padding: 13px 16px; display: flex; align-items: center; gap: 14px; border-bottom: 1px solid color-mix(in oklch, var(--line-soft) 55%, transparent); } /* g:1406 */
.xd .panel .prow:last-child { border-bottom: none; } /* g:1407 */
.xd .prow .pmain { flex: 1; min-width: 0; } /* g:1408 */
.xd .prow .pmain .n { font-size: 13px; font-weight: 600; color: var(--fg); display: flex; align-items: center; gap: 9px; flex-wrap: wrap; } /* g:1409 */
.xd .prow .pmain .d { font-size: 11.5px; color: var(--muted); margin-top: 3px; line-height: 1.45; } /* g:1410 */
.xd .prow .pr { flex-shrink: 0; display: flex; align-items: center; gap: 10px; } /* g:1411 */
.xd .rd { font-size: 13px; color: var(--fg); font-variant-numeric: tabular-nums; } /* g:1412 */
.xd .statuspill { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 60px; } /* g:1415 */
.xd .statuspill.ok { background: color-mix(in oklch, var(--green) 13%, transparent); color: var(--green-quiet); } /* g:1416 */
.xd .statuspill.off { background: var(--c-surface); color: var(--muted); } /* g:1417 */
.xd .statuspill .dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; } /* g:1418 */
.xd .tgl { width: 40px; height: 23px; border-radius: 60px; background: var(--c-surface-2); border: 1px solid var(--line-soft); position: relative; cursor: pointer; transition: .16s var(--ease); flex-shrink: 0; padding: 0; } /* g:1421 */
.xd .tgl.on { background: var(--green); border-color: var(--green); } /* g:1422 */
.xd .tgl .kn { position: absolute; top: 2px; left: 2px; width: 17px; height: 17px; border-radius: 50%; background: var(--fg2); transition: .18s var(--ease); } /* g:1423 */
.xd .tgl.on .kn { left: 19px; background: var(--on-green); } /* g:1424 */
.xd .setgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; } /* g:1441 */
.xd .in { color-scheme: dark; } /* g:1498 */
.xd[data-theme="light"] .in { color-scheme: light; } /* g:1499 */
@media (max-width: 860px) {
  .xd .setgrid { grid-template-columns: 1fr; } /* g:1598 */
  .xd .prow { flex-wrap: wrap; } /* g:1602 */
  .xd .prow .pr { margin-left: auto; } /* g:1603 */
}
.xd .mapfilter { position: relative; display: inline-flex; align-items: center; flex-shrink: 0; } /* g:1636 */
.xd .mapfilter::after { content: ""; position: absolute; right: 13px; top: 50%; width: 12px; height: 12px; transform: translateY(-50%); pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2392a596' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; } /* g:1637 */
.xd .mapfilter select { appearance: none; -webkit-appearance: none; background: var(--c-void); border: 1px solid var(--line-soft); border-radius: 60px; color: var(--fg2); font-family: var(--font-body); font-size: 12px; font-weight: 600; padding: 6px 30px 6px 14px; cursor: pointer; outline: none; transition: .16s var(--ease); } /* g:1638 */
.xd .mapfilter select:hover { border-color: var(--green-quiet); color: var(--fg); } /* g:1639 */
.xd .mapfilter select:focus { border-color: var(--green-quiet); color: var(--fg); } /* g:1640 */
.xd .maplist { display: flex; flex-direction: column; min-width: 0; } /* g:1781 */
.xd .mrow { display: flex; align-items: center; gap: 10px; padding: 4px 0; } /* g:1783 */
.xd .mrow .flag { font-size: 12.5px; color: var(--fg2); width: 108px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } /* g:1784 */
.xd .mrow .bar { flex: 1; height: 7px; background: var(--c-surface-2); overflow: hidden; } /* g:1785 */
.xd .mrow .barf { display: block; height: 100%; background: linear-gradient(90deg, color-mix(in oklch, var(--green) 50%, var(--c-surface)), var(--green)); } /* g:1786 */
.xd .mrow .mn { font-family: var(--font-display); font-size: 13px; font-weight: 700; color: var(--fg); width: 26px; text-align: right; font-variant-numeric: tabular-nums; } /* g:1787 */
.xd .side .nav a .badge { margin-left: auto; background: color-mix(in oklch, var(--amber) 20%, transparent); color: var(--amber); font-size: 10px; font-weight: 700; padding: 1px 7px; border-radius: 60px; font-variant-numeric: tabular-nums; } /* g:1807 */
.xd .toolcell { padding: 0; display: flex; align-items: stretch; flex-wrap: wrap; min-height: 57px; } /* g:1814 */
.xd .filters { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; padding: 10px 18px; flex: 1; } /* g:1816 */
.xd .mechtag { font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--fg3); display: inline-flex; align-items: center; gap: 5px; padding: 2px 8px; border: 1px solid var(--line-soft); border-radius: 60px; white-space: nowrap; } /* g:1841 */
.xd .mechtag svg { width: 11px; height: 11px; stroke: currentColor; fill: none; stroke-width: 2; } /* g:1842 */
.xd .chip-proofs { display: inline-flex; align-items: center; padding: 2px 9px; border-radius: 60px; border: 1px solid color-mix(in oklch, var(--amber) 34%, transparent); background: color-mix(in oklch, var(--amber) 14%, transparent); color: var(--on-amber); font-size: 10.5px; font-weight: 700; white-space: nowrap; font-variant-numeric: tabular-nums; } /* g:1875 */
.xd .rejitem { display: flex; align-items: flex-start; gap: 11px; border: 1px solid color-mix(in oklch, var(--red) 30%, transparent); background: color-mix(in oklch, var(--red) 5%, transparent); padding: 11px 12px; } /* g:1879 */
.xd .reji { width: 22px; height: 22px; flex-shrink: 0; display: grid; place-items: center; border-radius: 50%; background: color-mix(in oklch, var(--red) 12%, transparent); color: var(--red); border: 1px solid color-mix(in oklch, var(--red) 34%, transparent); } /* g:1880 */
.xd .reji svg { width: 12px; height: 12px; stroke: currentColor; fill: none; stroke-width: 2.4; } /* g:1881 */
.xd .rejmain { min-width: 0; flex: 1; } /* g:1882 */
.xd .rejn { font-size: 12.5px; font-weight: 600; color: var(--fg); } /* g:1883 */
.xd .rejd { font-size: 11.5px; color: var(--fg3); margin-top: 3px; line-height: 1.45; } /* g:1884 */
@media (max-width: 940px) {
  .xd .filters { width: 100%; } /* g:1891 */
}
.xd .entrycta { width: 100%; height: 50px; font-size: 13.5px; } /* g:1912 */
.xd .tcell{overflow-x:auto;padding:0} /* g:1918 */
.xd .atable{width:100%;border-collapse:collapse;font-size:13px;min-width:920px} /* g:1919 */
.xd .atable thead th{text-align:left;padding:12px 20px;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg3);font-weight:600;border-bottom:1px solid var(--line-soft);white-space:nowrap} /* g:1920 */
.xd .atable thead th.so{cursor:pointer;user-select:none} /* g:1921 */
.xd .atable thead th.so:hover{color:var(--fg2)} /* g:1922 */
.xd .ar{color:var(--green-quiet);font-size:9px;margin-left:4px} /* g:1923 */
.xd .atable td{padding:11px 20px;vertical-align:middle} /* g:1970 */
.xd .entryframe{position:relative} /* g:2413 */
.xd .entryframe .etick{position:absolute;width:9px;height:9px;z-index:4;pointer-events:none;opacity:.85} /* g:2414 */
.xd .entryframe .etick::before,.xd .entryframe .etick::after{content:"";position:absolute;background:var(--node)} /* g:2415 */
.xd .entryframe .etick::before{width:9px;height:1px} /* g:2416 */
.xd .entryframe .etick::after{width:1px;height:9px} /* g:2417 */
.xd .entryframe .etick.tl{top:-1px;left:-1px} /* g:2418 */
.xd .entryframe .etick.tl::before{top:0;left:0} /* g:2419 */
.xd .entryframe .etick.tl::after{top:0;left:0} /* g:2420 */
.xd .entryframe .etick.tr{top:-1px;right:-1px} /* g:2421 */
.xd .entryframe .etick.tr::before{top:0;right:0} /* g:2422 */
.xd .entryframe .etick.tr::after{top:0;right:0} /* g:2423 */
.xd .entryframe .etick.bl{bottom:-1px;left:-1px} /* g:2424 */
.xd .entryframe .etick.bl::before{bottom:0;left:0} /* g:2425 */
.xd .entryframe .etick.bl::after{bottom:0;left:0} /* g:2426 */
.xd .entryframe .etick.br{bottom:-1px;right:-1px} /* g:2427 */
.xd .entryframe .etick.br::before{bottom:0;right:0} /* g:2428 */
.xd .entryframe .etick.br::after{bottom:0;right:0} /* g:2429 */
.xd .entryframe .gsec{position:relative} /* g:2430 */
.xd .entryframe .gsec:not(:first-of-type)::before,.xd .entryframe .gsec:not(:first-of-type)::after{content:"";position:absolute;z-index:4;pointer-events:none;opacity:.85;background:var(--node)} /* g:2435 */
.xd .entryframe .gsec:not(:first-of-type)::before{top:-1px;right:-1px;width:5px;height:1px;transform:translateY(-50%)} /* g:2436 */
.xd .entryframe .gsec:not(:first-of-type)::after{top:-1px;right:-1px;width:1px;height:9px;transform:translate(0,-50%)} /* g:2437 */
.xd .entryframe > .gsec:first-of-type > .gcell::before,
.xd .entryframe > .gsec:first-of-type > .gcell::after{display:none} /* g:2441 */
@media (max-width: 700px) {
  .xd .nav a { min-height: 44px; } /* g:2480 */
  .xd .signout button { min-height: 40px; } /* g:2481 */
  .xd .ic { width: 42px; height: 42px; min-width: 42px; flex-shrink: 0; } /* g:2482 */
  .xd .dclose { width: 40px; height: 40px; } /* g:2484 */
  .xd .segtab button { min-height: 40px; } /* g:2486 */
  .xd .btn-sm { min-height: 40px; } /* g:2488 */
  .xd .empty { text-align: left; padding-left: 16px; padding-right: 16px; } /* g:2522 */
  .xd .panel .prow { padding: 16px 16px; gap: 10px; } /* g:2537 */
  .xd .panel .prow { position: relative; flex-direction: column; align-items: stretch; gap: 8px; } /* g:2542 */
  .xd .prow .pmain { padding-right: 92px; } /* g:2543 */
  .xd .prow .pr { margin-left: 0; justify-content: flex-start; } /* g:2544 */
  .xd .prow .pr .statuspill { position: absolute; top: 16px; right: 16px; } /* g:2545 */
  .xd .tools { margin-left: 0; width: 100%; justify-content: flex-start; } /* g:2549 */
}
.xd[data-theme="light"] .nav a.on { border-left-color: #4FFF8B; } /* g:2602 */
.xd .dclose:focus-visible { outline: 2px solid var(--green); outline-offset: 2px; } /* g:2924 */
