/* ============================================================================
   Plush74 Collections 2026 — shared component kit  (WAVE-3 CORRECTED LANGUAGE)
   Editorial-grid design language, namespaced `.p74c`. Light/paper surfaces,
   square corners, flat (no shadow), Maison Neue UPPERCASE, lime #E9FF75 used
   ONLY as a small background accent (never as text on a dark fill).

   CORRECTED LANGUAGE (owner rejected wave-2/round-1 — "random lines", "grey
   backgrounds", "old buttons", "black with yellow", "prices spinning right"):
     1. SURFACES are pure white/paper. NO grey structural bands/fills/zebra.
        Grey only as the faintest hover. --p74c-soft/--p74c-soft2 are now near-
        white hover tints, NOT structural fills.
     2. DIVIDERS: kill stray lines. AT MOST one hairline per real zone boundary.
        Inputs are NOT boxes — borderless, underline-on-focus at most.
     3. ONE universal button family: PRIMARY = lime-bg + ink-text;
        SECONDARY = white + ink + 1px hairline; the SINGLE dark "produces-a-
        document" button uses WHITE text. No Bootstrap/circle/pill oddballs.
     4. WORKBAR / headers are LIGHT (paper + ink + thin hairline) — never a
        black bar; never yellow/lime TEXT on any dark fill.
     5. MONEY RECEIPT packs TIGHT beside the content (label + figure grouped,
        capped width) — never detached far-right, never overflowing the page.
     6. NOTES collapsed by default (summary + "+ Notes").
   Loaded by plush74-collections-2026.php. Used by every collection surface.
   Cyon-deploy-ready (no host hardcodes).
   ========================================================================= */

.p74c {
    /* tokens */
    --p74c-ink:#111;
    --p74c-paper:#fff;
    /* faint hover tints ONLY (never a structural band/fill) */
    --p74c-soft:#f7f7f5;
    --p74c-soft2:#f2f2f0;
    --p74c-lime:#E9FF75;
    --p74c-lime-d:#d9f155;
    --p74c-muted:#777;
    --p74c-faint:#999;
    /* THE single hairline. One weight only — no black-vs-grey mix on a card. */
    --p74c-line:#111;
    --p74c-line-2:#dcdcdc;  /* faint hairline, used sparingly for soft inner splits */
    /* FINAL PUSH 2026-07-02 — the DL two-line vocabulary tokens. --p74c-hair is
       the ONE editorial hairline (ink at 14%, matches /how-it-works grid);
       --p74c-rule is the ONE heavy rule (receipt TOTAL / top bar only). NOTE:
       --p74c-line above is left untouched on purpose — surface kits repoint it
       differently (collision documented in KIT_NOTES.md); new work uses these. */
    --p74c-hair:rgba(17,17,17,.14);
    --p74c-hair-hover:rgba(17,17,17,.4);
    --p74c-rule:2px solid #111;
    --p74c-red:#fd4956;
    --p74c-cell-h:42px;
    /* lime-button text color — owner rule: never yellow text on dark; lime fill keeps INK text */
    --p74c-btn-on-lime:var(--p74c-ink);
    --p74c-font:'MaisonNeue-Book','Maison Neue','Helvetica Neue',system-ui,-apple-system,Arial,sans-serif;
    --p74c-font-disp:'MaisonNeue-Extended','Maison Neue Extended','MaisonNeue-Book','Maison Neue',system-ui,sans-serif;

    font-family:var(--p74c-font);
    color:var(--p74c-ink);
    background:var(--p74c-paper);
    /* XC-13: stop mobile font-boosting inside every collection scope */
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
}
.p74c, .p74c * { box-sizing:border-box; }
.p74c input, .p74c select, .p74c button, .p74c textarea { font-family:var(--p74c-font); }

/* ---- Typography ---------------------------------------------------------- */
.p74c__h1, .p74c__h2, .p74c__h3 {
    font-family:var(--p74c-font-disp);
    text-transform:uppercase; letter-spacing:0.03em; color:var(--p74c-ink);
    margin:0; font-weight:700; line-height:1.1;
}
.p74c__h1 { font-size:24px; }
.p74c__h2 { font-size:16px; }
.p74c__h3 { font-size:12px; letter-spacing:0.06em; }
.p74c__sub { font-size:11px; color:var(--p74c-muted); text-transform:uppercase; letter-spacing:0.06em; }
.p74c__disp { text-transform:uppercase; letter-spacing:0.04em; }

/* ---- Header bar ---------------------------------------------------------- */
.p74c__bar {
    display:flex; align-items:center; gap:14px; flex-wrap:wrap;
    padding:18px 16px; border-bottom:1px solid var(--p74c-line); background:var(--p74c-paper);
}
.p74c__bar-spacer { flex:1 1 auto; }

/* ---- Sticky WORKBAR (editor save/share strip) ----------------------------
   THE LIGHT workbar — owner rule #4: paper + ink + ONE bottom hairline, NEVER
   a black bar, NEVER lime/yellow TEXT on a dark fill. Replaces the old dark
   sticky bar. Title left, status note in the middle, the universal button
   family on the right (one lime PRIMARY + white-outline SECONDARY siblings). */
.p74c__workbar {
    position:sticky; top:0; z-index:50;
    display:flex; align-items:center; gap:12px; flex-wrap:wrap;
    padding:11px 16px; background:var(--p74c-paper);
    border-bottom:1px solid var(--p74c-line);
}
.p74c__workbar-title {
    font-family:var(--p74c-font-disp); font-size:13px; font-weight:700;
    text-transform:uppercase; letter-spacing:0.05em; color:var(--p74c-ink);
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:42vw;
}
.p74c__workbar-spacer { flex:1 1 auto; }
/* saved/saving status — quiet ink text + a tiny dot, NEVER a chip/bar */
.p74c__workbar-status {
    display:inline-flex; align-items:center; gap:6px;
    font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:0.05em;
    color:var(--p74c-muted); white-space:nowrap;
}
.p74c__workbar-status::before {
    content:""; width:7px; height:7px; border-radius:50%;
    background:var(--p74c-lime-d); display:inline-block;
}
.p74c__workbar-status.is-saving { color:var(--p74c-muted); }
.p74c__workbar-status.is-saving::before { background:var(--p74c-faint); }
.p74c__workbar-actions { display:inline-flex; align-items:center; gap:8px; flex-wrap:wrap; }

