/* VERVE POS WEB R30.2.17 — full master application closure */
:root{--r30217-logo:52px;--r30217-icon:23px;--r30217-font-scale:1}
.vd-body{font-size:calc(16px * var(--r30217-font-scale))}
/* one connected app frame */
.vd-sidebar,.vd-main{border-radius:0!important;box-shadow:none!important}
.vd-sidebar{top:0!important;bottom:0!important;border-right:1px solid color-mix(in srgb,currentColor 10%,transparent)!important}
.vd-main{margin-top:0!important;min-width:0!important}
.vd-topbar,.vd-page-header,.vd-header{border-radius:0!important;box-shadow:none!important}
.vd-sidebar-head{min-height:72px!important;display:grid!important;place-items:center!important;padding:8px 10px!important}
.vd-brand-home img{width:auto!important;height:var(--r30217-logo)!important;max-width:150px!important;object-fit:contain!important;image-rendering:auto!important}
.vd-nav-icon{width:var(--r30217-icon)!important;height:var(--r30217-icon)!important;min-width:var(--r30217-icon)!important}
.vd-nav-icon svg{width:100%!important;height:100%!important}
.vd-nav-item,.vd-nav-group>button{min-height:46px!important}
.vd-subnav button{min-height:40px!important}
button,input,select,textarea{font:inherit}
button{min-height:40px}
/* master workspaces */
.r30217-page{padding:18px 20px 28px;display:grid;gap:16px;min-width:0}
.r30217-page-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.r30217-page-head span,.r30217-card>span,.r30217-hub-card>span{font-size:10px;font-weight:900;letter-spacing:.14em;color:#ff4e9b;text-transform:uppercase}
.r30217-page-head h2{margin:3px 0 5px;font-size:clamp(24px,3vw,36px)}
.r30217-page-head p{margin:0;max-width:800px;color:var(--muted,#9aa4b2);line-height:1.5}
.r30217-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.r30217-hub-card,.r30217-card{border:1px solid rgba(128,140,160,.18);background:rgba(127,140,160,.07);border-radius:16px;padding:16px;text-align:left;color:inherit;display:grid;gap:6px;min-width:0}
.r30217-hub-card{cursor:pointer;min-height:145px;align-content:start}
.r30217-hub-card b{font-size:18px}.r30217-hub-card small,.r30217-card small{color:var(--muted,#9aa4b2);line-height:1.45}.r30217-hub-card i{margin-top:auto;font-style:normal;font-weight:800;color:#ff4e9b}
.r30217-status-strip{display:flex;gap:9px;flex-wrap:wrap}.r30217-status-strip span{padding:8px 11px;border-radius:999px;background:rgba(127,140,160,.1);font-size:12px}.r30217-status-strip b{margin-left:5px}
.r30217-toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.r30217-toolbar input{min-width:min(320px,100%)}
.r30217-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:1px solid rgba(128,140,160,.18);border-radius:16px;padding:16px;background:rgba(127,140,160,.05)}
.r30217-form label{display:grid;gap:6px;font-weight:700}.r30217-form label.full,.r30217-form .full{grid-column:1/-1}.r30217-form input,.r30217-form select,.r30217-form textarea{width:100%;box-sizing:border-box;padding:11px 12px;border-radius:11px;border:1px solid rgba(128,140,160,.25);background:rgba(20,24,34,.55);color:inherit}.r30217-form textarea{resize:vertical}.r30217-form .actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}
.r30217-list{display:grid;gap:9px}.r30217-row{width:100%;display:flex;justify-content:space-between;gap:14px;text-align:left;padding:13px 14px;border-radius:13px;border:1px solid rgba(128,140,160,.16);background:rgba(127,140,160,.05);color:inherit}.r30217-row>div{display:grid;gap:3px}.r30217-row small{color:var(--muted,#9aa4b2)}.r30217-row.unread{border-color:#ff4e9b;background:rgba(255,78,155,.07)}
.r30217-card h3{margin:2px 0}.r30217-card p{margin:2px 0 6px;line-height:1.5}.r30217-card .actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.r30217-card-head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.r30217-empty{padding:24px;border:1px dashed rgba(128,140,160,.28);border-radius:15px;text-align:center;color:var(--muted,#9aa4b2)}
.r30217-dialog{min-width:min(680px,86vw);display:grid;gap:12px}.r30217-dialog form{display:grid;gap:10px}.r30217-dialog label{display:grid;gap:5px}.r30217-dialog input,.r30217-dialog textarea,.r30217-dialog select{padding:11px;border-radius:10px;border:1px solid rgba(128,140,160,.25);background:rgba(20,24,34,.65);color:inherit}.r30217-dialog pre{white-space:pre-wrap;max-height:52vh;overflow:auto}.r30217-error,.fail{color:#ff6b8f!important}.pass{color:#6ee7a8!important}
.r30217-banner-preview{padding:24px;border-radius:18px;background:linear-gradient(135deg,rgba(255,78,155,.18),rgba(101,91,255,.18));display:grid;gap:10px}.r30217-banner-preview h2{font-size:32px;margin:0}
.r30217-wizard-status{display:grid;grid-template-columns:auto 1fr 1fr 1fr;gap:7px;padding:10px;border-radius:12px;background:rgba(127,140,160,.08)}
.r30217-a4{background:white;color:#1b1b1b;width:min(760px,80vw);min-height:900px;padding:58px;box-sizing:border-box;display:grid;align-content:start;gap:16px;box-shadow:0 20px 50px rgba(0,0,0,.3)}.r30217-a4 header{display:flex;gap:18px;align-items:center;border-bottom:2px solid #222;padding-bottom:18px}.r30217-a4 header img{width:100px;height:60px;object-fit:contain}.r30217-a4 header div{display:grid}.r30217-a4 pre{white-space:pre-wrap;font:15px/1.65 Georgia,serif}.r30217-a4 footer{margin-top:auto;border-top:1px solid #ddd;padding-top:14px;font-size:10px;color:#777}
.r30217-ui-preview{display:grid;grid-template-columns:var(--r30217-logo) 1fr var(--r30217-icon);gap:14px;align-items:center;border:1px solid rgba(128,140,160,.18);padding:16px;border-radius:16px}.r30217-ui-preview img{width:var(--r30217-logo);height:var(--r30217-logo);object-fit:contain}.r30217-ui-preview>div{display:grid;gap:4px}.r30217-ui-preview i{font-size:var(--r30217-icon)}
.r30217-test-grid{display:grid;gap:9px}.r30217-test-grid article{display:grid;gap:4px;padding:10px;border-radius:11px;background:rgba(127,140,160,.07)}.r30217-test-grid pre{max-height:140px;overflow:auto;white-space:pre-wrap;font-size:11px}.r30217-tabs{display:flex;gap:7px;overflow:auto;padding:4px 0 12px}.r30217-tabs button{white-space:nowrap}
/* compact K Shield / JAKIM */
.vd-prayer-panel{width:min(620px,94vw)!important;max-height:min(520px,86vh)!important;grid-template-columns:minmax(130px,.38fr) 1fr!important;padding:14px!important;gap:12px!important}.vd-prayer-vera-rail{min-height:0!important}.vd-prayer-vera-rail img{max-height:210px!important;object-fit:contain!important}.vd-prayer-times{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}.vd-prayer-times>div{padding:8px!important;min-height:0!important}.vd-prayer-quote{font-size:11px!important}
.vfr-kshield,.vd-kshield-panel,[class*="kshield"][class*="panel"]{max-width:min(620px,94vw)!important;max-height:88vh!important}
/* responsive acceptance */
@media(max-width:980px){.r30217-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.r30217-page{padding:14px}.r30217-form{grid-template-columns:1fr}.r30217-form label.full,.r30217-form .full,.r30217-form .actions{grid-column:auto}.vd-prayer-times{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){:root{--r30217-logo:46px;--r30217-icon:24px}.r30217-hub-grid{grid-template-columns:1fr}.r30217-page{padding:11px}.r30217-page-head{display:grid}.r30217-hub-card{min-height:112px}.r30217-toolbar>*{width:100%}.r30217-row{display:grid}.r30217-dialog{min-width:0;width:88vw}.r30217-a4{width:92vw;min-height:720px;padding:30px 24px}.vd-prayer-panel{grid-template-columns:1fr!important}.vd-prayer-vera-rail{display:none!important}.vd-nav-item,.vd-nav-group>button{min-height:48px!important}.vd-subnav button{min-height:44px!important}.r30217-wizard-status{grid-template-columns:1fr 1fr}}
@media print{.r30217-a4{box-shadow:none;width:210mm;min-height:297mm;margin:0}}
