:root{font:15px/1.55 Inter,ui-sans-serif,system-ui;color:#17231d;background:#f3f5f1;--ink:#17231d;--green:#294d3d;--lime:#d6f36a;--line:#dce2da}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{border:0;border-radius:10px;padding:.72rem 1rem;background:var(--green);color:white;font-weight:700;cursor:pointer}button.secondary{background:#eef1ed;color:var(--ink)}button.danger{background:#fff0ef;color:#9b2821}.auth{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,#dff1d8,transparent 35%),#f7f8f5}.authcard{width:min(460px,100%);background:white;padding:44px;border-radius:24px;box-shadow:0 25px 70px #19382818}.logo{font-size:40px;font-weight:900;color:var(--green)}h1,h2{line-height:1.1;margin:.3rem 0 1rem}h1{font-size:2.2rem}h2{font-size:1.8rem}.eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.15em;color:#638072}.auth form,.panel{display:grid;gap:16px;margin:28px 0}.auth label,.panel label{display:grid;gap:6px;font-weight:650}.auth label span{font-weight:400;color:#78817c}input,textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:.8rem;background:white;color:var(--ink)}#shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}aside{position:sticky;top:0;height:100vh;background:#17392d;color:white;padding:24px 16px;display:flex;flex-direction:column}.brand{font-size:1.1rem;font-weight:800;padding:6px 10px 26px}.brand b{font-size:1.8rem;color:var(--lime)}.brand span{font-size:.6rem;background:#ffffff1a;padding:4px 7px;border-radius:20px;margin-left:6px}nav{display:grid;gap:4px}nav button{background:transparent;text-align:left;color:#d8e4dd;font-weight:550;padding:.65rem .8rem}nav button:hover,nav button.active{background:#ffffff12;color:white}.account{margin-top:auto;border-top:1px solid #ffffff20;padding:18px 8px;display:grid;gap:10px;font-size:.78rem}.account button{background:#ffffff12}main{padding:28px 38px;max-width:1300px;width:100%;margin:0 auto;align-self:start}main>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.pill{background:#e4eadf;padding:7px 12px;border-radius:30px;font-size:.75rem}.view{animation:fade .25s ease}.hero{min-height:250px;border-radius:24px;padding:40px;display:flex;align-items:end;background:linear-gradient(115deg,#183e30 0 54%,#bad77d 54% 72%,#e8efdb 72%);color:white}.hero>div{max-width:520px}.hero h2{font-size:2.5rem}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0}.stats article,.panel,.empty,.list article{background:white;border:1px solid var(--line);border-radius:16px;padding:22px}.stats small{display:block;color:#66746d}.stats strong{font-size:1.8rem}.notice{border:1px solid #e6ddb6;background:#fffbea;border-radius:12px;padding:14px}.list{display:grid;gap:10px}.list article{display:flex;justify-content:space-between}.list span{color:#65736c}.actions{max-width:520px}.actions button{width:100%}#toast{position:fixed;right:24px;bottom:24px;background:#17231d;color:white;padding:12px 18px;border-radius:10px;opacity:0;transform:translateY(8px);transition:.2s}#toast.show{opacity:1;transform:none}@keyframes fade{from{opacity:.5;transform:translateY(4px)}}@media(max-width:800px){#shell{display:block}aside{position:static;height:auto}nav{grid-template-columns:repeat(2,1fr)}.account{display:flex;justify-content:space-between}main{padding:22px 16px}.stats{grid-template-columns:repeat(2,1fr)}.hero{background:linear-gradient(135deg,#183e30,#4a765e);padding:26px}.hero h2{font-size:2rem}}@media(max-width:480px){.authcard{padding:28px 22px}.stats{grid-template-columns:1fr}nav{grid-template-columns:1fr 1fr;font-size:.8rem}main>header{align-items:start}.pill{display:none}}
[hidden]{display:none!important}
.auth label.check{display:flex;align-items:center;gap:8px;font-weight:400;margin-top:-8px}.auth label.check input{width:auto}.hint{font-size:.85rem;color:#66746d}
.linkbtn{background:none;color:var(--green);padding:0;font-weight:700;text-decoration:underline}
.importresult{border:1px solid var(--line);border-radius:12px;padding:14px;font-size:.9rem}.importresult table{border-collapse:collapse;width:100%}.importresult td{padding:4px 8px;border-bottom:1px solid var(--line)}.importresult .bad{color:#9b2821}.importresult .good{color:var(--green)}
.cyc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0}.cyc-grid h3{grid-column:1/-1;margin:.6rem 0 0}.cyc-grid label{display:grid;gap:4px;font-weight:600;font-size:.88rem}select{border:1px solid var(--line);border-radius:10px;padding:.7rem;background:white;font:inherit}.cyc-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}.cyc-inline input{flex:1;min-width:160px}.cyc-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.state{font-size:.72rem;font-weight:800;letter-spacing:.06em;padding:3px 8px;border-radius:20px;background:#eef1ed}.state.APPLIED{background:#dff1d8}.state.NEEDS_INPUT,.state.AWAITING_APPROVAL,.state.UNKNOWN{background:#fff3cd}.state.FAILED,.state.REJECTED{background:#fdecea}.list article{cursor:pointer;gap:10px;align-items:center}.list article.static{cursor:default}.cyc-table{width:100%;border-collapse:collapse;font-size:.86rem}.cyc-table td,.cyc-table th{border-bottom:1px solid var(--line);padding:6px;text-align:left;vertical-align:top}.res-pass{color:#2a6b3a}.res-fail{color:#9b2821}.res-gap,.res-unknown{color:#8a6d00}.unresolved input,.unresolved select{border-color:#e0b100}details.panel summary{cursor:pointer}.cyc-trail{font-size:.82rem;max-height:320px;overflow:auto}.cyc-trail li{margin:3px 0}.chip{display:inline-block;background:#eef1ed;border-radius:14px;padding:3px 9px;margin:2px;font-size:.8rem}
.chip.warn{background:#fff4e5;color:#8a4b00;border-color:#f0c78a}
.suggestion{display:block;margin-top:4px;font-size:.9em}
.attribution{display:inline-block;min-width:116px;min-height:23px;line-height:23px;font-weight:600}
.lvl-hands_on{color:#1b7a3d}.lvl-coordination,.lvl-oversight{color:#2d5f9a}.lvl-familiarity,.lvl-exposure{color:#8a6d00}.lvl-unsupported{color:#a12d2d}
label.inline{display:inline-flex;gap:4px;align-items:center}
#cycSourceForm,#cycSearchForm,#cycSearchNote,#cycSources{grid-column:1/-1}
#cycSearchForm input[name=query]{flex:2 1 220px}
.steps{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 12px}.steps li{background:#eef1ed;border-radius:20px;padding:6px 12px;font-size:.88rem}.steps li.current{background:var(--green,#123d2c);color:#fff}.steps li.current .linkbtn{color:#fff}.steps li.done{background:#dff1d8}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
a.button{display:inline-block;text-decoration:none;border-radius:10px;padding:.6rem .9rem;font-weight:700;font-size:.9rem;background:var(--green,#123d2c);color:#fff}a.button.secondary{background:#eef1ed;color:inherit}
.chip.ok{background:#dff1d8}.chip.status-CUSTOMER_CONFIRMED{background:#dff1d8}.chip.status-REJECTED{background:#fdecea}.chip.status-EXTRACTED,.chip.status-NEEDS_REVIEW{background:#fff3cd}.chip.app-applied{background:#dff1d8}.chip.app-in_progress,.chip.app-needs_follow_up{background:#fff3cd}
.claim.REJECTED b{text-decoration:line-through;opacity:.7}
.opp{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}.cyc-actions.vertical{flex-direction:column;align-items:stretch;min-width:170px}
.applybox{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding:10px;border:1px dashed var(--line);border-radius:10px}.applybox p{flex-basis:100%;margin:0}
.tablewrap{overflow-x:auto}label.stack{display:grid;gap:4px;font-weight:600;margin:8px 0}.loading::after{content:'';display:inline-block;width:10px;height:10px;margin-left:6px;border:2px solid #9bb3a6;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:760px){.opp{grid-template-columns:1fr}.cyc-actions.vertical{flex-direction:row;flex-wrap:wrap}}
.list article.opp{display:block}.opp .cyc-actions.vertical{flex-direction:row;flex-wrap:wrap;align-items:center;min-width:0;margin-top:12px}
a.button{padding:.72rem 1rem;font-size:1rem;line-height:1.2}

select{max-width:100%;min-width:0}.panel select,.cyc-grid select{width:100%}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.abq{align-items:flex-start}.abq>div:first-child{flex:1;min-width:0;display:grid;gap:6px}.abq textarea,.abq input:not([type=checkbox]):not([type=radio]),.abq select{width:100%}
.abmulti{display:flex;flex-wrap:wrap;gap:6px 14px}.abmulti label.inline{font-weight:500}
.abready h3{margin:0 0 8px}.absections{list-style:none;padding:0;margin:0 0 8px;display:grid;gap:4px}.absections li.done{color:#2a6b3a}
.abgroup{display:grid;gap:10px;margin-bottom:18px}.abgroup h3{margin:.4rem 0 0}.abrow>div:first-child{flex:1;min-width:0}
.notice.ok{border-color:#b9dcb0;background:#eef8ea}.abstage{display:grid;gap:10px}
@media(max-width:800px){.abq,.abrow{flex-direction:column}.abq .cyc-actions.vertical,.abrow .cyc-actions.vertical{flex-direction:row;flex-wrap:wrap}}
.abmulti label.inline,.abq label.inline{display:inline-flex;align-items:center;gap:8px;font-weight:500}.abmulti input,.abq label.inline input{width:auto}
.abstage>article{background:white;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;justify-content:space-between;gap:10px}
.chip.cls-qualified,.chip.cls-credible_pivot{background:#dff1d8}.chip.cls-borderline,.chip.cls-low_confidence,.chip.cls-scoring_failed{background:#fff3cd}.chip.cls-hard_disqualified{background:#fdecea}

/* Automation screen */
.auto-status{padding:8px 10px;border-radius:6px;background:#eef3f8}.auto-status.ok{background:#dff1d8}.auto-status.warn{background:#fff4e5;color:#8a4b00}
.auto-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.auto-stats .hint{display:block}
.auto-modes,#autoRules fieldset{border:1px solid #d9dee5;border-radius:8px;padding:8px 12px;display:flex;flex-wrap:wrap;gap:8px 16px}
.auto-mode{display:flex;gap:8px;align-items:flex-start;flex:1 1 220px}.auto-mode .hint{display:block}
.auto-consent{align-items:flex-start;max-width:60ch}.auto-recent li{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.auto-modes label.auto-mode{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px;font-weight:400}
.auto-mode input,#autoForm fieldset label.inline input,.auto-consent input{width:auto;flex:none;min-width:0;margin-top:3px}
#autoForm fieldset label.inline{display:inline-flex;align-items:center;gap:6px;font-weight:500}
.auto-consent{display:flex;gap:10px;font-weight:500}

.verify-frame{display:block;max-width:100%;border:1px solid #ccd;border-radius:6px;cursor:crosshair;margin:.5rem 0}

/* V1.9: fields keep their natural height (labels stay attached); checkboxes don't stretch; discovery button always reachable */
.cyc-grid{align-items:start}.cyc-grid label{align-content:start}.cyc-inline input[type=checkbox],.cyc-inline label.inline input{flex:none;min-width:0;width:auto}.cyc-inline label.inline{display:inline-flex;align-items:center;gap:6px;font-weight:500}
.cyc-fab{position:fixed;right:24px;bottom:24px;z-index:5;box-shadow:0 8px 24px #17392d40}#toast{bottom:84px}

.brand{display:flex;align-items:center;gap:8px}.brand-mark{flex:none;border-radius:7px}

/* ===== BuoyApply brand: Ink & Volt (from RJA Growth's tokens.css + app-rebrand.css, 2026-10-31) ===== */
/* RJA OS Brand Tokens v1 — Ink & Volt (light-forward)
   Site + app can import this file.
   Draft for Zellie / Claude review — not deployed. */

:root {
  /* Surfaces */
  --rja-bg: #FAF7F0;           /* warm paper page background */
  --rja-surface: #FFFFFF;      /* cards, panels, inputs */
  --rja-surface-2: #F3EEE4;    /* secondary surface / zebra */

  /* Ink (softened charcoal — not night-mode #111) */
  --rja-ink: #1F1F23;          /* primary text + select bold blocks */
  --rja-ink-soft: #2A2A30;     /* elevated dark blocks / sidebar */

  /* Text */
  --rja-text: #1F1F23;
  --rja-muted: #5C5C66;        /* secondary text — AA on paper */

  /* Accent — Volt gold */
  --rja-accent: #F5B942;
  --rja-accent-hover: #E5A82E;
  --rja-accent-soft: #FFD666;

  /* Lines / focus */
  --rja-border: #E4DDD0;
  --rja-focus: #C98A12;

  /* Functional (app UI) */
  --rja-success: #1B7A4A;
  --rja-success-bg: #E8F6EE;
  --rja-warn: #B45309;
  --rja-warn-bg: #FFF7ED;
  --rja-error: #B42318;
  --rja-error-bg: #FEF3F2;
  --rja-info: #1D4ED8;
  --rja-info-bg: #EFF6FF;

  /* On-ink (text on dark blocks) */
  --rja-on-ink: #FAF7F0;
  --rja-on-accent: #1F1F23;

  /* Radius / shadow */
  --rja-radius: 14px;
  --rja-radius-lg: 20px;
  --rja-shadow: 0 18px 50px rgba(31, 31, 35, 0.08);

  /* Type */
  --rja-font-sans: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
  --rja-font-display: "Fraunces", Georgia, "Times New Roman", serif;
}

/* App restyle mockup — overrides app-styles.css using brand tokens.
   Does not invent features. Draft only. */


:root {
  font: 15px/1.55 var(--rja-font-sans);
  color: var(--rja-text);
  background: var(--rja-bg);
  --ink: var(--rja-ink);
  --green: var(--rja-ink-soft);
  --lime: var(--rja-accent);
  --line: var(--rja-border);
}

body { background: var(--rja-bg); color: var(--rja-text); }

button {
  border-radius: 10px;
  background: var(--rja-ink);
  color: var(--rja-on-ink);
  font-weight: 700;
}
button.secondary { background: var(--rja-surface-2); color: var(--rja-ink); }
button.danger { background: var(--rja-error-bg); color: var(--rja-error); }

.auth {
  background:
    radial-gradient(circle at 20% 10%, rgba(245,185,66,.28), transparent 40%),
    var(--rja-bg);
}
.authcard {
  background: var(--rja-surface);
  box-shadow: var(--rja-shadow);
  border: 1px solid var(--rja-border);
}
.logo { color: var(--rja-accent); }
.eyebrow { color: var(--rja-muted); }

input, textarea {
  border: 1px solid var(--rja-border);
  background: var(--rja-surface);
  color: var(--rja-text);
  border-radius: 10px;
}
input:focus, textarea:focus {
  outline: 3px solid var(--rja-accent-soft);
  outline-offset: 1px;
  border-color: var(--rja-focus);
}

#shell { background: var(--rja-bg); }
aside {
  background: var(--rja-ink-soft);
  color: var(--rja-on-ink);
}
.brand b { color: var(--rja-accent); }
.brand span { background: rgba(245,185,66,.18); color: var(--rja-accent-soft); }
nav button { color: rgba(250,247,240,.78); }
nav button:hover, nav button.active {
  background: rgba(245,185,66,.14);
  color: var(--rja-accent-soft);
}
.account { border-top-color: rgba(255,255,255,.14); }
.account button { background: rgba(255,255,255,.1); color: var(--rja-on-ink); }

main { color: var(--rja-text); }
.pill { background: var(--rja-surface-2); color: var(--rja-muted); }

.hero {
  background: linear-gradient(115deg, var(--rja-ink-soft) 0 54%, var(--rja-accent) 54% 72%, var(--rja-surface-2) 72%);
  color: var(--rja-on-ink);
}
.hero h2 { color: #fff; }

.stats article, .panel, .empty, .list article {
  background: var(--rja-surface);
  border: 1px solid var(--rja-border);
  border-radius: 16px;
}
.stats small { color: var(--rja-muted); }
.stats strong { color: var(--rja-ink); }

.notice {
  border: 1px solid #E6D08A;
  background: var(--rja-warn-bg);
  color: var(--rja-warn);
}

.list span { color: var(--rja-muted); }
.linkbtn { color: var(--rja-focus); }
.hint { color: var(--rja-muted); }

#toast { background: var(--rja-ink); color: var(--rja-on-ink); }

@media (max-width: 800px) {
  .hero {
    background: linear-gradient(135deg, var(--rja-ink-soft), #3a3428);
  }
}

/* additions: logo lockup, nav states, job-cycle chips in brand colours */
.logo{display:flex;align-items:center;gap:12px;font-size:28px;color:var(--rja-ink)}.logo .brand-mark{border-radius:10px}
nav button{color:#e9e4d8}nav button:hover,nav button.active{background:rgba(245,185,66,.14);color:#fff}
.state.APPLIED{background:var(--rja-success-bg);color:var(--rja-success)}.state.NEEDS_INPUT,.state.AWAITING_APPROVAL,.state.UNKNOWN{background:var(--rja-warn-bg);color:var(--rja-warn)}
.state.FAILED,.state.REJECTED{background:var(--rja-error-bg);color:var(--rja-error)}.chip{background:var(--rja-surface-2)}.chip.warn{background:var(--rja-warn-bg);color:var(--rja-warn)}
.cyc-fab{background:var(--rja-accent);color:var(--rja-on-accent)}

.abgates{display:grid;gap:12px;margin:10px 0 14px}.abgate{border:1px solid var(--rja-border);border-radius:12px;padding:12px 14px;background:var(--rja-surface)}.abgate.done{border-color:var(--rja-success)}
.abgate-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.abtrack{height:6px;background:var(--rja-surface-2);border-radius:6px;overflow:hidden;margin:8px 0}.abfill{height:100%;background:var(--rja-accent)}.abmissing{margin:6px 0 0;padding-left:18px}

/* V2.0 grouped navigation */
#nav{display:none!important}
#groupnav{display:grid;gap:4px}#groupnav button{background:transparent;text-align:left;color:#e9e4d8;font-weight:600;padding:.7rem .8rem;font-size:1rem}
#groupnav button:hover,#groupnav button.active{background:rgba(245,185,66,.14);color:#fff}
#subnav{display:flex;flex-wrap:wrap;gap:6px;margin:-12px 0 22px;border-bottom:1px solid var(--rja-border);padding-bottom:10px}
#subnav button{background:transparent;color:var(--rja-muted);font-weight:600;padding:.45rem .8rem;border-radius:999px}
#subnav button.active{background:var(--rja-ink);color:var(--rja-on-ink)}
#subnav button:hover:not(.active){background:var(--rja-surface-2);color:var(--rja-ink)}
@media(max-width:800px){#groupnav{grid-template-columns:repeat(3,1fr)}#groupnav button{text-align:center;padding:.55rem .4rem;font-size:.9rem}}

/* V2.0 effort labels */
.chip.effort-auto{background:#dff1d8}
.chip.effort-quick{background:#eef1ed}
.chip.effort-work{background:#fff4e5;color:#8a4b00}
.phone-qr{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:8px}
.phone-qr svg{width:180px;height:180px;background:#fff;border-radius:8px}
.copybtn{margin-left:6px;font-size:.75rem;padding:2px 8px}

/* V2.0: a disabled button must not look clickable (e.g. "Payments open soon") */
button:disabled,button[disabled]{opacity:.5;cursor:not-allowed}

/* V2.0 legal page (/legal): the lawyer-approved privacy policy and terms */
.legal{max-width:760px;margin:0 auto;padding:40px 16px 64px}.legal h1{font-size:1.9rem}.legal h2{font-size:1.15rem;margin:1.6rem 0 .4rem}.legal p{margin:.4rem 0 .9rem}.legal-links{margin-top:18px;font-size:.8rem;text-align:center}

/* V2.0 AI tailoring nudge on Jobs */
.ai-nudge{border-color:#cfe3a6;background:#fbfdf4;margin:12px 0}.ai-nudge h3{margin:0}

/* V2.0 Jobs page: Find jobs at the top, sources as chips, filters behind a button */
.find-jobs h3{margin:0 0 4px}.find-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:12px 0}
.find-row label{flex:1 1 220px;display:grid;gap:4px;font-weight:600}.find-row label.inline{flex:0 0 auto;display:flex;align-items:center;gap:6px;font-weight:500;padding-bottom:10px}
.find-row button{flex:0 0 auto}.find-label{margin:16px 0 6px;font-weight:700;font-size:.85rem}
.chips{display:flex;flex-wrap:wrap;gap:8px}.more-ways{margin-top:14px}.more-ways summary,.filters-box summary{cursor:pointer}
.filters-box form{margin-top:12px}#cycMissing .cyc-actions{margin-top:8px}
@media(max-width:600px){.find-row button{width:100%}}
/* V2.0 first-run checklist */
.first-run{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px}.first-run li{display:flex;gap:12px;align-items:center;border:1px solid var(--line,#e5e2d8);border-radius:12px;padding:10px 12px}
.first-run li>div{flex:1}.first-run li p{margin:2px 0 0}.first-run .tick{width:24px;height:24px;border-radius:50%;border:2px solid currentColor;display:grid;place-items:center;font-weight:800;flex:0 0 auto;opacity:.5}
.first-run li.done .tick{opacity:1;background:#1F1F23;color:#F5B942;border-color:#1F1F23}