/* ---- Tabs (overview: staff-owned / ALL) ---------------------------------- */
.p74c__tabs { display:flex; gap:0; border-left:1px solid var(--p74c-line); }
.p74c__tab {
    appearance:none; border:0; border-right:1px solid var(--p74c-line); border-bottom:1px solid var(--p74c-line);
    background:var(--p74c-paper); color:var(--p74c-ink); cursor:pointer;
    padding:10px 18px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.06em;
    transition:background .15s, color .15s; text-decoration:none; display:inline-flex; align-items:center; gap:7px;
}
.p74c__tab:hover { background:var(--p74c-soft); }
/* active tab = lime accent (lime-bg + INK text), NOT a black bar (owner rule #4) */
.p74c__tab.is-on { background:var(--p74c-lime); color:var(--p74c-ink); }
.p74c__tab-count { font-size:10px; opacity:.7; font-weight:600; }

/* ---- Filter chip row ----------------------------------------------------- */
.p74c__chips { display:flex; flex-wrap:wrap; gap:0; border-left:1px solid var(--p74c-line); }
.p74c__chip {
    appearance:none; border:0; border-right:1px solid var(--p74c-line); border-bottom:1px solid var(--p74c-line);
    background:var(--p74c-paper); color:var(--p74c-ink); cursor:pointer;
    padding:8px 14px; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:0.05em;
    transition:background .15s; white-space:nowrap;
}
.p74c__chip:hover { background:var(--p74c-soft); }
/* active chip = lime accent (lime-bg + INK text), NOT a black bar (owner rule #4) */
.p74c__chip.is-on { background:var(--p74c-lime); color:var(--p74c-ink); }
.p74c__chip.is-empty { color:var(--p74c-faint); cursor:default; }

/* ---- Inputs / selects (CLEAN underline — never a box) ---------------------
   Owner rule #1+#2: editable fields read clean, NOT bordered grey boxes. The
   field sits on the paper surface with a single 1px bottom hairline; on focus
   the underline thickens to lime — no grey fill, no 4-side box, no double line.
   (Use .p74c__cellinput, below, for fully-borderless inline-edit cells.) */
.p74c__input, .p74c__select, .p74c__textarea {
    width:100%; min-height:var(--p74c-cell-h); padding:0 2px;
    border:0; border-bottom:1px solid var(--p74c-line-2); border-radius:0;
    background:transparent;
    font-size:13px; color:var(--p74c-ink); outline:none;
    text-transform:uppercase; letter-spacing:0.04em;
    transition:border-color .12s;
}
.p74c__textarea { padding:6px 2px; min-height:72px; text-transform:none; letter-spacing:0; resize:vertical; line-height:1.45; }
.p74c__input::placeholder, .p74c__textarea::placeholder { color:var(--p74c-faint); }
.p74c__input:focus, .p74c__select:focus, .p74c__textarea:focus {
    background:transparent; border-bottom:2px solid var(--p74c-lime-d);
}
.p74c__select {
    appearance:none; -webkit-appearance:none; cursor:pointer; padding-right:22px;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.5'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat:no-repeat; background-position:right 4px center;
}
/* search input with leading magnifier — single clean underline, no box */
.p74c__search { position:relative; display:inline-flex; align-items:center; border:0; border-bottom:1px solid var(--p74c-line); background:transparent; min-width:240px; transition:border-color .12s; }
.p74c__search:focus-within { border-bottom:2px solid var(--p74c-lime-d); }
.p74c__search svg { width:16px; height:16px; margin:0 8px 0 2px; color:var(--p74c-ink); flex:0 0 auto; }
.p74c__search input { flex:1; border:0; background:transparent; min-height:38px; padding:0 6px 0 0; font-size:13px; text-transform:uppercase; letter-spacing:0.04em; outline:none; }
.p74c__search input::placeholder { color:var(--p74c-faint); }

/* ---- Buttons — ONE UNIVERSAL FAMILY (owner rule #3) -----------------------
   Exactly three fills, ONE shape (square hairline rectangle), ONE size system:
     SECONDARY (default .p74c__btn)  = white + ink + 1px hairline; hover→lime FILL.
     PRIMARY   (.p74c__btn--go)      = lime-bg + INK text (the standard CTA).
     DOC/INK   (.p74c__btn--ink)     = the SINGLE dark "produces-a-document"
                                       button; WHITE text always (never lime).
   No Bootstrap btn-success/btn-danger, no circles, no pills, no per-button
   geometry drift. Every collection surface uses THIS family verbatim. */
