/* par4OS by AI Ops Foundry — restrained greens and warm neutrals. Loaded after app.css. Brand tokens apply only under html.brand-par4 (golf businesses); par4 view classes are only used by golf views.
   Contrast targets: body text >= 7:1, secondary text >= 4.5:1, accent text >= 4.5:1 on its surface (checked in docs/par4os). */
html.brand-par4{
  --bg:#0f1511; --bg2:#121a15; --surface:#172019; --surface2:#1c271f; --line:#27352b; --line2:#34473a;
  --text:#eef0e8; --muted:#aab5a7; --faint:#9aa597;
  --cyan:#8fd0a2; --blue:#a9d2b4; --purple:#d8bd93; --green:#8fd0a2; --amber:#e6bd6e; --red:#f09a8b;
  --grad:linear-gradient(135deg,#b4e0bf 0%,#8fd0a2 60%,#c9d9a8 100%);
  --label:#d6ddd1; --navtext:#c8d1c4; --strong:#fbfcf7; --hover-bg:#203026; --hover-bd:#42604d;
  --fg-cyan:#c4e8cf; --fg-blue:#d2e9d9; --fg-purple:#efdfc4; --fg-green:#c4e8cf; --fg-red:#f8c6bd; --fg-amber:#f2d9a2; --ai:#efdfc4;
  --overlay:rgba(5,9,6,.66); --topbar:rgba(15,21,17,.94); --toast-bg:#183022; --toast-bad:#33191a; --glass:rgba(23,32,25,.7); --rec1:#1a261d; --rec2:#172019;
}
html.brand-par4[data-theme="light"]{
  --bg:#f7f5ef; --bg2:#efebe1; --surface:#fffefa; --surface2:#f6f3eb; --line:#e3ddcf; --line2:#cdc5b2;
  --text:#18221b; --muted:#4b564c; --faint:#59645a;
  --cyan:#2a6542; --blue:#2f5c45; --purple:#74552a; --green:#2a6542; --amber:#84560f; --red:#ac2a20;
  --grad:linear-gradient(135deg,#2f6f48 0%,#24563a 100%);
  --label:#2f3b31; --navtext:#2f3b31; --strong:#121a14; --hover-bg:#edf1e8; --hover-bd:#b6c3b0;
  --fg-cyan:#2a6542; --fg-blue:#2f5c45; --fg-purple:#674a21; --fg-green:#2a6542; --fg-red:#9f241b; --fg-amber:#7a4f0e; --ai:#674a21;
  --overlay:rgba(24,34,27,.40); --topbar:rgba(255,254,250,.94); --toast-bg:#eef6ef; --toast-bad:#fbefed; --glass:rgba(255,254,250,.8); --rec1:#fffefa; --rec2:#f4f1e8;
}
html.brand-par4 .btn.primary{color:#0c1a10}
html.brand-par4[data-theme="light"] .btn.primary{color:#fff}

/* wordmark: typographic, no invented logo; the small mark is a plain flag-on-green tile */
.p4-mark{width:30px;height:30px;flex:none;border-radius:9px;background:#2a6542 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M12 7v16' stroke='%23fffefa' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M12.6 7.4l7.4 3-7.4 3z' fill='%23e6c98f'/%3E%3Cellipse cx='14' cy='23.2' rx='5' ry='1.4' fill='%23fffefa' opacity='.55'/%3E%3C/svg%3E") center/100% no-repeat;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
html.brand-par4 .wordmark{letter-spacing:-.01em}
html.brand-par4 .wordmark .os{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--cyan)}
html.brand-par4 .auth-art h1 span{background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--cyan)!important}
.p4-also{color:var(--muted);font-size:13px;margin-top:18px}

/* summary strip: counts that link to the work, not decorative charts */
.p4-sum{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px}
.p4-sum a{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);text-decoration:none;min-height:72px}
.p4-sum a:hover{border-color:var(--hover-bd);background:var(--hover-bg)}
.p4-sum b{font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}
.p4-sum span{font-size:12.5px;color:var(--muted)}
.p4-sum a.warn{border-color:color-mix(in srgb,var(--amber) 55%,var(--line))}
@media (max-width:1100px){.p4-sum{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.p4-sum{grid-template-columns:repeat(2,minmax(0,1fr))}}
.p4-grid{margin-bottom:16px;align-items:start}
.p4-card + .p4-card{margin-top:0}
.p4-banner{border:1px solid var(--line2);border-left:4px solid var(--cyan);border-radius:10px;padding:10px 14px;margin:0 0 14px;background:var(--surface);font-size:14px}
.p4-banner.bad{border-left-color:var(--red)}
.p4-banner.ok{border-left-color:var(--green)}
.p4-list{list-style:none;margin:0;padding:0}
.p4-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.p4-list li:first-child{border-top:0}
.p4-list li.on{background:var(--hover-bg);margin:0 -10px;padding:10px;border-radius:8px}
.p4-list small,.p4-ledger small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
.p4-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:0}
.p4-kv div{display:flex;flex-direction:column}
.p4-kv dt{font-size:12.5px;color:var(--muted)}
.p4-kv dd{margin:0;font-weight:700;font-size:17px;font-variant-numeric:tabular-nums}
.p4-fine{font-size:12.5px;color:var(--muted);margin:8px 0}
.p4-h3{font-size:14px;margin:18px 0 6px}
.p4-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.p4-form{display:grid;gap:10px}
.p4-form fieldset{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:0;display:grid;gap:6px}
.p4-form legend{font-size:13px;color:var(--label);padding:0 4px}
.p4-inline{margin-top:6px}
.p4-det{margin-top:10px}
.p4-det summary{cursor:pointer;color:var(--cyan);font-weight:600;font-size:14px}
.p4-det[open] summary{margin-bottom:8px}
.p4-pre{white-space:pre-wrap;font:13px/1.5 var(--font);background:var(--surface2);border:1px solid var(--line);border-radius:8px;padding:10px;margin:6px 0 0}
.p4-num{width:84px}
.p4-ledger{list-style:none;margin:0;padding:0;border-left:2px solid var(--line2)}
.p4-ledger li{display:flex;justify-content:space-between;gap:10px;padding:8px 0 8px 14px;position:relative}
.p4-ledger li::before{content:"";position:absolute;left:-5px;top:14px;width:8px;height:8px;border-radius:50%;background:var(--cyan)}
.p4-cands{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.p4-cands>li{border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.p4-cands>li.ok{border-color:color-mix(in srgb,var(--green) 45%,var(--line))}
.p4-x{display:inline-block;width:16px}
.p4-checks{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:3px;font-size:13px}
.p4-checks li{padding-left:22px;position:relative}
.p4-checks li::before{position:absolute;left:0;top:0;font-weight:800}
.p4-checks li.ok::before{content:"✓";color:var(--green)}
.p4-checks li.no::before{content:"✕";color:var(--red)}
.p4-checks small{color:var(--muted)}
.p4-steps{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.p4-steps a{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:10px;color:var(--text);text-decoration:none}
.p4-steps a:hover{background:var(--hover-bg)}
.p4-steps small{display:block;color:var(--muted);font-size:12.5px}
.p4-tick{width:18px;height:18px;border-radius:50%;border:2px solid var(--line2);flex:none;margin-top:2px}
.p4-steps li.ok .p4-tick{background:var(--green);border-color:var(--green)}
.p4-caveats{margin:12px 0 0;padding-left:18px;color:var(--muted);font-size:12.5px}
.p4-lesson h2{flex-wrap:wrap}
.linkbtn{background:none;border:0;padding:0;color:var(--cyan);font-weight:600;cursor:pointer;text-align:left}
.linkbtn:hover{text-decoration:underline}

/* public offer page and student panel (booking theme) */
.p4-offer .bk-card{max-width:560px;margin:32px auto}
.p4-offer h1{margin:4px 0 14px}
.p4-offer .p4-kv dd{font-size:15px}
.p4-preview{border:1px dashed #74552a;background:#fbf3e4;color:#4a3518;border-radius:10px;padding:10px 12px;font-size:13.5px}
.bkp .p4-list li{border-color:var(--bd,#e5e5e5)}
.bkp .p4-list small,.bkp .p4-kv dt{color:var(--ink3,#5f5f5f)}
@media (max-width:720px){.p4-kv{grid-template-columns:1fr}.p4-list li{flex-wrap:wrap}.p4-acts{justify-content:flex-start}}
/* compact eligibility checks (override generic list styling) */
.p4-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}
.p4-checks li{border:0!important;background:none!important;box-shadow:none!important;border-radius:0!important;margin:0!important;padding:2px 0 2px 20px!important;font-size:12.5px;line-height:1.35}
.p4-checks li small{display:block}
.p4-cands>li{padding:10px 12px 12px}
@media (max-width:720px){.p4-checks{grid-template-columns:1fr}}


/* golf brand: accent tints that app.css draws in pTinksOS cyan/purple (scoped so other industries keep pTinksOS) */
html.brand-par4 input:focus,html.brand-par4 select:focus,html.brand-par4 textarea:focus{border-color:var(--cyan);outline:none;box-shadow:0 0 0 3px rgba(124,196,147,.18)}
html.brand-par4 nav.menu a.active{background:linear-gradient(90deg,rgba(124,196,147,.16),rgba(156,200,168,.08));color:var(--strong);box-shadow:inset 2px 0 0 var(--cyan)}
html.brand-par4 .kpi.accent{background:linear-gradient(160deg,rgba(124,196,147,.12),rgba(210,180,140,.12)),var(--surface);border-color:var(--line2)}
html.brand-par4 .pill.new{color:var(--fg-cyan);border-color:rgba(124,196,147,.4);background:rgba(124,196,147,.08)}
html.brand-par4 .pill.contacted{color:var(--fg-blue);border-color:rgba(156,200,168,.45);background:rgba(156,200,168,.1)}
html.brand-par4 .pill.qualified{color:var(--fg-purple);border-color:rgba(210,180,140,.45);background:rgba(210,180,140,.1)}
html.brand-par4 .pill.ai{color:var(--fg-purple);border-color:rgba(210,180,140,.5)}
html.brand-par4 .draft{background:linear-gradient(160deg,rgba(210,180,140,.08),rgba(124,196,147,.05)),var(--surface);border:1px solid var(--line2);border-radius:12px;padding:14px}
html.brand-par4 .toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--toast-bg);border:1px solid rgba(124,196,147,.45);color:var(--fg-cyan);padding:10px 16px;border-radius:10px;z-index:60;font-size:14px;box-shadow:0 10px 40px rgba(0,0,0,.4)}
html.brand-par4 .note{font-size:13px;color:var(--muted);border-left:3px solid var(--purple);padding:8px 12px;background:rgba(210,180,140,.06);border-radius:0 10px 10px 0}
html.brand-par4 .public{min-height:100vh;display:grid;place-items:center;padding:30px 18px;background:radial-gradient(800px 500px at 0% 0%,rgba(124,196,147,.12),transparent 60%),radial-gradient(800px 500px at 100% 100%,rgba(210,180,140,.14),transparent 60%),var(--bg)}
html.brand-par4 .method:has(input:checked){border-color:var(--cyan);background:rgba(124,196,147,.08)}
html.brand-par4 .ai-box{border:1px dashed var(--line2);border-radius:var(--r-sm);padding:12px 14px;margin:6px 0 14px;background:rgba(210,180,140,.05)}
html.brand-par4 .plan.rec{border-color:var(--cyan);box-shadow:0 0 0 1px rgba(124,196,147,.35),0 14px 40px -18px rgba(124,196,147,.45)}
html.brand-par4 .chip.on{background:rgba(124,196,147,.12);border-color:rgba(124,196,147,.45);color:var(--fg-cyan)}
html.brand-par4 .imp-tile:hover{border-color:rgba(124,196,147,.45)}
html.brand-par4 .imp-tile.on{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(124,196,147,.15)}
html.brand-par4 .imp-drop.over{border-color:var(--cyan);background:rgba(124,196,147,.06)}
html.brand-par4 .pz-current{border:1px solid var(--line2);border-radius:var(--r);padding:16px 18px;background:radial-gradient(120% 140% at 100% 0%,rgba(210,180,140,.16),transparent 55%),radial-gradient(120% 140% at 0% 100%,rgba(124,196,147,.12),transparent 55%),var(--surface);display:grid;gap:2px;align-content:center}
html.brand-par4 .pz-offer{display:flex;gap:12px;align-items:center;border-radius:var(--r);padding:12px 16px;margin-bottom:18px;background:linear-gradient(90deg,rgba(124,196,147,.14),rgba(156,200,168,.1) 50%,rgba(210,180,140,.16));border:1px solid rgba(124,196,147,.32)}
html.brand-par4 .pz-card.rec{border:1px solid transparent;background:linear-gradient(180deg,var(--rec1),var(--rec2)) padding-box,var(--grad) border-box;box-shadow:0 24px 60px -28px rgba(156,200,168,.55)}
html.brand-par4 .pz-cmp .rec{background:rgba(156,200,168,.07)}
html.brand-par4 .ic-opt.on{border-color:var(--cyan);box-shadow:0 0 0 2px rgba(124,196,147,.35)}
html.brand-par4 .chip[aria-pressed="true"]{border-color:var(--cyan);background:rgba(124,196,147,.14);color:var(--fg-cyan)}
html.brand-par4 .dp-next{display:grid;gap:2px;margin:14px 0 6px;padding:12px 14px;border-radius:12px;border:1px solid rgba(124,196,147,.45);background:rgba(124,196,147,.08)}
html.brand-par4 .auth-art{background:radial-gradient(900px 500px at 10% 0%,rgba(124,196,147,.18),transparent 60%),radial-gradient(800px 600px at 90% 100%,rgba(210,180,140,.22),transparent 60%),var(--bg2)}
