  :root{ --green:#5FB572; --green-d:#2E8F5A; --green-dk:#0E3A29; --brand:#6CBE8C; --gold:#B08D57; --ink:#22201C; --body:#54504a; --grey:#8A8A8A; --soft:#F5F8F5; --line:#E6ECE6; --bg:#F1F4F1; --red:#C0564B; --blue:#3B72B0; --purple:#7C5CBF; }
  *{ box-sizing:border-box; margin:0; padding:0; }
  body{ font-family:"Lato","Helvetica Neue",Arial,sans-serif; color:var(--ink); background:var(--bg); -webkit-font-smoothing:antialiased; font-size:14px; }
  a{color:inherit;text-decoration:none}
  .muted{color:var(--grey)} .link{color:var(--green-d);font-weight:800;cursor:pointer} .link:hover{text-decoration:underline}

  /* ===== entry ===== */
  .gate{ min-height:100vh; display:flex; flex-direction:column; align-items:center; justify-content:center; background:linear-gradient(160deg,#0E3A29,#14432F 55%,#1C6A45); padding:40px 20px; }
  .gate .logo-row{ display:flex; align-items:center; gap:12px; margin-bottom:6px; }
  .gate .nm{ color:#fff; font-weight:900; font-size:24px; letter-spacing:-.5px; }
  .gate .tl{ font-size:11px; letter-spacing:2px; text-transform:uppercase; margin-bottom:34px; }
  .gate h1{ color:#fff; font-size:20px; font-weight:900; margin-bottom:6px; }
  .gate .s{ color:#cfe6d6; font-size:13px; margin-bottom:26px; }
  .client-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 260px)); gap:14px; justify-content:center; max-width:860px; }
  .client-card{ background:#fff; border-radius:14px; padding:20px 22px; cursor:pointer; border:2px solid transparent; box-shadow:0 14px 40px rgba(0,0,0,.25); }
  .client-card:hover{ border-color:var(--brand); transform:translateY(-2px); }
  .client-card .cn{ font-weight:900; font-size:16px; } .client-card .ci{ font-size:12px; color:var(--grey); margin-top:2px; }
  .client-card .cs{ margin-top:12px; font-size:11.5px; color:var(--body); display:flex; gap:12px; }
  .client-card .cs b{ color:var(--green-d); }
  .gate .hint{ color:#7FB894; font-size:11.5px; margin-top:26px; max-width:520px; text-align:center; }

  /* ===== shell ===== */
  .app{ display:none; min-height:100vh; flex-direction:column; }
  .app.open{ display:flex; }
  .topbar{ background:var(--green-dk); color:#fff; padding:0 22px; display:flex; align-items:center; gap:18px; height:54px; position:sticky; top:0; z-index:50; }
  .topbar .brand{ display:flex; align-items:center; gap:9px; font-weight:900; letter-spacing:-.3px; }
  .topbar .space-chip{ background:rgba(255,255,255,.12); border-radius:8px; padding:5px 12px; font-size:13px; font-weight:800; display:flex; gap:8px; align-items:center; }
  .topbar .exit{ font-size:11.5px; color:#9FE0B4; cursor:pointer; } .topbar .exit:hover{ color:#fff; }
  .topbar nav{ display:flex; gap:2px; margin-left:12px; }
  .topbar nav .t{ padding:8px 13px; border-radius:8px; font-size:13px; font-weight:800; color:#bcd7c4; cursor:pointer; }
  .topbar nav .t:hover{ color:#fff; background:rgba(255,255,255,.07); }
  .topbar nav .t.on{ color:#fff; background:rgba(95,181,114,.25); }
  .mode{ margin-left:auto; }
  .mode .m-chip{ font-size:11px; letter-spacing:.8px; text-transform:uppercase; font-weight:900; padding:5px 12px; border-radius:16px; cursor:pointer; border:1.5px solid transparent; }
  body:not(.internal-view) .m-chip{ background:var(--gold); color:#fff; }
  body.internal-view .m-chip{ background:#3a1512; color:#ffb3aa; border-color:var(--red); }
  .int-banner{ display:none; background:var(--red); color:#fff; text-align:center; font-weight:800; font-size:12.5px; padding:7px; letter-spacing:.4px; }
  body.internal-view .int-banner{ display:block; }
  body.internal-view .topbar{ background:#3a1512; }
  body:not(.internal-view) .internal{ display:none !important; }
  body:not(.internal-view) .tech{ display:none !important; }
  body.internal-view .client-only{ display:none !important; }

  .content{ padding:24px 30px 70px; max-width:1180px; width:100%; margin:0 auto; }
  .eyebrow{ font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--gold); font-weight:800; margin-bottom:4px; }
  h2.page{ font-size:21px; font-weight:900; letter-spacing:-.5px; margin-bottom:16px; }
  .panel{ background:#fff; border:1px solid var(--line); border-radius:14px; padding:19px 21px; box-shadow:0 4px 16px rgba(20,60,40,.04); }
  .panel h3{ font-size:15px; font-weight:900; } .panel .ph{ font-size:12px; color:var(--grey); margin:2px 0 14px; }
  .grid2{ display:grid; grid-template-columns:1.35fr 1fr; gap:16px; } @media(max-width:980px){ .grid2{ grid-template-columns:1fr; } }
  .btn{ font-family:inherit; font-weight:800; font-size:13px; border:none; border-radius:8px; padding:9px 15px; cursor:pointer; }
  .btn.primary{ background:var(--green-d); color:#fff; } .btn.primary:hover{ background:var(--green-dk); }
  .btn.ghost{ background:#fff; color:var(--green-d); border:1px solid var(--line); } .btn.ghost:hover{ border-color:var(--green); }
  .btn.sm{ padding:6px 10px; font-size:12px; }
  .chip{ display:inline-block; font-size:10.5px; font-weight:800; letter-spacing:.4px; text-transform:uppercase; padding:3px 9px; border-radius:20px; }
  .chip.internal-c{ background:#fdf3f1; color:var(--red); border:1px dashed #ecc; }
  .chip.shared-c{ background:#eaf4ee; color:var(--green-d); }
  .chip.auto{ background:rgba(59,114,176,.12); color:var(--blue); }
  .chip.func{ background:rgba(46,143,90,.12); color:var(--green-d); }
  .chip.inv{ background:rgba(124,92,191,.12); color:var(--purple); }
  .chip.agent{ background:#f2f0fa; color:var(--purple); }
  .chip.human{ background:var(--soft); color:var(--body); border:1px solid var(--line); }
  .chip.studio{ background:rgba(176,141,87,.15); color:var(--gold); }
  .ev{ display:inline-flex; align-items:center; gap:4px; font-size:11px; font-weight:700; color:var(--blue); background:rgba(59,114,176,.08); border:1px solid rgba(59,114,176,.25); border-radius:6px; padding:2px 8px; margin:2px 4px 0 0; cursor:pointer; }
  .impact-flag{ background:#fdf7ec; border:1px solid #eeddc0; color:#8a6a2f; border-radius:8px; padding:7px 11px; font-size:12px; font-weight:700; margin-top:9px; }

  .kpis{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:16px; } @media(max-width:900px){ .kpis{ grid-template-columns:1fr 1fr; } }
  .kpi{ background:#fff; border:1px solid var(--line); border-radius:13px; padding:15px 17px; }
  .kpi .l{ font-size:10.5px; letter-spacing:.6px; text-transform:uppercase; color:var(--grey); font-weight:800; }
  .kpi .n{ font-size:28px; font-weight:900; margin-top:5px; letter-spacing:-1px; } .kpi .n.gold{ color:var(--gold); } .kpi .n.green{ color:var(--green-d); }
  .kpi .s{ font-size:11.5px; color:var(--body); margin-top:2px; }
  .feed-item{ display:flex; gap:11px; padding:10px 0; border-bottom:1px dashed var(--line); font-size:13px; align-items:flex-start; }
  .feed-item:last-child{ border-bottom:none; }
  .feed-item .dot{ width:9px; height:9px; border-radius:50%; margin-top:5px; flex:none; }
  .inbox-item{ display:flex; gap:10px; align-items:flex-start; padding:10px 12px; border:1px solid var(--line); border-radius:10px; margin-bottom:8px; font-size:12.5px; background:#fff; }
  .inbox-item .act{ margin-left:auto; flex:none; display:flex; gap:5px; }

  .filterbar{ display:flex; gap:8px; flex-wrap:wrap; margin:0 0 14px; }
  .fchip{ font-size:12px; font-weight:800; padding:5px 12px; border-radius:20px; border:1px solid var(--line); background:#fff; cursor:pointer; color:var(--body); }
  .fchip.on{ background:var(--green-d); color:#fff; border-color:var(--green-d); }

  .src{ display:flex; gap:13px; padding:13px 0; border-bottom:1px solid var(--line); align-items:flex-start; }
  .src .ic{ width:38px; height:38px; border-radius:10px; flex:none; display:flex; align-items:center; justify-content:center; font-size:17px; background:var(--soft); border:1px solid var(--line); }
  .src .t{ font-weight:800; font-size:13.5px; } .src .m{ font-size:11.5px; color:var(--grey); margin-top:2px; }
  .src .new{ font-size:10px; font-weight:900; color:#fff; background:var(--gold); border-radius:12px; padding:2px 8px; margin-left:8px; vertical-align:1px; }
  .pager{ display:flex; align-items:center; justify-content:space-between; margin-top:12px; font-size:12px; color:var(--grey); }
  .ent{ display:inline-block; font-size:12px; font-weight:700; background:#fff; border:1px solid var(--line); border-radius:20px; padding:4px 12px; margin:0 6px 7px 0; }
  .ent b{ color:var(--grey); font-weight:800; font-size:10px; letter-spacing:.5px; margin-right:5px; }

  .lane-h{ font-size:11px; letter-spacing:1.4px; text-transform:uppercase; color:var(--grey); font-weight:800; margin:20px 0 10px; display:flex; align-items:center; gap:9px; }
  .lane-h .cnt{ background:var(--soft); border:1px solid var(--line); border-radius:12px; padding:1px 9px; font-size:11px; color:var(--body); }
  .rec{ background:#fff; border:1px solid var(--line); border-radius:13px; padding:16px 18px; margin-bottom:12px; box-shadow:0 4px 16px rgba(20,60,40,.04); }
  .rec.suggested{ border-left:4px solid var(--gold); }
  .rec.backlog{ border-left:4px solid var(--green-d); }
  .rec .rt{ font-weight:900; font-size:15.5px; display:flex; align-items:center; gap:8px; flex-wrap:wrap; cursor:pointer; }
  .rec .rt:hover .title-txt{ color:var(--green-d); text-decoration:underline; }
  .rec .rp{ font-size:12.5px; color:var(--body); margin:6px 0 4px; max-width:78ch; }
  .rec .outcome{ font-size:14.5px; color:var(--ink); margin:7px 0 2px; max-width:72ch; line-height:1.5; }
  .rec .meta{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin-top:10px; font-size:11.5px; color:var(--grey); }
  .rec .meta b{ color:var(--ink); }
  .rec .actions{ margin-left:auto; display:flex; gap:7px; }
  .client-only .price-line{ display:flex; gap:18px; align-items:baseline; margin-top:10px; flex-wrap:wrap; }
  .client-only .price-line .pv{ font-size:16px; font-weight:900; color:var(--green-dk); }
  .client-only .price-line .pl{ font-size:10.5px; letter-spacing:.6px; text-transform:uppercase; color:var(--grey); font-weight:800; }

  /* impact framework */
  .imp2{ display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-top:12px; }
  @media(max-width:900px){ .imp2{ grid-template-columns:repeat(2,1fr); } }
  .imp2 .grp{ background:var(--soft); border:1px solid var(--line); border-radius:10px; padding:9px 11px; }
  .imp2 .g-h{ font-size:9.5px; letter-spacing:.9px; text-transform:uppercase; color:var(--gold); font-weight:900; margin-bottom:7px; }
  .im-row{ display:grid; grid-template-columns:1fr 46px; gap:8px; align-items:center; margin-bottom:6px; }
  .im-row:last-child{ margin-bottom:0; }
  .im-l{ font-size:10.5px; font-weight:700; color:var(--body); line-height:1.3; }
  .im-row .dots.seg{ margin-top:0; }
  .imp-line{ display:flex; gap:8px; align-items:stretch; margin-top:12px; flex-wrap:wrap; }
  .imp-line .bis{ align-self:center; }
  .gsc{ flex:1; min-width:104px; background:var(--soft); border:1px solid var(--line); border-radius:9px; padding:6px 10px; }
  .gsc .l{ font-size:9px; letter-spacing:.8px; text-transform:uppercase; color:var(--grey); font-weight:900; }
  .gsc .n{ font-size:13.5px; font-weight:900; color:var(--ink); margin-top:1px; }
  .gbar{ height:5px; border-radius:3px; background:#e4ebe4; margin-top:5px; overflow:hidden; }
  .gbar i{ display:block; height:100%; border-radius:3px; background:linear-gradient(90deg,var(--green),var(--green-d)); }
  .bis-row{ display:flex; align-items:center; gap:10px; margin-top:12px; font-size:11.5px; color:var(--body); }
  .bis{ display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:30px; border-radius:9px; background:var(--green-dk); color:#fff; font-weight:900; font-size:15px; padding:0 8px; }
  .bis-mini{ display:inline-flex; align-items:center; font-size:11px; font-weight:900; color:#fff; background:var(--green-dk); border-radius:8px; padding:2px 8px; vertical-align:1px; }
  .dots.seg{ display:flex; gap:3px; margin-top:7px; letter-spacing:0; }
  .dots.seg i{ height:7px; flex:1; border-radius:4px; background:#e4ebe4; }
  .dots.seg i.f{ background:linear-gradient(90deg,var(--green),var(--green-d)); box-shadow:0 1px 3px rgba(46,143,90,.35); }
  .lvlpick{ display:inline-flex; border:1px solid var(--line); border-radius:8px; overflow:hidden; }
  .lvlpick span{ padding:5px 11px; font-size:11px; font-weight:800; cursor:pointer; color:var(--grey); border-right:1px solid var(--line); }
  .lvlpick span:last-child{ border-right:none; }
  .lvlpick span.on{ background:var(--green-d); color:#fff; }
  .dep-chip{ display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:800; background:#f2f9f4; border:1px solid #cfe6d6; color:var(--green-d); border-radius:16px; padding:4px 11px; margin:0 6px 6px 0; }
  .dep-chip .rmv{ cursor:pointer; color:var(--grey); } .dep-chip .rmv:hover{ color:var(--red); }

  /* story block: pain/outcome/proposal — the marketing layer */
  .story{ margin-top:4px; }
  .story .s-blk{ padding:14px 16px; border-radius:12px; margin-bottom:10px; }
  .story .s-lb{ font-size:10px; letter-spacing:1.4px; text-transform:uppercase; font-weight:900; margin-bottom:5px; }
  .story .s-tx{ font-size:15.5px; line-height:1.55; color:var(--ink); }
  .story .pain{ background:#fdf3f1; } .story .pain .s-lb{ color:var(--red); }
  .story .outc{ background:#eaf4ee; } .story .outc .s-lb{ color:var(--green-d); }
  .story .prop{ background:var(--soft); border:1px solid var(--line); } .story .prop .s-lb{ color:var(--gold); }

  /* roadmap */
  .phases{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; } @media(max-width:1050px){ .phases{ grid-template-columns:1fr 1fr; } } @media(max-width:640px){ .phases{ grid-template-columns:1fr; } }
  .phase-col{ background:var(--soft); border:1px solid var(--line); border-radius:14px; padding:14px; }
  .phase-col > .pt{ font-size:11px; letter-spacing:1.5px; text-transform:uppercase; font-weight:900; margin-bottom:3px; }
  .phase-col > .ps{ font-size:11.5px; color:var(--grey); margin-bottom:12px; }
  .p-prog{ background:#eef5ef; } .p-prog > .pt{ color:var(--green-dk); }
  .p-now .pt{ color:var(--green-d); } .p-next .pt{ color:var(--gold); } .p-later .pt{ color:var(--grey); }
  .rm-card{ background:#fff; border:1px solid var(--line); border-radius:11px; padding:12px 14px; margin-bottom:10px; box-shadow:0 3px 10px rgba(20,60,40,.05); }
  .rm-card .rm-t{ font-weight:900; font-size:13px; cursor:pointer; } .rm-card .rm-t:hover{ color:var(--green-d); }
  .rm-card .rm-s{ font-size:11.5px; color:var(--body); margin-top:3px; }
  .dep{ display:flex; align-items:center; gap:6px; font-size:11px; font-weight:700; margin-top:8px; padding:5px 9px; border-radius:8px; }
  .dep.ok{ background:#eaf4ee; color:var(--green-d); }
  .dep.wait{ background:#fdf7ec; color:#8a6a2f; }
  .dep.block{ background:#fdf3f1; color:var(--red); }
  .rm-imp{ margin-top:8px; font-size:11px; color:var(--grey); }
  .rm-imp b{ color:var(--green-d); }

  /* stakeholders */
  .org{ display:flex; flex-direction:column; align-items:center; padding:6px 0 2px; }
  .org-lvl{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
  .org-vline{ width:1.5px; height:16px; background:var(--line); }
  .org-node{ background:#fff; border:1.5px solid var(--line); border-radius:11px; padding:10px 16px; text-align:center; min-width:150px; cursor:pointer; }
  .org-node:hover{ border-color:var(--green); }
  .org-node .on-n{ font-weight:900; font-size:13px; }
  .org-node .on-r{ font-size:11px; color:var(--grey); margin-top:1px; }
  .org-node.champion{ border-color:var(--green); }
  .org-node.skeptic{ border-color:#e0b84e; }
  .org-node.inferred{ border-style:dashed; }
  .att{ display:inline-block; font-size:9.5px; font-weight:900; letter-spacing:.5px; text-transform:uppercase; padding:2px 8px; border-radius:12px; margin-top:6px; }
  .att.ch{ background:#eaf4ee; color:var(--green-d); } .att.sk{ background:#fdf7ec; color:#8a6a2f; } .att.nu{ background:var(--soft); color:var(--grey); }
  .sh-card{ display:flex; gap:12px; padding:11px 0; border-bottom:1px dashed var(--line); font-size:12.5px; align-items:flex-start; }
  .sh-card:last-child{ border-bottom:none; }
  .sh-card .avatar{ width:30px; height:30px; border-radius:50%; background:var(--green-d); color:#fff; font-weight:900; font-size:11px; display:flex; align-items:center; justify-content:center; flex:none; }
  .gap-note{ background:var(--soft); border:1px dashed var(--line); border-radius:9px; padding:8px 12px; font-size:11.5px; color:var(--body); margin-top:10px; }

  /* agents */
  .agent-card{ background:#fff; border:1px solid var(--line); border-radius:13px; padding:17px 19px; margin-bottom:12px; }
  .agent-card .an{ font-weight:900; font-size:14.5px; display:flex; gap:9px; align-items:center; flex-wrap:wrap; }
  .agent-card .trig{ font-size:11px; font-weight:800; color:var(--purple); background:#f2f0fa; padding:2px 9px; border-radius:14px; }
  .agent-card .row{ display:grid; grid-template-columns:110px 1fr; gap:6px 14px; font-size:12.5px; margin-top:10px; }
  .agent-card .row dt{ color:var(--grey); font-weight:800; font-size:10.5px; text-transform:uppercase; letter-spacing:.5px; padding-top:2px; }
  .agent-card .a-actions{ display:flex; gap:7px; margin-top:12px; }
  table{ width:100%; border-collapse:collapse; }
  th{ text-align:left; font-size:10px; letter-spacing:1px; text-transform:uppercase; color:var(--grey); font-weight:800; padding:7px 10px; border-bottom:2px solid var(--line); }
  td{ font-size:12.5px; padding:9px 10px; border-bottom:1px solid var(--line); vertical-align:top; }
  tr:last-child td{ border-bottom:none; }
  .tbl-scroll{ overflow-x:auto; }

  /* modal */
  .overlay{ position:fixed; inset:0; background:rgba(14,58,41,.5); display:none; align-items:flex-start; justify-content:center; z-index:100; padding:36px 18px; overflow:auto; }
  .overlay.open{ display:flex; }
  .modal{ background:#fff; border-radius:16px; width:780px; max-width:100%; box-shadow:0 30px 80px rgba(0,0,0,.35); }
  .modal .mh{ padding:18px 24px; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; align-items:flex-start; gap:14px; }
  .modal .mh h3{ font-size:18px; font-weight:900; } .modal .mh .sub{ font-size:12px; color:var(--grey); margin-top:3px; }
  .modal .mb{ padding:20px 24px; }
  .modal .mf{ padding:14px 24px; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:10px; align-items:center; flex-wrap:wrap; }
  .x{ cursor:pointer; color:var(--grey); font-size:22px; border:none; background:none; }
  .fgrid{ display:grid; grid-template-columns:150px 1fr; gap:9px 16px; font-size:13px; }
  .fgrid dt{ color:var(--grey); font-weight:800; font-size:10.5px; text-transform:uppercase; letter-spacing:.6px; padding-top:3px; }
  .sec-h{ font-size:11px; letter-spacing:1.2px; text-transform:uppercase; color:var(--gold); font-weight:800; margin:18px 0 8px; }
  .quote{ border-left:3px solid var(--blue); background:rgba(59,114,176,.05); padding:9px 13px; border-radius:0 8px 8px 0; font-size:12.5px; margin-bottom:8px; }
  .quote .q-src{ font-size:11px; color:var(--blue); font-weight:800; margin-top:4px; }
  .rev{ display:flex; gap:10px; font-size:12.5px; padding:7px 0; border-bottom:1px dashed var(--line); }
  .rev:last-child{ border-bottom:none; }
  .rev .when{ color:var(--grey); font-size:11.5px; flex:none; width:64px; }
  textarea{ font-family:inherit; font-size:13px; border:1px solid var(--line); border-radius:8px; padding:9px 12px; width:100%; min-height:70px; resize:vertical; }
  select,input[type=text]{ font-family:inherit; font-size:13px; border:1px solid var(--line); border-radius:8px; padding:8px 11px; background:#fff; }
  .toast-note{ position:fixed; right:20px; bottom:20px; background:var(--green-dk); color:#fff; border-radius:10px; padding:12px 17px; font-size:13px; font-weight:700; box-shadow:0 14px 40px rgba(0,0,0,.3); display:none; z-index:300; max-width:340px; }

/* ── User Stories block (term kept verbatim) ── */
.us-count{ font-weight:700; color:var(--grey); text-transform:none; letter-spacing:0; font-size:11px; margin-left:8px; }
.ustories{ display:flex; flex-direction:column; gap:7px; margin-top:4px; }
.ustory{ display:flex; gap:12px; align-items:flex-start; justify-content:space-between;
  background:var(--soft); border:1px solid var(--line); border-left:3px solid var(--green); border-radius:10px; padding:9px 12px; }
.ustory.us-out{ border-left-color:#d9b38c; background:#faf6f1; opacity:.72; }
.ustory.us-out .us-txt{ text-decoration:line-through; color:var(--grey); }
.us-body{ flex:1; min-width:0; }
.us-txt{ font-size:13px; line-height:1.5; color:var(--ink); font-weight:600; }
.us-ev{ font-size:11px; color:var(--blue); margin-top:3px; line-height:1.4; }
.us-scope{ display:inline-flex; flex:none; border:1px solid var(--line); border-radius:8px; overflow:hidden; background:#fff; }
.us-seg{ font-size:10.5px; font-weight:800; letter-spacing:.3px; padding:5px 9px; cursor:pointer; color:var(--grey); white-space:nowrap; user-select:none; }
.us-seg:hover{ background:#f0f3f5; }
.us-seg.on{ background:var(--green-d); color:#fff; }
.us-seg.off{ background:var(--red); color:#fff; }
.us-actions{ display:flex; flex-direction:column; align-items:flex-end; gap:6px; flex:none; }
.us-promote{ border:1px solid #cfe6d6; background:#f2f9f4; color:var(--green-d); font-size:10.5px; font-weight:800;
  border-radius:8px; padding:4px 9px; cursor:pointer; white-space:nowrap; }
.us-promote:hover{ background:#e6f4ec; }
/* read-only story list (client-facing rec detail) */
.ustories.ro .ustory{ padding-right:12px; }
.us-mini{ font-size:11.5px; font-weight:800; color:var(--gold); margin:2px 0 4px; }
/* editable impact profile + user-story rows (editors) */
.imp-edit{ display:grid; grid-template-columns:1fr 1fr; gap:8px 16px; margin:4px 0 10px; }
.imp-edit .grp .g-h{ font-size:11px; font-weight:800; letter-spacing:.4px; text-transform:uppercase; color:var(--grey); margin:4px 0 4px; }
.im-edit{ display:flex; align-items:center; gap:7px; margin:3px 0; }
.im-edit .im-l{ flex:none; width:118px; font-size:11.5px; color:var(--ink); }
.im-edit select{ flex:none; width:48px; }
.im-edit input{ flex:1; min-width:0; font-size:11.5px; padding:3px 6px; }
.us-edit{ display:flex; gap:7px; align-items:flex-start; margin:5px 0; }
.us-edit textarea{ flex:1; min-height:36px; font-size:12.5px; }
.us-del{ flex:none; border:1px solid var(--line); background:#fff; color:var(--red); border-radius:7px;
  width:26px; height:26px; cursor:pointer; font-size:12px; line-height:1; }
.us-del:hover{ background:#fdecec; }
.completing-banner{ background:#fff8e9; border:1px solid #e7d7a8; color:#7a5c12; border-radius:10px;
  padding:9px 13px; font-size:12.5px; font-weight:700; margin:10px 0; }
.rank-badge{ display:inline-block; min-width:22px; text-align:center; background:var(--green-d); color:#fff;
  font-size:11px; font-weight:900; border-radius:7px; padding:1px 6px; margin-right:7px; vertical-align:1px; }
.rank-hint{ font-weight:600; color:var(--grey); text-transform:none; letter-spacing:0; font-size:11px; margin-left:8px; }
.agent-safe{ background:#eef6f0; border:1px solid #cfe6d6; color:#2f6b48; border-radius:9px;
  padding:8px 12px; font-size:12px; font-weight:600; margin:0 0 12px; }
/* Scout change-proposal flag on a rec card */
.chg-flag{ background:#fff4e5; border:1px solid #f0d3a0; color:#8a5a12; border-radius:8px;
  padding:5px 10px; font-size:11.5px; font-weight:800; margin:6px 0 2px; cursor:pointer; display:inline-block; }
.chg-flag:hover{ background:#ffedd6; }
/* Scout change-proposals block inside the rec detail */
.chg-box{ background:#fff8ee; border:1px solid #ecd7ad; border-radius:12px; padding:12px 14px; margin:0 0 14px; }
.chg-h{ font-size:12px; font-weight:900; letter-spacing:.4px; text-transform:uppercase; color:#8a5a12; }
.chg-h .cnt{ background:#8a5a12; color:#fff; border-radius:20px; padding:0 7px; font-size:11px; margin-left:6px; }
.chg-note{ font-size:11.5px; color:#a07a3a; margin:3px 0 10px; }
.chg{ background:#fff; border:1px solid #eadfc8; border-radius:9px; padding:9px 11px; margin-top:8px; }
.chg-tx{ font-size:13px; line-height:1.5; color:var(--ink); font-weight:600; }
.chg-ev{ font-size:11px; color:var(--blue); margin-top:3px; line-height:1.4; }
.chg-act{ margin-top:8px; display:flex; align-items:center; gap:6px; }
/* indicative price tag — pinned to the card's top-right corner (human-set) */
.rec{ position:relative; }
.rec .rt{ padding-right:120px; }
.price-tag{ position:absolute; top:15px; right:17px; text-align:right; color:#1f6b45; font-weight:800;
  font-size:15px; line-height:1.25; white-space:nowrap; z-index:2; }
.price-tag .pt-mo{ display:block; font-size:12px; font-weight:600; color:var(--grey); }
.price-line2{ font-size:13px; margin:0 0 4px; color:#1f6b45; }
.price-line2 b{ font-size:15px; }
.price-edit{ display:inline-block; font-size:11px; font-weight:800; color:#2f8f5b; border:1px dashed #bcdcc7;
  background:#f2f9f4; border-radius:8px; padding:3px 9px; cursor:pointer; }
.price-edit:hover{ background:#e6f4ec; }
@media(max-width:640px){ .imp-edit{ grid-template-columns:1fr; } }