.p74c__btn {
    display:inline-flex; align-items:center; justify-content:center; gap:7px;
    height:38px; padding:0 16px; border:1px solid var(--p74c-line); border-radius:0;
    background:var(--p74c-paper); color:var(--p74c-ink); cursor:pointer; text-decoration:none;
    font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.05em;
    line-height:1; transition:background .15s, color .15s; white-space:nowrap;
}
.p74c__btn:hover { background:var(--p74c-lime); color:var(--p74c-ink); }
.p74c__btn--go { background:var(--p74c-lime); color:var(--p74c-btn-on-lime); }
.p74c__btn--go:hover { background:var(--p74c-lime-d); color:var(--p74c-btn-on-lime); }
/* the ONLY dark button — WHITE text on hover too (NEVER lime text on dark) */
.p74c__btn--ink { background:var(--p74c-ink); color:var(--p74c-paper); border-color:var(--p74c-ink); }
.p74c__btn--ink:hover { background:#000; color:var(--p74c-paper); }
.p74c__btn--ghost { background:transparent; }
.p74c__btn--ghost:hover { background:var(--p74c-lime); color:var(--p74c-ink); }
.p74c__btn--sm { height:32px; padding:0 12px; font-size:11px; letter-spacing:0.04em; }
.p74c__btn:disabled, .p74c__btn.is-disabled { background:var(--p74c-paper); color:var(--p74c-faint); border-color:var(--p74c-line-2); cursor:not-allowed; pointer-events:none; }

/* compact icon button (row actions) — same family, square 32px hairline */
.p74c__xbtn {
    display:inline-flex; align-items:center; justify-content:center;
    width:32px; height:32px; padding:0; border:1px solid var(--p74c-line); border-radius:0;
    background:var(--p74c-paper); color:var(--p74c-ink); cursor:pointer; transition:background .15s;
}
.p74c__xbtn:hover { background:var(--p74c-lime); color:var(--p74c-ink); }
.p74c__xbtn svg { width:15px; height:15px; }
/* borderless icon variant — for gutter arrows/delete so they don't add stray
   boxes (owner rule #1); reads as a quiet glyph, lime tint on hover only */
.p74c__xbtn--bare { border-color:transparent; background:transparent; color:var(--p74c-muted); }
.p74c__xbtn--bare:hover { background:var(--p74c-soft); color:var(--p74c-ink); }

/* action rail (cluster of buttons on an editor row) — shares one outer hairline,
   buttons collapse adjacent borders so the cluster reads as ONE clean segment,
   not a row of separate boxes with divider lines between them */
.p74c__rail { display:inline-flex; flex-wrap:wrap; gap:0; }
.p74c__rail .p74c__btn, .p74c__rail .p74c__xbtn { border-left-width:0; }
.p74c__rail > :first-child { border-left-width:1px; }

/* ---- Status / readiness pills -------------------------------------------- */
.p74c__pill {
    display:inline-flex; align-items:center; gap:5px;
    padding:3px 9px; font-size:10px; font-weight:700; letter-spacing:0.05em; text-transform:uppercase;
    border:1px solid var(--p74c-line); background:var(--p74c-paper); color:var(--p74c-ink); line-height:1.3; white-space:nowrap;
}
.p74c__pill--lime { background:var(--p74c-lime); color:var(--p74c-ink); border-color:var(--p74c-ink); }
/* "ink" pill is now a LIGHT outlined pill (owner rule #4: no dark bars in a
   light card). The outcome "Member earns" reads as a clean white+ink pill that
   sits calmly next to the lime "Client pays" — NOT a black bar. */
.p74c__pill--ink  { background:var(--p74c-paper); color:var(--p74c-ink); border-color:var(--p74c-ink); }
.p74c__pill--muted { color:var(--p74c-muted); border-color:var(--p74c-line-2); }
.p74c__pill--warn { background:#fff4d6; border-color:#caa53a; color:#7a5d00; }
.p74c__pill--dot::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; display:inline-block; }

/* ---- Receipt micro-pills (Deal-Card money receipt) -----------------------
   Display-ONLY pills for the editor receipt. The [%] POLICY pill recomputes
   live (member_fee ÷ rent) as a sanity read; the WARN companion fires amber
   when the stored member_fee is off the role rate. NEITHER writes data and
   neither is a dark fill — they are background-light, never lime/yellow text
   on dark (owner button rule). member_fee stays stored verbatim (R16). */
.p74c__pill--pct {
    background:transparent; color:var(--p74c-muted); border-color:var(--p74c-line-2);
    font-variant-numeric:tabular-nums; letter-spacing:0.02em; padding:2px 7px; font-size:9.5px;
    /* The editor variants split the value into <span.p74ce-pctval>N</span>% so the
       number can be live-recomputed while "%" stays a static sibling (JS: dashboard_
       wishlists_edit.js writes .p74ce-pctval only). Those two runs become separate
       flex items, so the kit's .p74c__pill gap:5px painted a stray space ("20 %").
       The member render (dashboard_requests_notifications_edit) is a single "20%"
       text node with no gap. Force gap:0 so every pct pill reads tight "20%" —
       one rendering across the editor detail pane and the member-respond block. */
    gap:0;
}
/* receipt-context amber WARN — reuses the canonical .p74c__pill--warn palette
   (kit warn pill stays the single source; this is only a tighter receipt size).
   Apply BOTH classes in markup: class="p74c__pill p74c__pill--warn p74ce-warn". */
.p74ce-warn { padding:2px 7px; font-size:9.5px; letter-spacing:0.02em; }

/* ---- Deal-Card money RECEIPT micro-grid (editor flagship) ----------------
   A right-pinned vertical quote: each line = label (small-caps, left) + a
   right-aligned tabular figure. The label/figure split is LOCKED (auto 1fr)
   so €120/h and €4,320.00 never ragged-edge. Single hairlines ONLY: the HEAVY
   rule above TOTAL and the LIGHT rule below it (the C2 two-rule split). The
   per-surface editor css (.p74ce-*) positions the receipt column; this kit
   helper owns the internal grid so every surface that renders a receipt aligns
   identically. Lime is background-only; no rounded corners, no shadow. */
.p74ce-receipt { display:flex; flex-direction:column; gap:0; font-variant-numeric:tabular-nums; }
/* TIGHT receipt (owner rule #5 — kills "prices spinning off to the right"):
   the receipt is a CAPPED-WIDTH block so label + figure stay grouped and can
   NEVER detach to the far page edge. The label column shrinks to its content
   (max-content), the figure sits directly beside it, right-aligned, and the
   whole block maxes at ~300px so the gap is always small and aligned. */
.p74ce-receipt-friendly {
    display:grid; grid-template-columns:1fr max-content; align-items:baseline;
    column-gap:18px; row-gap:8px;
    width:100%; max-width:300px; margin-left:auto;
    font-variant-numeric:tabular-nums;
}
/* one receipt line = label cell (left) + figure cell (right) */
.p74ce-receipt-friendly > .p74ce-recline { display:contents; }
.p74ce-receipt-friendly .p74ce-reclabel {
    font-family:var(--p74c-font-disp); text-transform:uppercase; letter-spacing:0.05em;
    font-size:11px; color:var(--p74c-ink); display:inline-flex; align-items:center; gap:7px; min-width:0;
}
.p74ce-receipt-friendly .p74ce-recfig {
    text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap;
    font-size:13px; color:var(--p74c-ink); justify-self:end; min-width:88px;
}
/* chat-origin CLIENT FEE: muted + struck "(n/a)" (visualizes the R7 zeroing) */
.p74ce-receipt-friendly .p74ce-recline.is-na .p74ce-reclabel,
.p74ce-receipt-friendly .p74ce-recline.is-na .p74ce-recfig { color:var(--p74c-faint); }
.p74ce-receipt-friendly .p74ce-recline.is-na .p74ce-recfig { text-decoration:line-through; }
/* HEAVY rule above TOTAL, LIGHT rule below it — the only two receipt hairlines.
   block + explicit height so the border always paints inside a baseline grid
   (a 0-height <hr> grid item under align-items:baseline + row-gap swallows it). */
.p74ce-receipt-friendly .p74ce-recrule {
    grid-column:1 / -1; display:block; height:0; align-self:stretch;
    border:0; border-top:1.5px solid var(--p74c-line); margin:3px 0; padding:0;
}
.p74ce-receipt-friendly .p74ce-recrule--light { border-top:1px solid var(--p74c-line-2); }
/* TOTAL line reads heavier (readonly, persisted listing_total_cost) */
.p74ce-receipt-friendly .p74ce-recline--total .p74ce-reclabel,
.p74ce-receipt-friendly .p74ce-recline--total .p74ce-recfig { font-weight:700; font-size:14px; }

/* canonical listing_status chip mapping — light pills only (no dark chips on a
   card, owner rule #4). BOOKED = lime success accent; AVAILABLE = lime hollow;
   the rest are white + ink/muted hairline. A tiny leading dot carries the
   distinction so BOOKED vs AVAILABLE never read as the same chip. */
.p74c__st { display:inline-flex; align-items:center; gap:5px; padding:3px 9px; font-size:10px; font-weight:700; letter-spacing:0.05em; text-transform:uppercase; border:1px solid var(--p74c-line); background:var(--p74c-paper); color:var(--p74c-ink); }
.p74c__st::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; display:inline-block; flex:0 0 auto; }
.p74c__st--booked    { background:var(--p74c-lime); color:var(--p74c-ink); border-color:var(--p74c-ink); }
.p74c__st--available { background:var(--p74c-paper); color:var(--p74c-ink); border-color:var(--p74c-ink); }
.p74c__st--available::before { background:var(--p74c-lime-d); }
.p74c__st--requested { background:var(--p74c-paper); color:var(--p74c-ink); }
.p74c__st--proposed  { background:var(--p74c-paper); color:var(--p74c-muted); border-color:var(--p74c-line-2); }
.p74c__st--rejected  { background:var(--p74c-paper); color:var(--p74c-faint); border-color:var(--p74c-line-2); text-decoration:line-through; }
.p74c__st--rejected::before { background:var(--p74c-faint); }

