/* Native design adaptation: Lovable FIDO Green Studio styles/shell and
   Figma GsOls9FDRJaMc9ebIwamsB nodes 2:2 (A), 2:3 (B), 2026-09-06.
   Uses existing controls and data. Source exports are in the review handoff. */
:root, html[data-fido-page="control"] {
  --fido-forest:#123024; --fido-mint:#e0f5e8; --fido-cream:#faf8ef;
  --fido-border:#c7dbce; --fido-muted:#52675b;
  --signal-priority:#d61f29; --signal-potential:#e87a7d; --signal-discovery:#737a75;
  --ink:#17241f; --paper:var(--fido-mint); --surface:#fffefa;
  --line:var(--fido-border); --muted:var(--fido-muted);
  --sidebar:var(--fido-forest); --sidebar-soft:#254b38; --acid:#d8eed9;
  --pastel-blue:#e8f2ec; --pastel-green:#e0f5e8; --pastel-yellow:#edf3e8;
  --pastel-pink:#f7e7e5; --pastel-violet:#e8efea;
  --radius-lg:12px; --radius-md:8px; --shadow:0 8px 24px #1230240a;
}
html[data-fido-page="control"] body { background:var(--paper); }
button,input,select,textarea { font:inherit; }
:is(button,a,input,select,textarea):focus-visible { outline:3px solid #387953; outline-offset:3px; }
html[data-fido-page="control"] .topbar { background:var(--fido-mint); }
html[data-fido-page="control"] .topbar h1 { font:650 clamp(24px,2.5vw,36px)/1.15 Inter,system-ui,sans-serif; letter-spacing:-.035em; }
.panel,.source-card,.new-opportunity-card { box-shadow:none; border-color:var(--line); }
.panel-heading h2 { font:650 20px/1.25 Inter,system-ui,sans-serif; letter-spacing:-.02em; }
.panel-heading { padding:20px 22px 16px; }
.sidebar { padding:24px 16px; }
.main-nav { gap:4px; }
.main-nav button,.main-nav a { border-radius:7px; }
.opp-copy p,.opp-meta,.opp-evidence { color:var(--fido-muted); }
.opp-copy h3 { font-size:16px; line-height:1.4; }
.opp-copy p { font-size:13px; }
.request-post { background:#edf5ef; border-left-color:#779e84; border-radius:0 6px 6px 0; }
.request-post p { font:400 14px/1.6 Inter,system-ui,sans-serif; }
.preview-pill { background:#e4efe7; color:#405b49; }
.new-opportunity-grid { gap:16px; }
.new-card{box-shadow:none;border-radius:10px;min-height:0;padding:20px;background:#fffefa}
.new-card-title h3{font:650 19px/1.35 Inter,system-ui,sans-serif}
.new-card-mark{width:36px;height:36px;border-radius:7px;box-shadow:none;font-size:14px}
.new-location,.new-card>p,.new-fit span{font-size:13px;line-height:1.5;color:#52675b}
.new-card-footer{flex-wrap:wrap}.new-card-actions{flex-wrap:wrap}
.new-rule-banner{background:#edf5ef}
.report-sheet { color:#17241f; }
.ledger-head,.ledger-group{background:#edf5ef;color:#52675b}
.ledger-row,.ledger-row:nth-child(n){background:#fffefa;padding:14px 16px;border-color:#d3e2d8}
.ledger-row h3{font:600 15px/1.4 Inter,system-ui,sans-serif}
.ledger-row .meta,.ledger-row .cell,.ledger-row .cell.dim{color:#52675b;font-size:12px}
.ledger-row.is-open,.ledger-row.is-selected{background:#edf5ef}
.ledger-row.is-starred{box-shadow:inset 3px 0 #d61f29}
.signal-star{color:#d61f29;text-shadow:none}
.ledger-detail .request-post{background:#e6f1e9;border-color:#c7dbce}
.ledger-detail .request-post p{font:400 15px/1.6 Inter,system-ui,sans-serif}
.ledger-row .cell.actions > .ledger-link,.ledger-row .cell.actions > .button{position:static;display:inline-flex}
.ledger-row:hover .cell.num,.ledger-row.is-open .cell.num,.ledger-row:focus-within .cell.num{visibility:visible}
.ledger-row:focus-visible{outline:3px solid #387953;outline-offset:-3px}
@media(min-width:1181px){html[data-fido-page="control"] .new-opportunity-grid{display:block!important}.new-row .cell.actions{grid-column:1/-1;justify-content:flex-end}.ledger-row.is-open .ledger-detail{gap:20px;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}
@media(max-width:760px){.ledger-row{padding:16px 12px}.ledger-row .cell.actions,.ledger-row.is-open .cell.actions{grid-column:1/-1;position:static;justify-content:flex-start;flex-wrap:wrap;padding:8px 0 0}.ledger-row .cell.actions > .ledger-link,.ledger-row .cell.actions > .button{display:inline-flex;position:static}.ledger-row.is-open .ledger-detail{grid-template-columns:1fr}.ledger-link,.ledger-toggle{min-height:40px}.ledger-row .cell.num{visibility:visible!important}}
@media(min-width:1100px){.app-shell{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:760px){
  .topbar { height:auto; min-height:84px; padding:18px; gap:14px; flex-wrap:wrap; }
  .topbar-actions { flex-wrap:wrap; gap:8px; }
  .panel-heading { padding:16px; flex-wrap:wrap; }
  .opportunity-list { padding:0 16px 12px; }
  .opportunity { grid-template-columns:36px minmax(0,1fr); gap:10px; }
  .opportunity > :last-child:not(.opp-copy) { grid-column:2; }
  .opp-score { width:36px; height:36px; }
  .new-opportunity-grid { grid-template-columns:minmax(0,1fr); }
  :is(button,.button,input,select) { min-height:40px; }
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
html[data-fido-page="control"] .source-row .cell.actions,
html[data-fido-page="control"] .source-row.is-open .cell.actions {grid-column:3/-1;grid-row:2;position:static;display:flex;justify-content:flex-start;flex-wrap:wrap;padding:8px 0 0;gap:10px}
html[data-fido-page="control"] .source-row .cell.actions > .ledger-link {position:static;transform:none;display:inline-flex}
html[data-fido-page="control"] .source-row .ledger-detail {grid-row:3}
