/* Back office Style A layer (Ryan 2026-10-18 9:36 PM). Pairs with /boa.js. Only shared theme variables, so light, dark and true black follow the theme. */
html.boa .boa-ban{position:relative;border-radius:22px;overflow:hidden;min-height:132px;background:var(--ocean-d,#0a4f58) var(--img) center/cover no-repeat;margin:2px 0 14px;display:flex;align-items:flex-end;padding:18px 22px;box-shadow:var(--sh)}
html.boa .boa-ban:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,30,40,.86),rgba(7,30,40,.12) 78%)}
html.boa .boa-ban>div{position:relative;color:#fff}
html.boa .boa-ban small{display:block;font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;opacity:.9}
html.boa .boa-ban h2{color:#fff!important;margin:2px 0 2px;font-size:28px;font-family:var(--serif,inherit);font-weight:800}
html.boa .boa-ban p{margin:0;font-size:14px;opacity:.92;max-width:640px}
html.boa .boa-ban~.row h1.boa-h1,html.boa .row h1.boa-h1{display:none}
html.boa .boa-ban+.row:has(>h1.boa-h1:only-child){display:none}

/* Transactions: listing photo on each card */
html.boa a.card.boa-txc{padding:0 16px 14px!important;overflow:hidden;border-top-width:0!important;display:flex!important;flex-direction:column;transition:transform .15s,box-shadow .15s}
html.boa a.card.boa-txc:hover{transform:translateY(-2px);box-shadow:var(--sh2,var(--sh))!important}
html.boa .boa-ph{position:relative;display:block;margin:0 -16px 10px;aspect-ratio:16/9;background:var(--ocean-l,#e7f3f4);overflow:hidden}
html.boa .boa-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .3s}html.boa .boa-ph img.on{opacity:1}
html.boa .boa-ph b{position:absolute;left:8px;bottom:8px;font-size:10.5px;font-weight:700;letter-spacing:.04em;padding:3px 7px;border-radius:999px;background:rgba(7,30,40,.66);color:#fff}
html.boa .boa-ph.none{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:linear-gradient(135deg,var(--ocean-l,#e7f3f4),var(--card,#fff))}
html.boa .boa-ph-ic{width:64px;height:48px;fill:none;stroke:var(--ocean,#0d6e7a);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.75}
html.boa .boa-ph em{font-style:normal;font-size:11.5px;color:var(--muted)}
html.boa a.card.boa-txc>*:not(.boa-ph){margin-left:0}

/* Thumbnails */
html.boa .boa-th{position:relative;display:flex;align-items:center;justify-content:center;width:84px;aspect-ratio:8.5/11;border-radius:8px;border:1px solid var(--line);background:#fff;overflow:hidden;flex:none;box-shadow:0 1px 2px rgba(0,0,0,.06)}
html.boa .boa-th.sm{width:46px;border-radius:6px}
html.boa .boa-th img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
html.boa .boa-th .boa-sk{position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(127,140,160,.16) 50%,transparent 70%) var(--card2,#f3f6f9);background-size:200% 100%;animation:boaSk 1.2s linear infinite}
@keyframes boaSk{to{background-position:-200% 0}}
html.boa .boa-th.none{background:var(--card2,#f3f6f9)}
html.boa .boa-th svg{width:46%;height:46%;fill:none;stroke:var(--muted);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
html.boa.dark .boa-th{border-color:var(--line)}

/* Forms: tile grid */
html.boa .boa-fgrid{columns:auto!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
html.boa .boa-ft{display:flex!important;align-items:center;gap:12px;padding:8px!important;border:1px solid var(--line);border-radius:14px;background:var(--card);font-size:13.5px}
html.boa .boa-ft:hover{border-color:var(--ocean,#0d6e7a)}
html.boa .boa-ft>a:last-child{font-weight:600;line-height:1.3}
html.boa .boa-ftl{display:block;flex:none}

/* Checklists */
html.boa .boa-clr{grid-template-columns:44px 46px minmax(0,1fr) auto!important}
@media (max-width:640px){html.boa .boa-clr{grid-template-columns:40px 46px minmax(0,1fr)!important}html.boa .boa-clr>.tx-acts{grid-column:3!important}}
html.boa .boa-clt{display:block;flex:none;margin-right:2px}

/* Agents: headshots, documents */
html.boa .boa-av{--s:40px;width:var(--s);height:var(--s);border-radius:50%;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;flex:none;vertical-align:middle;margin-right:10px;background:var(--card2,#eef2f6);box-shadow:0 0 0 2px var(--card),0 0 0 3px var(--line)}
html.boa .boa-av img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
html.boa .boa-av.ini{background:var(--c,#0d6e7a);color:#fff;font-weight:700;font-size:calc(var(--s) * .38);letter-spacing:.02em}
html.boa .boa-agc h2,html.boa .boa-agh,html.boa h1.boa-h1av{display:flex;align-items:center;flex-wrap:wrap}
html.boa .boa-pc .row{align-items:center}
html.boa .boa-docs{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 4px}
html.boa .boa-doc{display:flex;flex-direction:column;align-items:center;gap:4px;width:74px;text-decoration:none;color:var(--ink2,var(--ink));font-size:11px;text-align:center;line-height:1.2}
html.boa .boa-doc .boa-th.sm{width:58px}
html.boa .boa-doc span{display:block;max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html.boa .boa-more{align-self:center;font-size:12px;color:var(--muted)}

/* Folded groups (past agents) */
html.boa details.boa-fold{margin:18px 0 6px}
html.boa details.boa-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;font-family:var(--serif,inherit);font-weight:700;font-size:20px;color:var(--ink);padding:10px 14px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--sh)}
html.boa details.boa-fold>summary::-webkit-details-marker{display:none}
html.boa .boa-fold-c{margin-left:auto;display:inline-flex}
html.boa .boa-fold-c svg,html.boa .boa-tg svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s}
html.boa details.boa-fold[open]>summary .boa-fold-c svg{transform:rotate(180deg)}
html.boa details.boa-fold>.card{margin-top:8px}

/* Collapsible cards */
html.boa .boa-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
html.boa .boa-head>h2{margin:0}
html.boa .boa-tg{margin-left:auto;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--card);color:var(--ink2,var(--ink));border-radius:999px;padding:4px 10px 4px 8px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}
html.boa .boa-tg:hover{border-color:var(--ocean,#0d6e7a)}
html.boa .boa-col:not(.boa-min) .boa-tg svg{transform:rotate(180deg)}
html.boa .boa-col.boa-min>*:not(.boa-head):not(.boa-aihead):not(.boa-hrow){display:none!important}
html.boa .boa-aihead{display:flex;flex-direction:column;gap:8px}
html.boa .boa-aihead>div[style*="height:6px"]{background:var(--card2,#eef2f6)!important}

/* Document review */
html.boa .boa-st{margin-left:auto;font-size:12.5px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--card2,#eef2f6);color:var(--ink2,var(--ink));text-align:right}
html.boa .boa-st.cd{background:var(--ocean-l,#e7f3f4);color:var(--ocean-d,#0a4f58)}
html.boa .boa-st.soon{background:var(--sun-l,#fdf1cc);color:var(--sun-d,#7a4a00)}
html.boa.dark .boa-st.cd{color:#9be6ed}html.boa.dark .boa-st.soon{color:#ffd88a}
html.boa .boa-rvc.boa-hasclose{border-left:4px solid var(--ocean,#0d6e7a)!important}

/* Taxes and CPA: years on the side */
html.boa .boa-cpag{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:start}
html.boa .boa-cpam{min-width:0}
html.boa .boa-cpa{position:sticky;top:12px;margin:0!important;max-height:calc(100vh - 24px);overflow:auto}
html.boa .boa-yrs{display:flex;flex-direction:column;gap:2px;margin-top:8px}
html.boa .boa-yr{display:grid;grid-template-columns:52px 1fr auto;gap:8px;align-items:start;padding:8px 6px;border-top:1px solid var(--line);border-radius:10px}
html.boa .boa-yr.on{background:var(--ocean-l,#e7f3f4)}
html.boa .boa-yn{font-weight:800;font-size:15px;text-decoration:none;color:var(--ink)!important}
html.boa .boa-br{font-size:12.5px;margin-top:3px;color:var(--ink2,var(--ink))}
html.boa .boa-chip{display:inline-block;font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--card2,#eef2f6);color:var(--ink2,var(--ink))}
html.boa .boa-chip.ok{background:var(--ok-bg,#e3f4ea);color:var(--ok,#1f7a45)}
html.boa .boa-chip.wait{background:var(--sky-l,#e6f0fc);color:var(--sky,#2a6fc9)}
html.boa .boa-chip.warn{background:var(--wait-bg,#fdf1cc);color:var(--wait,#7a5a00)}
html.boa .boa-chip.need{background:var(--need-bg,#fcebeb);color:var(--need,#c0262d)}
html.boa.dark .boa-chip.ok{color:#86e0a5}html.boa.dark .boa-chip.warn{color:#ffd88a}html.boa.dark .boa-chip.need{color:#ff9a9e}html.boa.dark .boa-chip.wait{color:#9cc3f2}
html.boa .boa-src{font-size:10.5px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--card2,#eef2f6);color:var(--muted);white-space:nowrap}
html.boa .boa-cpam .kpi b{font-size:clamp(18px,2vw,26px)!important;word-break:normal}
html.boa .boa-known,html.boa .boa-todo{margin-top:12px;padding:10px 12px;border-radius:12px;background:var(--card2,#f3f6f9)}
html.boa .boa-todo ul{margin:6px 0 0 18px;padding:0}

@media (max-width:980px){html.boa .boa-cpag{grid-template-columns:1fr}html.boa .boa-cpa{position:static;max-height:none}html.boa .boa-cpag>.boa-cpa{order:-1}}
@media (max-width:640px){html.boa .boa-ban{min-height:104px;padding:14px 16px;border-radius:18px}html.boa .boa-ban h2{font-size:22px}html.boa .boa-ban p{font-size:13px}
  html.boa .boa-fgrid{grid-template-columns:1fr}html.boa .boa-th{width:64px}
  html.boa .boa-yr{grid-template-columns:44px 1fr auto}}