/* ---- Ledger list (single hairline per row — NOT a bordered grid) ----------
   Owner rule #1: a calm list, ONE bottom hairline per REAL row. No vertical
   cell borders, no grey header fill, no zebra. The header sits under one
   hairline; rows divide with one faint hairline; hover = the faintest tint. */
.p74c__ledger { width:100%; border-collapse:collapse; background:var(--p74c-paper); font-size:13px; }
.p74c__ledger th, .p74c__ledger td { border:0; padding:12px 14px; text-align:left; vertical-align:middle; }
.p74c__ledger thead th { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:0.07em; background:var(--p74c-paper); color:var(--p74c-muted); white-space:nowrap; border-bottom:1px solid var(--p74c-line); }
.p74c__ledger tbody td { border-bottom:1px solid var(--p74c-line-2); }
.p74c__ledger tbody tr:hover { background:var(--p74c-soft); }
.p74c__ledger td.num { text-align:right; font-variant-numeric:tabular-nums; }
/* borderless inline-edit cell — the clean editing affordance (owner rule #2):
   sits flush on the paper, no box; on focus a lime underline + faint lime tint
   signals "editing", and .p74c__sink flashes on save. NEVER a bordered box. */
.p74c__cellinput { width:100%; min-height:30px; border:0; border-bottom:1px solid transparent; background:transparent; font-size:13px; padding:2px 2px; outline:none; text-transform:uppercase; letter-spacing:0.03em; transition:border-color .12s, background .12s; }
.p74c__cellinput:hover { border-bottom-color:var(--p74c-line-2); }
.p74c__cellinput:focus { border-bottom:1px solid var(--p74c-lime-d); background:rgba(233,255,117,.22); }
.p74c__ledger .p74c__cellinput { min-height:30px; }
.p74c__ledger tr.is-terminal { opacity:.55; }   /* rejected/canceled sunk rows */

