/* VERVE POS WEB R29 — final authority visual closure */
:root{--vd-sidebar-open:224px;--vd-sidebar-collapsed:64px}
.vd-app{grid-template-columns:var(--vd-sidebar-open) minmax(0,1fr)!important}
.vd-app.collapsed{grid-template-columns:var(--vd-sidebar-collapsed) minmax(0,1fr)!important}
.vd-sidebar{width:var(--vd-sidebar-open)!important;min-width:var(--vd-sidebar-open)!important;padding-left:8px!important;padding-right:8px!important}
.vd-app.collapsed .vd-sidebar{width:var(--vd-sidebar-collapsed)!important;min-width:var(--vd-sidebar-collapsed)!important;padding-left:6px!important;padding-right:6px!important}
.vd-sidebar-head{padding:8px 4px!important}.vd-brand-home{display:block;width:100%;border:0;background:transparent;padding:0;cursor:pointer}.vd-brand-home img{max-width:112px!important;max-height:52px!important;object-fit:contain}.vd-app.collapsed .vd-brand-home img{max-width:38px!important}
.vd-outlet{margin:4px 4px 8px!important}.vd-outlet>button{min-height:32px!important;padding:6px 9px!important;font-size:11px!important}
.vd-nav-r29{gap:4px!important}.vd-nav-r29 .vd-nav-group>button,.vd-nav-r29>.vd-nav-item{min-height:38px!important;padding:7px 9px!important;border-radius:11px!important}.vd-nav-r29 .vd-nav-label{font-size:11px!important;letter-spacing:.055em!important;font-weight:850!important}.vd-nav-r29 .vd-nav-icon{width:20px!important;height:20px!important}.vd-nav-r29 .vd-subnav{padding:3px 0 5px 28px!important;gap:2px!important}.vd-nav-r29 .vd-subnav button{min-height:28px!important;padding:5px 7px!important;font-size:11px!important;border-radius:8px!important}
.vd-app.collapsed .vd-nav-label,.vd-app.collapsed .vd-subnav{display:none!important}.vd-app.collapsed .vd-nav-group>button,.vd-app.collapsed>.vd-sidebar .vd-nav-item{justify-content:center!important;padding:8px!important}.vd-app.collapsed .vd-nav-group>button>span:not(.vd-nav-icon):not(.vd-unread-badge),.vd-app.collapsed .vd-nav-item>span:not(.vd-nav-icon):not(.vd-unread-badge){display:none!important}
.vd-sidebar-bottom{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;padding:7px 2px!important}.vd-sidebar-bottom button{min-width:0!important;width:100%!important;height:42px!important;border-radius:12px!important}.vd-sidebar-bottom img{max-width:34px!important;max-height:34px!important;object-fit:contain!important}.vd-kshield-approved{padding:0!important;overflow:hidden!important;background:transparent!important;border-color:transparent!important}.vd-kshield-approved img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;border-radius:11px!important}
.vd-app.collapsed .vd-sidebar-bottom{grid-template-columns:1fr!important;grid-template-rows:auto auto!important}.vd-app.collapsed .vd-status-ghost{order:1}.vd-app.collapsed .vd-kshield-approved{order:2}

/* Core workspaces: viewport-first; inner panels scroll instead of entire page. */
.vd-main{min-width:0!important}.vd-content{max-width:none!important}.vd-gel-workspace,.vd-settings-page,.vd-doc-page,.vd-website-control{min-height:0!important}
.vd-receipts-workspace,.vd-doc-template-workspace,.vd-website-grid,.fc-device-split,.hr-master-detail{max-height:calc(100vh - 160px)!important;min-height:0!important;overflow:hidden!important}
.vd-receipt-list-pane,.vd-receipt-preview-pane,.vd-doc-template-controls,.vd-doc-template-preview,.vd-website-form,.vd-website-preview,.fc-device-list,.fc-device-inspector,.hr-master-list,.hr-master-detail-panel{min-height:0!important;overflow:auto!important}

