/* HouseBoard task-first refit — loaded last so the existing backend pages stay compatible. */
:root{
  --hb-ink:#18231f;
  --hb-muted:#68766f;
  --hb-bg:#f5f7f5;
  --hb-surface:#ffffff;
  --hb-line:#dfe6e1;
  --hb-brand:#285d50;
  --hb-brand-strong:#19463b;
  --hb-brand-soft:#e8f2ee;
  --hb-warn:#a25c14;
  --hb-warn-soft:#fff3df;
  --hb-danger:#a83b3b;
  --hb-danger-soft:#fff0f0;
  --hb-radius:18px;
  --hb-shadow:0 14px 38px rgba(25,70,59,.08);
}
[data-theme="dark"]{
  --hb-ink:#edf5f1;--hb-muted:#9fb0a8;--hb-bg:#0d1713;--hb-surface:#14231d;
  --hb-line:#2a3e36;--hb-brand:#87b8a5;--hb-brand-strong:#b3d7ca;--hb-brand-soft:#203c32;
  --hb-warn-soft:#3c2b16;--hb-danger-soft:#3d2020;
}
body{background:var(--hb-bg)!important;color:var(--hb-ink)!important;}
.hb-refit-shell{max-width:1280px;margin:0 auto;padding:28px 24px 112px;}
.hb-refit-navbar{border-bottom:1px solid var(--hb-line)!important;background:color-mix(in srgb,var(--hb-surface) 94%,transparent)!important;box-shadow:none!important;}
.hb-refit-navbar .container-fluid{max-width:1380px;}
.hb-primary-nav{display:flex;align-items:center;gap:5px;}
.hb-primary-nav>a,.hb-primary-nav .dropdown-toggle{border:0;background:transparent;color:var(--hb-muted);font-weight:750;padding:10px 13px;border-radius:12px;text-decoration:none;white-space:nowrap;}
.hb-primary-nav>a:hover,.hb-primary-nav>a.active,.hb-primary-nav .dropdown-toggle:hover{background:var(--hb-brand-soft);color:var(--hb-brand-strong);}
.hb-nav-icon-btn{width:42px;height:42px;display:inline-grid;place-items:center;border:1px solid var(--hb-line);border-radius:13px;background:var(--hb-surface);color:var(--hb-ink);text-decoration:none;position:relative;}
.hb-nav-icon-btn:hover{background:var(--hb-brand-soft);color:var(--hb-brand-strong);}
.hb-notification-count{position:absolute;right:-5px;top:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#bd3d3d;color:#fff;font-size:.69rem;display:grid;place-items:center;font-weight:800;border:2px solid var(--hb-surface);}
.hb-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px;}
.hb-page-head h1{font-size:clamp(1.8rem,4vw,2.65rem);margin:0 0 6px;letter-spacing:-.045em;}
.hb-page-head p{color:var(--hb-muted);margin:0;max-width:700px;}
.hb-page-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.hb-primary-action{background:var(--hb-brand)!important;border-color:var(--hb-brand)!important;color:#fff!important;border-radius:12px!important;font-weight:800!important;padding:.72rem 1rem!important;}
.hb-primary-action:hover{background:var(--hb-brand-strong)!important;border-color:var(--hb-brand-strong)!important;}
.hb-secondary-action{background:var(--hb-surface)!important;border:1px solid var(--hb-line)!important;color:var(--hb-ink)!important;border-radius:12px!important;font-weight:750!important;padding:.68rem .95rem!important;}
.hb-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--hb-line);border-radius:var(--hb-radius);background:var(--hb-surface);overflow:hidden;margin-bottom:22px;box-shadow:var(--hb-shadow);}
.hb-summary-stat{padding:20px 22px;border-right:1px solid var(--hb-line);min-width:0;}
.hb-summary-stat:last-child{border-right:0;}.hb-summary-stat span{display:block;color:var(--hb-muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;}
.hb-summary-stat strong{display:block;font-size:1.55rem;margin-top:5px;letter-spacing:-.035em;overflow-wrap:anywhere;}.hb-summary-stat small{color:var(--hb-muted);}
.hb-surface{background:var(--hb-surface);border:1px solid var(--hb-line);border-radius:var(--hb-radius);box-shadow:var(--hb-shadow);overflow:hidden;}
.hb-surface-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;border-bottom:1px solid var(--hb-line);}
.hb-surface-head h2,.hb-surface-head h3{margin:0;font-size:1.1rem;}.hb-surface-head p{margin:4px 0 0;color:var(--hb-muted);font-size:.88rem;}
.hb-list{display:grid;}.hb-list-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(120px,.7fr) minmax(130px,.75fr) auto;align-items:center;gap:16px;padding:16px 22px;border-bottom:1px solid var(--hb-line);color:var(--hb-ink);text-decoration:none;}
.hb-list-row:last-child{border-bottom:0}.hb-list-row:hover{background:color-mix(in srgb,var(--hb-brand-soft) 45%,var(--hb-surface));}.hb-list-title{font-weight:820;}.hb-list-meta{color:var(--hb-muted);font-size:.84rem;margin-top:3px;}.hb-list-amount{font-weight:850;}
.hb-status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:.74rem;font-weight:850;background:var(--hb-brand-soft);color:var(--hb-brand-strong);white-space:nowrap;}.hb-status.warn{background:var(--hb-warn-soft);color:var(--hb-warn)}.hb-status.danger{background:var(--hb-danger-soft);color:var(--hb-danger)}.hb-status.neutral{background:var(--hb-bg);color:var(--hb-muted)}
.hb-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:22px;}.hb-work-link{display:flex;align-items:flex-start;gap:14px;background:var(--hb-surface);border:1px solid var(--hb-line);border-radius:16px;padding:18px;color:var(--hb-ink);text-decoration:none;transition:.16s ease;}.hb-work-link:hover{transform:translateY(-2px);box-shadow:var(--hb-shadow);border-color:color-mix(in srgb,var(--hb-brand) 34%,var(--hb-line));}.hb-work-icon{width:42px;height:42px;border-radius:13px;background:var(--hb-brand-soft);display:grid;place-items:center;font-size:1.2rem;flex:0 0 auto}.hb-work-copy strong{display:block;font-size:1rem}.hb-work-copy span{display:block;color:var(--hb-muted);font-size:.86rem;margin-top:4px;line-height:1.45}.hb-work-arrow{margin-left:auto;color:var(--hb-muted);font-weight:900;}
.hb-action-list{display:grid;gap:10px;}.hb-action-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--hb-line);border-radius:14px;background:var(--hb-surface);}.hb-action-item.urgent{border-left:4px solid #c56d21}.hb-action-copy{min-width:0;flex:1}.hb-action-copy strong{display:block}.hb-action-copy span{display:block;color:var(--hb-muted);font-size:.84rem;margin-top:2px}.hb-action-controls{display:flex;gap:8px;flex-wrap:wrap;}
.hb-empty{padding:34px;text-align:center;color:var(--hb-muted);}.hb-empty .icon{font-size:2rem;margin-bottom:8px;}
.hb-modal-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:18px;}.hb-modal-step{padding:8px;border-radius:10px;background:var(--hb-bg);text-align:center;font-size:.74rem;font-weight:800;color:var(--hb-muted)}.hb-modal-step.active{background:var(--hb-brand-soft);color:var(--hb-brand-strong)}
.hb-balance-bar{height:9px;border-radius:999px;overflow:hidden;background:var(--hb-bg);display:flex;margin-top:8px}.hb-balance-confirmed{background:#5e9b84}.hb-balance-pending{background:#d19a4a}.hb-balance-remaining{background:#d9dfdc}.hb-balance-labels{display:flex;gap:14px;flex-wrap:wrap;color:var(--hb-muted);font-size:.77rem;margin-top:8px}.hb-balance-labels b{color:var(--hb-ink)}
.hb-section-spacer{margin-top:22px}.hb-inline-note{padding:12px 14px;border-radius:12px;background:var(--hb-brand-soft);color:var(--hb-brand-strong);font-size:.86rem;}
.hb-more-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}.hb-more-list .hb-work-link{min-height:100px;}
/* The old welcome overlay, floating alert and duplicate chat launcher are retired. */
.hb-welcome-summary,.notify-pop,.hb-notify-dock,.chat-launch{display:none!important;}
/* Keep legacy page cards calmer and stop every section looking equally important. */
.hb-refit-shell>.card,.hb-refit-shell .card{box-shadow:none;border-color:var(--hb-line);}
.hb-refit-shell .card+.card{margin-top:16px;}
.hb-refit-shell .page-title{font-size:2rem!important;}
.hb-mobile-bottom{display:none;}
@media(max-width:991.98px){
  .hb-refit-shell{padding:18px 14px 96px}.hb-primary-nav{display:none}.hb-page-head{flex-direction:column}.hb-page-actions{width:100%;justify-content:flex-start}.hb-summary-strip{grid-template-columns:repeat(2,1fr)}.hb-summary-stat:nth-child(2){border-right:0}.hb-summary-stat:nth-child(-n+2){border-bottom:1px solid var(--hb-line)}.hb-work-grid,.hb-more-list{grid-template-columns:1fr}.hb-list-row{grid-template-columns:minmax(0,1fr) auto;gap:9px}.hb-list-row>*:nth-child(2){grid-column:1}.hb-list-row>*:nth-child(3){grid-column:1}.hb-list-row>*:last-child{grid-column:2;grid-row:1/4;align-self:center}.hb-mobile-bottom{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:10px;right:10px;bottom:10px;z-index:1080;background:color-mix(in srgb,var(--hb-surface) 96%,transparent);border:1px solid var(--hb-line);border-radius:18px;box-shadow:0 14px 42px rgba(24,35,31,.2);overflow:hidden;padding:5px}.hb-mobile-bottom a,.hb-mobile-bottom button{border:0;background:transparent;color:var(--hb-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:54px;text-decoration:none;font-size:.68rem;font-weight:800;border-radius:12px}.hb-mobile-bottom a.active{background:var(--hb-brand-soft);color:var(--hb-brand-strong)}.hb-mobile-bottom .add{background:var(--hb-brand);color:#fff}.hb-bottomnav{display:none!important}}
@media(max-width:575px){.hb-summary-stat{padding:16px}.hb-summary-stat strong{font-size:1.28rem}.hb-surface-head,.hb-list-row{padding-left:16px;padding-right:16px}.hb-modal-steps{grid-template-columns:repeat(2,1fr)}}

/* Keep the refit navigation reliable even when legacy Bootstrap/CSS is present. */
@media (min-width:992px){
  .hb-refit-navbar .navbar-collapse{display:flex!important;flex-basis:auto!important;align-items:center!important;min-width:0}
  .hb-refit-navbar #mainNav>.ms-auto{display:flex!important;width:auto!important;flex:0 0 auto!important;padding-top:0!important;margin-left:auto!important;align-items:center!important}
  .hb-refit-navbar .navbar-toggler{display:none!important}
  .hb-refit-navbar .hb-primary-nav{width:auto!important;height:auto!important;overflow:visible!important}
}
/* The assistant remains available in code, but stays out of the everyday UX until the core flow is stable. */
.hb-ai-launch,.hb-ai-overlay{display:none!important}
