/* villa_hub_pack.css — styles for the post-rebuild hub pack:
   Accounting Hub, Reminder Hub, Daily Reports Hub, Schedule Back-to-Home,
   Upload Plans relocation, and Admin Create-Docs toggles.

   These styles live alongside (and on top of) the existing rebuild_features
   styles — they are scoped under .vhub- / .vacc- / .vrem- / .vdrh- / .vdla-
   prefixes so they will not collide with previous pack rules. */

.vhub-wrap{padding:1rem 1rem 2rem 1rem;color:#0f172a;}
.vhub-hero{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;}
.vhub-hero h2{margin:0 0 .25rem 0;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.6rem;}
.vhub-hero p{margin:0;color:#475569;font-size:.92rem;line-height:1.4;}
.vhub-stats{display:flex;gap:.5rem;flex-wrap:wrap;}
.vhub-stat{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;padding:.5rem .75rem;display:flex;flex-direction:column;align-items:flex-start;min-width:90px;}
.vhub-stat strong{font-size:1.15rem;line-height:1;color:#0f172a;}
.vhub-stat span{font-size:.72rem;color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-top:2px;}

.vhub-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.85rem;border-bottom:1px solid #e2e8f0;padding-bottom:.4rem;}
.vhub-tab{appearance:none;border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:.4rem .8rem;font-size:.82rem;cursor:pointer;color:#0f172a;font-weight:600;}
.vhub-tab.on{background:#0f172a;color:#fff;border-color:#0f172a;}
.vhub-tab .ct{background:#e2e8f0;color:#0f172a;border-radius:999px;padding:0 .45rem;margin-left:.4rem;font-size:.72rem;font-weight:700;}
.vhub-tab.on .ct{background:#fff;color:#0f172a;}

.vhub-section{display:none;}
.vhub-section.on{display:block;}

.vhub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:.6rem;}
.vhub-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:.75rem;display:flex;flex-direction:column;gap:.4rem;}
.vhub-card .ttl{font-weight:700;color:#0f172a;font-size:.95rem;}
.vhub-card .src{font-size:.72rem;color:#64748b;text-transform:uppercase;letter-spacing:.04em;}
.vhub-card .meta{display:flex;flex-wrap:wrap;gap:.35rem;font-size:.78rem;color:#475569;}
.vhub-card .meta b{color:#0f172a;}
.vhub-pill{display:inline-block;font-size:.7rem;padding:2px 8px;border-radius:999px;font-weight:700;}
.vhub-pill.bil{background:#dcfce7;color:#15803d;}
.vhub-pill.nb{background:#fee2e2;color:#b91c1c;}
.vhub-pill.rev{background:#fef3c7;color:#a16207;}
.vhub-pill.draft{background:#dbeafe;color:#1d4ed8;}
.vhub-pill.lily{background:#ede9fe;color:#6d28d9;}
.vhub-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.4rem;}
.vhub-actions button{font-size:.78rem;padding:.35rem .6rem;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;font-weight:600;cursor:pointer;}
.vhub-actions button.p{background:#0f172a;color:#fff;border-color:#0f172a;}
.vhub-actions button.lily{background:#ede9fe;color:#6d28d9;border-color:#c4b5fd;}

.vhub-empty{padding:1rem;border:1px dashed #cbd5e1;border-radius:10px;text-align:center;color:#64748b;font-size:.85rem;background:#f8fafc;}

.vhub-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem;align-items:center;}
.vhub-toolbar .search{flex:1 1 220px;border:1px solid #cbd5e1;border-radius:8px;padding:.4rem .6rem;font-size:.85rem;}
.vhub-toolbar select{border:1px solid #cbd5e1;border-radius:8px;padding:.35rem .5rem;font-size:.82rem;background:#fff;}
.vhub-toolbar .btn{font-size:.82rem;padding:.4rem .7rem;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;cursor:pointer;font-weight:600;}
.vhub-toolbar .btn.p{background:#0f172a;color:#fff;border-color:#0f172a;}

.vhub-lily{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border:1px solid #c4b5fd;border-radius:12px;padding:.75rem;margin-bottom:.75rem;}
.vhub-lily b{color:#6d28d9;}
.vhub-lily .row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem;}

.vhub-audit{margin-top:.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem;font-size:.8rem;color:#475569;}
.vhub-audit ul{margin:.25rem 0 0 1rem;padding:0;}

/* Reminder hub specific */
.vrem-row{display:grid;grid-template-columns:auto 1fr auto;gap:.5rem;align-items:start;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.55rem .7rem;margin-bottom:.4rem;}
.vrem-row .chk{margin-top:2px;}
.vrem-row .body .nm{font-weight:600;color:#0f172a;font-size:.9rem;}
.vrem-row .body .sub{color:#64748b;font-size:.78rem;margin-top:2px;display:flex;flex-wrap:wrap;gap:.4rem;}
.vrem-row.done .body .nm{text-decoration:line-through;color:#94a3b8;}
.vrem-prio{display:inline-block;font-size:.7rem;padding:2px 6px;border-radius:6px;font-weight:700;}
.vrem-prio.high{background:#fee2e2;color:#b91c1c;}
.vrem-prio.med{background:#fef3c7;color:#a16207;}
.vrem-prio.low{background:#e0f2fe;color:#0369a1;}

/* Daily Reports hub */
.vdrh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.55rem;}
.vdrh-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.65rem;}
.vdrh-card h4{margin:0 0 .3rem 0;font-size:.95rem;}
.vdrh-card .who{font-size:.78rem;color:#64748b;}
.vdrh-card .acts{margin-top:.45rem;display:flex;gap:.3rem;flex-wrap:wrap;}

/* Admin doc-workflow toggle preview block */
.vdla-prev{margin-top:.75rem;padding:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;}
.vdla-prev h4{margin:0 0 .35rem 0;font-size:.9rem;color:#0f172a;}
.vdla-prev .pills{display:flex;flex-wrap:wrap;gap:.3rem;}
.vdla-prev .pill{font-size:.78rem;background:#0f172a;color:#fff;border-radius:999px;padding:.25rem .65rem;font-weight:600;}
.vdla-prev .pill.off{background:#e2e8f0;color:#64748b;text-decoration:line-through;}

/* Mobile */
@media (max-width:600px){
  .vhub-wrap{padding:.75rem;}
  .vhub-hero h2{font-size:1.3rem;}
  .vhub-grid{grid-template-columns:1fr;}
  .vhub-toolbar .search{flex-basis:100%;}
}

/* Schedule Back-to-Home button (added via JS when Schedule is opened from Home) */
.sv4-back-home-btn{
  appearance:none;border:1px solid #1e293b;background:#1e293b;color:#fff;
  border-radius:999px;padding:.35rem .8rem;font-size:.8rem;font-weight:700;cursor:pointer;
  margin-right:.4rem;display:inline-flex;align-items:center;gap:.3rem;
}
.sv4-back-home-btn:hover{background:#0f172a;}
.sv4-back-home-btn:focus{outline:2px solid #38bdf8;outline-offset:2px;}

/* Round-14: Accounting Hub feedback chrome.
   The toast and section-status banner are also styled inline via
   _vahToast / _vahSectionStatus so they render even when this stylesheet
   has not loaded, but these rules give Villa-styling priority and
   explicit z-index so the toast can never be hidden behind any
   known overlay (vsFullOverlay 260, mgr-overlay 11500, mds-modal 11200). */
.vah-toast{
  position:fixed !important;left:50% !important;bottom:36px !important;
  transform:translateX(-50%) !important;z-index:14000 !important;
  background:#141310;color:#fff;padding:12px 22px;border-radius:999px;
  box-shadow:0 14px 32px rgba(0,0,0,.40);
  font-family:Barlow,Inter,system-ui,sans-serif;font-weight:700;font-size:14px;
  letter-spacing:.01em;opacity:1;pointer-events:auto;
  max-width:min(92vw,640px);text-align:center;
}
.vah-toast.ok{background:#0a564a;}
.vah-toast.warn{background:#7a5b00;}

.vah-section-status{
  margin:0 0 12px;padding:10px 14px;border-radius:10px;
  background:#e6f1ff;border:1px solid #2872d8;color:#141310;
  font-family:Barlow,Inter,system-ui,sans-serif;font-weight:600;font-size:13.5px;
}
.vah-section-status.ok{background:#dff6ee;border-color:#0a8b6f;color:#0a564a;}
.vah-section-status.warn{background:#fff4d6;border-color:#b07a00;color:#5a3e00;}