/* ---- Ledger card grid (find-style) --------------------------------------- */
.p74c__grid { width:100%; display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid var(--p74c-line); border-left:1px solid var(--p74c-line); }
@media (max-width:900px){ .p74c__grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .p74c__grid { grid-template-columns:1fr; } }
.p74c__card { position:relative; display:flex; flex-direction:column; text-decoration:none; color:inherit; background:var(--p74c-paper); border-right:1px solid var(--p74c-line); border-bottom:1px solid var(--p74c-line); padding:0; }
.p74c__card-img { position:relative; aspect-ratio:528/309; background:var(--p74c-soft2); overflow:hidden; }
.p74c__card-img img { width:100%; height:100%; object-fit:cover; display:block; }
.p74c__card-body { padding:12px 14px 14px; display:flex; flex-direction:column; gap:6px; }
.p74c__card-name { font-size:15px; font-weight:700; text-transform:uppercase; letter-spacing:0.005em; line-height:1.25; color:var(--p74c-ink); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.p74c__card-meta { font-size:11px; color:var(--p74c-muted); text-transform:uppercase; letter-spacing:0.04em; display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.p74c__card:hover .p74c__card-name { color:#444; }
.p74c__card-tag { position:absolute; top:10px; left:10px; z-index:2; background:var(--p74c-ink); color:var(--p74c-paper); font-size:10px; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; padding:3px 8px; }

/* ---- Status lanes (editor smart view) ------------------------------------ */
.p74c__lanes { display:flex; flex-direction:column; gap:0; }
.p74c__lane { border:1px solid var(--p74c-line); border-bottom:0; }
.p74c__lane:last-child { border-bottom:1px solid var(--p74c-line); }
.p74c__lane > summary { list-style:none; cursor:pointer; display:flex; align-items:center; gap:10px; padding:10px 14px; background:var(--p74c-paper); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.06em; }
.p74c__lane > summary::-webkit-details-marker { display:none; }
.p74c__lane > summary::before { content:"+"; font-size:14px; line-height:1; width:14px; color:var(--p74c-ink); }
.p74c__lane[open] > summary::before { content:"\2212"; } /* minus */
/* booked lane header = lime accent strip (lime-bg + INK text), NOT a black bar
   (owner rule #4); the lane still reads as the "top" group via the lime fill */
.p74c__lane--booked > summary { background:var(--p74c-lime); color:var(--p74c-ink); }
.p74c__lane--terminal > summary { color:var(--p74c-faint); }
.p74c__lane-count { margin-left:auto; font-size:10px; opacity:.75; }

/* ---- Modal (favourites popup, confirmations) ----------------------------- */
.p74c__modal-bg { position:fixed; inset:0; background:rgba(0,0,0,.55); z-index:100000; display:none; align-items:center; justify-content:center; padding:20px; }
.p74c__modal-bg.is-open { display:flex; }
.p74c__modal { width:100%; max-width:440px; max-height:86vh; overflow:auto; background:var(--p74c-paper); border:1px solid var(--p74c-line); }
.p74c__modal-head { display:flex; align-items:center; gap:10px; padding:14px 16px; border-bottom:1px solid var(--p74c-line); }
.p74c__modal-title { font-family:var(--p74c-font-disp); font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:0.06em; }
.p74c__modal-x { margin-left:auto; appearance:none; border:0; background:transparent; cursor:pointer; width:28px; height:28px; font-size:18px; line-height:1; color:var(--p74c-ink); }
.p74c__modal-body { padding:0; }
.p74c__modal-foot { padding:12px 16px; border-top:1px solid var(--p74c-line); display:flex; gap:10px; }
/* ledger row inside the modal (existing-collections list) */
.p74c__lrow { display:flex; align-items:center; gap:10px; padding:11px 16px; border-bottom:1px solid var(--p74c-line); cursor:pointer; transition:background .12s; }
.p74c__lrow:hover { background:var(--p74c-lime); }
.p74c__lrow-name { flex:1; min-width:0; font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:0.03em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.p74c__lrow-meta { font-size:10px; color:var(--p74c-muted); }

/* ---- Helpers ------------------------------------------------------------- */
.p74c__row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.p74c__hairline { border:0; border-top:1px solid var(--p74c-line); margin:0; }
.p74c__empty { padding:48px 16px; text-align:center; color:var(--p74c-faint); font-size:13px; }
/* note = clean paper with a single lime accent rule on the left (no grey band,
   no 4-side box) — owner rules #1+#2 */
.p74c__note { padding:9px 14px; border:0; border-left:3px solid var(--p74c-lime-d); background:transparent; font-size:12px; color:var(--p74c-ink); }
.p74c__spin { display:inline-block; width:14px; height:14px; border:2px solid var(--p74c-ink); border-top-color:transparent; border-radius:50%; animation:p74cspin .7s linear infinite; }
@keyframes p74cspin { to { transform:rotate(360deg); } }
.p74c__sink { animation:p74csink .35s ease; }
@keyframes p74csink { from { background:#fff4d6; } to { background:transparent; } }

/* ===========================================================================
   WAVE-3 CORRECTED SHARED PRIMITIVES
   Kit-level helpers so every collection surface (editor / overview / checkout /
   member-respond / share) renders the SAME corrected language. Per-surface
   files position/scope these; the kit owns the look so they can't drift.
   =========================================================================== */

/* ---- Deal Card shell (editor flagship + member respond) ------------------
   ONE collection-listing = ONE card on a 3-zone grid split by AT MOST a single
   hairline. Content packs LEFT; the money receipt sits TIGHT in the right zone
   (capped width, never detached). Cards divide with ONE faint hairline. No
   grey fills, no inner box lattice, no double borders (owner rules #1+#5). */
.p74ce-card {
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 300px;
    gap:0;
    background:var(--p74c-paper);
    border-bottom:1px solid var(--p74c-line-2);
    padding:16px 18px 16px 0;
}
.p74ce-card:last-child { border-bottom:0; }
.p74ce-card.is-terminal { opacity:.55; }
.p74ce-card.is-terminal .p74ce-name { text-decoration:line-through; }

/* left gutter — order arrows + thumb + #id + delete, packed, borderless glyphs */
.p74ce-gutter { display:flex; flex-direction:column; align-items:center; gap:6px; padding-top:2px; }
.p74ce-thumb { width:44px; height:44px; object-fit:cover; display:block; background:var(--p74c-soft2); }
.p74ce-id { font-size:9.5px; color:var(--p74c-faint); letter-spacing:0.03em; }

/* identity zone — name + status grouped, address LEFT-packed directly under */
.p74ce-body { min-width:0; padding:0 20px; display:flex; flex-direction:column; gap:9px; }
.p74ce-idline { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.p74ce-name { font-family:var(--p74c-font-disp); font-size:15px; font-weight:700; text-transform:uppercase; letter-spacing:0.02em; color:var(--p74c-ink); line-height:1.1; text-decoration:none; }
.p74ce-name:hover { color:#444; }
.p74ce-addr { font-size:11px; color:var(--p74c-muted); text-transform:uppercase; letter-spacing:0.04em; text-align:left; margin-top:-4px; }
/* status select sits INLINE beside the name + chip (grouped identity), never
   pushed to the far right into dead space (owner rule #5). Clean underline
   control, never a boxed dropdown. */
.p74ce-status-cluster { display:inline-flex; align-items:center; gap:8px; }
.p74ce-status-cluster .p74c__select { width:auto; min-width:112px; min-height:30px; }

/* small square toggle chips (★Shortlist ●Booked) — light, inline under name */
.p74ce-toggles { display:inline-flex; gap:0; }
.p74ce-toggle { display:inline-flex; align-items:center; gap:6px; cursor:pointer; padding:5px 11px; border:1px solid var(--p74c-line); margin-left:-1px; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; color:var(--p74c-ink); background:var(--p74c-paper); user-select:none; }
.p74ce-toggle:first-child { margin-left:0; }
.p74ce-toggle.is-on { background:var(--p74c-lime); }
.p74ce-toggle input { position:absolute; opacity:0; pointer-events:none; }

/* BOOKING terms — grouped under the name, clean underline fields, no grey band */
.p74ce-booking { display:flex; align-items:flex-end; gap:18px; flex-wrap:wrap; }
.p74ce-term { display:flex; flex-direction:column; gap:3px; }
.p74ce-term-lbl { font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:0.07em; color:var(--p74c-faint); }
.p74ce-term .p74c__cellinput { min-width:54px; max-width:90px; min-height:26px; border-bottom:1px solid var(--p74c-line-2); }
.p74ce-booking-lbl { align-self:center; font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:0.08em; color:var(--p74c-ink); }

/* toolbar — universal buttons grouped into calm intent clusters split by a
   single thin hairline (owner rule #1+#3), never per-button boxes */
.p74ce-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; }
.p74ce-cluster { display:inline-flex; flex-wrap:wrap; gap:8px; align-items:center; }
.p74ce-cluster + .p74ce-cluster { padding-left:14px; border-left:1px solid var(--p74c-line-2); }

/* right zone = the TIGHT money receipt (capped width, beside the content) */
.p74ce-receiptzone { display:flex; flex-direction:column; gap:12px; align-items:flex-end; }

/* two outcome chips row — Client pays (lime) / Member earns (white+ink) */
.p74ce-outcomes { display:flex; flex-direction:column; gap:6px; width:100%; max-width:300px; margin-left:auto; }
.p74ce-outcome { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:6px 11px; border:1px solid var(--p74c-line); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; }
.p74ce-outcome--pays { background:var(--p74c-lime); color:var(--p74c-ink); }
.p74ce-outcome--earns { background:var(--p74c-paper); color:var(--p74c-ink); }
.p74ce-outcome b { font-variant-numeric:tabular-nums; }

/* ---- Collapsed Notes pattern (owner rule #6) -----------------------------
   One-line summary + "+ Notes" disclosure. The heavy editor only mounts when
   opened (per-surface JS lazy-inits it); collapsed by default — no giant
   always-open toolbar. */
.p74ce-notes { margin-top:2px; }
.p74ce-notes > summary { list-style:none; cursor:pointer; display:flex; align-items:center; gap:8px; font-size:11px; color:var(--p74c-muted); padding:4px 0; }
.p74ce-notes > summary::-webkit-details-marker { display:none; }
.p74ce-notes > summary::before { content:"+ NOTES"; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; color:var(--p74c-ink); flex:0 0 auto; }
.p74ce-notes[open] > summary::before { content:"\2212 NOTES"; }
.p74ce-notes-summary { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }
.p74ce-notes[open] .p74ce-notes-summary { display:none; }
.p74ce-notes-body { padding-top:8px; }

/* ---- mobile: stack the deal card -----------------------------------------*/
@media (max-width:720px){
    .p74ce-card { grid-template-columns:1fr; padding:16px; gap:14px; }
    .p74ce-body { padding:0; }
    .p74ce-receiptzone { align-items:stretch; }
    .p74ce-receipt-friendly, .p74ce-outcomes { max-width:none; margin-left:0; }
    .p74ce-gutter { flex-direction:row; gap:10px; align-items:center; }
}

/* ===========================================================================
   FINAL PUSH 2026-07-02 — SHARED KIT ADDITIONS (owner-approved DL)
   Everything below is NEW and additive; nothing above was repointed.
   Documented for surface agents in
   /home/erik/collections-revamp/push-2026-07-02/KIT_NOTES.md
   =========================================================================== */

/* ---- 1. Line utilities (the DL two-line vocabulary) ----------------------
   Border-top utilities, NOT <hr> — theme custom.css:9443 ships
   `hr{border-top:2px solid transparent !important}` which swallows any <hr>
   rule. Apply these classes to a div/section/td instead. !important so they
   also survive when someone DOES put them on an hr. Fallback values baked in
   so the utilities work even outside a .p74c token scope. */
.p74c-hairline { border-top:1px solid var(--p74c-hair, rgba(17,17,17,.14)) !important; }
.p74c-rule     { border-top:var(--p74c-rule, 2px solid #111) !important; }

/* ---- 2. Quiet fields (the "kill clutter" core) ----------------------------
   At rest an editable value reads like typography: transparent bg, no box,
   ONE hairline underneath. Hover darkens the hairline; focus = 1px ink box +
   2px lime outline ring on paper. Constant 1px border on all sides (transparent
   at rest) so focusing never shifts layout.
   WHY the !important spray AND the tripled class (specificity (0,4,0)):
     - custom.css:11542 `.pl_form .form-group .form-control` is (0,3,0) WITH
       !important on border/height (+47px height, 20px font, 23px padding).
       !important-vs-!important falls back to specificity, so the kit rule must
       carry (0,4,0) — `.p74c .p74c-quiet.p74c-quiet.p74c-quiet` — to win
       regardless of stylesheet order.
     - collections-editor.css `.p74ce-root .fields_list:not(.p74ce-card)
       .wishlisting_field_input` is (0,4,0) but NOT !important on the visual
       props → any kit !important beats it.
   Surface files load AFTER the kit, so a surface rule at (0,4,0)+ WITH
   !important (e.g. editor-md's boxed .p74ce-in / .p74cmd__recfig money boxes)
   still wins — intended: each surface owns its final look and removes its own
   boxes when it adopts the quiet language. */
.p74c .p74c-quiet.p74c-quiet.p74c-quiet {
    -webkit-appearance:none; appearance:none;
    background-color:transparent !important;
    background-image:none;
    border:1px solid transparent !important;
    border-bottom:1px solid var(--p74c-hair, rgba(17,17,17,.14)) !important;
    border-radius:0 !important;
    box-shadow:none !important;
    height:auto !important;
    min-height:34px;
    margin:0 !important;
    padding:4px 2px !important;
    font-family:var(--p74c-font);
    font-size:13px !important;
    line-height:1.4;
    color:var(--p74c-ink,#111);
    outline:none;
    transition:border-color .12s, background-color .12s;
}
.p74c .p74c-quiet::placeholder { color:var(--p74c-faint,#999); text-transform:none; letter-spacing:0; }
.p74c .p74c-quiet.p74c-quiet.p74c-quiet:hover:not(:focus) {
    border-bottom-color:var(--p74c-hair-hover, rgba(17,17,17,.4)) !important;
}
.p74c .p74c-quiet.p74c-quiet.p74c-quiet:focus {
    border-color:var(--p74c-ink,#111) !important;
    background-color:var(--p74c-paper,#fff) !important;
    outline:2px solid var(--p74c-lime,#E9FF75) !important;
    outline-offset:1px;
}
/* quiet select keeps a small chevron (background-image survives because the
   base rule only forces background-COLOR) */
.p74c select.p74c-quiet.p74c-quiet.p74c-quiet {
    cursor:pointer; padding-right:22px !important;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.5'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat:no-repeat; background-position:right 4px center;
}
.p74c textarea.p74c-quiet.p74c-quiet.p74c-quiet { min-height:64px; height:auto !important; resize:vertical; }
/* read-only variant — no hairline, plain text look. Auto-applies to
   [readonly]/[disabled] quiet fields too. (0,5,0) so the locks out-rank the
   (0,4,0) base hover/focus rules above. */
.p74c .p74c-quiet--ro.p74c-quiet--ro.p74c-quiet--ro.p74c-quiet--ro,
.p74c .p74c-quiet.p74c-quiet.p74c-quiet.p74c-quiet[readonly],
.p74c .p74c-quiet.p74c-quiet.p74c-quiet.p74c-quiet[disabled] {
    border-color:transparent !important;
    background-color:transparent !important;
    cursor:default;
}
.p74c .p74c-quiet--ro.p74c-quiet--ro.p74c-quiet--ro.p74c-quiet--ro:hover,
.p74c .p74c-quiet.p74c-quiet.p74c-quiet.p74c-quiet[readonly]:hover,
.p74c .p74c-quiet.p74c-quiet.p74c-quiet.p74c-quiet[disabled]:hover {
    border-color:transparent !important;
}
.p74c .p74c-quiet--ro.p74c-quiet--ro.p74c-quiet--ro.p74c-quiet--ro:focus,
.p74c .p74c-quiet.p74c-quiet.p74c-quiet.p74c-quiet[readonly]:focus,
.p74c .p74c-quiet.p74c-quiet.p74c-quiet.p74c-quiet[disabled]:focus {
    border-color:transparent !important;
    background-color:transparent !important;
    outline:none !important;
}

/* ---- 3. Status / cue chip family (XC-3: ONE chip system) ------------------
   Standalone inline chips for status + cues (Set price / Booked / Responded).
   They REBUILD the base .p74c__chip (filter-row) box model, so a chip can be a
   <span>, <a> or <button>. Later in source than the base rules on purpose —
   the modifiers + their hover locks win the cascade at equal specificity.
   No gold, no dark-fill chips: ink outline, lime fill + ink text, or muted. */
.p74c__chip--ink, .p74c__chip--lime, .p74c__chip--muted {
    display:inline-flex; align-items:center; gap:5px;
    padding:3px 10px; border:1px solid var(--p74c-ink,#111); border-radius:0;
    background:var(--p74c-paper,#fff); color:var(--p74c-ink,#111);
    font-size:10px; font-weight:700; letter-spacing:0.05em; text-transform:uppercase;
    line-height:1.3; white-space:nowrap; cursor:default; text-decoration:none;
}
.p74c__chip--lime  { background:var(--p74c-lime,#E9FF75); color:var(--p74c-ink,#111); }
.p74c__chip--muted { border-color:var(--p74c-hair, rgba(17,17,17,.14)); color:var(--p74c-muted,#777); }
/* hover locks — the base .p74c__chip:hover grey tint must not repaint these */
.p74c__chip--ink:hover   { background:var(--p74c-paper,#fff); }
.p74c__chip--lime:hover  { background:var(--p74c-lime,#E9FF75); }
.p74c__chip--muted:hover { background:var(--p74c-paper,#fff); }
/* interactive cue chip (e.g. "Set price" focusing its input): add this class */
.p74c__chip--click { cursor:pointer; }
.p74c__chip--click:hover { background:var(--p74c-lime,#E9FF75); color:var(--p74c-ink,#111); }

/* ---- 4. Button family: DL-name alias -------------------------------------
   DL names the lime CTA "--primary"; the kit's historical name is "--go".
   Both now work; computed styles identical (lime fill + INK text, ink outline
   default, borderless ghost, --sm scale — no gold, no black-fill+lime-text). */
.p74c__btn--primary { background:var(--p74c-lime); color:var(--p74c-btn-on-lime); }
.p74c__btn--primary:hover { background:var(--p74c-lime-d); color:var(--p74c-btn-on-lime); }

/* ---- 5. Scoped legacy resets (XC-1) — opt-in via .p74c-reset --------------
   Add .p74c-reset NEXT TO .p74c on a surface root to neutralize the five named
   legacy offenders inside that scope, then re-add YOUR one divider style per
   the DL. Exact per-offender rules + copy templates in KIT_NOTES.md.
   (a) account-table black frame — custom.css:11388
       `.page-template-template-account #dash_content table{border-…#000}` (1,1,1)
       + its `.table>thead>tr>th` companion. Kit ledger tables are excluded. */
.p74c-reset table:not(.p74c__ledger) { border:0 !important; }
.p74c-reset table:not(.p74c__ledger) > thead > tr > th { border:0 !important; }
/* (b) responsive-table cell borders incl. the td.co class typo the share
       reskin missed (SH-2) — custom-media.css:1123 gives EVERY
       `table.table_preview-pdf.responsive td/th` a 1px #000 top+bottom. */
.p74c-reset td.co, .p74c-reset th.co,
.p74c-reset table.table_preview-pdf.responsive tr:not(.no-items) td,
.p74c-reset table.table_preview-pdf.responsive tr:not(.no-items) th { border:0 !important; }
/* (c) bootstrap/theme .thumbnail frame (padding:4px + 1px #ddd box + radius +
       30px margin) — PU-8 */
.p74c-reset .thumbnail {
    padding:0 !important; border:0 !important; border-radius:0 !important;
    margin-bottom:0 !important; background:transparent !important; box-shadow:none !important;
}
/* (d) mobile font-boosting (XC-13) — also on .p74c itself, this covers nodes
       that sit in a reset scope without the .p74c class */
.p74c-reset { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
/* (e) UA default button chrome (the checkout step rail's 2px outset borders).
       NO !important on purpose: UA defaults lose to ANY author rule, so this
       kills the outset chrome while every deliberately styled button
       (incl. the kit family, excluded anyway) keeps its author styling. */
.p74c-reset button:not([class*="p74c__"]) {
    -webkit-appearance:none; appearance:none;
    border:0; border-radius:0; background:none; font:inherit; color:inherit;
}

/* ---- 6. Site-wide empty-snackbar guard (ED-3 / XC-6) ----------------------
   The super-progressive-web-apps offline indicator (register-sw.js) appends
   `<div class="snackbar"><p id="snackbar-msg"></p><button…>` to <body> on every
   page and "hides" it only by translateY(150%), so the empty black box paints
   at y≈1033 on every /account/ page (and in any tall render). It is SHOWN by
   adding `snackbar--show` to <body> (showSnackbar() sets the message first),
   so gating display on that class keeps the online/offline toast fully
   functional while the empty stub never paints. Kit CSS loads site-wide
   (popup dependency), so this one rule fixes all three audited surfaces. */
body:not(.snackbar--show) > .snackbar { display:none !important; }

/* ---- 7. select2 skin (XC-4) -----------------------------------------------
   Closed control inside .p74c scopes reads quiet (hairline underline, no box,
   no radius). The OPEN dropdown is body-appended (outside .p74c), so the kit
   JS tags it with .p74c-s2 on select2:open when the source select sits in a
   .p74c scope — only then does the skin apply (no site-wide leak). Ink/lime
   language: lime highlight + INK text (kills the default blue), quiet search. */
.p74c .select2-container--default .select2-selection--single,
.p74c .select2-container--default .select2-selection--multiple {
    border:0; border-bottom:1px solid var(--p74c-hair, rgba(17,17,17,.14));
    border-radius:0; background:transparent;
}
.p74c .select2-container--default.select2-container--focus .select2-selection--single,
.p74c .select2-container--default.select2-container--focus .select2-selection--multiple {
    border:0; border-bottom:1px solid var(--p74c-ink,#111); box-shadow:none;
}
.p74c .select2-container--default .select2-selection--single .select2-selection__rendered { color:var(--p74c-ink,#111); }
.p74c-s2 { font-family:'MaisonNeue-Book','Maison Neue','Helvetica Neue',system-ui,sans-serif; }
.p74c-s2 .select2-dropdown {
    border:1px solid var(--p74c-ink,#111); border-radius:0;
    background:var(--p74c-paper,#fff); box-shadow:none;
}
.p74c-s2 .select2-results__option { font-size:12.5px; color:var(--p74c-ink,#111); }
.p74c-s2 .select2-results__option--highlighted[aria-selected],
.p74c-s2 .select2-results__option--highlighted {
    background-color:var(--p74c-lime,#E9FF75) !important; color:var(--p74c-ink,#111) !important;
}
.p74c-s2 .select2-results__option[aria-selected=true] { background-color:#f7f7f5; color:var(--p74c-ink,#111); }
.p74c-s2 .select2-search--dropdown { padding:6px 8px; }
.p74c-s2 .select2-search--dropdown .select2-search__field {
    border:0; border-bottom:1px solid var(--p74c-hair, rgba(17,17,17,.14));
    border-radius:0; background:transparent; outline:none; padding:4px 2px;
}
.p74c-s2 .select2-search--dropdown .select2-search__field:focus {
    border-bottom-color:var(--p74c-ink,#111);
}

/* ---- 8. TinyMCE chrome flattened (XC-4) -----------------------------------
   wp_editor() instances inside .p74c scopes: hairlines on paper, no WP grays,
   quiet Visual/Text tabs. Pure chrome — never touches editor init/content. */
.p74c .wp-editor-wrap { border:0; }
.p74c .wp-editor-container { border:1px solid var(--p74c-hair, rgba(17,17,17,.14)); border-radius:0; background:var(--p74c-paper,#fff); box-shadow:none; }
.p74c .wp-editor-wrap .mce-tinymce,
.p74c .wp-editor-wrap .mce-panel,
.p74c .wp-editor-wrap .mce-toolbar-grp,
.p74c .wp-editor-wrap .mce-statusbar,
.p74c .wp-editor-wrap .mce-edit-area { border-color:var(--p74c-hair, rgba(17,17,17,.14)); background:var(--p74c-paper,#fff); background-image:none; box-shadow:none; }
.p74c .wp-editor-wrap .mce-toolbar-grp { border-bottom:1px solid var(--p74c-hair, rgba(17,17,17,.14)); }
.p74c .wp-editor-wrap .mce-statusbar { border-top:1px solid var(--p74c-hair, rgba(17,17,17,.14)); }
.p74c .wp-editor-wrap .mce-btn { background:transparent; border:1px solid transparent; border-radius:0; box-shadow:none; }
.p74c .wp-editor-wrap .mce-btn:hover, .p74c .wp-editor-wrap .mce-btn:focus { background:#f7f7f5; border-color:var(--p74c-hair, rgba(17,17,17,.14)); }
.p74c .wp-editor-wrap .mce-btn.mce-active { background:var(--p74c-lime,#E9FF75); border-color:var(--p74c-ink,#111); }
.p74c .wp-editor-tools { background:transparent; }
.p74c .wp-editor-tabs { border:0; }
.p74c .wp-editor-tabs .wp-switch-editor {
    background:transparent; border:1px solid transparent; border-radius:0;
    color:var(--p74c-muted,#777); font-size:10px; font-weight:700;
    text-transform:uppercase; letter-spacing:0.05em; margin:0; top:0;
}
.p74c .html-active .wp-editor-tabs .switch-html,
.p74c .tmce-active .wp-editor-tabs .switch-tmce {
    background:var(--p74c-paper,#fff); border:1px solid var(--p74c-hair, rgba(17,17,17,.14));
    border-bottom-color:var(--p74c-paper,#fff); color:var(--p74c-ink,#111);
}
.p74c .quicktags-toolbar { background:var(--p74c-paper,#fff); border-bottom:1px solid var(--p74c-hair, rgba(17,17,17,.14)); }
.p74c .quicktags-toolbar .ed_button { background:transparent; border:1px solid var(--p74c-hair, rgba(17,17,17,.14)); border-radius:0; box-shadow:none; color:var(--p74c-ink,#111); }