/* HR — full-width 3-panel desktop authority. */
#view .hr-master-detail{display:grid!important;grid-template-columns:minmax(260px,320px) minmax(0,1fr)!important;gap:12px!important;width:100%!important;max-width:none!important;margin:0!important}
#view .hr-master-detail-panel{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,310px)!important;gap:12px!important;align-items:start!important}
#view .hr-master-detail-panel>.hr-profile-shell,#view .hr-master-detail-panel>.hr-profile-layout{grid-column:1/-1}
.hr-lifecycle-compact{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(220px,300px)!important;gap:14px!important;align-items:end!important}.hr-lifecycle-compact label{min-width:0!important}.hr-lifecycle-compact select{width:100%!important}
@media(max-width:1100px){#view .hr-master-detail{grid-template-columns:260px minmax(0,1fr)!important}#view .hr-master-detail-panel{grid-template-columns:1fr!important}}
@media(max-width:760px){#view .hr-master-detail{display:block!important;max-height:none!important;overflow:visible!important}.hr-master-list,.hr-master-detail-panel{max-height:none!important}.hr-lifecycle-compact{grid-template-columns:1fr!important}}

/* K Shield — VERA side companion, never over form. */
.fc-kshield-r21,.fc-kshield-r29{display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;gap:14px!important;max-width:760px!important;max-height:min(82vh,650px)!important;overflow:hidden!important;align-items:stretch!important}.fc-kshield-vera{width:132px!important;min-width:132px!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;padding:8px!important}.fc-kshield-vera .vera-motion-host,.fc-kshield-vera>img{width:118px!important;height:280px!important;max-height:100%!important;object-fit:contain!important;overflow:visible!important}.fc-kshield-talk{min-width:0!important;overflow:auto!important;padding-right:2px!important}.fc-vera-support-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}.fc-vera-human{margin-top:8px!important}.fc-vera-human-grid{gap:7px!important}.fc-kshield-actions{position:sticky!important;bottom:0!important;background:linear-gradient(180deg,transparent,var(--panel,#171b25) 24%)!important;padding-top:10px!important}
@media(max-width:680px){.fc-kshield-r21,.fc-kshield-r29{grid-template-columns:92px minmax(0,1fr)!important;max-height:86vh!important}.fc-kshield-vera{width:92px!important;min-width:92px!important}.fc-kshield-vera .vera-motion-host,.fc-kshield-vera>img{width:82px!important;height:220px!important}.fc-vera-support-grid{grid-template-columns:1fr!important}}

/* Daily quote — compact floating card only. */
.vd-vera-quote{width:min(620px,92vw)!important;min-height:0!important;max-height:320px!important;display:grid!important;grid-template-columns:150px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;padding:14px!important;overflow:hidden!important}.vd-vera-quote-rail{height:260px!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;overflow:hidden!important}.vd-vera-quote-rail .vera-motion-host,.vd-vera-quote-rail>img{width:145px!important;height:250px!important;object-fit:contain!important}.vd-vera-quote-copy{padding:4px!important}.vd-vera-quote-copy .vd-kicker{font-size:10px!important}.vd-vera-quote-copy h2{font-size:clamp(20px,2.1vw,30px)!important;line-height:1.18!important;margin:8px 0!important}

/* JAKIM — compact one-screen, prayer times remain the focus. */
.vd-prayer-panel{width:min(760px,94vw)!important;max-height:500px!important;grid-template-columns:170px minmax(0,1fr)!important;padding:14px!important;gap:14px!important;overflow:hidden!important}.vd-prayer-vera-rail{min-height:0!important;max-height:430px!important;overflow:hidden!important}.vd-prayer-vera-rail .vera-motion-host,.vd-prayer-vera-rail>img{width:150px!important;height:330px!important;object-fit:contain!important}.vd-prayer-quote{font-size:11px!important;line-height:1.35!important;padding:8px!important;max-height:70px!important;overflow:hidden!important}.vd-prayer-copy{min-width:0!important;overflow:auto!important}.vd-prayer-times{gap:6px!important}.vd-prayer-times>div{min-height:52px!important;padding:8px!important}

/* Website Control */
.vd-website-grid{display:grid;grid-template-columns:minmax(320px, .9fr) minmax(360px,1.1fr);gap:12px}.vd-website-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px}.vd-website-form h3,.vd-website-form textarea,.vd-website-form label:has(textarea),.vd-website-visibility{grid-column:1/-1}.vd-website-form label{display:grid;gap:5px;font-size:11px;font-weight:800}.vd-website-form input,.vd-website-form textarea{width:100%;box-sizing:border-box}.vd-website-visibility{display:flex;flex-wrap:wrap;gap:9px}.vd-website-preview{padding:14px}.vd-website-preview-banner{min-height:180px;border:1px dashed rgba(255,255,255,.16);border-radius:16px;display:grid;place-items:center;overflow:hidden;margin:12px 0}.vd-website-preview-banner img{width:100%;height:220px;object-fit:cover}.vd-website-preview-mini{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted,#97a1b4)}.vd-website-history{margin-top:18px}.vd-website-history .fc-line{align-items:center}.vd-website-history button{white-space:nowrap}
@media(max-width:900px){.vd-website-grid{grid-template-columns:1fr}.vd-website-form{grid-template-columns:1fr}}

/* Documents / watermark */
.vd-doc-template-workspace{grid-template-columns:minmax(300px,390px) minmax(0,1fr)!important}.vd-doc-template-controls{display:grid!important;gap:9px!important}.vd-watermark-settings{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:10px}.vd-watermark-settings legend{padding:0 6px;font-weight:900}.vd-system-a4-watermarked{position:relative!important;overflow:hidden!important}.vd-system-a4-watermarked>*:not(.vd-doc-watermark){position:relative;z-index:1}.vd-doc-watermark{position:absolute!important;z-index:0!important;opacity:var(--doc-wm-opacity,.055)!important;width:var(--doc-wm-size,58%)!important;height:auto!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;object-fit:contain!important;pointer-events:none!important}.vd-system-a4-watermarked[style*="--doc-wm-pos:top"] .vd-doc-watermark{top:28%!important}.vd-system-a4-watermarked[style*="--doc-wm-pos:bottom"] .vd-doc-watermark{top:72%!important}.vd-doc-ref-row{display:flex;justify-content:space-between;gap:16px;font-size:10px;margin:8px 0 16px}.vd-doc-signatory{display:grid;gap:2px;margin-top:28px}.vd-template-library{margin-top:12px}.vd-template-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.vd-template-library-grid button{text-align:left;display:grid;gap:3px;padding:10px;border-radius:12px}.vd-template-library-grid small{color:var(--muted,#96a0b4)}

/* Demo/QC */
.vd-demo-mode-banner{padding:10px 14px;border:1px solid rgba(255,255,255,.13);border-radius:13px;margin-bottom:12px;font-weight:900;letter-spacing:.08em;text-align:center}.vd-demo-mode-banner.active{border-color:#ff4e9b;background:rgba(255,78,155,.08);box-shadow:0 0 0 1px rgba(255,78,155,.12) inset}html[data-verve-demo="1"] .vd-main:before{content:"DEMO MODE";position:fixed;top:10px;left:50%;transform:translateX(-50%);z-index:9998;background:#ff4e9b;color:#160912;font-weight:1000;font-size:11px;letter-spacing:.13em;padding:6px 12px;border-radius:999px;pointer-events:none}

/* Gel slots */
.vd-gel-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-top:12px}.vd-gel-slot{display:grid;gap:3px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:13px}.vd-gel-slot.available{border-color:rgba(74,222,128,.35)}.vd-gel-slot.blocked{opacity:.6;border-color:rgba(248,113,113,.28)}.vd-gel-slot span{font-size:11px;color:var(--muted,#96a0b4)}

/* Global searchable long select helper */
.vd-auto-search-wrap{display:grid;gap:5px}.vd-auto-select-search{width:100%;min-height:34px;border-radius:10px;font-size:12px}

/* Build/version designer mark */
.vd-build-designer{background:transparent!important;border:0!important;box-shadow:none!important;padding:18px 0!important}.vd-designer-signature{background:transparent!important;border:0!important;max-width:220px!important;object-fit:contain!important}

/* keep approved icon visually untouched */
.vd-kshield-approved img{filter:none!important;transform:none!important;opacity:1!important}
/* R29 OCR preview normalization: original file remains evidence; only review viewport transforms. */
.r25-ocr-image-stage{min-height:240px;display:grid;place-items:center;overflow:hidden;border-radius:16px;background:rgba(127,127,127,.06)}
.r25-ocr-image-stage.crop img{width:100%;height:52vh;object-fit:cover}
