/* Pinvault Frontend Styles — Matches Design System */
:root {
  --pv-accent: #6700E3;
  --pv-light-purple: #9E62E6;
  --pv-dark-purple: #100431;
  --pv-body-text: #656565;
  --pv-light-grey: #CDCDCD;
  --pv-inputs: #F6F6F6;
  --pv-lighter-purple: #F9F5FF;
  --pv-white: #fff;
}
.pinvault-floating-bar { /* Already in widget-bar.php inline, here for override */ }
.pv-btn, .pv-btn-accent { background: var(--pv-accent); color: #fff; border-radius:50px; padding: 10px 16px; font-weight: bold; font-size: 14px; border: none; }
.pv-btn:hover, .pv-btn:active { background: var(--pv-light-purple); }
.pv-btn-outline { background:#fff; color: var(--pv-accent); border: 2px solid var(--pv-accent); }
.pv-input { background: var(--pv-inputs); border: 1px solid var(--pv-light-grey); border-radius: 12px; font-size:15px; color: var(--pv-body-text); padding:10px 14px; }
.pv-error { color: #D20000; background: #fff0f0; border-radius:7px; padding:8px 12px; font-size:14px; font-weight:500; }
.pv-modal-content { box-shadow:0 10px 40px rgba(0,0,0,0.12); }
.pv-pin { background:var(--pv-accent); color:#fff; border-radius:50%; width:24px; height:27px; display:flex; align-items:center; justify-content:center; font-size:12px; border:2px solid #fff; box-shadow:0 10px 40px rgba(0,0,0,0.12); position:absolute; z-index:10011; cursor:pointer; }
.pv-pin.in-progress { background:#2280F3; }
.pv-pin.completed { background:#22C8B0; }
.pv-pin.hidden { opacity:.35; pointer-events:none; }
.pv-tooltip { background:var(--pv-accent); color:#fff; border-radius:20px; padding:8px 18px 8px 14px; font-size:14px; font-weight:500; box-shadow:0 10px 40px rgba(0,0,0,0.12); position:absolute; z-index:11000; }
.pv-comment-bubble { background:var(--pv-inputs); border-radius:50px; padding:8px 20px; margin:4px 0; display:inline-block; }
.pv-comment-bubble.admin { background:var(--pv-accent); color:#fff; }
.pv-comment-bubble.client { background:var(--pv-lighter-purple); color:var(--pv-dark-purple); }
.pv-file-preview-link { color: var(--pv-accent); text-decoration: underline; font-size:14px; margin-right:7px; }
/* Add further detailed styles as needed based on your mockups */
