.stagebar{
    background:var(--jr-black);
    padding:18px 28px 22px;
    overflow-x:auto;
    position:relative;
  }
  .stagebar .lbl{color:#9a9a9a;font-size:10px;letter-spacing:3px;text-transform:uppercase;margin-bottom:12px;display:block}
  .tasks-fab{position:absolute;top:14px;right:24px;font-family:var(--font);font-weight:700;font-size:12px;letter-spacing:.3px;background:#2c2c2c;color:#fff;border:1px solid #444;border-radius:2px;padding:9px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
  .tasks-fab:hover{border-color:var(--jr-red)}
  .tfab-badge{background:var(--jr-grad);color:#fff;font-size:11px;font-weight:800;border-radius:10px;padding:1px 7px;min-width:18px;text-align:center}
  .tasks-summary{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
  .tasks-summary .ts-left{flex:1;min-width:200px}
  .tasks-summary .ts-count{font-size:15px;font-weight:700}.tasks-summary .ts-count b{font-size:22px;color:var(--jr-red-dark)}
  .tasks-summary .ts-count span{font-size:13px;color:#9a9a9a;font-weight:600}
  .tasks-summary .ts-note{font-size:12px;color:#9a9a9a;margin-top:4px}
  .stages{display:flex;gap:8px;min-width:max-content}
  .stage{
    position:relative;
    min-width:118px;
    background:#2c2c2c;
    color:#cfcfcf;
    border-radius:4px;
    padding:14px 12px 12px;
    text-align:center;
    cursor:pointer;
    transition:transform .25s var(--ease),background .25s;
  }
  .stage:hover{background:#363636}
  .stage .ic{font-size:18px;display:block;margin-bottom:8px;opacity:.8}
  .stage .nm{font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;line-height:1.25}
  .stage .dt{font-size:10px;color:#8c8c8c;margin-top:8px}
  .stage.done{background:#3a3a3a;color:#e6e6e6}
  .stage.done .ic{opacity:1;color:#fff}
  .stage.current{background:var(--jr-grad);color:#fff}
  .stage.current .ic,.stage.current .dt{color:#fff;opacity:1}
  .stage.warm-flag{outline:2px solid var(--jr-red);outline-offset:2px}

  /* ---- layout ---- */
  .wrap{display:flex;gap:24px;max-width:1240px;margin:0 auto;padding:28px}
  main{flex:1;min-width:0}
  aside{width:300px;flex-shrink:0}

  .card{
    background:var(--jr-white);
    border-radius:2px;
    box-shadow:0 1px 0 var(--jr-light),0 10px 28px -22px rgba(20,20,20,.30);
    overflow:hidden;
    margin-bottom:22px;
  }
  .card .head{
    display:flex;align-items:center;gap:12px;
    padding:18px 22px;
    border-bottom:1px solid var(--jr-light);
  }
  .card .head .stripes{transform:skewX(-26deg)}
  .card .head h2{
    font-size:13px;letter-spacing:2px;text-transform:uppercase;font-weight:800;
  }
  .card .head h2 .thin{font-weight:300}
  .card .body{padding:22px}

  /* section title big pairing (35 extra light + 75 bold) */
  .pairing{margin-bottom:6px;line-height:1.05}
  .pairing .thin{font-weight:200;font-size:34px;letter-spacing:-.5px}
  .pairing .bold{font-weight:800;font-size:34px;letter-spacing:-.5px}
  .step-sub{color:var(--jr-gray);font-size:13px;max-width:560px;margin-bottom:20px}

  /* form bits */
  .grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}
  .grid.one{grid-template-columns:1fr}
  .field label{display:block;font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--jr-gray);font-weight:700;margin-bottom:6px}
  .field label .req{color:var(--jr-red)}
  .field input,.field select,.field textarea{
    width:100%;padding:10px 12px;border:1px solid #d4d4d4;border-radius:2px;
    font-family:var(--font);font-size:14px;background:#fafafa;color:var(--jr-black);
    transition:border .2s,box-shadow .2s;
  }
  .field input:focus,.field select:focus,.field textarea:focus{
    outline:none;border-color:var(--jr-red);box-shadow:0 0 0 3px rgba(233,42,44,.12);background:#fff;
  }
  .field.is-required-empty input,.field.is-required-empty select,.field.is-required-empty textarea,
  .fld.is-required-empty input,.fld.is-required-empty select,.fld.is-required-empty textarea{
    background:rgba(233,42,44,.15);color:#202020;border-color:rgba(233,42,44,.45);box-shadow:none;
  }
  .field.is-required-empty select option,.fld.is-required-empty select option{background:#fff;color:#202020}
  .field .intake-derived-hint,.fld .intake-derived-hint{font-size:9px;font-weight:600;color:#999;text-transform:none;letter-spacing:0;margin-left:4px}
  .field select:disabled,.fld select:disabled{opacity:1;color:#202020;background:#f4f4f4;cursor:default}
  .intake-contact-reach{margin-top:12px;padding:12px;border:1px solid rgba(233,42,44,.2);border-radius:2px;background:rgba(233,42,44,.08)}
  .intake-contact-reach-msg{margin:0 0 10px;color:#404040;line-height:1.4}
  .intake-contact-reach-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
  @media(max-width:720px){.intake-contact-reach-grid{grid-template-columns:1fr}}
  .field .hint{font-size:11px;color:#999;margin-top:5px}
  .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
  .chip{display:inline-flex;align-items:center;gap:7px;background:var(--jr-black);color:#fff;font-size:12px;font-weight:600;padding:6px 10px;border-radius:20px}
  .chip .x{opacity:.6;cursor:pointer}
  .chip.ghost{background:#ececec;color:var(--jr-gray);border:1px dashed #c4c4c4;cursor:pointer}
  .chip.red{background:var(--jr-grad)}

  /* role/party rows */
  .party-row{display:grid;grid-template-columns:140px 1fr;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #efefef}
  .party-row:last-child{border-bottom:none}
  .role-tag{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#fff;background:var(--jr-gray);padding:6px 10px;border-radius:4px;text-align:center}
  .role-tag.owner{background:var(--jr-black)}
  .role-tag.mgr{background:var(--jr-gray)}
  .role-tag.tenant{background:#6a6a6a}

  /* scope cards */
  .scope{border:1px solid var(--jr-light);border-radius:2px;margin-bottom:16px;overflow:hidden}
  .scope .sc-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--jr-black);color:#fff}
  .scope .sc-head .t{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.5px;font-size:14px}
  .scope .sc-head .meta{font-size:12px;color:#bdbdbd}
  .scope .sc-body{padding:18px}
  .team{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
  .member{display:flex;align-items:center;gap:10px;background:#f6f6f6;border:1px solid #ececec;border-radius:2px;padding:8px 12px}
  .avatar{width:30px;height:30px;border-radius:50%;background:var(--jr-grad);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px}
  .member .who b{display:block;font-size:13px}
  .member .who span{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--jr-gray);font-weight:700}
  .member .member-x{margin-left:4px;border:none;background:none;color:#b0b0b0;cursor:pointer;font-size:15px;line-height:1;padding:2px 4px;border-radius:2px}
  .member .member-x:hover{color:var(--jr-red);background:#f0dada}
  .member.watcher .avatar{background:#6a6a6a}
  .team-add{margin-top:12px}

  /* toggle */
  .toggle-row{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border:1px solid var(--jr-light);border-radius:2px;background:#fafafa}
  .toggle-row .lab b{display:block;font-size:14px}
  .toggle-row .lab span{font-size:12px;color:var(--jr-gray)}
  .switch{position:relative;width:54px;height:30px;flex-shrink:0}
  .switch input{display:none}
  .switch .track{position:absolute;inset:0;background:#cfcfcf;border-radius:30px;transition:background .25s}
  .switch .thumb{position:absolute;top:3px;left:3px;width:24px;height:24px;background:#fff;border-radius:50%;transition:transform .25s var(--ease);box-shadow:0 2px 5px rgba(0,0,0,.3)}
  .switch input:checked + .track{background:var(--jr-grad)}
  .switch input:checked + .track + .thumb{transform:translateX(24px)}

  /* footer nav */
  .navbtns{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:8px}
  .btn{font-family:var(--font);font-weight:700;font-size:13px;letter-spacing:.5px;border:none;border-radius:2px;padding:13px 24px;cursor:pointer;transition:transform .15s,box-shadow .2s,background .2s}
  .btn:active{opacity:.92}
  .btn.primary{background:var(--jr-grad);color:#fff}
  .btn.primary:hover{background:var(--jr-red-dark)}
  .btn.ghost{background:transparent;color:var(--jr-gray);border:1px solid #cccccc}
  .btn.ghost:hover{border-color:var(--jr-gray)}
  .btn.dark{background:var(--jr-black);color:#fff}
  .btn[disabled]{opacity:.4;cursor:not-allowed}

  /* aside sidebar cards */
  .side-card{background:var(--jr-white);border-radius:2px;overflow:hidden;margin-bottom:18px;box-shadow:0 14px 40px -30px rgba(0,0,0,.4)}
  .side-card .bar{height:5px;background:var(--jr-grad)}
  .side-card .bar.blue{background:var(--jr-grad)}
  .side-card .in{padding:16px 18px}
  .side-card .nm{font-weight:800;font-size:14px;color:var(--jr-red-dark);margin-bottom:4px}
  .side-card .nm.blue{color:var(--jr-red-dark)}
  .side-card .addr{font-size:12px;color:var(--jr-gray);line-height:1.5}
  .side-card .lbl{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#9a9a9a;font-weight:700;margin-bottom:6px}

  .progress-mini{display:flex;flex-direction:column;gap:2px}
  .progress-mini .pm{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--jr-gray);padding:7px 0}
  .progress-mini .dot{width:18px;height:18px;border-radius:50%;border:2px solid #d0d0d0;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff}
  .progress-mini .pm.done .dot{background:var(--jr-grad);border-color:transparent}
  .progress-mini .pm.active{color:var(--jr-black);font-weight:700}
  .progress-mini .pm.active .dot{border-color:var(--jr-red)}

  /* screens */
  .screen{display:none;animation:fade .4s var(--ease)}
  .screen.active{display:block}
  @keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

  /* warm celebration screen */
  .warm-hero{background:var(--jr-black);border-radius:2px;overflow:hidden;position:relative;color:#fff;padding:48px 40px}
  .warm-hero .stripe-field{position:absolute;right:-40px;top:-40px;bottom:-40px;width:300px;opacity:.5;transform:skewX(-26deg);
    background:repeating-linear-gradient(90deg, rgba(233,42,44,.55) 0 26px, rgba(167,31,35,.55) 26px 40px, transparent 40px 86px)}
  .warm-hero .stripe-field2{display:none}
  .warm-hero .eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--jr-red);font-weight:800;margin-bottom:14px;position:relative}
  .warm-hero h1{font-size:46px;line-height:1.02;font-weight:200;position:relative;margin-bottom:6px}
  .warm-hero h1 b{font-weight:800}
  .warm-hero p{position:relative;color:#c4c4c4;max-width:440px;margin-top:14px;font-size:14px}
  .warm-hero .actions{position:relative;margin-top:28px;display:flex;gap:12px}

  .summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--jr-light);border-radius:2px;overflow:hidden;margin-top:22px}
  .summary .s{background:#fff;padding:18px}
  .summary .s .k{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#9a9a9a;font-weight:700}
  .summary .s .v{font-size:20px;font-weight:800;margin-top:6px}
  .summary .s .v small{font-size:12px;color:var(--jr-gray);font-weight:600}

  .note{font-size:11px;color:#9a9a9a;text-align:center;padding:14px;letter-spacing:.3px}
  @media(max-width:960px){.wrap{flex-direction:column}aside{width:100%}.grid{grid-template-columns:1fr}.summary{grid-template-columns:1fr}.match-grid{grid-template-columns:1fr!important}}

  /* ---- property lookup + match panel ---- */
  .addr-input{display:flex;gap:10px}
  .addr-input input{flex:1}
  .addr-check{white-space:nowrap;padding:10px 16px;font-size:12px}

  /* scope picker at intake */
  .scope-pick{display:flex;flex-wrap:wrap;gap:8px}
  .sp-opt{font-family:var(--font);font-size:13px;font-weight:700;border:1px solid #d0d0d0;background:#fff;color:var(--jr-gray);border-radius:24px;padding:9px 16px;cursor:pointer;transition:.18s}
  .sp-opt:hover{border-color:var(--jr-gray)}
  .sp-opt.on{background:var(--jr-grad);color:#fff;border-color:transparent}
  .scope-pick.invalid .sp-opt{border-color:#f0c9ca}
  /* marketing collateral (scope-aware) */
  .collateral{margin-top:20px;border:1px solid var(--jr-light);border-radius:2px;background:#fafafa;padding:16px 18px}
  .coll-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}
  .coll-head h3{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;font-weight:800}
  .coll-sub{font-size:11px;color:#9a9a9a;font-weight:600}
  .coll-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
  .coll-item{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid var(--jr-light);border-radius:2px;padding:11px 13px;cursor:pointer;text-decoration:none;color:inherit;transition:border-color .15s var(--ease)}
  .coll-item:hover{border-color:var(--jr-red)}
  .coll-ic{width:34px;height:34px;border-radius:2px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}
  .coll-ic.sell{background:var(--jr-grad)}.coll-ic.case{background:var(--jr-black)}.coll-ic.spec{background:#404040}.coll-ic.warranty{background:#8a8a8a}
  .coll-item .ct{min-width:0}
  .coll-item .ct b{font-size:13px;font-weight:700;display:block;line-height:1.2}
  .coll-item .ct span{font-size:10px;color:#9a9a9a;text-transform:uppercase;letter-spacing:.5px;font-weight:700}
  .coll-scope-lbl{grid-column:1/-1;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;font-weight:800;color:var(--jr-red-dark);margin-top:6px}
  .coll-scope-lbl:first-child{margin-top:0}
  #scopeHint.err{color:var(--jr-red);font-weight:600}
  .avatar.lg{width:40px;height:40px;font-size:14px}

  .match-card{display:none}
  .match-card.show{display:block;animation:fade .35s var(--ease)}

  .scanning{display:flex;align-items:center;gap:18px;padding:26px 24px}
  .scanning b{display:block;font-size:14px}
  .scanning span{font-size:12px;color:var(--jr-gray)}
  .radar{width:34px;height:34px;border-radius:50%;border:3px solid var(--jr-light);border-top-color:var(--jr-red);animation:spin .8s linear infinite;flex-shrink:0}
  @keyframes spin{to{transform:rotate(360deg)}}

  .match-found{display:none}
  .match-found.show{display:block}

  .match-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:var(--jr-black);color:#fff}
  .match-head .mh-left{display:flex;align-items:center;gap:14px}
  .match-head .mh-right{display:flex;align-items:center;gap:14px;flex-shrink:0}
  .match-kpi{font-size:14px;font-weight:800;color:#fff;letter-spacing:.3px;white-space:nowrap;line-height:1.2;text-align:right}
  .match-kpi-sub{display:block;font-size:10px;font-weight:600;color:#bdbdbd;letter-spacing:.2px;margin-top:2px;text-transform:uppercase}
  .match-head .btn.ghost{color:#fff;border-color:rgba(230,230,230,.24)}
  .match-head .btn.ghost:hover{border-color:var(--jr-red);background:rgba(233,42,44,.10);color:#fff}
  .mh-title{font-weight:800;font-size:15px;letter-spacing:.3px}
  .mh-sub{font-size:12px;color:#bdbdbd;margin-top:2px}
  .pulse{width:12px;height:12px;border-radius:50%;background:var(--jr-red);position:relative;flex-shrink:0}
  .pulse::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--jr-red);animation:pp 1.6s ease-out infinite}
  @keyframes pp{0%{transform:scale(.6);opacity:.9}100%{transform:scale(1.8);opacity:0}}
  .touch-badge{background:var(--jr-grad);color:#fff;font-size:11px;font-weight:800;letter-spacing:.5px;padding:7px 13px;border-radius:20px;white-space:nowrap}

  .match-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px;background:var(--jr-light)}
  .mblock{background:#fff;padding:18px}
  .mblock-lbl{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#9a9a9a;font-weight:800;margin-bottom:14px}
  .mblock-lbl .stripes{transform:skewX(-26deg)}

  .cust{display:flex;align-items:center;gap:12px}
  .cust b{display:block;font-size:14px}
  .cust span{font-size:11px;color:var(--jr-gray)}
  .match-cof{
    display:flex;
    flex-direction:column;
    padding-bottom:18px;
  }
  .match-cof > .cof-fields{
    min-width:0;
    margin-top:12px;
    display:flex;
    flex-direction:column;
    gap:7px;
  }
  .match-cof > .svc-mini-chart.show{
    align-self:flex-end;
    margin-top:12px;
  }
  .cof-fields{margin-top:12px;display:flex;flex-direction:column;gap:7px}
  .cof-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:12px;min-width:0}
  .cof-row span{color:var(--jr-gray);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:800;flex-shrink:0;width:72px;padding-top:1px}
  .cof-row b{flex:1;min-width:0;font-weight:600;text-align:right;overflow-wrap:break-word;word-break:normal;white-space:normal;line-height:1.35}

  .match-pickers{margin-top:14px;display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid #f0f0f0}
  .match-picker label{display:block;font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--jr-gray);margin-bottom:4px}
  .match-picker select{width:100%;padding:7px 9px;border:1px solid #d4d4d4;border-radius:2px;font-family:var(--font);font-size:12px;background:#fafafa;color:#202020}
  .match-picker select:focus{outline:none;border-color:var(--jr-red);box-shadow:0 0 0 3px rgba(233,42,44,.12)}
  .match-new-contact,.match-new-property{display:none;flex-direction:column;gap:8px;margin-top:4px;padding:10px;background:#f8f8f8;border:1px solid #ececec;border-radius:2px}
  .match-new-contact.show,.match-new-property.show{display:flex}
  .match-new-contact input,.match-new-property input{padding:7px 9px;border:1px solid #d4d4d4;border-radius:2px;font-family:var(--font);font-size:12px}
  .match-new-contact .btn,.match-new-property .btn{align-self:flex-start}
  .side-prop-need{margin-top:8px;font-size:11px;line-height:1.45}
  .side-prop-need .need-lbl{display:block;font-weight:800;color:var(--jr-red-dark);margin-bottom:6px;text-transform:uppercase;letter-spacing:.4px}
  .side-prop-need .btn-nav{font-size:10px;padding:4px 10px}

  .entity-resolve-bar{margin:0 0 12px;padding:12px 14px;background:#fff;border:1px solid var(--jr-light);border-left:3px solid var(--jr-red)}
  .entity-resolve-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
  .entity-resolve-stack{flex-direction:column;align-items:stretch}
  .entity-resolve-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#404040}
  .entity-q{font-size:12px;color:#404040;margin:0}
  .entity-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
  .entity-row{display:flex;flex-direction:column;gap:2px;padding:8px 10px;background:#f8f8f8;border:1px solid #eee}
  .entity-row .entity-src{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--jr-red-dark)}
  .entity-row b{font-size:13px}
  .entity-row .entity-meta{font-size:11px;color:var(--jr-gray)}
  .entity-master-pick{display:flex;flex-direction:column;gap:6px;margin-top:4px}
  .entity-radio{font-size:12px;display:flex;align-items:center;gap:8px}
  .entity-resolve-msg{font-size:12px;color:#404040}
  .entity-resolve-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
  .entity-resolve-actions .btn.sm{padding:6px 12px;font-size:11px}
  .chip em{font-style:normal;opacity:.6;font-weight:500}
  .relation-note{font-size:11px;color:var(--jr-red-dark);font-weight:700;margin-top:14px}

  .hist-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #f0f0f0}
  .hist-row:last-child{border-bottom:none}
  .hist-row .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
  .hist-row.won .dot{background:#202020}.hist-row.svc .dot{background:var(--jr-red)}.hist-row.lost .dot{background:#9a9a9a}
  .hist-row b{display:block;font-size:13px}
  .hist-row span{font-size:11px;color:var(--jr-gray)}
  .hist-row div{flex:1;min-width:0}
  .hist-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
  .hist-title-row b{flex:1;min-width:0}
  .hist-val{font-size:12px;font-weight:800;color:#202020;white-space:nowrap;flex-shrink:0}
  .hist-meta{display:block;font-size:11px;color:var(--jr-gray);margin-top:1px}
  .hist-rep{display:block;font-size:10px;color:#bdbdbd;margin-top:3px;font-weight:600}
  .match-service{background:#fff;padding:18px;border-top:1px solid var(--jr-light)}
  .svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:6px}
  .svc-col .svc-sub{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--jr-gray);margin-bottom:8px}
  .svc-col .svc-kpi{font-weight:600;color:#8a8a8a;letter-spacing:0;text-transform:none}
  @media(max-width:760px){.svc-grid{grid-template-columns:1fr}}
  .svc-mini-chart{display:none;width:min(100%,248px);padding:8px 8px 6px;background:#fafafa;border:1px solid #ececec;border-radius:2px;box-shadow:0 1px 4px rgba(32,32,32,.06)}
  .svc-mini-chart.show{display:block}
  .svc-chart-title{font-size:8px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:#9a9a9a;margin-bottom:6px;line-height:1.2}
  .svc-chart-rows{display:flex;flex-direction:column;gap:3px}
  .svc-hbar{display:grid;grid-template-columns:minmax(0,42%) 1fr auto;align-items:center;gap:5px 8px;min-width:0;cursor:default}
  .svc-hbar-lbl{font-size:7px;font-weight:700;color:#8a8a8a;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .svc-hbar-track{height:8px;background:#ececec;border-radius:1px;overflow:hidden;min-width:0}
  .svc-hbar-fill{height:100%;background:linear-gradient(90deg,var(--jr-red) 0%,var(--jr-red-dark) 100%);border-radius:1px;min-width:3px;transition:width .35s var(--ease, ease)}
  .svc-hbar.here .svc-hbar-fill{box-shadow:inset 0 0 0 1px rgba(32,32,32,.35)}
  .svc-hbar-val{font-size:7px;font-weight:800;color:#404040;white-space:nowrap;line-height:1}
  @media(max-width:960px){
    .match-cof > .svc-mini-chart.show{align-self:stretch;width:100%;max-width:100%}
  }
  .tag{font-size:9px;font-weight:800;letter-spacing:.8px;padding:3px 7px;border-radius:3px;color:#fff}
  .tag.won{background:#202020}.tag.svc{background:var(--jr-red)}.tag.lost{background:#9a9a9a}

  .timeline{list-style:none}
  .timeline li{display:flex;gap:11px;padding:7px 0}
  .t-dot{width:9px;height:9px;border-radius:50%;background:#cfcfcf;margin-top:5px;flex-shrink:0}
  .t-dot.red{background:var(--jr-red);box-shadow:0 0 0 3px rgba(233,42,44,.18)}
  .timeline b{font-size:13px}
  .timeline span{display:block;font-size:11px;color:var(--jr-gray)}

  .match-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px;background:#faf3f3;border-top:1px solid #f0dede}
  .ma-note{font-size:12px;color:var(--jr-gray);max-width:560px}
  .ma-note b{color:var(--jr-black)}
  .match-actions .btn{flex-shrink:0}

  /* ---- roof analysis module ---- */
  .prefill-tag{margin-left:auto;font-size:10px;letter-spacing:.5px;color:var(--jr-gray);font-weight:600;background:#f0f0f0;padding:5px 10px;border-radius:4px}
  .roof-body{display:flex;flex-direction:column;gap:20px}
  .roof-map-hero{width:100%}
  .roof-map-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;flex-wrap:wrap}
  .roof-map-bar .capture-method{margin:0;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#9a9a9a;font-weight:800;flex-shrink:0}
  .roof-map-search{display:flex;align-items:center;gap:6px;flex:1;min-width:200px;max-width:420px;margin-left:auto}
  .roof-map-search input{flex:1;min-width:0;padding:7px 10px;border:1px solid #d4d4d4;border-radius:2px;font-family:var(--font);font-size:12px;background:#fff}
  .roof-map-search input:focus{outline:none;border-color:var(--jr-red);box-shadow:0 0 0 3px rgba(233,42,44,.12)}
  .roof-map-refresh{flex-shrink:0}
  .sat-wrap--hero{aspect-ratio:21/9;max-height:min(52vh,520px);min-height:220px}
  .roof-below{display:flex;flex-direction:column;gap:14px}
  .roof-work-grid{display:grid;grid-template-columns:minmax(0,360px) 1fr;gap:24px;align-items:start}
  .roof-left{min-width:0}
  @media(max-width:900px){.roof-work-grid{grid-template-columns:1fr}}

  /* Property Lookup ATTOM estimate + actions (below map — no duplicate image) */
  .roof-sat-panel{border:1px solid #e0e0e0;border-radius:2px;background:#fafafa}
  .roof-sat-panel-body{padding:12px 14px}
  .rms-roof-est-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}
  .rms-roof-est-chips{display:flex;flex-wrap:wrap;gap:10px;flex:1}
  .rms-roof-chip{background:#fff;border:1px solid #e8e8e8;border-radius:2px;padding:8px 12px;flex:1;min-width:140px}
  .rms-roof-chip.primary{border-color:rgba(233,42,44,.35);background:#fff8f8}
  .rms-roof-chip-lbl{font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#9a9a9a}
  .rms-roof-chip-val{font-size:18px;font-weight:800;color:#202020;line-height:1.2}
  .rms-roof-chip-sub{font-size:10px;color:#888;margin-top:2px}
  .rms-roof-sat-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:11px}
  .rms-roof-sat-actions a{color:var(--jr-red-dark);font-weight:700;text-decoration:none}
  .rms-roof-vision{margin-top:8px;padding:8px 10px;background:#f4f4f4;border-radius:2px;font-size:11px}
  .rms-roof-flow-hint{margin:8px 0 0;font-size:11px;line-height:1.45;color:#666}
  .rms-roof-vision-ok{color:#404040}
  .sat-img.has-satellite::before,.sat-img.has-satellite::after{display:none}

  .canvas-tools{display:flex;align-items:center;gap:8px;margin-bottom:10px}
  .canvas-tools .ct-lbl{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#9a9a9a;font-weight:800;margin-right:4px}
  .ct-btn{font-family:var(--font);font-size:11px;font-weight:700;border:1px solid #d4d4d4;background:#fff;color:var(--jr-gray);border-radius:2px;padding:7px 11px;cursor:pointer;transition:.18s}
  .ct-btn:hover{border-color:var(--jr-gray)}
  .ct-btn.active{background:var(--jr-grad);color:#fff;border-color:transparent}

  .sat-wrap{position:relative;width:100%;aspect-ratio:1/.82;border-radius:2px;overflow:hidden;cursor:crosshair;border:1px solid #d0d0d0}
  .sat-wrap.mode-pan{cursor:grab}
  .sat-wrap.mode-pan.is-panning{cursor:grabbing}
  .sat-stage{position:absolute;inset:0;transform-origin:0 0;will-change:transform}
  .sat-img{position:absolute;inset:0;
    background:
      repeating-linear-gradient(90deg,rgba(0,0,0,.05) 0 2px,transparent 2px 46px),
      repeating-linear-gradient(0deg,rgba(0,0,0,.05) 0 2px,transparent 2px 46px),
      radial-gradient(circle at 30% 35%,#6b7a52,#566042 40%,#3f4733 100%);
  }
  .sat-img::before{content:"";position:absolute;left:30%;top:32%;width:34%;height:30%;background:linear-gradient(135deg,#8a8175,#6f675c);box-shadow:0 8px 20px rgba(0,0,0,.4);transform:rotate(-8deg);border-radius:2px}
  .sat-img::after{content:"";position:absolute;left:14%;top:62%;width:20%;height:14%;background:#7d756a;transform:rotate(-8deg);opacity:.8;box-shadow:0 6px 14px rgba(0,0,0,.4)}
  /* elevation (façade) mode for cladding & glass */
  .sat-img.elevation{background:
      repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 1px,transparent 1px 38px),
      repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 1px,transparent 1px 30px),
      linear-gradient(180deg,#9aa4b0,#7f8893 60%,#6b7480 100%);}
  .sat-img.elevation::before{content:"";left:18%;top:14%;width:64%;height:72%;background:repeating-linear-gradient(0deg,#aeb6c0 0 30px,#9aa3ad 30px 34px);transform:none;border-radius:0;box-shadow:inset 0 0 0 2px rgba(0,0,0,.15)}
  .sat-img.elevation::after{content:"";left:24%;top:24%;width:14%;height:12%;background:#5b6470;border:2px solid #cfd6de;transform:none;opacity:.9;box-shadow:18% 0 #5b6470}
  #roofSvg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
  #roofSvg .roof-pt-handle{pointer-events:all}
  #roofSvg polygon{fill:rgba(233,42,44,.14);stroke:var(--jr-red);stroke-width:.55;stroke-linejoin:round;vector-effect:non-scaling-stroke}
  #roofSvg polyline{fill:none;stroke:var(--jr-red);stroke-width:.55;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}
  #roofSvg circle.roof-pt-handle{fill:rgba(255,255,255,.92);stroke:var(--jr-red);stroke-width:.45;cursor:grab;vector-effect:non-scaling-stroke}
  #roofSvg circle.roof-pt-handle:active{cursor:grabbing}
  #roofSvg circle.roof-pt-dot{fill:var(--jr-red);pointer-events:none;vector-effect:non-scaling-stroke}
  .sat-view-ctrl{position:absolute;top:10px;right:10px;display:flex;align-items:center;gap:2px;background:rgba(0,0,0,.58);border-radius:4px;padding:3px;z-index:4;box-shadow:0 2px 8px rgba(0,0,0,.25)}
  .sat-view-btn{font-family:var(--font);font-size:15px;font-weight:800;line-height:1;width:28px;height:28px;border:0;border-radius:3px;background:transparent;color:#fff;cursor:pointer;padding:0}
  .sat-view-btn:hover{background:rgba(255,255,255,.14)}
  .sat-view-btn.active{background:rgba(233,42,44,.55)}
  .sat-view-lbl{font-size:10px;font-weight:700;color:#e6e6e6;min-width:38px;text-align:center;letter-spacing:.3px;user-select:none}
  .sat-view-reset{font-size:13px;margin-left:2px}
  .sat-tag{position:absolute;left:8px;bottom:8px;font-size:10px;color:#fff;background:rgba(0,0,0,.5);padding:3px 8px;border-radius:3px;letter-spacing:.5px}
  .draw-hint{position:absolute;top:10px;left:50%;transform:translateX(-50%);font-size:11px;font-weight:700;color:#fff;background:var(--jr-grad);padding:6px 12px;border-radius:20px;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.3);transition:opacity .3s}
  .draw-hint.hide{opacity:0;pointer-events:none}

  .canvas-read{display:flex;align-items:center;gap:14px;margin-top:12px;padding:12px 14px;background:#f6f6f6;border-radius:2px;border:1px solid #ececec}
  .canvas-read>div{display:flex;flex-direction:column}
  .canvas-read span{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#9a9a9a;font-weight:700}
  .canvas-read b{font-size:16px;font-weight:800}
  .sm-btn{margin-left:auto;padding:9px 14px;font-size:12px}

  .roof-right{min-width:0}
  .calc-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 16px}
  .ci label{display:block;font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--jr-gray);font-weight:700;margin-bottom:5px}
  .ci input,.ci select{width:100%;padding:8px 10px;border:1px solid #d4d4d4;border-radius:2px;font-family:var(--font);font-size:13px;background:#fafafa}
  .ci input:focus,.ci select:focus{outline:none;border-color:var(--jr-red);box-shadow:0 0 0 3px rgba(233,42,44,.12)}
  .ci.toggle-mini{flex-direction:row;display:flex;align-items:center;justify-content:space-between;background:#fafafa;border:1px solid #ececec;border-radius:2px;padding:6px 10px}
  .ci.toggle-mini label:first-child{margin:0}
  .switch.sm{width:42px;height:24px}
  .switch.sm .thumb{width:18px;height:18px}
  .switch.sm input:checked + .track + .thumb{transform:translateX(18px)}

  .calc-inputs.roof-calc-stack{grid-template-columns:1fr;gap:0}
  .roof-calc-form{display:flex;flex-direction:column;gap:14px}
  .roof-calc-primary{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
  .roof-ci-full,.roof-field-row,.roof-toggle-row,.roof-conditional-block,.roof-calc-card{grid-column:1/-1}
  .roof-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
  .roof-field-hint{font-size:11px;color:#9a9a9a;margin-top:4px;line-height:1.4}
  .roof-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#fafafa;border:1px solid #ececec;border-radius:2px}
  .roof-toggle-lbl{font-size:13px;font-weight:700;color:var(--jr-black)}
  .roof-toggle-sub{font-size:11px;color:#9a9a9a;margin-top:2px;line-height:1.35}
  .roof-conditional-block{border-top:1px solid #ececec;padding-top:10px}
  .roof-block-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#9a9a9a;font-weight:800;margin-bottom:8px}
  .roof-calc-card{border:1px solid #e0e0e0;border-radius:2px;background:#fff;overflow:hidden}
  .roof-calc-card-head{background:#f6f3ed;padding:10px 12px;font-size:11px;letter-spacing:1px;text-transform:uppercase;font-weight:800;color:var(--jr-black)}
  .roof-calc-card-head--click{cursor:pointer;display:flex;align-items:center;justify-content:space-between;user-select:none}
  .roof-calc-card-body{padding:12px;display:flex;flex-direction:column;gap:10px}
  .roof-override-actions{display:flex;gap:8px;margin-top:4px}
  .roof-override-actions .btn.dark{flex:1}
  .roof-pricing-note{margin:0;font-size:11px;color:#9a9a9a}
  .core-impact-wrap{display:flex;align-items:center;gap:8px}
  .core-impact-badge{font-family:var(--mono,monospace);font-size:10px;padding:3px 8px;border-radius:3px;background:#404040;color:#f4f4f4;text-transform:none;letter-spacing:0;font-weight:600}
  .core-impact-badge.active{background:#ef9f27;color:#000}
  .core-chevron{font-size:12px;transition:transform .2s;color:#9a9a9a}
  .proposal-type-btns{display:flex;border:1px solid #d4d4d4;border-radius:2px;overflow:hidden;width:fit-content}
  .proposal-type-btn{padding:7px 18px;font-size:12px;border:none;background:#f0f0f0;color:#666;cursor:pointer;font-family:var(--font);font-weight:700}
  .proposal-type-btn.active{background:var(--jr-red);color:#fff}
  .proposal-type-btn:disabled{opacity:.4;cursor:not-allowed}
  .tearoff-forced-note{font-size:11px;color:var(--jr-red);margin-top:6px;font-family:var(--mono,monospace)}
  .core-findings-list{display:flex;flex-direction:column;gap:8px}
  .core-finding-row{display:flex;align-items:flex-start;gap:10px}
  .finding-btn{flex:0 0 62px;padding:5px 0;font-family:var(--mono,monospace);font-size:10px;letter-spacing:1px;text-transform:uppercase;border:none;border-radius:2px;cursor:pointer}
  .finding-btn.clear{background:#2e7d32;color:#fff}
  .finding-btn.found{background:var(--jr-red);color:#fff}
  .finding-label{font-size:13px;font-weight:600;color:var(--jr-black);line-height:1.35}
  .finding-desc{font-size:11px;color:#9a9a9a;font-family:var(--mono,monospace);line-height:1.35}
  .deck-pct-pills{display:flex;gap:6px;margin-bottom:4px}
  .dpill{padding:3px 12px;font-size:11px;font-family:var(--mono,monospace);border:1px solid #d4d4d4;border-radius:2px;background:transparent;color:#666;cursor:pointer}
  .dpill-active{background:#ef9f27;color:#000!important;border-color:#ef9f27}
  .deck-pct-note{font-size:10px;color:#b8860b;font-family:var(--mono,monospace)}
  .breakdown tr.core-section-head td{font-family:var(--mono,monospace);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#b8860b;padding:10px 0 4px;border-bottom:none;background:#fffbf0}
  .breakdown tr.core-line td{font-size:12px}
  @media(max-width:860px){.roof-calc-primary,.roof-field-row{grid-template-columns:1fr}}

  .derived{margin:16px 0 12px;font-size:13px;color:var(--jr-gray)}
  .derived b{color:var(--jr-black);font-size:15px}

  .range{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
  .rg{border:1px solid var(--jr-light);border-radius:2px;padding:14px 12px;text-align:center;background:#fafafa}
  .rg span{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#9a9a9a;font-weight:800;display:block}
  .rg b{font-size:22px;font-weight:800;display:block;margin:6px 0 2px}
  .rg em{font-style:normal;font-size:11px;color:var(--jr-gray)}
  .rg.mid{background:#faf3f3;border-color:#f0c9ca}
  .rg.mid b{color:var(--jr-red)}

  .bd-title{margin:20px 0 8px;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:800}
  .bd-title span{color:#9a9a9a;font-weight:600}
  .breakdown{width:100%;border-collapse:collapse;font-size:13px}
  .breakdown tr{border-bottom:1px solid #f0f0f0}
  .breakdown td{padding:8px 0}
  .breakdown td:nth-child(2){text-align:right;color:var(--jr-gray);font-size:12px}
  .breakdown td:nth-child(3){text-align:right;font-weight:700;width:90px}
  .breakdown tr.total td{font-weight:800;border-top:2px solid var(--jr-black);border-bottom:none;padding-top:10px}
  .breakdown tr.total td:last-child{color:var(--jr-red)}

  .ops{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}
  .op{background:var(--jr-black);color:#fff;border-radius:2px;padding:12px 14px}
  .op span{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#9a9a9a;font-weight:800;display:block}
  .op b{font-size:18px;font-weight:800;display:block;margin:4px 0 2px}
  .op em{font-style:normal;font-size:10px;color:#bdbdbd}
  .calc-note{font-size:11px;color:#9a9a9a;margin-top:14px;line-height:1.5}
  @media(max-width:860px){.roof-body{grid-template-columns:1fr}.calc-inputs{grid-template-columns:1fr 1fr}}

  /* ---- scope-aware estimator ---- */
  .scope-tabs{display:flex;gap:2px;background:var(--jr-light);padding:0;border-bottom:1px solid var(--jr-light)}
  .sc-tab{flex:1;background:#f0f0f0;border:none;border-top:3px solid transparent;padding:14px 16px;cursor:pointer;text-align:left;transition:.2s;font-family:var(--font)}
  .sc-tab:hover{background:#e9e9e9}
  .sc-tab.active{background:#fff;border-top-color:var(--jr-red)}
  .sct-name{display:block;font-weight:800;font-size:13px;letter-spacing:.3px;color:var(--jr-black)}
  .sct-conf{display:inline-block;margin-top:6px;font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;padding:3px 7px;border-radius:3px}
  .sct-conf.high{background:#ececec;color:#202020}
  .sct-conf.med{background:#ececec;color:#404040}
  .sct-conf.low{background:#fae8e8;color:var(--jr-red-dark)}

  .capture-method{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#9a9a9a;font-weight:800;margin-bottom:10px}

  .conf-band{margin:14px 0;padding:12px 14px;border-radius:2px;font-size:12px;line-height:1.5;border-left:4px solid}
  .conf-band.high{background:#f4f4f4;border-color:#202020;color:#404040}
  .conf-band.med{background:#f4f4f4;border-color:#404040;color:#404040}
  .conf-band.low{background:#fbf0f0;border-color:var(--jr-red);color:var(--jr-red-dark)}
  .conf-band b{font-weight:800}

  /* glass schedule */
  .glass-sched{margin-top:14px;padding:14px;background:#f6f6f6;border:1px solid #ececec;border-radius:2px}
  .gs-title{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:800;color:#9a9a9a;margin-bottom:10px}
  .gs-table{width:100%;border-collapse:collapse;font-size:12px}
  .gs-table th{text-align:left;font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:#9a9a9a;font-weight:800;padding:4px 6px}
  .gs-table td{padding:4px 6px}
  .gs-table input,.gs-table select{width:100%;padding:6px 8px;border:1px solid #d4d4d4;border-radius:4px;font-family:var(--font);font-size:12px;background:#fff}
  .gs-table .gx{cursor:pointer;color:#bbb;text-align:center;font-weight:700}
  .gs-table .gx:hover{color:var(--jr-red)}

  /* roll-up */
  .rollup{border-top:1px solid var(--jr-light);padding:18px 22px;background:#fafafa}
  .ru-title{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:800;margin-bottom:12px}
  .ru-title span{color:#9a9a9a;font-weight:600}
  .ru-rows{display:flex;flex-direction:column;gap:2px}
  .ru-row{display:grid;grid-template-columns:1.4fr .8fr 1fr auto;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid #efefef;font-size:13px}
  .ru-row:last-child{border-bottom:none}
  .ru-row.total{border-top:2px solid var(--jr-black);border-bottom:none;font-weight:800;padding-top:12px;margin-top:4px}
  .ru-row .ru-name{font-weight:700;display:flex;align-items:center;gap:8px}
  .ru-row .ru-qty{color:var(--jr-gray);font-size:12px}
  .ru-row .ru-val{font-weight:800}
  .ru-row.total .ru-val{color:var(--jr-red);font-size:16px}
  .ru-pill{font-size:9px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:2px 6px;border-radius:3px}
  .ru-pill.high{background:#ececec;color:#202020}.ru-pill.med{background:#ececec;color:#404040}.ru-pill.low{background:#fae8e8;color:var(--jr-red-dark)}

  /* ---- estimate intake ---- */
  .intake{border-top:1px solid var(--jr-light);padding:20px 22px;background:#fff}
  .intake-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
  .ih-title{font-size:14px;font-weight:800;letter-spacing:.3px;display:block}
  .ih-title em{font-style:normal;color:var(--jr-red);font-weight:700}
  .ih-sub{font-size:12px;color:var(--jr-gray)}
  .view-toggle{display:inline-flex;border:1px solid #d4d4d4;border-radius:2px;overflow:hidden}
  .vt{font-family:var(--font);font-size:12px;font-weight:700;border:none;background:#fff;color:var(--jr-gray);padding:8px 14px;cursor:pointer}
  .vt.active{background:var(--jr-black);color:#fff}

  .intake-progress{display:flex;align-items:center;gap:14px;margin-bottom:18px}
  .ip-bar{flex:1;height:8px;background:#ececec;border-radius:2px;overflow:hidden}
  .ip-fill{height:100%;width:0;background:var(--jr-grad);transition:width .35s var(--ease)}
  .ip-count{font-size:12px;color:var(--jr-gray);font-weight:600;white-space:nowrap}
  .ip-status{font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;padding:5px 10px;border-radius:4px;white-space:nowrap}
  .ip-status.pending{background:#fae8e8;color:var(--jr-red-dark)}
  .ip-status.ready{background:#ececec;color:#202020}

  .intake-section{margin-bottom:8px;border:1px solid var(--jr-light);border-radius:2px;overflow:hidden}
  .isec-head{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:#f6f6f6;cursor:pointer}
  .isec-head .ish-t{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase}
  .isec-head .ish-c{font-size:11px;color:#9a9a9a;font-weight:700}
  .isec-head .ish-c.done{color:#202020}
  .isec-body{padding:4px 14px 12px}
  .iq{padding:13px 0;border-bottom:1px solid #f2f2f2}
  .iq:last-child{border-bottom:none}
  .iq-q{font-size:13px;font-weight:600;margin-bottom:2px}
  .iq-q .qreq{color:var(--jr-red)}
  .iq-help{font-size:11px;color:#9a9a9a;margin-bottom:9px}
  .yn{display:inline-flex;gap:6px}
  .yn button{font-family:var(--font);font-size:12px;font-weight:700;border:1px solid #d4d4d4;background:#fff;color:var(--jr-gray);border-radius:2px;padding:7px 16px;cursor:pointer;transition:.15s}
  .yn button.on{color:#fff;border-color:transparent}
  .yn button.on[data-v="YES"]{background:#202020}
  .yn button.on[data-v="NO"]{background:var(--jr-gray)}
  .yn button.on[data-v="N/A"]{background:#9a9a9a}
  .iq select,.iq input[type=text]{padding:8px 10px;border:1px solid #d4d4d4;border-radius:2px;font-family:var(--font);font-size:13px;background:#fafafa;min-width:240px;max-width:100%}
  .iq-multi{display:flex;flex-wrap:wrap;gap:6px}
  .iq-multi button{font-family:var(--font);font-size:11px;font-weight:600;border:1px solid #d4d4d4;background:#fff;color:var(--jr-gray);border-radius:16px;padding:6px 12px;cursor:pointer}
  .iq-multi button.on{background:var(--jr-grad);color:#fff;border-color:transparent}
  .photo-req{display:none;align-items:center;gap:8px;margin-top:10px;padding:8px 11px;border:1px dashed var(--jr-red);border-radius:2px;background:#fbf3f3;font-size:11px;color:var(--jr-red-dark);font-weight:600}
  .photo-req.show{display:inline-flex}
  .photo-req.satisfied{border-style:solid;border-color:#202020;background:#f4f4f4;color:#202020}
  .photo-req button{font-family:var(--font);font-size:11px;font-weight:700;border:none;background:var(--jr-black);color:#fff;border-radius:4px;padding:5px 10px;cursor:pointer}

  .one-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin:14px 0;font-size:13px;font-weight:700;color:var(--jr-gray)}

  .submit-gate{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px;padding:16px 18px;background:var(--jr-black);border-radius:2px}
  /* transient enrichment / process toast */
  #toastWrap{position:fixed;right:22px;bottom:22px;z-index:300;display:flex;flex-direction:column;gap:10px;pointer-events:none}
  .toast{background:var(--jr-black);color:#fff;border-radius:3px;padding:13px 16px;min-width:280px;max-width:380px;box-shadow:0 16px 40px -12px rgba(0,0,0,.5);display:flex;gap:12px;align-items:flex-start;opacity:0;transform:translateY(10px);transition:opacity .35s var(--ease),transform .35s var(--ease);border-left:3px solid var(--jr-red)}
  .toast.show{opacity:1;transform:none}
  .toast .ti{width:30px;height:30px;border-radius:2px;background:var(--jr-grad);display:flex;align-items:center;justify-content:center;flex-shrink:0}
  .toast .tx b{font-size:13px;font-weight:800;display:block;letter-spacing:.2px}
  .toast .tx span{font-size:12px;color:#cfcfcf;line-height:1.4}
  .toast .tx .agent{display:inline-flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.5px;text-transform:uppercase;font-weight:800;color:#ff9a9b;margin-top:6px}
  .toast .dots i{display:inline-block;width:4px;height:4px;border-radius:50%;background:#ff9a9b;margin-left:3px;animation:tdot 1s infinite}
  .toast .dots i:nth-child(2){animation-delay:.2s}.toast .dots i:nth-child(3){animation-delay:.4s}
  @keyframes tdot{0%,60%,100%{opacity:.3}30%{opacity:1}}
  /* qualification gate */
  .gate-card .gate-verdict{margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;padding:4px 10px;border-radius:2px;background:#ececec;color:#9a9a9a}
  .gate-card .gate-verdict.ready{background:var(--jr-grad);color:#fff}
  .gate-card .gate-verdict.partial{background:#fdf3e3;color:#a8690e}
  .gate-intro{font-size:13px;color:#6b6b6b;margin-bottom:18px;line-height:1.5}
  .gq{border:1px solid var(--jr-light);border-radius:2px;margin-bottom:12px;overflow:hidden}
  .gq-h{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fafafa;border-bottom:1px solid var(--jr-light)}
  .gq-n{width:24px;height:24px;border-radius:2px;background:var(--jr-black);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0}
  .gq.answered .gq-n{background:var(--jr-grad)}
  .gq-t{flex:1}.gq-t b{font-size:13px;display:block}.gq-t span{font-size:11px;color:#9a9a9a}
  .gq-tag{font-size:8px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:3px 7px;border-radius:2px;white-space:nowrap}
  .gq-tag.hard{background:#faecec;color:var(--jr-red-dark)}
  .gq-tag.soft{background:#ececec;color:#6b6b6b}
  .gq-body{padding:14px}
  .ins-block{margin-top:12px;padding:12px 14px;background:#f7f7f7;border:1px solid var(--jr-light);border-radius:2px}
  .ins-lbl{font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:800;color:#9a9a9a;margin-bottom:10px}
  .gate-foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px;padding:16px 18px;background:var(--jr-black);border-radius:2px}
  .gate-status{display:flex;align-items:center;gap:8px;font-size:13px;color:#cfcfcf;font-weight:600}
  .gate-status.ok{color:#9fdcb6}
  .gate-actions{margin-left:auto;display:flex;gap:10px}
  .sg-note{font-size:12px;color:#bdbdbd}
  .sg-note b{color:#fff}
  .sg-actions{display:flex;gap:10px}
  .stub-mini{font-size:9px;font-weight:800;letter-spacing:1px;background:var(--jr-gray);color:#fff;padding:3px 7px;border-radius:3px;margin-left:6px}
  .intake-stub{padding:24px;text-align:center;color:#9a9a9a;font-size:13px;border:2px dashed #d4d4d4;border-radius:2px;background:repeating-linear-gradient(45deg,#fafafa 0 10px,#f4f4f4 10px 20px)}

  /* ---- intelligence layer ---- */
  .layer-divider{display:flex;align-items:center;gap:10px;margin:28px 0 14px;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:800;color:var(--jr-black)}
  .layer-divider .stripes{transform:skewX(-26deg)}
  .layer-divider em{font-style:normal;font-weight:500;letter-spacing:0;text-transform:none;color:#9a9a9a;font-size:12px}
  .dark-head{background:var(--jr-black)}
  .dark-head h2{color:#fff}.dark-head h2 .thin{color:#cfcfcf}
  .owner-tag{margin-left:auto;font-size:10px;letter-spacing:.5px;color:#ffd2d2;font-weight:700;background:rgba(255,255,255,.08);padding:5px 10px;border-radius:4px}

  .ews-locked{display:flex;align-items:center;gap:16px;padding:20px;border:2px dashed #d0d0d0;border-radius:2px;background:repeating-linear-gradient(45deg,#fafafa 0 10px,#f3f3f3 10px 20px)}
  .ews-locked .lock-ic{font-size:26px;flex-shrink:0;opacity:.6}
  .ews-locked b{display:block;font-size:14px}
  .ews-locked span{font-size:12px;color:var(--jr-gray)}

  .pvf{display:grid;grid-template-columns:1fr auto 1.3fr auto 1fr;gap:14px;align-items:center;margin-bottom:20px}
  .pvf-col{background:#fafafa;border:1px solid var(--jr-light);border-radius:2px;padding:14px}
  .pvf-col.formal{background:#faf3f3;border-color:#f0c9ca}
  .pvf-col.var{background:var(--jr-black)}
  .pvf-lbl{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#9a9a9a;font-weight:800;display:block;margin-bottom:6px}
  .pvf-col.var .pvf-lbl{color:#9a9a9a}
  .pvf-col b{font-size:22px;font-weight:800;display:block}
  .pvf-col.var b{color:#fff}
  .pvf-col em{font-style:normal;font-size:11px;color:var(--jr-gray);display:block;margin-top:3px}
  .pvf-col.var em{color:#bdbdbd}
  .pvf-arrow{font-size:20px;color:#cfcfcf;font-weight:700}
  .formal-entry{display:flex;gap:6px}
  .formal-entry input{flex:1;padding:8px 10px;border:1px solid #d4a;border-color:#d4d4d4;border-radius:2px;font-family:var(--font);font-size:15px;font-weight:700;background:#fff;min-width:0}
  .formal-entry input:focus{outline:none;border-color:var(--jr-red)}

  .ews-files{border-top:1px solid var(--jr-light);padding-top:16px}
  .ewsf-head{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:800;color:#9a9a9a;margin-bottom:10px;display:flex;justify-content:space-between}
  .ewsf-cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
  .ewsf-cats:empty{display:none}
  .ewsf-file{display:flex;align-items:center;gap:8px;background:#f6f6f6;border:1px solid #ececec;border-radius:2px;padding:7px 11px;font-size:12px}
  .ewsf-file .fic{width:24px;height:24px;border-radius:4px;background:var(--jr-grad);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
  .ewsf-file .fcat{font-size:9px;color:#9a9a9a;text-transform:uppercase;letter-spacing:.5px}
  .ewsf-cats{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
  .ewsf-file .ef-main{flex:1;min-width:0}
  .ewsf-file .ef-name{font-weight:600;font-size:13px;display:flex;align-items:center;gap:7px}
  .ewsf-file .ef-route{font-size:10px;color:#9a9a9a;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}
  .conf-pill{font-size:8px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:2px 6px;border-radius:3px}
  .conf-pill.high{background:#ececec;color:#202020}
  .conf-pill.rev{background:#ececec;color:#404040}
  .ewsf-file.needs-review{border-color:#e0e0e0;background:#f4f4f4}
  .ef-type{font-family:var(--font);font-size:12px;border:1px solid #d4d4d4;border-radius:2px;padding:6px 8px;background:#fff;flex-shrink:0;max-width:170px}
  .ef-type:focus{outline:none;border-color:var(--jr-red)}
  .ef-x{color:#c4c4c4;cursor:pointer;flex-shrink:0;padding:0 4px}.ef-x:hover{color:var(--jr-red)}
  .scanning-file{opacity:.85}
  .mini-radar{width:22px;height:22px;border-radius:50%;border:3px solid #e0e0e0;border-top-color:var(--jr-red);animation:spin .7s linear infinite;flex-shrink:0}
  .cat-route{font-size:11px;color:#9a9a9a;margin-top:8px}

  /* M365 */
  .m365 .head .m365-ic{width:26px;height:26px;border-radius:2px;background:#404040;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px}
  .ext-badge{margin-left:auto;font-size:10px;letter-spacing:.5px;font-weight:700;color:#404040;background:#ececec;padding:5px 10px;border-radius:4px}
  .m365-sync{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 22px;background:#f4f4f4;border-bottom:1px solid #e6e6e6}
  .sync-left{display:flex;align-items:center;gap:12px}
  .sync-dot{width:10px;height:10px;border-radius:50%;background:#202020;position:relative}
  .sync-dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid #202020;animation:pp 1.8s ease-out infinite}
  .sync-left b{display:block;font-size:13px}
  .sync-left span{font-size:12px;color:var(--jr-gray)}
  .gov-note{font-size:11px;color:#6b6b6b;background:#f4f4f4;border:1px solid #e0e0e0;padding:5px 10px;border-radius:4px}
  .m365-body{padding:18px 22px}
  .m365-tabs{display:flex;gap:8px;margin-bottom:14px}
  .mt{font-family:var(--font);font-size:12px;font-weight:700;border:1px solid #d4d4d4;background:#fff;color:var(--jr-gray);border-radius:2px;padding:8px 14px;cursor:pointer;display:flex;align-items:center;gap:7px}
  .mt.active{background:var(--jr-black);color:#fff;border-color:transparent}
  .mt .cnt{font-size:10px;font-weight:800;background:#ececec;color:var(--jr-gray);border-radius:2px;padding:1px 7px}
  .mt.active .cnt{background:rgba(255,255,255,.2);color:#fff}
  .mt .cnt.warn{background:#fae8e8;color:var(--jr-red-dark)}
  .m365-list{display:flex;flex-direction:column;gap:8px}
  .comm{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--jr-light);border-radius:2px}
  .comm .ch{width:30px;height:30px;border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:13px;color:#fff;flex-shrink:0}
  .comm .ch.email{background:#404040}.comm .ch.teams{background:#202020}
  .comm .c-main .c-subj{font-weight:700;font-size:13px}
  .comm .c-main .c-meta{font-size:11px;color:var(--jr-gray);margin-top:2px}
  .comm .c-main .c-snip{font-size:12px;color:#777;margin-top:4px;font-style:italic}
  .match-pill{font-size:8px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:2px 6px;border-radius:3px;margin-left:6px}
  .match-pill.exact{background:#ececec;color:#202020}
  .match-pill.domain{background:#ececec;color:#404040}
  .comm .c-act{display:flex;flex-direction:column;gap:6px;align-items:flex-end}
  .comm .c-act button{font-family:var(--font);font-size:11px;font-weight:700;border:1px solid #d4d4d4;background:#fff;color:var(--jr-gray);border-radius:2px;padding:6px 11px;cursor:pointer;white-space:nowrap}
  .comm .c-act button.attach{background:var(--jr-grad);color:#fff;border-color:transparent}
  .comm .c-act .promote-mini{font-size:10px;color:#9a9a9a;display:flex;align-items:center;gap:4px;cursor:pointer}
  .comm.is-attached{opacity:.6;background:#f6f6f6}
  .m365-empty{text-align:center;color:#9a9a9a;font-size:12px;padding:20px}
  @media(max-width:760px){.pvf{grid-template-columns:1fr}.pvf-arrow{display:none}.comm{grid-template-columns:auto 1fr}.c-act{grid-column:2}}

  /* ---- reference images ---- */
  .ref-imgs{margin-top:16px}
  .ri-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
  .ri-title{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:800;color:#9a9a9a}
  .ri-count{font-size:11px;color:var(--jr-gray);font-weight:600}
  .ri-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}
  .ri-grid:empty{display:none}
  .ri-thumb{position:relative;aspect-ratio:1;border-radius:2px;overflow:hidden;border:1px solid #e0e0e0;background:#f0f0f0}
  .ri-thumb img{width:100%;height:100%;object-fit:cover;display:block}
  .ri-thumb .ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff}
  .ri-thumb .tag{position:absolute;left:0;right:0;bottom:0;font-size:8px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.62);padding:3px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ri-thumb .rm{position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;border:none;font-size:11px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
  .ri-thumb .rm:hover{background:var(--jr-red)}
  .ri-drop{display:flex;align-items:center;gap:12px;padding:14px;border:2px dashed #d0d0d0;border-radius:2px;cursor:pointer;font-size:12px;color:var(--jr-gray);transition:.2s;background:#fafafa}
  .ri-drop:hover,.ri-drop.drag{border-color:var(--jr-red);background:#fbf3f3;color:var(--jr-red-dark)}
  .ri-drop .ri-plus{width:30px;height:30px;border-radius:50%;background:var(--jr-grad);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}
  .ri-drop b{color:var(--jr-red-dark)}
  .ri-note{font-size:11px;color:#9a9a9a;margin-top:8px}

  /* ---- proposal composer ---- */
  .composer-intro{font-size:13px;color:var(--jr-gray);margin-bottom:16px;max-width:640px}
  .compose-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
  .compose-item{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--jr-light);border-radius:2px;background:#fafafa}
  .compose-item.off{opacity:.5}
  .ci-grip{color:#c4c4c4;cursor:grab;font-size:14px}
  .ci-name{font-weight:700;font-size:14px;display:flex;align-items:center;gap:8px}
  .ci-name .conf{font-size:9px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:2px 6px;border-radius:3px}
  .conf.high{background:#ececec;color:#202020}.conf.med{background:#ececec;color:#404040}.conf.low{background:#fae8e8;color:var(--jr-red-dark)}
  .ci-price{font-size:12px;border:1px solid #d4d4d4;border-radius:2px;padding:6px 8px;background:#fff;font-family:var(--font)}
  .ci-amt{font-weight:800;font-size:15px;min-width:84px;text-align:right}
  .compose-total{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--jr-black);color:#fff;border-radius:2px}
  .compose-total span{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#9a9a9a;font-weight:700;display:block}
  .compose-total b{font-size:22px}
  .ct-warn{font-size:12px;color:#ffb3b3;font-weight:600}
  .stub-zone{display:flex;align-items:center;gap:16px;margin-top:16px;padding:18px;border:2px dashed #c9c9c9;border-radius:2px;background:repeating-linear-gradient(45deg,#fafafa 0 10px,#f3f3f3 10px 20px)}
  .stub-zone .stub-tag{font-size:10px;font-weight:800;letter-spacing:2px;color:#fff;background:var(--jr-gray);padding:6px 9px;border-radius:4px;flex-shrink:0}
  .stub-zone b{display:block;font-size:14px}
  .stub-zone span{font-size:12px;color:var(--jr-gray)}
  .stub-zone .btn{margin-left:auto;flex-shrink:0}

  /* ---- tasks & pursuit ---- */
  .cadence-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 16px;background:#faf3f3;border:1px solid #f0dede;border-radius:2px;margin-bottom:16px}
  .cad-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
  .cad-lbl{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:800;color:var(--jr-red-dark)}
  .cadence-bar select{padding:8px 10px;border:1px solid #d4d4d4;border-radius:2px;font-family:var(--font);font-size:13px;background:#fff}
  /* cadence outcome / disposition */
  .cad-dispo{margin-top:18px;border-top:1px solid var(--jr-light);padding-top:16px}
  .cad-dispo .cd-lbl{display:flex;align-items:center;gap:9px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;font-weight:800;margin-bottom:12px}
  .cad-dispo .cd-lbl .stripes i:not(:first-child){display:none}.cad-dispo .cd-lbl .stripes i:first-child{width:5px;height:18px}
  .cad-dispo .cd-sub{font-weight:600;letter-spacing:0;text-transform:none;font-size:12px;color:#9a9a9a}
  .cd-opts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
  @media(max-width:680px){.cd-opts{grid-template-columns:1fr}}
  .cd-opt{font-family:var(--font);text-align:left;background:#fff;border:1px solid #d4d4d4;border-radius:2px;padding:13px 14px;cursor:pointer;transition:border-color .15s,background .15s}
  .cd-opt b{display:block;font-size:14px;font-weight:800;margin:6px 0 2px}
  .cd-opt span{font-size:11px;color:#9a9a9a}
  .cd-opt svg{color:#9a9a9a}
  .cd-opt.won:hover,.cd-opt.won.on{border-color:transparent;background:var(--jr-grad);color:#fff}
  .cd-opt.won.on svg,.cd-opt.won.on span,.cd-opt.won:hover svg,.cd-opt.won:hover span{color:#fff}
  .cd-opt.lost:hover,.cd-opt.lost.on{border-color:#9a9a9a;background:#404040;color:#fff}
  .cd-opt.lost.on svg,.cd-opt.lost.on span,.cd-opt.lost:hover svg,.cd-opt.lost:hover span{color:#fff}
  .cd-opt.plan:hover,.cd-opt.plan.on{border-color:#a8690e;background:#fdf3e3}
  .cd-opt.plan.on b,.cd-opt.plan:hover b{color:#a8690e}
  .cd-result{margin-top:12px;padding:11px 14px;border-radius:2px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}
  .cd-result.won{background:#faecec;color:var(--jr-red-dark)}
  .cd-result.lost{background:#ececec;color:var(--jr-gray)}
  .cd-result.plan{background:#fdf3e3;color:#a8690e}
  .cad-admin{font-size:11px;color:#9a9a9a}
  .next-action span{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#9a9a9a;font-weight:800;display:block}
  .next-action b{font-size:13px}
  .task-add{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;margin-bottom:14px}
  .task-add input,.task-add select{padding:9px 11px;border:1px solid #d4d4d4;border-radius:2px;font-family:var(--font);font-size:13px;background:#fafafa}
  .task-add input:focus{outline:none;border-color:var(--jr-red)}
  .task-list{display:flex;flex-direction:column;gap:6px}
  .task{display:grid;grid-template-columns:auto 1fr auto auto auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--jr-light);border-radius:2px;font-size:13px}
  .task.done{opacity:.5}
  .task.done .tk-name{text-decoration:line-through}
  .task .tk-check{width:20px;height:20px;border-radius:2px;border:2px solid #cfcfcf;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px}
  .task.done .tk-check{background:var(--jr-grad);border-color:transparent}
  .tk-name{font-weight:600}
  .tk-auto{font-size:8px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;background:#ececec;color:#404040;padding:2px 6px;border-radius:3px}
  .tk-who{font-size:11px;color:var(--jr-gray)}
  .tk-due{font-size:11px;color:var(--jr-gray);white-space:nowrap}
  .tk-due.over{color:var(--jr-red);font-weight:700}
  .tk-x{color:#c4c4c4;cursor:pointer}.tk-x:hover{color:var(--jr-red)}

  /* ---- journal ---- */
  .journal-compose{margin-bottom:12px}
  .journal-compose textarea{width:100%;padding:11px 12px;border:1px solid #d4d4d4;border-radius:2px;font-family:var(--font);font-size:13px;background:#fafafa;resize:vertical}
  .journal-compose textarea:focus{outline:none;border-color:var(--jr-red)}
  .jc-actions{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
  .promote{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--jr-gray);cursor:pointer}
  .journal-filter{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}
  .jf{font-family:var(--font);font-size:11px;font-weight:700;border:1px solid #d4d4d4;background:#fff;color:var(--jr-gray);border-radius:20px;padding:6px 12px;cursor:pointer}
  .jf.active{background:var(--jr-black);color:#fff;border-color:transparent}
  .journal-feed{display:flex;flex-direction:column}
  .jentry{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:12px 0;border-bottom:1px solid #f0f0f0}
  .jentry:last-child{border-bottom:none}
  .je-rail{display:flex;flex-direction:column;align-items:center;gap:4px}
  .je-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0;margin-top:4px}
  .je-dot.sys{background:#9a9a9a}.je-dot.manual{background:var(--jr-red)}.je-dot.milestone{background:#202020}
  .je-line{width:2px;flex:1;background:#ececec}
  .je-body .je-text{font-size:13px;line-height:1.4}
  .je-body .je-meta{font-size:11px;color:#9a9a9a;margin-top:3px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
  .je-cust{font-size:8px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;background:#ececec;color:#404040;padding:2px 6px;border-radius:3px}
  @media(max-width:760px){.task-add{grid-template-columns:1fr 1fr}.compose-item{grid-template-columns:auto 1fr;gap:8px}.ci-price,.ci-amt{grid-column:2}}
  svg.gi{display:inline-block;vertical-align:-.125em;flex:none}

  /* Property Lookup — intake section fed by lookup embed / address intel */
  .prop-lookup-section{margin-top:10px}
  .prop-lookup-section .ni-intel-card{border:1px solid #e3e3e3;border-radius:2px;background:#fff;padding:8px 10px 10px;font-family:var(--font)}
  .prop-lookup-section .ni-intel-card.ni-intel-loading,.prop-lookup-section .ni-intel-card.ni-intel-err{font-size:11px;color:#777;padding:10px 12px}
  .prop-lookup-section .ni-intel-card.ni-intel-err{color:#A71F23;border-color:#f0c9c9;display:flex;align-items:center;justify-content:space-between;gap:12px}
  .prop-lookup-section .ni-intel-head{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;margin-bottom:8px;min-width:0}
  .prop-lookup-section .ni-intel-badge{flex-shrink:0;font-size:8px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#fff;background:linear-gradient(135deg,#E92A2C,#A71F23);padding:2px 6px;border-radius:2px;line-height:1.35}
  .prop-lookup-section .ni-intel-addr{font-size:11px;font-weight:700;color:#202020;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
  .prop-lookup-section .ni-intel-grid{display:flex;flex-direction:column;gap:0}
  .prop-lookup-section .ni-intel-sec{min-width:0;padding:8px 0 0;border-left:none;border-top:1px solid #ececec}
  .prop-lookup-section .ni-intel-sec:first-child{padding-top:0;border-top:none}
  .prop-lookup-section .ni-intel-sec h5{margin:0 0 4px;font-size:8px;letter-spacing:.07em;text-transform:uppercase;font-weight:800;color:#8a8a8a;line-height:1.2}
  .prop-lookup-section .ni-intel-sec>div{font-size:11px;color:#303030;line-height:1.35}
  .prop-lookup-section .ni-intel-kv{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:1px 6px;align-items:baseline}
  .prop-lookup-section .ni-intel-kv dt{margin:0;font-size:10px;color:#888;white-space:nowrap}
  .prop-lookup-section .ni-intel-kv dd{margin:0;font-size:11px;font-weight:600;text-align:right;overflow-wrap:anywhere;color:#202020}
  .prop-lookup-section .ni-intel-compact-val{font-size:13px;font-weight:600;line-height:1.35;color:#202020}
  .prop-lookup-section .ni-intel-row{display:flex;justify-content:space-between;gap:6px;font-size:13px;line-height:1.35}
  .prop-lookup-section .ni-intel-row>span{color:#888;font-size:12px}
  .prop-lookup-section .ni-intel-row>b{color:#202020;text-align:right;font-size:13px;font-weight:600}
  .prop-lookup-section .ni-intel-permits{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;line-height:1.35;color:#202020}
  .prop-lookup-section .ni-intel-permit{display:flex;flex-direction:column;gap:1px;overflow-wrap:anywhere}
  .prop-lookup-section .ni-intel-permit-hd{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
  .prop-lookup-section .ni-intel-permit-num{font-weight:700;white-space:nowrap}
  .prop-lookup-section .ni-intel-permit-date{color:#888;font-weight:600;white-space:nowrap}
  .prop-lookup-section .ni-intel-permit-desc{font-weight:600}
  .prop-lookup-section .ni-intel-dim{color:#9a9a9a;font-size:10px;line-height:1.35}
  .prop-lookup-section .ni-intel-permit-desc mark.ni-intel-hit{background:rgba(233,42,44,.15);color:#202020;padding:0 2px;border-radius:1px;font-weight:inherit}