.sbvm{font-family:Inter,Arial,sans-serif}.sbvm h1,.sbvm h2{font-weight:900;color:#0f172a}.sbvm-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:16px;margin:18px 0}.sbvm-card{background:linear-gradient(135deg,#fff,#eef6ff);border:1px solid #dbeafe;border-radius:20px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.08)}.sbvm-card b{display:block;color:#334155}.sbvm-card span{font-size:26px;font-weight:900;color:#0f766e;margin-top:8px;display:block}.sbvm-panel{background:#fff;border:1px solid #dbeafe;border-radius:20px;padding:18px;margin:15px 0;box-shadow:0 10px 28px rgba(15,23,42,.07)}.sbvm-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.sbvm label{font-weight:800;color:#334155;display:block;margin:10px 0}.sbvm input,.sbvm select,.sbvm textarea{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:10px;background:#fff}.sbvm textarea{min-height:80px}.sbvm-filter{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin:14px 0}.roll-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));gap:12px;margin:16px 0}.roll{border-radius:20px;padding:14px;background:#ecfdf5;border:1px solid #86efac;box-shadow:0 8px 20px rgba(15,23,42,.06)}.roll.busy{background:#fff7ed;border-color:#fdba74}.roll b{font-size:18px;color:#172554}.roll small{display:flex;justify-content:space-between;background:rgba(255,255,255,.8);padding:7px 9px;border-radius:12px;margin-top:8px}.roll em{font-style:normal;font-weight:900}.available{color:#15803d}.booked{color:#c2410c}.roll p{font-size:12px;margin:6px 0;color:#475569}.sbvm-legend{display:flex;gap:16px;flex-wrap:wrap;margin:10px 0}.dot{width:14px;height:14px;border-radius:50%;display:inline-block;margin-right:5px}.dot.free{background:#22c55e}.dot.busy{background:#f97316}.dot.due{background:#facc15}.sbvm-due{background:#fee2e2!important}.sbvm-soon{background:#fef9c3!important}.sbvm-receipt{background:#fff;width:460px;max-width:100%;border:2px dashed #1d4ed8;border-radius:16px;padding:18px}.sbvm-receipt h2{text-align:center;margin:0}.sbvm-receipt .two{display:flex;justify-content:space-between;gap:12px}.sbvm-receipt table{width:100%;border-collapse:collapse}.sbvm-receipt td{border:1px solid #dbeafe;padding:8px}.sign{text-align:right;margin-top:28px;font-weight:900}.sbvm-id-card{width:390px;max-width:100%;border:2px solid #1d4ed8;border-radius:22px;background:linear-gradient(135deg,#eff6ff,#fff);padding:18px;box-shadow:0 14px 32px rgba(29,78,216,.15)}.sbvm-id-card h3{text-align:center;margin:0 0 12px;color:#1d4ed8}.id-flex{display:flex;gap:12px;align-items:center}.id-photo{width:90px;height:105px;border:1px solid #cbd5e1;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#fff;overflow:hidden}.id-photo img{width:100%;height:100%;object-fit:cover}.sbvm-notices{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:15px 0}.sbvm-notice{background:#f8fafc;border-left:5px solid #2563eb;border-radius:16px;padding:14px}.sbvm-notice b{display:block;font-size:18px}.sbvm-notice span{display:inline-block;background:#dbeafe;border-radius:999px;padding:3px 10px;margin:8px 0;color:#1d4ed8;font-weight:800}.sbvm-front{max-width:1100px;margin:auto}.sbvm-front .button,.sbvm .button-primary{border-radius:12px!important;padding:8px 18px!important}
@media(max-width:720px){.sbvm-row,.sbvm-cards,.roll-grid{grid-template-columns:1fr}.sbvm-filter{display:block}.widefat{font-size:12px}.sbvm-receipt .two,.id-flex{display:block}.sbvm-id-card,.sbvm-receipt{width:auto}}
@media print{#adminmenumain,#wpadminbar,.notice,.button,.page-title-action,.sbvm-form,.sbvm-filter{display:none!important}.wrap{margin:0!important}.sbvm-card,.roll{box-shadow:none}.receipt-row,.sbvm-card-row{display:table-row!important}.sbvm-receipt,.sbvm-id-card{break-inside:avoid}}
.sbvm-access{max-width:760px;margin:40px auto;padding:28px;border-radius:22px;background:#fff;border:1px solid #e5e7eb;box-shadow:0 20px 55px rgba(15,23,42,.10);text-align:center}.sbvm-access h3{margin-top:0;font-size:26px}.sbvm-access p{font-size:16px;color:#475569}.sbvm-access .sbvm-btn{display:inline-block;margin-top:10px;padding:12px 22px;border-radius:12px;text-decoration:none;font-weight:800}

/* SBVM Home Page */
.sbvm-home{max-width:1180px;margin:24px auto;padding:10px}
.sbvm-hero{display:grid;grid-template-columns:1.6fr .8fr;gap:22px;align-items:stretch;background:linear-gradient(135deg,#0f172a,#1e3a8a);color:#fff;border-radius:28px;padding:34px;box-shadow:0 18px 45px rgba(15,23,42,.25);overflow:hidden;position:relative}
.sbvm-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.09);right:-80px;top:-80px}
.sbvm-kicker{display:inline-block;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.24);padding:7px 14px;border-radius:99px;margin:0 0 12px;font-weight:700}
.sbvm-hero h1{font-size:38px;line-height:1.15;margin:0 0 12px;color:#fff}
.sbvm-hero p{font-size:16px;max-width:720px;margin:0 0 20px;color:rgba(255,255,255,.9)}
.sbvm-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.sbvm-btn-light{background:#fff!important;color:#0f172a!important}.sbvm-hero-card{position:relative;z-index:1;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:24px;padding:24px;display:flex;flex-direction:column;justify-content:center;gap:8px}.sbvm-hero-card b{font-size:22px}.sbvm-hero-card span{font-size:26px;font-weight:900}.sbvm-hero-card small{color:rgba(255,255,255,.8)}
.sbvm-home-stats{grid-template-columns:repeat(6,1fr);margin:20px 0}.sbvm-home-stats div{min-height:92px}.sbvm-home-stats b{font-size:24px;display:block}.sbvm-home-stats span{color:#64748b;font-weight:700;font-size:13px}.sbvm-home h2{margin:28px 0 14px;font-size:24px}.sbvm-home-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.sbvm-home-card{background:#fff;border:1px solid #e5e7eb;border-radius:22px;padding:20px;text-decoration:none;color:#0f172a;box-shadow:0 10px 28px rgba(15,23,42,.08);transition:.2s;min-height:132px}.sbvm-home-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(15,23,42,.13)}.sbvm-home-card i{font-style:normal;font-size:28px;display:block;margin-bottom:10px}.sbvm-home-card strong{display:block;font-size:17px;margin-bottom:6px}.sbvm-home-card span{display:block;color:#64748b;font-size:13px;line-height:1.5}
@media(max-width:1000px){.sbvm-hero{grid-template-columns:1fr}.sbvm-home-stats{grid-template-columns:repeat(2,1fr)}.sbvm-home-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.sbvm-hero{padding:24px;border-radius:22px}.sbvm-hero h1{font-size:28px}.sbvm-home-grid{grid-template-columns:1fr}.sbvm-home-stats{grid-template-columns:1fr}.sbvm-hero-actions .sbvm-btn{width:100%;text-align:center}}

/* v3.5 Owner-only ERP shell: hides WordPress feeling on frontend */
body:not(.wp-admin).admin-bar{margin-top:0!important} body:not(.wp-admin) #wpadminbar{display:none!important}
.sbvm-shell-spacer{height:68px}.sbvm-shell-head{position:fixed;z-index:99998;top:0;left:0;right:0;height:68px;background:linear-gradient(135deg,#07132f,#173b7a);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 18px;box-shadow:0 10px 30px rgba(0,0,0,.22)}
.sbvm-shell-brand{display:flex;align-items:center;gap:12px}.sbvm-shell-brand strong{font-size:18px}.sbvm-shell-brand span{font-size:12px;background:rgba(255,255,255,.14);padding:6px 10px;border-radius:999px}.sbvm-menu-toggle{border:0;background:#fff;color:#142a55;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}
.sbvm-shell-actions{display:flex;align-items:center;gap:8px}.sbvm-shell-actions a,.sbvm-shell-actions button{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.12);color:#fff;border-radius:10px;padding:9px 11px;text-decoration:none;cursor:pointer;font-weight:700}.sbvm-shell-actions input{width:270px;max-width:35vw;border:0;border-radius:12px;padding:11px 13px}.sbvm-shell-actions .sbvm-logout{background:#ef4444;border-color:#ef4444}
.sbvm-shell-side{position:fixed;z-index:99997;top:68px;left:0;bottom:0;width:238px;background:#07132f;color:#dbe7ff;padding:16px 12px;overflow:auto;box-shadow:10px 0 24px rgba(0,0,0,.12)}.sbvm-side-title{font-weight:900;margin:4px 10px 14px;color:#fff}.sbvm-shell-side a{display:flex;align-items:center;gap:10px;color:#dbe7ff;text-decoration:none;padding:12px 13px;border-radius:14px;margin:5px 0;font-weight:700}.sbvm-shell-side a:hover{background:rgba(255,255,255,.12);color:#fff}.sbvm-shell-side span{width:24px;text-align:center}
.sbvm-shell-main{margin-left:238px;padding:18px;min-height:calc(100vh - 68px);background:#f6f8fc}.sbvm-shell-main .wrap{margin:0!important}.sbvm-shell-main .sbvm-front,.sbvm-shell-main .wrap.sbvm{max-width:1220px;margin:0 auto!important}.sbvm-bottom-nav{display:none}
@media(max-width:900px){.sbvm-shell-spacer{height:62px}.sbvm-shell-head{height:62px;padding:0 10px}.sbvm-shell-brand strong{font-size:14px}.sbvm-shell-brand span,.sbvm-shell-actions button:nth-child(3),.sbvm-shell-actions input{display:none}.sbvm-shell-actions a,.sbvm-shell-actions button{padding:8px 9px;font-size:12px}.sbvm-shell-side{transform:translateX(-105%);transition:.25s;width:250px;top:62px}.sbvm-menu-open .sbvm-shell-side{transform:translateX(0)}.sbvm-shell-main{margin-left:0;padding:12px 10px 78px}.sbvm-bottom-nav{position:fixed;z-index:99999;display:grid;grid-template-columns:repeat(4,1fr);left:0;right:0;bottom:0;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -8px 24px rgba(0,0,0,.12)}.sbvm-bottom-nav a{text-align:center;text-decoration:none;color:#0f172a;padding:8px 4px;font-weight:800;font-size:13px}.sbvm-bottom-nav span{display:block;font-size:11px;margin-top:2px}}

/* v3.6 Hint removed + stronger mobile/tablet responsive fixes */
.sbvm-home-card span:empty,.sbvm-kicker:empty{display:none!important}
.sbvm .description,.sbvm .help,.sbvm .hint,.sbvm-help,.sbvm-hint,.sbvm-demo,.sbvm-tip{display:none!important}
.sbvm-panel code{display:none!important}
.sbvm-shell-main{box-sizing:border-box;width:auto;overflow-x:hidden}
.sbvm *, .sbvm-shell-head *, .sbvm-shell-side *, .sbvm-bottom-nav *{box-sizing:border-box}
.sbvm table{width:100%;border-collapse:collapse}
.sbvm .widefat{display:block;overflow-x:auto;white-space:nowrap;border-radius:14px;border:1px solid #e5e7eb;background:#fff}
.sbvm .button,.sbvm .button-primary,.sbvm-btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
.sbvm input,.sbvm select,.sbvm textarea{font-size:16px;max-width:100%}

@media (min-width:901px) and (max-width:1180px){
  .sbvm-shell-side{width:210px}.sbvm-shell-main{margin-left:210px;padding:16px}
  .sbvm-shell-actions input{width:210px}.sbvm-home-grid{grid-template-columns:repeat(3,1fr)}
  .sbvm-home-stats{grid-template-columns:repeat(3,1fr)}.roll-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  html,body{overflow-x:hidden}.sbvm-shell-brand{min-width:0}.sbvm-shell-brand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:42vw}
  .sbvm-shell-actions{gap:5px}.sbvm-shell-actions .sbvm-logout{font-size:0}.sbvm-shell-actions .sbvm-logout:before{content:'Logout';font-size:12px}
  .sbvm-menu-open:after{content:"";position:fixed;z-index:99996;inset:62px 0 0 0;background:rgba(15,23,42,.38)}
  .sbvm-shell-side{max-width:82vw}.sbvm-shell-side a{padding:14px 12px;font-size:15px}
  .sbvm-card,.sbvm-panel,.sbvm-home-card,.roll{border-radius:16px;padding:14px}.sbvm h1{font-size:24px}.sbvm h2{font-size:20px}
  .sbvm-row{grid-template-columns:1fr!important}.sbvm-filter{display:grid;grid-template-columns:1fr;gap:10px}.sbvm-filter .button{width:100%}
  .sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sbvm-card span{font-size:21px}
  .roll-grid{grid-template-columns:1fr!important}.sbvm-notices{grid-template-columns:1fr!important}
  .sbvm-home{margin:0;padding:0}.sbvm-hero{margin:0 0 14px;border-radius:0 0 22px 22px}.sbvm-home-grid{gap:10px}
}
@media (max-width:520px){
  .sbvm-shell-head{height:58px}.sbvm-shell-spacer{height:58px}.sbvm-shell-side{top:58px}.sbvm-shell-main{padding:10px 8px 76px}
  .sbvm-shell-brand strong{max-width:35vw;font-size:13px}.sbvm-shell-actions a,.sbvm-shell-actions button{padding:7px 8px;border-radius:9px}
  .sbvm-shell-actions button:first-child{font-size:0}.sbvm-shell-actions button:first-child:before{content:'←';font-size:16px}
  .sbvm-shell-actions button:nth-child(3){display:none!important}.sbvm-shell-actions a:not(.sbvm-logout){font-size:0}.sbvm-shell-actions a:not(.sbvm-logout):before{content:'🏠';font-size:15px}
  .sbvm-cards,.sbvm-home-stats,.sbvm-home-grid{grid-template-columns:1fr!important}.sbvm-hero h1{font-size:24px}.sbvm-hero{padding:20px 16px}
  .sbvm-hero-card{padding:16px}.sbvm-hero-actions{display:grid;grid-template-columns:1fr}.sbvm-btn,.sbvm .button,.sbvm .button-primary{width:100%;text-align:center}
  .sbvm-receipt,.sbvm-id-card{padding:12px;border-radius:14px}.sbvm-receipt td{font-size:13px;padding:6px}.sbvm-legend{gap:8px;font-size:12px}
  .sbvm-bottom-nav a{font-size:12px;padding:7px 2px}.sbvm-bottom-nav span{font-size:10px}
}

/* v3.7 Premium frontend + custom SBVM owner login */
.sbvm-shell-head{backdrop-filter:blur(14px);background:linear-gradient(135deg,#061026 0%,#102e63 50%,#0f766e 100%)}
.sbvm-shell-brand strong:before{content:'📚 ';font-size:20px}.sbvm-shell-side{background:linear-gradient(180deg,#061026,#0b1f42)}
.sbvm-shell-main{background:radial-gradient(circle at top left,rgba(37,99,235,.10),transparent 28%),#f5f7fb}.sbvm-panel,.sbvm-card,.sbvm-home-card,.roll{border-color:#dbe7ff;box-shadow:0 12px 32px rgba(15,23,42,.08)}
.sbvm-home-card{position:relative;overflow:hidden}.sbvm-home-card:after{content:"";position:absolute;right:-28px;bottom:-28px;width:86px;height:86px;border-radius:50%;background:rgba(37,99,235,.08)}
.sbvm input:focus,.sbvm select:focus,.sbvm textarea:focus{outline:3px solid rgba(37,99,235,.15);border-color:#2563eb}

.sbvm-login-screen{position:fixed;inset:0;z-index:2147483000;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:34px;padding:42px;background:radial-gradient(circle at 15% 20%,rgba(56,189,248,.22),transparent 26%),linear-gradient(135deg,#061026,#102e63 52%,#0f766e);font-family:Inter,Arial,sans-serif;color:#fff;overflow:auto}
.sbvm-login-left{max-width:680px}.sbvm-login-badge{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.26);font-weight:800;margin-bottom:18px}.sbvm-login-left h1{font-size:48px;line-height:1.08;margin:0 0 16px;color:#fff;font-weight:950}.sbvm-login-left p{font-size:18px;line-height:1.7;color:rgba(255,255,255,.88);margin:0 0 24px}.sbvm-login-points{display:flex;gap:12px;flex-wrap:wrap}.sbvm-login-points span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:16px;padding:12px 14px;font-weight:800}
.sbvm-login-card{width:100%;max-width:430px;margin:auto;background:rgba(255,255,255,.96);color:#0f172a;border-radius:30px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.55)}.sbvm-login-card h2{margin:0 0 18px;font-size:30px;color:#0f172a;font-weight:950}.sbvm-login-card label{display:block;font-weight:850;margin:14px 0 7px;color:#334155}.sbvm-login-card input[type=text],.sbvm-login-card input[type=password]{width:100%;height:50px;border:1px solid #cbd5e1;border-radius:15px;padding:0 14px;font-size:16px;background:#fff}.sbvm-login-card input:focus{outline:4px solid rgba(37,99,235,.14);border-color:#2563eb}.sbvm-login-remember{display:flex!important;align-items:center;gap:9px;font-weight:750!important}.sbvm-login-remember input{width:auto!important;height:auto!important}.sbvm-login-btn{width:100%;min-height:52px;border:0;border-radius:16px;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff!important;font-weight:950;font-size:16px;text-decoration:none;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-top:16px}.sbvm-login-card small{display:block;text-align:center;margin-top:14px;color:#64748b;font-weight:700}.sbvm-login-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;border-radius:14px;padding:11px 13px;font-weight:800;margin:8px 0 12px}.sbvm-login-success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0;border-radius:14px;padding:11px 13px;font-weight:800;margin:8px 0 12px}
body:has(.sbvm-login-screen) #wpadminbar{display:none!important}
@media(max-width:900px){.sbvm-login-screen{grid-template-columns:1fr;padding:26px 18px;align-content:center}.sbvm-login-left{text-align:center;margin:auto}.sbvm-login-left h1{font-size:34px}.sbvm-login-left p{font-size:15px}.sbvm-login-points{justify-content:center}.sbvm-login-card{border-radius:24px;padding:24px}}
@media(max-width:520px){.sbvm-login-screen{padding:18px 12px}.sbvm-login-left h1{font-size:27px}.sbvm-login-points span{font-size:12px;padding:9px 10px}.sbvm-login-card{padding:20px;border-radius:20px}.sbvm-login-card h2{font-size:24px}.sbvm-login-card input[type=text],.sbvm-login-card input[type=password]{height:48px}}

/* v3.8 Admission fee-due + stronger frontend responsive fixes */
.sbvm-section-title{margin:18px 0 8px;padding:10px 13px;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#ecfeff);border:1px solid #dbeafe;font-size:15px;font-weight:950;color:#0f172a}
.sbvm-fee-row{background:#f8fafc;border:1px dashed #93c5fd;border-radius:18px;padding:12px;margin-top:8px}
.sbvm-fee-status[value="due"],.sbvm-due-amount{font-weight:900;color:#b91c1c}.sbvm-paid{font-weight:900;color:#15803d}
.sbvm .widefat th,.sbvm .widefat td{padding:10px 12px;vertical-align:middle}.sbvm .widefat th{background:#eff6ff;color:#0f172a}
.sbvm .button+.button,.sbvm a.button+button,.sbvm button+button{margin-left:6px}.sbvm-front form:not(.sbvm-login-card form){max-width:100%}
.sbvm-shell-main .sbvm-front{width:100%}.sbvm-shell-main input[type="date"],.sbvm-shell-main input[type="number"],.sbvm-shell-main input[type="text"],.sbvm-shell-main select{min-height:44px}
@media (max-width:1180px){.sbvm-row{grid-template-columns:repeat(2,minmax(0,1fr))}.sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.roll-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){
  .sbvm-row,.sbvm-cards,.roll-grid,.sbvm-home-grid,.sbvm-home-stats{grid-template-columns:1fr!important}
  .sbvm-panel{padding:13px;margin:10px 0}.sbvm-section-title{font-size:14px;margin-top:14px}
  .sbvm label{margin:8px 0}.sbvm input,.sbvm select,.sbvm textarea{padding:11px 10px;border-radius:11px}
  .sbvm .button,.sbvm .button-primary,.sbvm-btn{width:100%;margin:5px 0!important}
  .sbvm .widefat{font-size:12px;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .roll small{font-size:12px}.roll p{font-size:11px}.sbvm-shell-main{overflow-x:hidden}
}
@media (min-width:769px) and (max-width:1024px){
  .sbvm-shell-main{padding:14px}.sbvm-panel{padding:16px}.sbvm-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}.roll-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .sbvm-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* v3.9 hard responsive + frontend function fixes */
.sbvm .widefat{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden}
.sbvm-table-scroll,.sbvm .widefat{max-width:100%}
@media (max-width:900px){
  .sbvm .widefat{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;border-radius:14px}
  .sbvm .widefat thead,.sbvm .widefat tbody,.sbvm .widefat tr{min-width:680px}
  .sbvm-shell-head{position:fixed;top:0;left:0;right:0;width:100%;z-index:99999}
  .sbvm-shell-main{width:100%!important;box-sizing:border-box}
  .sbvm-front,.sbvm .wrap{max-width:100%;overflow-x:hidden}
  .sbvm-row{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .sbvm-row label,.sbvm label{width:100%;max-width:100%}
  .sbvm input,.sbvm select,.sbvm textarea{width:100%!important;box-sizing:border-box}
  .sbvm-panel form,.sbvm form.sbvm-panel{width:100%;box-sizing:border-box}
}
@media (min-width:901px) and (max-width:1180px){
  .sbvm-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .sbvm-cards,.sbvm-home-grid,.sbvm-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:520px){
  .sbvm h1{font-size:22px!important}.sbvm h2{font-size:19px!important}.sbvm h3{font-size:17px!important}
  .sbvm-panel,.sbvm-card,.sbvm-home-card,.roll{padding:12px!important;border-radius:14px!important}
  .sbvm-section-title{padding:9px 10px!important}
  .sbvm-shell-main{padding-left:8px!important;padding-right:8px!important}
  .sbvm .button,.sbvm .button-primary,.sbvm-btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center}
}

/* v4.0 class_section edit + live admission roll map + reports fixes */
.sbvm-roll-live{margin:14px 0 18px}.sbvm-mini-note{margin:4px 0 10px;color:#64748b;font-weight:700}.sbvm-admission-roll-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:460px;overflow:auto;padding-right:6px}.roll.free{border-color:#bbf7d0;background:#f0fdf4}.roll .available{background:#dcfce7;color:#166534}.roll .booked{background:#fee2e2;color:#991b1b}.roll .due{background:#fef3c7;color:#92400e}.sbvm-mini-form{display:grid;grid-template-columns:minmax(80px,1fr) minmax(120px,1.3fr) auto;gap:6px;align-items:center;min-width:310px}.sbvm-mini-form select{min-height:36px}.sbvm-mini-form .button{min-height:36px!important;width:auto!important}.sbvm-card span{word-break:break-word}.sbvm-filter .sbvm-row{align-items:end}
@media(max-width:1180px){.sbvm-admission-roll-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.sbvm-admission-roll-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.sbvm-mini-form{grid-template-columns:1fr;min-width:220px}.sbvm-mini-form .button{width:100%!important}.sbvm-roll-live{overflow:hidden}.sbvm .widefat td form.sbvm-mini-form{white-space:normal}}
@media(max-width:560px){.sbvm-admission-roll-grid{grid-template-columns:1fr}.roll small{display:flex;justify-content:space-between;gap:8px}.roll p{margin:3px 0 6px}.sbvm-mini-note{font-size:12px}}
@media print{.sbvm-shell-head,.sbvm-shell-side,.sbvm-bottom-nav,.sbvm-filter,.sbvm .button{display:none!important}.sbvm-shell-main{margin:0!important;padding:0!important}.sbvm .widefat{display:table!important;white-space:normal!important}}

/* v4.1 admin edit/delete + receipt signature/stamp */
.sbvm-danger{border-color:#ef4444!important;color:#b91c1c!important;background:#fff5f5!important}
.sbvm-sign-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px;align-items:end;text-align:center}
.sbvm-sign-row>div{min-height:88px;border-top:1px dashed #94a3b8;padding-top:10px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}
.sbvm-sign-row img{max-height:58px;max-width:130px;object-fit:contain}
.sbvm-sign-row small{font-weight:700;color:#334155;line-height:1.35}.sbvm-receipt-note{font-size:12px;color:#64748b;font-weight:700}.sbvm-receipt{background:#fff;max-width:760px;margin:14px auto;padding:24px;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 16px 40px rgba(15,23,42,.08)}.sbvm-receipt table{width:100%;border-collapse:collapse;margin:18px 0}.sbvm-receipt td{border:1px solid #e2e8f0;padding:10px}.sbvm-receipt .two{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:680px){.sbvm-sign-row{grid-template-columns:1fr}.sbvm-receipt{padding:14px}.sbvm-receipt .two{display:block}.sbvm-receipt td{display:block;width:100%;box-sizing:border-box}}
@media print{.sbvm-receipt{box-shadow:none;border:1px solid #111;max-width:100%;border-radius:0}.sbvm-sign-row{grid-template-columns:repeat(3,1fr)!important}.sbvm-receipt-note{display:none}}


.sbvm-roll-warning{background:#fff7ed;border:1px solid #fb923c;color:#9a3412;border-radius:14px;padding:12px 14px;font-weight:900;margin:12px 0;box-shadow:0 8px 22px rgba(154,52,18,.12)}
.sbvm-field-help{display:block;font-size:11px;line-height:1.35;color:#64748b;font-weight:700;margin-top:6px}
.sbvm select option:disabled{color:#991b1b;background:#fee2e2}
.sbvm-option-booked{color:#991b1b!important;background:#fee2e2!important}
@media(max-width:1024px){.sbvm-row{grid-template-columns:repeat(2,minmax(0,1fr))}.roll-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sbvm-row{grid-template-columns:1fr}.roll-grid{grid-template-columns:1fr}.sbvm-panel{padding:14px;border-radius:16px}.sbvm input,.sbvm select,.sbvm textarea{font-size:16px}.sbvm-btn,.button{width:100%;margin-top:8px}.sbvm-roll-live{overflow-x:hidden}.roll small{font-size:12px}}

/* v4.4 Premium frontend refresh + historical bulk/search */
:root{--sbvm-bg:#f3f7fb;--sbvm-card:#ffffff;--sbvm-ink:#0f172a;--sbvm-muted:#64748b;--sbvm-primary:#2563eb;--sbvm-accent:#0f766e;--sbvm-soft:#eaf2ff;--sbvm-line:#dbe7ff}
.sbvm-shell-main{background:radial-gradient(circle at 15% 0,rgba(37,99,235,.16),transparent 26%),radial-gradient(circle at 90% 10%,rgba(15,118,110,.14),transparent 24%),var(--sbvm-bg)!important}
.sbvm h1,.sbvm h2{letter-spacing:-.035em}.sbvm h1{font-size:clamp(25px,3vw,38px);margin:8px 0 16px}.sbvm h2{font-size:clamp(22px,2.4vw,32px)}
.sbvm-panel,.sbvm-card,.sbvm-home-card,.sbvm-id-card,.sbvm-receipt,.roll{background:rgba(255,255,255,.94)!important;border:1px solid var(--sbvm-line)!important;box-shadow:0 18px 45px rgba(15,23,42,.08)!important;backdrop-filter:blur(10px)}
.sbvm-panel{padding:clamp(15px,2vw,24px);border-radius:24px;margin:18px 0}.sbvm-panel h3{font-size:21px;margin:0 0 14px;color:#0f172a;font-weight:950}
.sbvm-row{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.sbvm label{font-size:13px;text-transform:none;letter-spacing:.01em;color:#334155}.sbvm input,.sbvm select,.sbvm textarea{min-height:46px;border-radius:15px;border:1px solid #cdddf4;background:#fbfdff;transition:.18s}
.sbvm input:focus,.sbvm select:focus,.sbvm textarea:focus{background:#fff;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.sbvm .button,.sbvm .button-primary,.sbvm-btn{border-radius:14px!important;min-height:43px;font-weight:900!important;box-shadow:0 8px 18px rgba(37,99,235,.10);border:1px solid #cfe0ff!important}.sbvm .button-primary,.sbvm-btn{background:linear-gradient(135deg,#2563eb,#0f766e)!important;color:#fff!important;border:0!important}
.sbvm-cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}.sbvm-card{position:relative;overflow:hidden}.sbvm-card:after{content:"";position:absolute;right:-22px;top:-22px;width:82px;height:82px;border-radius:50%;background:rgba(37,99,235,.08)}.sbvm-card b{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.sbvm-card span{font-size:clamp(23px,2.7vw,34px);color:#0f766e}
.roll-grid{grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:14px}.roll{border-radius:22px!important;transition:.2s;position:relative;overflow:hidden}.roll:hover{transform:translateY(-3px)}.roll:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:#22c55e}.roll.busy:before{background:#f97316}.roll b{display:flex;align-items:center;justify-content:space-between}.roll small{border:1px solid #e8eef8;background:#f8fbff!important}.roll em.available{background:#dcfce7;color:#166534}.roll em.booked{background:#ffedd5;color:#9a3412}.roll em.due{background:#fef3c7;color:#92400e}.roll em{padding:3px 8px;border-radius:999px;font-size:11px}
.sbvm-table-scroll{width:100%;overflow:auto;border-radius:18px;border:1px solid #e5edf8;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.05)}.sbvm .widefat{display:table!important;min-width:780px;border:0!important;box-shadow:none!important}.sbvm .widefat th{background:#f1f6ff;color:#0f172a;font-weight:950}.sbvm .widefat td,.sbvm .widefat th{padding:12px 11px;vertical-align:middle}
.sbvm-filter{background:#fff;border:1px solid #e5edf8;padding:12px;border-radius:18px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.sbvm-filter input{flex:1;min-width:240px}.sbvm-mini-note{background:#f8fafc;border:1px dashed #bfd5f6;border-radius:14px;padding:10px 12px;color:#475569;font-weight:750}.sbvm-historical-bulk{background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(15,118,110,.07)),#fff!important}.sbvm-historical-bulk select[name="student_id"]{font-weight:850}.sbvm-historical-bulk option[value="0"]{font-weight:900}
.sbvm-section-title{background:linear-gradient(135deg,#eaf2ff,#ecfeff)!important;border-color:#cfe0ff!important;color:#0b1f42!important;border-radius:16px!important;padding:12px 14px!important;font-size:15px!important;display:flex;align-items:center;gap:8px}.sbvm-section-title:before{content:'◆';color:#2563eb;font-size:10px}.sbvm-roll-warning{background:#fff7ed!important;border:1px solid #fed7aa;color:#9a3412;border-radius:15px;padding:12px 14px;margin:10px 0;font-weight:900}
.sbvm-home{max-width:1240px}.sbvm-home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.sbvm-hero{border-radius:32px!important;box-shadow:0 28px 70px rgba(15,23,42,.25)!important}
.sbvm-shell-head{box-shadow:0 14px 32px rgba(2,6,23,.20)}.sbvm-shell-side a{transition:.18s}.sbvm-shell-side a:hover{transform:translateX(3px)}
@media (min-width:901px){.sbvm-shell-main .wrap.sbvm,.sbvm-shell-main .sbvm-front{padding:8px 6px}.sbvm-shell-actions input{min-width:260px}}
@media (max-width:1024px){.sbvm-row{grid-template-columns:repeat(2,minmax(0,1fr))}.roll-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.sbvm-row,.roll-grid,.sbvm-cards{grid-template-columns:1fr!important}.sbvm-panel{padding:14px;border-radius:18px}.sbvm .widefat{min-width:760px}.sbvm-filter{display:grid;grid-template-columns:1fr}.sbvm-filter input{min-width:0;width:100%}.sbvm h1{font-size:25px}.sbvm-shell-main{padding-left:8px!important;padding-right:8px!important}.sbvm-section-title{font-size:14px!important}.roll:hover{transform:none}}
@media (max-width:420px){.sbvm .button,.sbvm .button-primary,.sbvm-btn{width:100%;margin-top:6px}.sbvm-card span{font-size:24px}.sbvm-panel h3{font-size:18px}.sbvm .widefat{min-width:700px}.roll small{font-size:12px}.sbvm-login-left h1{font-size:25px}}

/* v4.5 Responsive Owner Login + Student Portal */
.sbvm-login-screen{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:28px;padding:clamp(18px,4vw,56px);background:radial-gradient(circle at 15% 5%,rgba(37,99,235,.22),transparent 28%),radial-gradient(circle at 90% 10%,rgba(15,118,110,.18),transparent 24%),linear-gradient(135deg,#eef6ff,#f8fbff)}
.sbvm-login-left,.sbvm-login-card{width:100%;box-sizing:border-box}.sbvm-login-left{color:#0f172a}.sbvm-login-left h1{font-size:clamp(28px,4.5vw,58px);line-height:1.02;margin:12px 0}.sbvm-login-left p{font-size:clamp(15px,1.6vw,19px);color:#475569;max-width:620px}.sbvm-login-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.sbvm-login-points span,.sbvm-login-badge{display:inline-flex;border:1px solid #cfe0ff;background:#fff;border-radius:999px;padding:8px 12px;font-weight:900;color:#0f766e;box-shadow:0 8px 22px rgba(15,23,42,.06)}
.sbvm-login-card{max-width:470px;margin:auto;background:rgba(255,255,255,.94);border:1px solid #dbe7ff;border-radius:28px;padding:clamp(18px,3vw,34px);box-shadow:0 28px 70px rgba(15,23,42,.14);backdrop-filter:blur(12px)}.sbvm-login-card h2{font-size:clamp(22px,2.5vw,32px);margin:0 0 16px}.sbvm-login-card label{display:block;margin-top:12px;font-weight:900;color:#334155}.sbvm-login-card input[type=text],.sbvm-login-card input[type=password]{width:100%;box-sizing:border-box;min-height:50px;border:1px solid #cdddf4;border-radius:16px;padding:0 14px;font-size:16px;background:#fbfdff}.sbvm-login-btn{width:100%;margin-top:16px;min-height:50px;border-radius:16px;border:0;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;font-weight:950;font-size:16px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.sbvm-login-error,.sbvm-login-success{padding:12px 14px;border-radius:14px;font-weight:900;margin:10px 0}.sbvm-login-error{background:#fee2e2;color:#991b1b}.sbvm-login-success{background:#dcfce7;color:#166534}
.sbvm-student-login-page{max-width:1120px;margin:0 auto;padding:clamp(12px,3vw,28px)}.sbvm-student-hero{border-radius:32px;padding:clamp(22px,4vw,44px);background:linear-gradient(135deg,#0f172a,#1d4ed8 55%,#0f766e);color:#fff;box-shadow:0 28px 70px rgba(15,23,42,.20);margin-bottom:18px;overflow:hidden;position:relative}.sbvm-student-hero:after{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.14)}.sbvm-student-hero h1{font-size:clamp(26px,4vw,46px);line-height:1.05;margin:12px 0}.sbvm-student-hero p{font-size:clamp(14px,1.7vw,18px);opacity:.92;max-width:680px}.sbvm-student-login-card{max-width:820px;margin:-34px auto 20px;position:relative;z-index:2}.sbvm-student-login-card small{display:block;margin-top:10px;color:#64748b;font-weight:750}.sbvm-student-profile .sbvm-cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.sbvm-student-profile .sbvm-card span{font-size:clamp(20px,2.5vw,30px)}
@media(max-width:900px){.sbvm-login-screen{grid-template-columns:1fr;gap:14px;padding:16px;align-items:start}.sbvm-login-left{text-align:center}.sbvm-login-points{justify-content:center}.sbvm-login-card{max-width:100%;border-radius:22px}.sbvm-student-login-card{margin:-20px 8px 18px}.sbvm-student-hero{border-radius:22px}.sbvm-student-profile .sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.sbvm-login-screen{padding:10px}.sbvm-login-left h1{font-size:28px}.sbvm-login-left p{font-size:14px}.sbvm-login-points span{font-size:12px;padding:7px 9px}.sbvm-login-card{padding:16px;border-radius:18px}.sbvm-login-card input[type=text],.sbvm-login-card input[type=password],.sbvm-login-btn{min-height:46px}.sbvm-student-login-page{padding:8px}.sbvm-student-hero{padding:20px 14px}.sbvm-student-login-card{margin:-12px 0 14px}.sbvm-student-profile .sbvm-cards{grid-template-columns:1fr!important}}

/* v4.7 Owner + Student combined frontend login */
.sbvm-login-screen-dual{min-height:100vh;display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:24px;align-items:center;padding:28px;background:linear-gradient(135deg,#07111f,#12345b 55%,#0b765e)}
.sbvm-login-dual-grid{display:grid;grid-template-columns:minmax(280px,420px) minmax(320px,1fr);gap:22px;align-items:start;width:100%}
.sbvm-student-login-inline-card{padding:0;overflow:hidden}
.sbvm-student-login-inline-card .sbvm-student-login-page{padding:0;background:transparent;min-height:auto}
.sbvm-student-login-inline-card .sbvm-panel{box-shadow:none;border:0;margin:0;background:transparent;padding:0}
.sbvm-student-login-inline-card .sbvm-row{grid-template-columns:1fr}
.sbvm-student-login-inline-card h2{margin-top:0}
.sbvm-student-compact .sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.sbvm-login-wrap{min-height:100vh;display:grid;place-items:center;gap:18px;padding:22px;background:linear-gradient(135deg,#07111f,#12345b)}
.sbvm-login-student-inline{width:min(900px,100%)}
@media(max-width:1100px){.sbvm-login-screen-dual{grid-template-columns:1fr}.sbvm-login-left{text-align:center}.sbvm-login-dual-grid{grid-template-columns:1fr 1fr}.sbvm-login-points{justify-content:center}}
@media(max-width:760px){.sbvm-login-screen-dual{padding:14px;gap:14px}.sbvm-login-dual-grid{grid-template-columns:1fr;gap:14px}.sbvm-login-left h1{font-size:28px}.sbvm-login-card{border-radius:20px;padding:18px}.sbvm-student-compact .sbvm-cards{grid-template-columns:1fr}.sbvm-student-login-card .sbvm-row{grid-template-columns:1fr}.sbvm-table-scroll{overflow-x:auto}.sbvm-table-scroll table{min-width:620px}}
@media(min-width:761px) and (max-width:1024px){.sbvm-login-dual-grid{grid-template-columns:1fr}.sbvm-student-compact .sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v5.0 Enterprise login rebuild: no overlap, tabbed owner/student portal */
.sbvm-login-screen-dual{min-height:100svh;grid-template-columns:minmax(260px,420px) minmax(0,560px)!important;justify-content:center;align-items:center;overflow-x:hidden;box-sizing:border-box}.sbvm-login-screen-dual *{box-sizing:border-box}.sbvm-login-tabs-shell{width:min(560px,100%);margin:0 auto}.sbvm-login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);padding:8px;border-radius:22px;margin-bottom:12px;backdrop-filter:blur(10px)}.sbvm-login-tabs button{border:0;border-radius:16px;padding:13px 10px;font-weight:950;cursor:pointer;background:transparent;color:#eaf2ff;font-size:15px}.sbvm-login-tabs button.active{background:#fff;color:#0f172a;box-shadow:0 10px 26px rgba(15,23,42,.16)}.sbvm-login-tab-panel{display:none}.sbvm-login-tab-panel.active{display:block}.sbvm-login-tab-panel .sbvm-login-card{width:100%;max-width:100%;margin:0}.sbvm-student-login-inline-card{overflow:visible!important}.sbvm-student-login-inline-card .sbvm-student-login-page{width:100%;max-width:100%;padding:0!important}.sbvm-student-login-inline-card .sbvm-student-hero{display:none!important}.sbvm-student-login-inline-card .sbvm-student-login-card{margin:0!important;max-width:100%}.sbvm-student-login-inline-card .sbvm-panel{padding:0!important}.sbvm-login-card input,.sbvm-login-card select,.sbvm-login-card textarea{max-width:100%}.sbvm-student-login-inline-card .sbvm-cards{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important}.sbvm-student-login-inline-card .sbvm-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.sbvm-student-login-inline-card table{min-width:560px}
@media(max-width:1024px){.sbvm-login-screen-dual{grid-template-columns:1fr!important;padding:18px!important}.sbvm-login-left{max-width:680px;margin:0 auto;text-align:center}.sbvm-login-left h1{font-size:clamp(32px,7vw,56px)!important}.sbvm-login-tabs-shell{width:min(680px,100%)}}
@media(max-width:560px){.sbvm-login-screen-dual{padding:12px!important;gap:12px!important}.sbvm-login-left h1{font-size:32px!important}.sbvm-login-left p{font-size:14px!important}.sbvm-login-tabs{border-radius:18px;padding:6px;gap:6px}.sbvm-login-tabs button{font-size:13px;padding:11px 6px}.sbvm-login-card{border-radius:20px!important;padding:16px!important}.sbvm-student-login-inline-card table{min-width:520px}.sbvm-login-points{gap:8px}.sbvm-login-points span{font-size:12px}}

/* v5.1 Student separate dashboard/login fixes */
.sbvm-student-dashboard{max-width:1180px;margin:0 auto;padding:24px;width:100%;box-sizing:border-box}
.sbvm-student-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:18px 20px;border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 18px 55px rgba(2,23,52,.12);border:1px solid rgba(226,232,240,.9)}
.sbvm-student-topbar h2{margin:6px 0 4px;font-size:clamp(24px,4vw,42px);line-height:1.05}
.sbvm-student-topbar p{margin:0;color:#64748b;font-weight:700}.sbvm-login-error{background:#fff1f2;color:#be123c;border:1px solid #fecdd3;border-radius:16px;padding:12px 14px;margin-bottom:14px;font-weight:800}.sbvm-student-login-card .button,.sbvm-student-topbar .button{border-radius:14px!important;padding:11px 18px!important;font-weight:900!important;text-decoration:none!important}.sbvm-student-login-page .sbvm-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sbvm-student-login-page input{width:100%;box-sizing:border-box}.sbvm-student-dashboard .sbvm-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.sbvm-student-dashboard table{min-width:720px}
@media(max-width:900px){.sbvm-student-topbar{align-items:flex-start;flex-direction:column}.sbvm-student-login-page .sbvm-row{grid-template-columns:1fr}.sbvm-student-dashboard{padding:16px}.sbvm-student-dashboard .sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.sbvm-student-dashboard{padding:12px}.sbvm-student-dashboard .sbvm-cards{grid-template-columns:1fr!important}.sbvm-student-topbar{border-radius:18px;padding:16px}.sbvm-student-topbar .button{width:100%;text-align:center}.sbvm-login-screen .sbvm-login-tabs-shell{width:100%;max-width:100%}.sbvm-login-card{width:100%;box-sizing:border-box}}

/* v5.2 Premium login + DOB year + stronger responsive polish */
.sbvm-login-screen-dual{
  background:radial-gradient(circle at 10% 10%,rgba(34,211,238,.22),transparent 28%),radial-gradient(circle at 92% 18%,rgba(59,130,246,.24),transparent 30%),linear-gradient(135deg,#020617,#0f172a 48%,#064e3b)!important;
  padding:clamp(14px,4vw,52px)!important;
}
.sbvm-login-left{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:32px;padding:clamp(22px,4vw,42px);backdrop-filter:blur(16px);box-shadow:0 30px 80px rgba(0,0,0,.22)}
.sbvm-login-left h1{color:#fff!important;text-shadow:0 12px 38px rgba(0,0,0,.24)}
.sbvm-login-left p{color:rgba(255,255,255,.86)!important}.sbvm-login-points span,.sbvm-login-badge{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.22)!important}
.sbvm-login-tabs-shell{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.20);border-radius:34px;padding:14px;box-shadow:0 34px 90px rgba(0,0,0,.28);backdrop-filter:blur(18px)}
.sbvm-login-tab-panel .sbvm-login-card,.sbvm-student-login-inline-card{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.96))!important;border:1px solid rgba(226,232,240,.85)!important;border-radius:28px!important;box-shadow:0 20px 55px rgba(15,23,42,.18)!important}
.sbvm-login-card h2:before{content:'✦';display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-right:8px;border-radius:12px;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;font-size:16px;vertical-align:middle}
.sbvm-login-card input[type=text],.sbvm-login-card input[type=password],.sbvm-login-card input[type=number],.sbvm-student-login-card input[type=text],.sbvm-student-login-card input[type=number]{width:100%;min-height:52px;border:1px solid #cbd5e1;border-radius:16px;padding:0 14px;font-size:16px;background:#fff;box-sizing:border-box;box-shadow:inset 0 1px 0 rgba(15,23,42,.02)}
.sbvm-login-card input:focus,.sbvm-student-login-card input:focus{outline:4px solid rgba(37,99,235,.14);border-color:#2563eb}
.sbvm-student-login-fields{grid-template-columns:1fr!important}.sbvm-student-login-fields label{margin-top:10px}.sbvm-student-login-card small{background:#eff6ff;border:1px solid #dbeafe;color:#1e3a8a;border-radius:14px;padding:10px 12px;margin-top:12px;display:block;text-align:center}
.sbvm-student-dashboard .sbvm-card:nth-child(1){background:linear-gradient(135deg,#eff6ff,#fff)}
.sbvm-student-dashboard .sbvm-card:nth-child(2){background:linear-gradient(135deg,#ecfdf5,#fff)}
.sbvm-student-dashboard .sbvm-card:nth-child(5){background:linear-gradient(135deg,#fff7ed,#fff)}
@media(max-width:1024px){.sbvm-login-screen-dual{min-height:100svh;align-content:start}.sbvm-login-left{border-radius:24px;padding:22px}.sbvm-login-tabs-shell{border-radius:24px;padding:10px}}
@media(max-width:560px){.sbvm-login-left{padding:18px;border-radius:20px}.sbvm-login-tabs-shell{padding:8px;border-radius:22px}.sbvm-login-tab-panel .sbvm-login-card,.sbvm-student-login-inline-card{border-radius:20px!important}.sbvm-login-card h2:before{width:28px;height:28px;border-radius:10px}.sbvm-login-card input[type=text],.sbvm-login-card input[type=password],.sbvm-login-card input[type=number]{min-height:48px}.sbvm-login-screen-dual{overflow:auto!important}.sbvm-login-left p{display:none}.sbvm-login-points{display:none}}

/* =========================================================
   v6.0 Enterprise Stable Login Rebuild
   Fixes: mobile mockup/card cut, overlap, horizontal scroll,
   tablet/mobile responsiveness, and theme CSS conflicts.
========================================================= */
body:not(.wp-admin) .sbvm-login-screen,
body:not(.wp-admin) .sbvm-login-screen-dual{
  width:100%!important;
  min-height:100vh!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:clamp(18px,4vw,52px)!important;
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) minmax(360px,520px)!important;
  gap:clamp(18px,4vw,54px)!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  background:radial-gradient(circle at 15% 15%,rgba(20,184,166,.35),transparent 32%),radial-gradient(circle at 85% 85%,rgba(37,99,235,.32),transparent 32%),linear-gradient(135deg,#07111f,#0f2647 48%,#063f36)!important;
  font-family:Inter,Arial,sans-serif!important;
}
body:not(.wp-admin) .sbvm-login-left{
  width:100%!important;max-width:560px!important;min-width:0!important;
  margin:0!important;padding:clamp(22px,4vw,44px)!important;
  border-radius:30px!important;background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 28px 70px rgba(0,0,0,.25)!important;
  backdrop-filter:blur(14px)!important;color:#fff!important;box-sizing:border-box!important;
}
body:not(.wp-admin) .sbvm-login-left h1{font-size:clamp(34px,6vw,70px)!important;line-height:.98!important;margin:18px 0!important;color:#fff!important;letter-spacing:-2px!important}
body:not(.wp-admin) .sbvm-login-left p{font-size:clamp(15px,2vw,19px)!important;color:rgba(255,255,255,.8)!important;line-height:1.6!important;margin:0 0 24px!important}
body:not(.wp-admin) .sbvm-login-badge{display:inline-flex!important;align-items:center!important;border-radius:999px!important;background:rgba(255,255,255,.16)!important;border:1px solid rgba(255,255,255,.28)!important;color:#fff!important;font-weight:900!important;padding:9px 16px!important;white-space:normal!important}
body:not(.wp-admin) .sbvm-login-points{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-top:14px!important}
body:not(.wp-admin) .sbvm-login-points span{display:inline-flex!important;background:#fff!important;color:#0f766e!important;border-radius:999px!important;padding:10px 14px!important;font-size:13px!important;font-weight:900!important;box-shadow:0 8px 22px rgba(0,0,0,.18)!important}
body:not(.wp-admin) .sbvm-login-tabs-shell{
  width:100%!important;max-width:520px!important;min-width:0!important;margin:0!important;
  padding:12px!important;border-radius:30px!important;background:rgba(255,255,255,.14)!important;
  border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 32px 80px rgba(0,0,0,.30)!important;
  backdrop-filter:blur(18px)!important;box-sizing:border-box!important;overflow:visible!important;
}
body:not(.wp-admin) .sbvm-login-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin:0 0 12px!important;background:rgba(15,23,42,.22)!important;border-radius:20px!important;padding:8px!important}
body:not(.wp-admin) .sbvm-login-tabs button{width:100%!important;min-height:48px!important;border:0!important;border-radius:15px!important;background:transparent!important;color:#dbeafe!important;font-weight:950!important;cursor:pointer!important;font-size:14px!important;padding:10px!important;white-space:normal!important;line-height:1.2!important}
body:not(.wp-admin) .sbvm-login-tabs button.active{background:#fff!important;color:#0f172a!important;box-shadow:0 12px 26px rgba(0,0,0,.18)!important}
body:not(.wp-admin) .sbvm-login-tab-panel{display:none!important;width:100%!important;min-width:0!important;overflow:visible!important}.sbvm-login-tab-panel.active{display:block!important}
body:not(.wp-admin) .sbvm-login-card{
  width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;margin:0!important;
  border-radius:24px!important;background:rgba(255,255,255,.96)!important;padding:clamp(22px,4vw,38px)!important;
  border:1px solid rgba(255,255,255,.7)!important;box-shadow:0 22px 55px rgba(2,6,23,.24)!important;color:#0f172a!important;overflow:visible!important;
}
body:not(.wp-admin) .sbvm-login-card h2{font-size:clamp(26px,4vw,38px)!important;line-height:1.1!important;margin:0 0 20px!important;color:#0f172a!important;letter-spacing:-.8px!important}
body:not(.wp-admin) .sbvm-login-card label{display:block!important;margin:14px 0 7px!important;color:#334155!important;font-weight:950!important;font-size:15px!important}
body:not(.wp-admin) .sbvm-login-card input[type=text],
body:not(.wp-admin) .sbvm-login-card input[type=password],
body:not(.wp-admin) .sbvm-login-card input[type=number],
body:not(.wp-admin) .sbvm-login-card input[type=tel]{
  display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:54px!important;
  border:1px solid #cbd5e1!important;border-radius:16px!important;padding:0 16px!important;background:#fff!important;
  color:#0f172a!important;font-size:16px!important;box-shadow:none!important;box-sizing:border-box!important;
}
body:not(.wp-admin) .sbvm-login-remember{display:flex!important;align-items:center!important;gap:9px!important;font-weight:800!important;margin:14px 0!important}
body:not(.wp-admin) .sbvm-login-btn, body:not(.wp-admin) .sbvm-login-card .button, body:not(.wp-admin) .sbvm-login-card .button-primary{
  width:100%!important;min-height:54px!important;border:0!important;border-radius:16px!important;margin-top:16px!important;
  background:linear-gradient(135deg,#2563eb,#0f766e)!important;color:#fff!important;font-size:16px!important;font-weight:950!important;
  display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;text-decoration:none!important;padding:12px 18px!important;line-height:1.25!important;white-space:normal!important;box-sizing:border-box!important;
}
body:not(.wp-admin) .sbvm-login-error{background:#fee2e2!important;border:1px solid #fecaca!important;color:#991b1b!important;border-radius:16px!important;padding:12px 14px!important;margin:0 0 14px!important;font-weight:900!important}
body:not(.wp-admin) .sbvm-login-success{background:#dcfce7!important;border:1px solid #bbf7d0!important;color:#166534!important;border-radius:16px!important;padding:12px 14px!important;margin:0 0 14px!important;font-weight:900!important}
body:not(.wp-admin) .sbvm-login-card small{display:block!important;margin-top:14px!important;color:#64748b!important;text-align:center!important;font-weight:800!important;line-height:1.5!important}
body:not(.wp-admin) .sbvm-student-hero{display:none!important}.sbvm-student-login-fields{grid-template-columns:1fr!important;gap:6px!important}.sbvm-student-login-fields label{margin-top:10px!important}
body:not(.wp-admin) .sbvm-student-login-inline-card .sbvm-panel, body:not(.wp-admin) .sbvm-student-login-inline-card .sbvm{padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
@media(max-width:980px){body:not(.wp-admin) .sbvm-login-screen,body:not(.wp-admin) .sbvm-login-screen-dual{grid-template-columns:1fr!important;align-items:start!important}.sbvm-login-left{max-width:720px!important}.sbvm-login-tabs-shell{max-width:720px!important}.sbvm-login-left h1{font-size:clamp(32px,8vw,54px)!important}}
@media(max-width:560px){body:not(.wp-admin) .sbvm-login-screen,body:not(.wp-admin) .sbvm-login-screen-dual{padding:14px!important;gap:14px!important}.sbvm-login-left{padding:22px!important;border-radius:22px!important}.sbvm-login-left h1{font-size:32px!important;letter-spacing:-1px!important}.sbvm-login-tabs-shell{padding:8px!important;border-radius:22px!important}.sbvm-login-card{padding:20px!important;border-radius:18px!important}.sbvm-login-tabs{gap:6px!important;padding:6px!important}.sbvm-login-tabs button{font-size:12px!important;min-height:44px!important}.sbvm-login-card h2{font-size:25px!important}.sbvm-login-points span{font-size:12px!important;padding:8px 10px!important}}

/* v6 tables/dashboard full responsive */
.sbvm-table-scroll{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.sbvm-table-scroll table{min-width:760px!important}.sbvm input,.sbvm select,.sbvm textarea{box-sizing:border-box!important}.sbvm-front,.sbvm-home,.sbvm-shell-main{max-width:100%!important;box-sizing:border-box!important}.sbvm-cards,.sbvm-row,.sbvm-home-grid,.roll-grid{min-width:0!important}.sbvm-card,.sbvm-panel,.roll,.sbvm-home-card{box-sizing:border-box!important;min-width:0!important;overflow-wrap:anywhere!important}


/* v6.1 FINAL LOGIN TAB + NO HINT PATCH */
body:not(.wp-admin) .sbvm-login-screen .sbvm-login-tab-panel,
body:not(.wp-admin) .sbvm-login-screen-dual .sbvm-login-tab-panel{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;overflow:hidden!important;}
body:not(.wp-admin) .sbvm-login-screen .sbvm-login-tab-panel.active,
body:not(.wp-admin) .sbvm-login-screen-dual .sbvm-login-tab-panel.active{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;overflow:visible!important;}
body:not(.wp-admin) .sbvm-login-left p,
body:not(.wp-admin) .sbvm-login-points,
body:not(.wp-admin) .sbvm-login-card small,
body:not(.wp-admin) .sbvm .hint,
body:not(.wp-admin) .sbvm .help,
body:not(.wp-admin) .sbvm-demo,
body:not(.wp-admin) .sbvm-tip{display:none!important;}
body:not(.wp-admin) .sbvm-login-screen-dual{grid-template-columns:minmax(300px,560px) minmax(380px,520px)!important;}
body:not(.wp-admin) .sbvm-login-left{justify-self:end!important;}
body:not(.wp-admin) .sbvm-login-tabs-shell{justify-self:start!important;}
@media(max-width:980px){body:not(.wp-admin) .sbvm-login-screen-dual{grid-template-columns:1fr!important;}body:not(.wp-admin) .sbvm-login-left,body:not(.wp-admin) .sbvm-login-tabs-shell{justify-self:center!important;width:100%!important;}}
@media(max-width:560px){body:not(.wp-admin) .sbvm-login-left{display:block!important;}body:not(.wp-admin) .sbvm-login-badge{font-size:12px!important;}body:not(.wp-admin) .sbvm-login-left h1{font-size:34px!important;}.sbvm-login-tabs-shell{width:100%!important;}}

/* v6.3 PWA App Button */
.sbvm-pwa-install{position:fixed;right:18px;bottom:92px;z-index:999999;border:0;border-radius:999px;padding:12px 18px;font-weight:900;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;box-shadow:0 14px 35px rgba(0,0,0,.28);cursor:pointer;align-items:center;gap:8px}
.sbvm-pwa-install:hover{transform:translateY(-2px)}
@media(max-width:700px){.sbvm-pwa-install{right:14px;bottom:78px;padding:11px 15px;font-size:14px}}

/* v6.4 Student dashboard avatar/profile polish */
.sbvm-student-topbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;overflow:visible!important}
.sbvm-student-profile{display:flex;align-items:center;gap:16px;min-width:0;flex:1}
.sbvm-student-avatar{width:76px;height:76px;border-radius:24px;display:flex;align-items:center;justify-content:center;flex:0 0 76px;background:linear-gradient(135deg,#0f766e,#2563eb);box-shadow:0 18px 40px rgba(15,118,110,.22);overflow:hidden;color:#fff;font-size:34px;font-weight:950;letter-spacing:.5px;border:3px solid rgba(255,255,255,.9)}
.sbvm-student-avatar img{width:100%;height:100%;object-fit:cover;display:block}.sbvm-student-avatar span{line-height:1}.sbvm-student-topbar .sbvm-login-badge{display:none!important}.sbvm-student-topbar h2{margin:0 0 5px!important}.sbvm-student-topbar p{word-break:break-word}.sbvm-student-logout{white-space:nowrap}
@media(max-width:700px){.sbvm-student-topbar{flex-direction:column!important;align-items:stretch!important}.sbvm-student-profile{align-items:flex-start}.sbvm-student-avatar{width:62px;height:62px;flex-basis:62px;border-radius:20px;font-size:28px}.sbvm-student-logout{width:100%;text-align:center!important}}
@media(max-width:420px){.sbvm-student-profile{gap:12px}.sbvm-student-avatar{width:54px;height:54px;flex-basis:54px;border-radius:18px;font-size:24px}.sbvm-student-topbar h2{font-size:24px!important}}

/* v6.5 App Center + Student App Install Page */
.sbvm-app-center .sbvm-app-hero{align-items:center!important;gap:24px!important}
.sbvm-app-qr-card{background:#fff;border:1px solid #e5e7eb;border-radius:28px;padding:18px;text-align:center;box-shadow:0 18px 45px rgba(2,6,23,.12);min-width:240px}
.sbvm-app-qr-card img{width:220px;max-width:100%;height:auto;border-radius:18px;display:block;margin:auto;background:#fff}
.sbvm-app-qr-card strong{display:block;margin-top:10px;color:#0f172a;font-weight:950}
.sbvm-app-actions div b{font-size:34px;display:block;margin-bottom:8px}
.sbvm-share-text{width:100%;min-height:130px;border:1px solid #dbe3ef;border-radius:18px;padding:14px;font-weight:800;line-height:1.6;box-sizing:border-box;background:#f8fafc;color:#0f172a}
.sbvm-student-app-page{min-height:100vh;padding:24px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,#0f766e 0,#061a2d 45%,#020617 100%);box-sizing:border-box}
.sbvm-student-app-card{width:100%;max-width:520px;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.55);border-radius:34px;padding:clamp(24px,5vw,44px);box-shadow:0 35px 90px rgba(0,0,0,.35);text-align:center;box-sizing:border-box;color:#0f172a}
.sbvm-student-app-card .sbvm-login-badge{background:#eef2ff!important;color:#0f766e!important;border-color:#dbeafe!important;margin-bottom:16px!important}
.sbvm-student-app-card h1{font-size:clamp(34px,7vw,58px);line-height:.98;margin:10px 0 14px;color:#0f172a;letter-spacing:-2px}
.sbvm-student-app-card p{color:#475569;font-weight:800;line-height:1.6}
.sbvm-student-app-buttons{display:grid;gap:12px;margin:22px 0}.sbvm-login-btn-soft{background:#f1f5f9!important;color:#0f172a!important;border:1px solid #dbe3ef!important}
.sbvm-student-qr{margin:18px auto 8px;display:flex;flex-direction:column;align-items:center;gap:8px}.sbvm-student-qr img{width:190px;max-width:100%;border-radius:20px;background:#fff;padding:8px;border:1px solid #e2e8f0}.sbvm-student-qr span{font-weight:900;color:#334155}.sbvm-mini-text{font-size:13px!important}.sbvm-mini-link{display:inline-flex;margin-top:8px;color:#0f766e;font-weight:950;text-decoration:none}
@media(max-width:760px){.sbvm-app-hero{grid-template-columns:1fr!important}.sbvm-app-qr-card{width:100%;min-width:0}.sbvm-student-app-page{padding:14px}.sbvm-student-app-card{border-radius:24px}.sbvm-student-qr img{width:160px}}

/* v6.6 Smart Modules */
.sbvm-hero.slim{padding:28px;min-height:auto;margin-bottom:20px}
.sbvm-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:18px 0}
.sbvm-module-grid.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.sbvm-module-card{display:flex;flex-direction:column;gap:8px;padding:18px;border:1px solid rgba(15,118,110,.16);border-radius:22px;background:linear-gradient(135deg,#ffffff,#f7fbff);box-shadow:0 14px 35px rgba(15,23,42,.08);text-decoration:none;color:#0f172a;min-height:132px}
.sbvm-module-card i{font-style:normal;font-size:30px;line-height:1}
.sbvm-module-card b{font-size:16px;color:#0f766e}
.sbvm-module-card span{font-size:13px;color:#475569;line-height:1.45}
.sbvm-module-card em{margin-top:auto;align-self:flex-start;font-style:normal;font-size:11px;font-weight:800;padding:5px 10px;border-radius:999px;background:#eef7ff;color:#0369a1}
.sbvm-module-card.owner b{color:#7c3aed}.sbvm-module-card.owner em{background:#f3e8ff;color:#6d28d9}
.sbvm-module-card.student b{color:#0f766e}.sbvm-module-card.student em{background:#dcfce7;color:#166534}
.sbvm-module-card.warn{background:linear-gradient(135deg,#fff7ed,#fff)}
.sbvm-ai-box{padding:20px;border-radius:24px;background:linear-gradient(135deg,#071a2f,#0f766e);color:#fff;box-shadow:0 18px 45px rgba(15,23,42,.22);margin:16px 0}
.sbvm-ai-box h3{margin:0 0 8px;color:#fff}.sbvm-ai-box p{margin:0 0 14px;color:rgba(255,255,255,.86)}
.sbvm-ai-box input{width:100%;border:0;border-radius:16px;padding:14px 16px;background:rgba(255,255,255,.96);color:#0f172a}
@media(max-width:760px){.sbvm-module-grid,.sbvm-module-grid.compact{grid-template-columns:1fr}.sbvm-module-card{border-radius:18px;min-height:auto}.sbvm-hero.slim{padding:22px}}

/* v6.8 Student Portal + Digital Learning School Fix */
.sbvm-student-dashboard{max-width:1180px;margin:0 auto;padding:18px;}
.sbvm-student-topbar{background:linear-gradient(135deg,#0f172a,#1e3a8a);color:#fff;border-radius:24px;padding:22px;box-shadow:0 20px 60px rgba(15,23,42,.25);display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap;}
.sbvm-student-profile{display:flex;align-items:center;gap:16px;min-width:0;}
.sbvm-student-avatar{width:78px;height:78px;border-radius:22px;background:linear-gradient(135deg,#f59e0b,#22c55e);display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:900;color:#fff;overflow:hidden;box-shadow:inset 0 0 0 4px rgba(255,255,255,.25)}
.sbvm-student-avatar img{width:100%;height:100%;object-fit:cover;display:block}.sbvm-student-profile h2{margin:0;color:#fff;font-size:28px}.sbvm-student-profile p{margin:6px 0 0;color:rgba(255,255,255,.85)}
.sbvm-student-logout{background:#fff!important;color:#0f172a!important;border:0!important;border-radius:14px!important;padding:10px 14px!important;text-decoration:none!important}.sbvm-student-dashboard .sbvm-cards{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.sbvm-student-dashboard .sbvm-card{border-radius:20px;box-shadow:0 14px 42px rgba(2,6,23,.09)}
.sbvm-student-learning .sbvm-module-grid.compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.sbvm-student-learning .sbvm-module-card{text-decoration:none;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:16px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 10px 30px rgba(2,6,23,.07);transition:.2s}.sbvm-student-learning .sbvm-module-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(2,6,23,.12)}.sbvm-student-learning .sbvm-module-card b{display:block;font-size:16px;color:#0f172a}.sbvm-student-learning .sbvm-module-card span{display:block;margin-top:6px;color:#475569;font-size:13px}.sbvm-student-learning .sbvm-module-card.warn{background:linear-gradient(135deg,#fff7ed,#fefce8)}
.sbvm-resource-layout{display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:start}.sbvm-resource-menu{background:#fff;border-radius:22px;padding:12px;box-shadow:0 14px 42px rgba(2,6,23,.08);position:sticky;top:90px}.sbvm-resource-menu a{display:flex;gap:10px;align-items:center;padding:12px;border-radius:14px;text-decoration:none;color:#334155;margin-bottom:6px}.sbvm-resource-menu a.active,.sbvm-resource-menu a:hover{background:linear-gradient(135deg,#e0f2fe,#eef2ff);color:#0f172a}.sbvm-resource-menu span{font-size:22px}.sbvm-resource-detail{background:#fff;border-radius:24px;padding:22px;box-shadow:0 14px 42px rgba(2,6,23,.08);min-height:420px}.sbvm-resource-head{display:flex;gap:16px;align-items:center;border-bottom:1px solid #e2e8f0;padding-bottom:16px;margin-bottom:18px}.sbvm-resource-head i{width:58px;height:58px;border-radius:18px;background:#eff6ff;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:30px}.sbvm-resource-head h2{margin:0}.sbvm-resource-head p{margin:6px 0 0;color:#64748b}.sbvm-resource-placeholder{border:1px dashed #cbd5e1;border-radius:20px;padding:22px;background:#f8fafc}.sbvm-resource-demo-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.sbvm-resource-demo-list a{padding:14px;border-radius:14px;background:#fff;text-decoration:none;color:#1e40af;border:1px solid #dbeafe}.sbvm-study-timer-box,.sbvm-bookmark-box,.sbvm-smart-suggestion-box{border-radius:20px;background:#f8fafc;border:1px solid #e2e8f0;padding:22px}.sbvm-timer-display{font-size:44px;font-weight:900;color:#0f172a;margin-bottom:14px}.sbvm-bookmark-box input{width:100%;margin:0 0 10px;padding:13px;border-radius:12px;border:1px solid #cbd5e1}.sbvm-bookmark-item{display:flex;justify-content:space-between;gap:10px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px;margin-top:10px}.sbvm-study-dark{background:#020617!important;color:#e2e8f0!important}.sbvm-study-dark .sbvm-resource-detail,.sbvm-study-dark .sbvm-resource-menu,.sbvm-study-dark .sbvm-panel{background:#0f172a!important;color:#e2e8f0!important}.sbvm-study-dark a,.sbvm-study-dark h1,.sbvm-study-dark h2,.sbvm-study-dark h3{color:#fff!important}
.sbvm-admission-form{max-width:1180px;margin:0 auto}.sbvm-admission-form .sbvm-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sbvm-admission-form label{min-width:0}.sbvm-admission-form input,.sbvm-admission-form select,.sbvm-admission-form textarea{width:100%;box-sizing:border-box}.sbvm-admission-form .button-primary{border-radius:14px;padding:12px 18px;font-weight:800}.sbvm-roll-warning{border-radius:14px!important;padding:12px 14px!important;background:#fff7ed!important;color:#9a3412!important;border:1px solid #fed7aa!important;margin:12px 0!important}
@media(max-width:1024px){.sbvm-student-dashboard .sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.sbvm-student-learning .sbvm-module-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.sbvm-resource-layout{grid-template-columns:1fr}.sbvm-resource-menu{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sbvm-admission-form .sbvm-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sbvm-student-dashboard{padding:10px}.sbvm-student-topbar{padding:16px;border-radius:18px}.sbvm-student-profile{align-items:flex-start}.sbvm-student-avatar{width:58px;height:58px;border-radius:16px;font-size:26px}.sbvm-student-profile h2{font-size:21px}.sbvm-student-dashboard .sbvm-cards,.sbvm-student-learning .sbvm-module-grid.compact,.sbvm-resource-menu,.sbvm-resource-demo-list,.sbvm-admission-form .sbvm-row{grid-template-columns:1fr}.sbvm-resource-detail{padding:16px;border-radius:18px}.sbvm-resource-head{align-items:flex-start}.sbvm-timer-display{font-size:34px}.sbvm-student-logout{width:100%;text-align:center}.sbvm-module-card{min-height:auto!important}}

/* v7.0 Enterprise Rebuild UI Fixes */
:root{--sbvm-primary:#0f766e;--sbvm-dark:#061a2d;--sbvm-soft:#f8fafc;--sbvm-border:#e2e8f0;--sbvm-shadow:0 20px 60px rgba(15,23,42,.12)}
body .sbvm-login-screen{min-height:100vh;width:100%;box-sizing:border-box;padding:clamp(16px,3vw,42px)!important;display:grid!important;grid-template-columns:minmax(320px,1fr) minmax(360px,520px)!important;gap:clamp(18px,4vw,48px)!important;align-items:center!important;background:radial-gradient(circle at top left,#14b8a6 0,#0f172a 48%,#020617 100%)!important;overflow-x:hidden!important}
.sbvm-login-left{width:100%!important;max-width:760px!important;color:#fff!important}.sbvm-login-left h1{font-size:clamp(34px,6vw,72px)!important;line-height:1!important;margin:12px 0!important;letter-spacing:-2px!important}.sbvm-login-badge{display:inline-flex!important;border-radius:999px!important;padding:9px 14px!important;background:rgba(255,255,255,.15)!important;color:#fff!important;font-weight:900!important;border:1px solid rgba(255,255,255,.25)!important}
.sbvm-login-tabs-shell{width:100%!important;max-width:520px!important;margin:0 auto!important;background:rgba(255,255,255,.96)!important;border:1px solid rgba(255,255,255,.55)!important;border-radius:32px!important;padding:18px!important;box-shadow:0 35px 90px rgba(0,0,0,.35)!important;box-sizing:border-box!important;overflow:visible!important}.sbvm-login-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-bottom:16px!important;background:#eef2f7!important;padding:8px!important;border-radius:20px!important}.sbvm-login-tabs button{border:0!important;border-radius:15px!important;padding:13px 10px!important;background:transparent!important;font-weight:950!important;color:#475569!important;cursor:pointer!important}.sbvm-login-tabs button.active{background:#fff!important;color:#0f766e!important;box-shadow:0 10px 25px rgba(2,6,23,.08)!important}.sbvm-login-tab-panel{display:none!important}.sbvm-login-tab-panel.active{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;overflow:visible!important}.sbvm-login-card{width:100%!important;max-width:100%!important;box-sizing:border-box!important;background:#fff!important;border-radius:24px!important;box-shadow:none!important;border:1px solid #e2e8f0!important;padding:22px!important}.sbvm-login-card h2{margin:0 0 8px!important;color:#0f172a!important;font-size:28px!important}.sbvm-login-subtitle{margin:0 0 16px!important;color:#64748b!important;font-weight:700!important}.sbvm-login-card label{display:block!important;color:#334155!important;font-weight:900!important;margin-top:12px!important}.sbvm-login-card input{width:100%!important;box-sizing:border-box!important;border:1px solid #cbd5e1!important;border-radius:16px!important;padding:14px 15px!important;font-size:16px!important;background:#f8fafc!important;min-height:50px!important}.sbvm-login-btn,.sbvm-login-card .button-primary{width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;border-radius:16px!important;min-height:52px!important;margin-top:16px!important;background:linear-gradient(135deg,#0f766e,#1d4ed8)!important;color:#fff!important;border:0!important;font-weight:950!important;text-decoration:none!important}.sbvm-login-error{background:#fef2f2!important;color:#991b1b!important;border:1px solid #fecaca!important;border-radius:14px!important;padding:12px!important;margin:10px 0!important;font-weight:800!important}.sbvm-login-success{background:#ecfdf5!important;color:#047857!important;border:1px solid #a7f3d0!important;border-radius:14px!important;padding:12px!important;margin:10px 0!important;font-weight:800!important}
.sbvm-page-hero{background:linear-gradient(135deg,#0f172a,#0f766e);color:#fff;border-radius:28px;padding:28px;margin:0 0 20px;box-shadow:var(--sbvm-shadow)}.sbvm-page-hero h1{margin:0 0 8px;color:#fff}.sbvm-page-hero p{margin:0;color:rgba(255,255,255,.86);font-weight:700}.sbvm-front{max-width:1220px;margin:auto}.sbvm-panel{border-radius:24px!important;box-shadow:var(--sbvm-shadow)!important;border:1px solid var(--sbvm-border)!important;background:#fff!important}.sbvm-admission-form .sbvm-section-title{font-size:18px;font-weight:950;color:#0f172a;margin:18px 0 10px}.sbvm-admission-form label{font-weight:850;color:#334155}.sbvm-admission-form input,.sbvm-admission-form select,.sbvm-admission-form textarea{border:1px solid #cbd5e1!important;border-radius:14px!important;padding:12px 14px!important;min-height:46px!important;background:#fff!important}.sbvm-admission-form .sbvm-btn{background:linear-gradient(135deg,#0f766e,#1d4ed8)!important;border:0!important;color:#fff!important;min-height:50px!important;border-radius:16px!important;font-weight:950!important}
.sbvm-student-login-page{width:100%!important}.sbvm-student-login-card{box-shadow:none!important}.sbvm-student-login-fields{display:grid!important;grid-template-columns:1fr!important;gap:0!important}.sbvm-student-login-fields label{margin-top:10px!important}.sbvm-student-dashboard{max-width:1180px!important}.sbvm-student-topbar{background:linear-gradient(135deg,#042f2e,#1e3a8a)!important}.sbvm-student-dashboard .sbvm-card span{font-size:24px!important;color:#0f766e!important}.sbvm-student-learning .sbvm-module-card{cursor:pointer}.sbvm-resource-layout{max-width:1220px;margin:0 auto}.sbvm-resource-menu a{min-height:48px}.sbvm-v7-resource-list p{font-weight:700;color:#475569}.sbvm-resource-demo-list a{font-weight:900;display:flex;align-items:center;justify-content:center;min-height:72px}.sbvm-bookmark-item a{word-break:break-word}
@media(max-width:900px){body .sbvm-login-screen{grid-template-columns:1fr!important;align-items:start!important}.sbvm-login-left{text-align:center!important}.sbvm-login-tabs-shell{max-width:620px!important}.sbvm-login-left h1{font-size:clamp(30px,8vw,54px)!important}.sbvm-admission-form .sbvm-row{grid-template-columns:1fr!important}.sbvm-page-hero{border-radius:20px;padding:20px}}
@media(max-width:520px){body .sbvm-login-screen{padding:10px!important}.sbvm-login-tabs-shell{border-radius:22px!important;padding:12px!important}.sbvm-login-card{padding:16px!important;border-radius:18px!important}.sbvm-login-tabs{gap:6px!important;padding:6px!important}.sbvm-login-tabs button{font-size:13px!important;padding:11px 6px!important}.sbvm-login-card h2{font-size:23px!important}.sbvm-front{padding:10px!important}.sbvm-page-hero{margin:0 0 12px}.sbvm-student-dashboard .sbvm-cards{grid-template-columns:1fr!important}.sbvm-resource-detail{min-height:0!important}.sbvm-resource-menu a{padding:10px!important}.sbvm-resource-menu span{font-size:20px!important}}

/* v7.2 rebuilt student login */
.sbvm-student-login-status:empty{display:none}
.sbvm-student-login-status{margin:0 0 12px;padding:11px 13px;border-radius:14px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;font-weight:800;font-size:13px}
.sbvm-login-divider{display:flex;align-items:center;gap:12px;margin:3px 0;color:#94a3b8;font-weight:900;font-size:12px;letter-spacing:.12em}
.sbvm-login-divider:before,.sbvm-login-divider:after{content:"";height:1px;background:#e2e8f0;flex:1}
.sbvm-student-login-submit{position:relative;display:flex!important;align-items:center;justify-content:center;gap:10px}
.sbvm-student-login-submit:disabled{opacity:.78;cursor:wait!important}
.sbvm-login-spinner{display:none;width:18px;height:18px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:sbvmSpin .7s linear infinite}
.sbvm-student-login-submit.is-loading .sbvm-login-spinner{display:inline-block}
@keyframes sbvmSpin{to{transform:rotate(360deg)}}
.sbvm-student-login-fields input[type=tel]{width:100%;min-height:52px;border:1px solid #cbd5e1;border-radius:16px;padding:0 14px;font-size:16px;background:#fff;box-sizing:border-box}
.sbvm-student-login-fields input:focus{outline:4px solid rgba(37,99,235,.14);border-color:#2563eb}
@media(max-width:560px){.sbvm-student-login-fields input[type=tel]{min-height:50px}.sbvm-student-login-submit{width:100%!important;min-height:52px!important}}

/* v7.5 premium login cleanup */
.sbvm-owner-login-card .sbvm-login-remember{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:16px 0 0!important;
  width:auto!important;
  font-weight:800!important;
  cursor:pointer;
}
.sbvm-owner-login-card .sbvm-login-remember input[type=checkbox]{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  width:18px!important;
  height:18px!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border-radius:4px!important;
  box-shadow:none!important;
  outline:none!important;
  flex:0 0 18px!important;
}
.sbvm-login-method{display:none}
.sbvm-login-method.active{display:block}
.sbvm-login-method-toggle{
  width:100%;
  margin:8px 0 0;
  padding:11px 14px;
  border:1px solid #cbd5e1;
  border-radius:14px;
  background:#f8fafc;
  color:#0f766e;
  font-weight:900;
  cursor:pointer;
}
.sbvm-login-method-toggle:hover{background:#ecfeff;border-color:#99f6e4}
.sbvm-login-method label small{font-size:12px;color:#64748b;font-weight:700}
.sbvm-login-success{transition:opacity .25s ease,transform .25s ease}
.sbvm-login-success.sbvm-flash-hide{opacity:0;transform:translateY(-6px);pointer-events:none}
@media(max-width:520px){
  .sbvm-login-screen-dual .sbvm-login-left{padding:20px 16px!important;border-radius:24px!important}
  .sbvm-login-screen-dual .sbvm-login-left h1{font-size:clamp(34px,11vw,48px)!important;letter-spacing:-1.5px!important}
  .sbvm-login-tabs-shell{padding:10px!important}
  .sbvm-login-tabs button{min-height:48px!important;font-size:14px!important}
  .sbvm-owner-login-card .sbvm-login-remember{margin-top:14px!important}
}

/* v7.6 final login and responsive stability fixes */
body:not(.wp-admin) .sbvm-login-screen,
body:not(.wp-admin) .sbvm-login-screen-dual{width:100%!important;max-width:none!important;min-height:100svh!important;overflow-x:hidden!important}
body:not(.wp-admin) .sbvm-login-tabs-shell{width:min(620px,100%)!important;max-width:100%!important;box-sizing:border-box!important}
body:not(.wp-admin) .sbvm-login-tab-panel,
body:not(.wp-admin) .sbvm-login-card,
body:not(.wp-admin) .sbvm-student-login-inline-card{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
body:not(.wp-admin) .sbvm-login-card input[type="checkbox"]{appearance:auto!important;-webkit-appearance:checkbox!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;margin:0 8px 0 0!important;padding:0!important;border-radius:3px!important;vertical-align:middle!important;box-shadow:none!important;display:inline-block!important}
body:not(.wp-admin) .sbvm-login-card label:has(input[type="checkbox"]){display:flex!important;align-items:center!important;gap:8px!important;flex-direction:row!important}
body:not(.wp-admin) .sbvm-login-card input,
body:not(.wp-admin) .sbvm-login-card select,
body:not(.wp-admin) .sbvm-login-card button{font-size:16px!important}
body:not(.wp-admin) .sbvm-login-card .sbvm-mini-note,
body:not(.wp-admin) .sbvm-login-card small.sbvm-hint,
body:not(.wp-admin) .sbvm-login-card .description{display:none!important}
@media(max-width:900px){body:not(.wp-admin) .sbvm-login-screen-dual{grid-template-columns:1fr!important;padding:14px!important}.sbvm-login-left{width:100%!important}.sbvm-login-tabs-shell{margin:0 auto!important}}
@media(max-width:560px){body:not(.wp-admin) .sbvm-login-screen-dual{padding:8px!important}.sbvm-login-left{padding:18px 14px!important}.sbvm-login-left h1{font-size:clamp(30px,10vw,42px)!important}.sbvm-login-tabs-shell{padding:10px!important}.sbvm-login-card{padding:16px!important}.sbvm-login-card input,.sbvm-login-card select,.sbvm-login-card button{width:100%!important;max-width:100%!important}.sbvm-login-tabs button{width:auto!important}}

/* v7.9 Owner read-only / Manager control */
.sbvm-readonly-banner{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  margin:0 0 18px;padding:14px 16px;border:1px solid #f2c66d;
  border-radius:14px;background:#fff8e7;color:#6b4b00;
  box-shadow:0 8px 24px rgba(97,70,0,.08)
}
.sbvm-readonly-banner strong{font-size:15px}
.sbvm-readonly-banner span{font-size:13px}
.sbvm-readonly-owner .sbvm-shell-main form[method="post"],
.sbvm-readonly-owner .sbvm-shell-main a[href*="admin-post.php"],
.sbvm-readonly-owner .sbvm-shell-main .sbvm-btn[href*="sbvm-admission"],
.sbvm-readonly-owner .sbvm-shell-main button[type="submit"],
.sbvm-readonly-owner .sbvm-shell-main input[type="submit"]{display:none!important}
.sbvm-readonly-owner .sbvm-shell-main input:not([type="search"]):not([type="hidden"]),
.sbvm-readonly-owner .sbvm-shell-main select,
.sbvm-readonly-owner .sbvm-shell-main textarea{pointer-events:none!important;opacity:.72}
.sbvm-readonly-owner .sbvm-bottom-nav a:nth-child(2){display:none!important}
@media(max-width:767px){.sbvm-readonly-banner{align-items:flex-start;flex-direction:column}}

/* v8.0 Student pending fee months */
.sbvm-pending-fee-months{border-left:4px solid #f59e0b}
.sbvm-pending-summary{margin:0 0 12px;color:#7c2d12}
.sbvm-pending-month-list{display:flex;flex-wrap:wrap;gap:9px}
.sbvm-pending-month-badge{display:inline-flex;align-items:center;min-height:36px;padding:7px 13px;border-radius:999px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;font-weight:800;font-size:13px}
.sbvm-fee-clear{margin:0;padding:12px 14px;border-radius:12px;background:#ecfdf5;color:#166534;font-weight:800}
@media(max-width:600px){.sbvm-pending-month-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sbvm-pending-month-badge{justify-content:center;text-align:center;padding:8px 6px}}

/* v8.1 bilingual switch + complete hint removal */
.sbvm-language-switch{
  position:fixed;right:16px;bottom:18px;z-index:999999;
  display:flex;align-items:center;gap:4px;padding:5px;
  border:1px solid rgba(148,163,184,.45);border-radius:999px;
  background:rgba(255,255,255,.96);box-shadow:0 12px 32px rgba(15,23,42,.18);
  backdrop-filter:blur(12px)
}
.sbvm-language-switch button{
  appearance:none;border:0;border-radius:999px;background:transparent;color:#334155;
  min-height:36px;padding:7px 13px;font-weight:800;font-size:13px;line-height:1;cursor:pointer
}
.sbvm-language-switch button.active{background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;box-shadow:0 5px 14px rgba(37,99,235,.25)}
.wp-admin .sbvm-language-switch{right:20px;bottom:20px}
.sbvm .sbvm-hint,.sbvm .sbvm-help,.sbvm .sbvm-tip,.sbvm .sbvm-demo,.sbvm .sbvm-mini-note,
.sbvm .description,.sbvm .help,.sbvm .hint,.sbvm [data-hint],
body:not(.wp-admin) .sbvm-shell-main .sbvm-mini-note,
body:not(.wp-admin) .sbvm-login-card small,
body:not(.wp-admin) .sbvm-login-card .description{display:none!important}
@media(max-width:600px){
  .sbvm-language-switch{right:10px;bottom:74px;padding:4px}
  .sbvm-language-switch button{min-height:34px;padding:6px 11px;font-size:12px}
}

/* v8.3 Notice + Digital Learning School Manager */
.sbvm-student-notice-panel{border-left:4px solid #2563eb}
.sbvm-student-notices{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.sbvm-student-notices .sbvm-notice{padding:16px;border:1px solid #dbeafe;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 8px 24px rgba(37,99,235,.08)}
.sbvm-notice-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.sbvm-notice-meta span{padding:5px 9px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:11px;font-weight:800;text-transform:uppercase}
.sbvm-notice-meta time{font-size:12px;color:#64748b}
.sbvm-empty-state{padding:24px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;color:#64748b;text-align:center;font-weight:700}
.sbvm-resource-manager-form{margin:0 0 20px}
.sbvm-resource-manager-form input[type=file]{padding:10px;background:#fff;border:1px solid #cbd5e1;border-radius:10px}
.sbvm-published-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.sbvm-published-resource-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #e2e8f0;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.08)}
.sbvm-published-resource-card>img{width:100%;height:160px;object-fit:cover;background:#f1f5f9}
.sbvm-resource-icon{display:grid;place-items:center;height:130px;font-size:50px;background:linear-gradient(135deg,#eff6ff,#ecfeff)}
.sbvm-published-resource-card>div:not(.sbvm-resource-icon):not(.sbvm-resource-actions){padding:16px 16px 8px}
.sbvm-published-resource-card time{font-size:12px;color:#64748b;font-weight:700}
.sbvm-published-resource-card h3{margin:6px 0 8px;font-size:18px;color:#0f172a}
.sbvm-published-resource-card p{margin:0;color:#475569;line-height:1.55}
.sbvm-resource-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding:12px 16px 16px}
@media(max-width:700px){.sbvm-student-notices,.sbvm-published-resource-grid{grid-template-columns:1fr}.sbvm-resource-manager-form .sbvm-row{grid-template-columns:1fr!important}.sbvm-resource-actions .button{flex:1;text-align:center}}

/* v8.7 print only the selected receipt, ID card, or report block. */
@media print{
  body.sbvm-print-mode *{visibility:hidden!important}
  body.sbvm-print-mode .sbvm-print-target,
  body.sbvm-print-mode .sbvm-print-target *{visibility:visible!important}
  body.sbvm-print-mode .sbvm-print-target{
    position:absolute!important;left:0!important;top:0!important;width:100%!important;
    max-width:100%!important;margin:0!important;padding:12mm!important;box-sizing:border-box!important;
  }
  body.sbvm-print-mode .sbvm-no-print{display:none!important;visibility:hidden!important}
  body.sbvm-print-mode .sbvm-print-target .sbvm-table-scroll{overflow:visible!important;border:0!important;box-shadow:none!important}
  body.sbvm-print-mode .sbvm-print-target .widefat{min-width:0!important;width:100%!important;display:table!important}
}
.sbvm-edit-mode .sbvm-paid[readonly]{background:#eef2f7!important;color:#475569!important;cursor:not-allowed}


/* v8.8 month-wise fee navigation */
.sbvm-fee-months{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:thin}
.sbvm-fee-month{flex:0 0 auto;text-decoration:none!important;padding:9px 14px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-weight:800;font-size:13px}
.sbvm-fee-month.active{background:linear-gradient(135deg,#2563eb,#0f9488);color:#fff;border-color:transparent;box-shadow:0 8px 20px rgba(37,99,235,.2)}
.sbvm-month-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 12px}.sbvm-month-heading b{font-size:18px}.sbvm-month-heading span{font-size:12px;font-weight:800;color:#64748b}
.sbvm-fee-status-pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900}.sbvm-fee-status-pill.status-paid{background:#dcfce7;color:#166534}.sbvm-fee-status-pill.status-due{background:#fee2e2;color:#991b1b}.sbvm-fee-status-pill.status-partial{background:#fef3c7;color:#92400e}.sbvm-fee-status-pill.status-no_entry{background:#e2e8f0;color:#475569}
@media(max-width:700px){.sbvm-month-heading{align-items:flex-start;flex-direction:column}.sbvm-month-fee-table{min-width:900px!important}}

/* v8.9 standard CR80 student ID card (85.6 x 54 mm) */
.sbvm-id-card{width:340px;max-width:100%;aspect-ratio:85.6/54;height:auto;min-height:214px;padding:0!important;border-radius:15px!important;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(135deg,#062a43,#0f766e)!important;color:#fff!important;border:1px solid rgba(255,255,255,.35)!important;box-shadow:0 14px 35px rgba(2,25,48,.24)!important}
.sbvm-id-head{padding:12px 14px 9px;text-align:center;background:rgba(255,255,255,.11);border-bottom:1px solid rgba(255,255,255,.18)}
.sbvm-id-head strong{display:block;font-size:15px;line-height:1.2}.sbvm-id-head small{display:block;font-size:8px;letter-spacing:.6px;text-transform:uppercase;opacity:.85;margin-top:2px}
.sbvm-id-body{display:grid;grid-template-columns:64px minmax(0,1fr) 70px;gap:9px;align-items:center;padding:12px 13px;flex:1}
.sbvm-id-card .id-photo{width:64px;height:78px;border-radius:9px;border:1px solid rgba(255,255,255,.55);background:rgba(255,255,255,.93);color:#0f766e;font-size:25px;font-weight:900}
.sbvm-id-card .id-photo span{display:grid;place-items:center;width:100%;height:100%}.sbvm-id-info{min-width:0;display:flex;flex-direction:column;gap:4px}.sbvm-id-info b{font-size:14px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sbvm-id-info span{font-size:8.5px;line-height:1.25;opacity:.95}.sbvm-id-qr{text-align:center}.sbvm-id-qr img{display:block;width:64px;height:64px;background:#fff;padding:3px;border-radius:6px;margin:auto}.sbvm-id-qr small{display:block;font-size:7px;margin-top:3px;opacity:.9}.sbvm-id-card>.button{margin:0 12px 10px;align-self:flex-start}
@media(max-width:420px){.sbvm-id-card{width:100%;max-width:340px}.sbvm-id-body{grid-template-columns:58px minmax(0,1fr) 64px;padding:10px}.sbvm-id-card .id-photo{width:58px;height:72px}.sbvm-id-qr img{width:58px;height:58px}}

/* v9.0 ID card preview and isolated print wrapper */
.sbvm-id-card-wrap{display:inline-flex;flex-direction:column;align-items:flex-start;gap:10px;max-width:100%}
.sbvm-id-card-wrap .sbvm-id-card{width:340px;max-width:100%;aspect-ratio:85.6/54;height:auto;min-height:0}
.sbvm-id-card-wrap .sbvm-id-print-button{margin:0!important}
@media(max-width:420px){.sbvm-id-card-wrap{width:100%}.sbvm-id-card-wrap .sbvm-id-card{width:min(340px,100%)}}

/* v10.6 Registration branding */
.sbvm-registration-line{margin:10px 0 0;font-size:13px;font-weight:800;letter-spacing:.02em;opacity:.9}
.sbvm-registration-footer{margin:18px 0 4px;text-align:center;font-size:12px;font-weight:700;color:#64748b;padding:12px;border-top:1px solid #e2e8f0}
.sbvm-id-head small{white-space:normal;line-height:1.2}
@media(max-width:600px){.sbvm-registration-line{font-size:12px}.sbvm-registration-footer{font-size:11px}}

/* v10.7 developer credit */
.sbvm-developer-credit{font-size:12px;font-weight:700;color:#64748b;text-align:center}
.sbvm-developer-credit a,.sbvm-developer-credit-inline a,.sbvm-receipt-developer a,.ivv-foot a{color:#0f766e;text-decoration:none;font-weight:900}
.sbvm-developer-credit a:hover,.sbvm-developer-credit-inline a:hover,.sbvm-receipt-developer a:hover,.ivv-foot a:hover{text-decoration:underline}
.sbvm-login-developer-credit{grid-column:1/-1;width:100%;margin-top:14px;color:rgba(255,255,255,.86)}
.sbvm-login-developer-credit a{color:#fff}
.sbvm-erp-developer-credit{margin:22px 12px 86px;padding:14px;border-top:1px solid #e2e8f0}
.sbvm-developer-credit-inline{display:inline-block;margin-top:6px}
.sbvm-receipt-developer{margin:12px 0 4px;padding-top:9px;border-top:1px dashed #cbd5e1;text-align:center;font-size:10px;color:#64748b}
.sbvm-about-software{margin:18px 0;padding:16px;border:1px solid #dbeafe;border-radius:14px;background:#f8fafc}
.sbvm-about-software h3{margin:0 0 8px}.sbvm-about-software p{margin:0;line-height:1.7}
@media(max-width:600px){.sbvm-login-developer-credit{font-size:11px;padding:0 10px}.sbvm-erp-developer-credit{margin-bottom:78px}.sbvm-receipt-developer{font-size:9px}}
@media print{.sbvm-receipt-developer{display:block!important}.sbvm-erp-developer-credit,.sbvm-login-developer-credit{display:none!important}}

/* =========================================================
   SBVM v10.9 Premium Student Portal
   Scoped redesign: no owner/admin behavior changes
========================================================= */
.sbvm-student-dashboard{
  --iv-ink:#10233e;--iv-muted:#63748a;--iv-line:#e7edf5;--iv-brand:#0f766e;
  --iv-blue:#2563eb;--iv-bg:#f4f7fb;--iv-card:#fff;
  max-width:1240px!important;margin:0 auto!important;padding:24px!important;
  color:var(--iv-ink);position:relative;
}
.sbvm-student-dashboard:before{content:"";position:fixed;inset:0;z-index:-2;background:
 radial-gradient(circle at 7% 8%,rgba(37,99,235,.10),transparent 24%),
 radial-gradient(circle at 94% 15%,rgba(15,118,110,.10),transparent 27%),
 linear-gradient(180deg,#f8fbff 0,#f3f6fb 100%)}
.sbvm-student-welcome{position:relative;overflow:hidden;border-radius:30px;padding:24px;background:
 linear-gradient(125deg,rgba(6,34,63,.98),rgba(15,118,110,.95));box-shadow:0 24px 65px rgba(15,35,62,.22);isolation:isolate}
.sbvm-student-welcome:before,.sbvm-student-welcome:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:-1}
.sbvm-student-welcome:before{width:300px;height:300px;right:-90px;top:-170px;background:rgba(255,255,255,.10)}
.sbvm-student-welcome:after{width:230px;height:230px;left:38%;bottom:-190px;background:rgba(56,189,248,.13)}
.sbvm-student-topbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:0!important;background:none!important;border-radius:0!important;box-shadow:none!important}
.sbvm-student-profile{display:flex;align-items:center;gap:17px;min-width:0}
.sbvm-student-avatar{width:84px!important;height:84px!important;flex:0 0 84px!important;border-radius:25px!important;background:linear-gradient(135deg,#f59e0b,#22c55e)!important;border:3px solid rgba(255,255,255,.85)!important;box-shadow:0 12px 30px rgba(0,0,0,.22)!important}
.sbvm-student-profile-copy{min-width:0}.sbvm-student-kicker{display:inline-flex;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.16);color:#dbeafe;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.sbvm-student-profile h2{font-size:clamp(25px,4vw,38px)!important;letter-spacing:-.035em!important;margin:7px 0 4px!important;color:#fff!important;line-height:1.06!important}
.sbvm-student-profile p{display:flex;flex-wrap:wrap;gap:7px 14px;margin:0!important;color:#dce9f7!important;font-size:12px!important;font-weight:750!important}.sbvm-student-profile p span{white-space:nowrap}
.sbvm-student-logout{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:43px!important;padding:10px 15px!important;background:rgba(255,255,255,.94)!important;color:#12314f!important;border-radius:14px!important;font-weight:900!important;box-shadow:0 8px 24px rgba(0,0,0,.12)!important}
.sbvm-student-welcome-copy{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding-top:17px;border-top:1px solid rgba(255,255,255,.16);color:#fff}.sbvm-student-welcome-copy div{display:grid;gap:3px}.sbvm-student-welcome-copy strong{font-size:17px}.sbvm-student-welcome-copy div span{color:#cfe2f4;font-size:13px;font-weight:650}.sbvm-student-live-badge{display:inline-flex!important;align-items:center;gap:7px;white-space:nowrap;padding:8px 12px;border-radius:999px;background:rgba(34,197,94,.16);border:1px solid rgba(134,239,172,.28);color:#dcfce7;font-size:12px;font-weight:900}
.sbvm-student-stat-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;margin:18px 0!important}
.sbvm-student-stat-grid .sbvm-card{min-width:0!important;display:flex!important;align-items:center!important;gap:12px!important;padding:17px!important;background:rgba(255,255,255,.92)!important;border:1px solid rgba(214,224,237,.86)!important;border-radius:21px!important;box-shadow:0 12px 32px rgba(35,55,80,.08)!important;transition:transform .2s ease,box-shadow .2s ease!important}
.sbvm-student-stat-grid .sbvm-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(35,55,80,.13)!important}.sbvm-student-stat-grid .sbvm-card i{width:43px;height:43px;flex:0 0 43px;border-radius:14px;display:grid;place-items:center;font-style:normal;font-weight:950;font-size:19px}.sbvm-student-stat-grid .sbvm-card div{display:grid;min-width:0;gap:4px}.sbvm-student-stat-grid .sbvm-card b{font-size:11px!important;letter-spacing:.06em;text-transform:uppercase;color:#75859a!important}.sbvm-student-stat-grid .sbvm-card span{font-size:clamp(16px,2vw,22px)!important;line-height:1.1!important;color:#132b48!important;white-space:normal;overflow-wrap:anywhere}.sbvm-stat-roll i{background:#e0f2fe;color:#0369a1}.sbvm-stat-class_section i{background:#ede9fe;color:#6d28d9}.sbvm-stat-fee i{background:#dcfce7;color:#15803d}.sbvm-stat-due i{background:#fee2e2;color:#b91c1c}.sbvm-stat-renewal i{background:#fef3c7;color:#b45309}
.sbvm-student-dashboard>.sbvm-panel{margin:16px 0!important;padding:22px!important;background:rgba(255,255,255,.94)!important;border:1px solid var(--iv-line)!important;border-radius:24px!important;box-shadow:0 13px 38px rgba(40,58,82,.075)!important;overflow:hidden}
.sbvm-section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}.sbvm-section-heading>div{display:grid;gap:2px}.sbvm-section-heading span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:950;color:#0f766e}.sbvm-section-heading h3{margin:0!important;font-size:clamp(20px,2.4vw,27px)!important;letter-spacing:-.025em;color:#142b47}.sbvm-section-heading>b{width:46px;height:46px;border-radius:15px;background:#eef6ff;display:grid;place-items:center;font-size:22px}
.sbvm-pending-fee-months{background:linear-gradient(145deg,#fff,#fff8f3)!important}.sbvm-pending-summary{display:inline-flex;align-items:center;gap:7px;margin:0 0 13px!important;padding:10px 13px;border-radius:13px;background:#fff1f2;color:#9f1239}.sbvm-pending-month-list{display:flex!important;flex-wrap:wrap!important;gap:9px!important}.sbvm-pending-month-badge{display:inline-flex!important;padding:9px 12px!important;border-radius:999px!important;border:1px solid #fed7aa!important;background:#fff7ed!important;color:#9a3412!important;font-weight:900!important;font-size:12px!important;box-shadow:none!important}.sbvm-fee-clear{border-radius:14px!important}
.sbvm-student-fee-report .sbvm-table-scroll{border:1px solid #e6edf5;border-radius:17px;overflow:auto;background:#fff}.sbvm-student-fee-report table{margin:0!important;border:0!important;min-width:920px}.sbvm-student-fee-report th{position:sticky;top:0;z-index:1;background:#f3f7fb!important;color:#40546d!important;font-size:11px!important;text-transform:uppercase;letter-spacing:.05em}.sbvm-student-fee-report td{font-size:13px!important}.sbvm-student-fee-report tr:hover td{background:#f8fbff}
.sbvm-student-learning{background:linear-gradient(160deg,#fff 0,#f5fbff 100%)!important}.sbvm-student-learning .sbvm-module-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:13px!important;margin-bottom:0!important}.sbvm-student-learning .sbvm-module-card{position:relative;overflow:hidden;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;min-height:150px!important;padding:18px!important;border-radius:20px!important;background:linear-gradient(145deg,#fff,#f1f7ff)!important;border:1px solid #dfe9f4!important;box-shadow:0 10px 26px rgba(26,67,108,.08)!important}.sbvm-student-learning .sbvm-module-card:before{content:"";position:absolute;width:95px;height:95px;border-radius:50%;right:-25px;top:-30px;background:rgba(37,99,235,.08)}.sbvm-student-learning .sbvm-module-card b{font-size:17px!important;position:relative}.sbvm-student-learning .sbvm-module-card span{font-size:12.5px!important;line-height:1.55!important;position:relative}.sbvm-student-learning .sbvm-module-card:hover{transform:translateY(-5px)!important}.sbvm-student-learning .sbvm-module-card.warn{background:linear-gradient(145deg,#fffdf5,#fff5dc)!important;border-color:#fde7ac!important}.sbvm-student-learning .sbvm-module-card.warn:before{background:rgba(245,158,11,.10)}
.sbvm-student-notice-panel{border-left:0!important}.sbvm-student-notices .sbvm-notice{border-radius:18px!important;padding:17px!important;border:1px solid #dfe9f7!important;background:#fbfdff!important}.sbvm-student-admission p{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0;line-height:1.75;color:#50647c}.sbvm-student-admission p b{color:#1a3554}
.sbvm-registration-footer{margin:22px 0 82px!important;padding:18px!important;border:1px solid #e2eaf4;border-radius:20px;background:rgba(255,255,255,.72);text-align:center;color:#65788e;font-size:12px;line-height:1.7}.sbvm-registration-footer a{font-weight:900;color:#0f766e}
.sbvm-student-bottom-nav{display:none;position:fixed;left:50%;bottom:13px;transform:translateX(-50%);z-index:9999;width:min(94%,560px);padding:7px;background:rgba(255,255,255,.92);border:1px solid rgba(218,226,237,.95);border-radius:22px;box-shadow:0 18px 55px rgba(18,36,60,.22);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}.sbvm-student-bottom-nav a{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 3px;border-radius:15px;text-decoration:none!important;color:#6b7c90!important}.sbvm-student-bottom-nav a:hover,.sbvm-student-bottom-nav a:focus{background:#eaf4ff;color:#0f5fa8!important}.sbvm-student-bottom-nav span{font-size:20px}.sbvm-student-bottom-nav b{font-size:9px;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:1050px){.sbvm-student-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.sbvm-student-learning .sbvm-module-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){.sbvm-student-dashboard{padding:12px!important}.sbvm-student-welcome{padding:18px;border-radius:23px}.sbvm-student-topbar{align-items:flex-start!important;flex-direction:column!important}.sbvm-student-profile{width:100%}.sbvm-student-avatar{width:66px!important;height:66px!important;flex-basis:66px!important;border-radius:20px!important}.sbvm-student-profile h2{font-size:25px!important}.sbvm-student-profile p{display:grid;gap:3px!important}.sbvm-student-logout{width:100%!important}.sbvm-student-welcome-copy{align-items:flex-start;flex-direction:column}.sbvm-student-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-student-dashboard>.sbvm-panel{padding:17px!important;border-radius:20px!important}.sbvm-student-learning .sbvm-module-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-student-bottom-nav{display:flex}.sbvm-registration-footer{margin-bottom:92px!important}}
@media(max-width:430px){.sbvm-student-stat-grid{grid-template-columns:1fr!important}.sbvm-student-stat-grid .sbvm-card{padding:14px!important}.sbvm-student-learning .sbvm-module-grid.compact{grid-template-columns:1fr!important}.sbvm-student-learning .sbvm-module-card{min-height:125px!important}.sbvm-section-heading h3{font-size:21px!important}.sbvm-section-heading>b{width:40px;height:40px;border-radius:13px}.sbvm-student-profile p span{white-space:normal}}
@media(prefers-reduced-motion:reduce){.sbvm-student-dashboard *{scroll-behavior:auto!important;transition:none!important}}

/* v10.10 Student Portal Online Payment */
.sbvm-student-pay-list{display:grid;gap:12px;margin-top:14px}.sbvm-student-pay-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border:1px solid #dbeafe;border-radius:16px;background:linear-gradient(135deg,#fff,#f0fdfa);box-shadow:0 8px 24px rgba(15,118,110,.08)}.sbvm-student-pay-row>div{display:grid;gap:5px;min-width:0}.sbvm-student-pay-row b{font-size:15px;color:#0f172a}.sbvm-student-pay-row span{font-size:13px;color:#64748b}.sbvm-student-pay-now{white-space:nowrap;border-radius:12px!important;min-height:42px;padding:9px 18px!important;font-weight:800!important}.sbvm-student-pay-now:disabled{opacity:.65;cursor:wait}.sbvm-payment-unavailable{margin:12px 0 0;padding:11px 13px;border-radius:12px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;font-size:13px}@media(max-width:600px){.sbvm-student-pay-row{align-items:stretch;flex-direction:column}.sbvm-student-pay-now{width:100%}}

/* Student Portal profile photo uploader */
.sbvm-student-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:20px;align-items:start}
.sbvm-student-photo-upload{padding:18px;border:1px solid #dbeafe;border-radius:20px;background:linear-gradient(145deg,#f8fbff,#eef6ff);box-shadow:0 12px 30px rgba(15,23,42,.08)}
.sbvm-student-photo-upload label span{display:block;margin-bottom:9px;font-weight:850;color:#0f172a}
.sbvm-student-photo-upload input[type=file]{width:100%;padding:12px;border:1px dashed #93c5fd;border-radius:14px;background:#fff;color:#334155}
.sbvm-student-photo-upload small{display:block;margin:9px 0 13px;color:#64748b}
.sbvm-student-photo-upload .button{width:100%;min-height:44px;border:0;border-radius:13px;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;font-weight:850}
.sbvm-student-photo-message{margin:0 0 16px;padding:12px 14px;border-radius:14px;background:#dcfce7;color:#166534;font-weight:800;border:1px solid #86efac}
@media(max-width:760px){.sbvm-student-profile-grid{grid-template-columns:1fr}.sbvm-student-photo-upload{padding:15px;border-radius:17px}}

/* =========================================================
   v11.0 Student Portal Premium Redesign
   UI-only enhancement: no fee/login/payment logic changes
========================================================= */
.sbvm-student-login-page{--iv-ink:#10243e;--iv-muted:#6b7d92;--iv-line:#dfe8f2;--iv-card:rgba(255,255,255,.94);--iv-blue:#2563eb;--iv-teal:#0f766e;--iv-gold:#f59e0b;background:
 radial-gradient(circle at 8% 8%,rgba(59,130,246,.15),transparent 28%),
 radial-gradient(circle at 92% 18%,rgba(16,185,129,.13),transparent 28%),
 linear-gradient(180deg,#f7fbff 0%,#eef5fb 100%)!important;min-height:100vh}
.sbvm-student-dashboard{max-width:1260px!important;margin:0 auto!important;padding:20px 22px 120px!important;color:var(--iv-ink)!important}
.sbvm-student-welcome{position:relative;overflow:hidden;padding:26px 28px!important;border-radius:30px!important;background:
 linear-gradient(125deg,rgba(7,31,58,.98),rgba(15,118,110,.95))!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 26px 70px rgba(15,44,74,.24)!important;isolation:isolate}
.sbvm-student-welcome:before,.sbvm-student-welcome:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:-1}
.sbvm-student-welcome:before{width:340px;height:340px;right:-120px;top:-180px;background:radial-gradient(circle,rgba(255,255,255,.2),rgba(255,255,255,0) 68%)}
.sbvm-student-welcome:after{width:260px;height:260px;left:-120px;bottom:-180px;background:radial-gradient(circle,rgba(45,212,191,.28),rgba(45,212,191,0) 68%)}
.sbvm-student-avatar{box-shadow:0 16px 35px rgba(0,0,0,.2)!important;transition:transform .28s ease,box-shadow .28s ease!important}
.sbvm-student-avatar:hover{transform:translateY(-3px) scale(1.025);box-shadow:0 22px 42px rgba(0,0,0,.26)!important}
.sbvm-student-kicker{background:rgba(255,255,255,.14)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.sbvm-student-logout{transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important}
.sbvm-student-logout:hover{transform:translateY(-2px);background:#fff!important;box-shadow:0 14px 28px rgba(0,0,0,.2)!important}
.sbvm-student-live-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 5px rgba(74,222,128,.15);animation:sbvmPulse 1.8s ease-in-out infinite}
@keyframes sbvmPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.72);opacity:.7}}
.sbvm-student-stat-grid{gap:16px!important;margin:20px 0!important}
.sbvm-student-stat-grid .sbvm-card{position:relative;overflow:hidden;min-height:100px!important;padding:18px 17px!important;border-radius:23px!important;background:var(--iv-card)!important;border:1px solid rgba(215,226,238,.94)!important;box-shadow:0 14px 36px rgba(34,58,86,.09)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.sbvm-student-stat-grid .sbvm-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-35px;bottom:-48px;background:currentColor;opacity:.055;pointer-events:none}
.sbvm-student-stat-grid .sbvm-card:hover{transform:translateY(-5px)!important;box-shadow:0 22px 46px rgba(34,58,86,.15)!important}
.sbvm-student-stat-grid .sbvm-card i{width:48px!important;height:48px!important;flex:0 0 48px!important;border-radius:16px!important;font-size:21px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.sbvm-student-stat-grid .sbvm-card b{font-size:10px!important;letter-spacing:.085em!important;color:#718096!important}
.sbvm-student-stat-grid .sbvm-card span{font-size:clamp(18px,2vw,23px)!important;font-weight:900!important;letter-spacing:-.02em!important}
.sbvm-student-dashboard>.sbvm-panel{position:relative;margin-top:18px!important;padding:22px!important;border-radius:25px!important;background:rgba(255,255,255,.95)!important;border:1px solid rgba(220,230,240,.96)!important;box-shadow:0 16px 42px rgba(37,61,89,.09)!important;overflow:hidden}
.sbvm-student-dashboard>.sbvm-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#2563eb,#14b8a6,#f59e0b);opacity:.78}
.sbvm-section-heading{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;margin-bottom:18px!important}
.sbvm-section-heading>div>span{display:block;color:#64748b!important;font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.105em!important;margin-bottom:4px!important}
.sbvm-section-heading h3{margin:0!important;color:#152f4c!important;font-size:clamp(21px,2.4vw,27px)!important;line-height:1.15!important;letter-spacing:-.035em!important}
.sbvm-section-heading>b{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:16px;background:linear-gradient(135deg,#eaf3ff,#e7faf7);font-size:22px;box-shadow:inset 0 0 0 1px #dbe8f4}
.sbvm-pending-fee-months{background:linear-gradient(145deg,#fff 0%,#fffaf0 100%)!important}
.sbvm-pending-summary{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px!important;padding:9px 13px;border-radius:999px;background:#fff1f2;color:#be123c;border:1px solid #fecdd3;font-size:13px}
.sbvm-student-pay-list{gap:13px!important}
.sbvm-student-pay-row{border-radius:18px!important;padding:16px 17px!important;background:linear-gradient(135deg,#fff,#f7fffd)!important;border:1px solid #d7ebe6!important;box-shadow:0 10px 24px rgba(15,118,110,.075)!important;transition:transform .2s ease,box-shadow .2s ease!important}
.sbvm-student-pay-row:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(15,118,110,.12)!important}
.sbvm-student-pay-now{background:linear-gradient(135deg,#0f766e,#059669)!important;border:0!important;box-shadow:0 10px 22px rgba(5,150,105,.22)!important;transition:transform .18s ease,box-shadow .18s ease!important}
.sbvm-student-pay-now:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(5,150,105,.3)!important}
.sbvm-fee-clear{margin:0!important;padding:14px 16px;border-radius:16px;background:#ecfdf5;color:#166534;border:1px solid #bbf7d0;font-weight:800}
.sbvm-student-fee-report .sbvm-table-scroll{border-radius:19px!important;box-shadow:inset 0 0 0 1px #e5edf5}
.sbvm-student-fee-report table{border-collapse:separate!important;border-spacing:0!important}
.sbvm-student-fee-report th{padding:13px 12px!important;background:#f4f8fc!important;color:#53677f!important}
.sbvm-student-fee-report td{padding:13px 12px!important;border-bottom:1px solid #edf2f7!important;color:#2f465e!important}
.sbvm-student-fee-report tr:last-child td{border-bottom:0!important}
.sbvm-student-learning{background:linear-gradient(155deg,#fff 0%,#f5faff 55%,#f0fdfa 100%)!important}
.sbvm-student-learning .sbvm-module-grid.compact{gap:15px!important}
.sbvm-student-learning .sbvm-module-card{min-height:160px!important;padding:20px!important;border-radius:23px!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(239,247,255,.98))!important;border:1px solid #dce8f4!important;box-shadow:0 13px 31px rgba(31,78,120,.09)!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important}
.sbvm-student-learning .sbvm-module-card:before{width:120px!important;height:120px!important;right:-33px!important;top:-45px!important;background:radial-gradient(circle,rgba(37,99,235,.14),rgba(37,99,235,0) 70%)!important}
.sbvm-student-learning .sbvm-module-card:after{content:"Open →";display:block;margin-top:15px;color:#2563eb;font-size:12px;font-weight:900;letter-spacing:.04em;position:relative}
.sbvm-student-learning .sbvm-module-card:hover{transform:translateY(-6px) scale(1.008)!important;border-color:#b8d3ed!important;box-shadow:0 22px 44px rgba(31,78,120,.15)!important}
.sbvm-student-learning .sbvm-module-card.warn:after{color:#b45309}
.sbvm-student-notices .sbvm-notice{transition:transform .2s ease,box-shadow .2s ease!important}.sbvm-student-notices .sbvm-notice:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(31,60,92,.09)}
.sbvm-student-profile-grid{gap:22px!important}
.sbvm-student-photo-upload{border-radius:22px!important;background:linear-gradient(145deg,#f8fbff,#eef6ff)!important;box-shadow:0 14px 34px rgba(31,70,115,.09)!important}
.sbvm-student-photo-upload input[type=file]{cursor:pointer}
.sbvm-registration-footer{padding:22px 12px!important;color:#65778c!important;line-height:1.7!important}
.sbvm-student-bottom-nav{display:flex!important;bottom:max(12px,env(safe-area-inset-bottom))!important;width:min(94%,620px)!important;padding:8px!important;border-radius:24px!important;background:rgba(255,255,255,.91)!important;box-shadow:0 22px 60px rgba(18,36,60,.25)!important}
.sbvm-student-bottom-nav a{transition:background .18s ease,color .18s ease,transform .18s ease!important}
.sbvm-student-bottom-nav a:hover,.sbvm-student-bottom-nav a:focus,.sbvm-student-bottom-nav a.is-active{background:linear-gradient(135deg,#e7f1ff,#e8faf7)!important;color:#0f5fa8!important;transform:translateY(-1px)}
.sbvm-student-bottom-nav b{font-size:9.5px!important}
.sbvm-student-bottom-nav span{font-size:21px!important}
.sbvm-student-dashboard [id^="student-"]{scroll-margin-top:24px}
@media(min-width:1100px){.sbvm-student-bottom-nav{width:auto!important;left:auto!important;right:24px!important;transform:none!important;bottom:24px!important;flex-direction:column!important;border-radius:22px!important}.sbvm-student-bottom-nav a{min-width:64px!important;padding:9px 8px!important}}
@media(max-width:1050px){.sbvm-student-dashboard{padding:16px 16px 112px!important}.sbvm-student-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.sbvm-student-dashboard{padding:10px 10px 110px!important}.sbvm-student-welcome{padding:19px!important;border-radius:24px!important}.sbvm-student-welcome-copy{margin-top:16px!important;padding-top:15px!important}.sbvm-student-stat-grid{gap:10px!important}.sbvm-student-stat-grid .sbvm-card{min-height:92px!important;padding:14px!important;border-radius:19px!important}.sbvm-student-dashboard>.sbvm-panel{padding:17px!important;border-radius:21px!important}.sbvm-section-heading{margin-bottom:14px!important}.sbvm-student-learning .sbvm-module-card{min-height:138px!important;padding:17px!important;border-radius:19px!important}}
@media(max-width:430px){.sbvm-student-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-student-stat-grid .sbvm-card:last-child{grid-column:1/-1}.sbvm-student-stat-grid .sbvm-card i{width:42px!important;height:42px!important;flex-basis:42px!important}.sbvm-student-stat-grid .sbvm-card span{font-size:17px!important}.sbvm-student-learning .sbvm-module-grid.compact{grid-template-columns:1fr!important}.sbvm-student-bottom-nav{width:calc(100% - 16px)!important}.sbvm-student-bottom-nav a{padding:7px 1px!important}.sbvm-student-bottom-nav b{font-size:8px!important}}
@media(prefers-reduced-motion:reduce){.sbvm-student-dashboard *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* SBVM v1.4 Premium Frontend */
:root{
 --sbvm-primary:#155e75;--sbvm-secondary:#0f766e;--sbvm-accent:#f59e0b;
 --sbvm-ink:#102a43;--sbvm-muted:#64748b;--sbvm-surface:#fff;
 --sbvm-line:rgba(15,118,110,.14);--sbvm-radius:20px;
 --sbvm-shadow:0 16px 42px rgba(15,78,99,.13);
 --sbvm-font:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
body.sbvm-premium-ui{
 font-family:var(--sbvm-font)!important;color:var(--sbvm-ink);
 background:
 radial-gradient(circle at 10% 8%,rgba(20,184,166,.12),transparent 28%),
 radial-gradient(circle at 90% 12%,rgba(37,99,235,.10),transparent 24%),
 linear-gradient(145deg,#f0fdfa,#eff6ff 55%,#fff7ed);
 min-height:100vh;
}
body.sbvm-premium-ui .entry-title,body.sbvm-premium-ui .page-title{display:none!important}
.sbvm,.sbvm-front{font-family:var(--sbvm-font)!important;color:var(--sbvm-ink)}
.sbvm h1,.sbvm h2,.sbvm h3,.sbvm-front h1,.sbvm-front h2,.sbvm-front h3{
 color:var(--sbvm-ink);letter-spacing:-.025em;line-height:1.2
}
.sbvm h1,.sbvm-front h1{font-size:clamp(1.7rem,3vw,2.5rem);font-weight:850}
.sbvm h2,.sbvm-front h2{font-size:clamp(1.3rem,2vw,1.8rem);font-weight:800}
.sbvm p,.sbvm-front p{color:var(--sbvm-muted);line-height:1.7}
.sbvm-panel,.sbvm-card,.sbvm-stat,.sbvm-summary-card,.sbvm-login-card,.sbvm-access,.sbvm-readonly-banner{
 background:rgba(255,255,255,.92)!important;border:1px solid rgba(255,255,255,.95)!important;
 border-radius:var(--sbvm-radius)!important;box-shadow:var(--sbvm-shadow)!important;
 backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)
}
.sbvm-panel,.sbvm-card{padding:clamp(18px,2.5vw,28px)!important}
.sbvm-stat,.sbvm-summary-card{position:relative;overflow:hidden;padding:22px!important;transition:.2s ease}
.sbvm-stat:before,.sbvm-summary-card:before{
 content:"";position:absolute;inset:0 auto 0 0;width:5px;
 background:linear-gradient(#f59e0b,#f97316)
}
.sbvm-stat:hover,.sbvm-summary-card:hover,.sbvm-card:hover{transform:translateY(-3px)}
.sbvm .button,.sbvm button,.sbvm-btn,.sbvm-front .button,.sbvm-front button{
 min-height:44px;border:0!important;border-radius:12px!important;padding:10px 18px!important;
 font-weight:800!important;cursor:pointer;transition:.2s ease!important
}
.sbvm .button-primary,.sbvm button[type=submit],.sbvm-btn{
 color:#fff!important;background:linear-gradient(135deg,var(--sbvm-secondary),var(--sbvm-primary))!important;
 box-shadow:0 8px 18px rgba(15,118,110,.18)
}
.sbvm .button:hover,.sbvm button:hover,.sbvm-btn:hover{transform:translateY(-2px);filter:saturate(1.08)}
.sbvm label,.sbvm-front label{display:block;color:var(--sbvm-ink);font-weight:750;margin-bottom:7px}
.sbvm input,.sbvm select,.sbvm textarea,.sbvm-front input,.sbvm-front select,.sbvm-front textarea{
 width:100%;min-height:46px;border:1px solid #d8e4ea!important;border-radius:12px!important;
 background:#fff!important;color:var(--sbvm-ink)!important;padding:11px 13px!important;font-size:15px!important
}
.sbvm input:focus,.sbvm select:focus,.sbvm textarea:focus,.sbvm-front input:focus,.sbvm-front select:focus,.sbvm-front textarea:focus{
 border-color:var(--sbvm-secondary)!important;box-shadow:0 0 0 4px rgba(15,118,110,.12)!important;outline:0
}
.sbvm-table-wrap{overflow:auto;border:1px solid var(--sbvm-line);border-radius:16px;background:#fff;box-shadow:var(--sbvm-shadow)}
.sbvm table{width:100%;border-collapse:separate!important;border-spacing:0!important;background:#fff!important}
.sbvm table th{
 background:linear-gradient(135deg,#ecfeff,#eff6ff)!important;color:var(--sbvm-primary)!important;
 font-weight:850!important;padding:13px 12px!important;white-space:nowrap
}
.sbvm table td{padding:13px 12px!important;border-bottom:1px solid #edf2f7!important}
.sbvm table tr:hover td{background:#f8fffe!important}
.sbvm-login-wrap{
 min-height:calc(100vh - 30px);display:grid;place-items:center;padding:24px;
 background:radial-gradient(circle at 12% 12%,rgba(245,158,11,.16),transparent 28%),
 linear-gradient(145deg,#ecfeff,#eff6ff 55%,#fff7ed)
}
.sbvm-login-card{width:min(100%,540px);padding:clamp(24px,5vw,42px)!important}
.sbvm-sidebar,.sbvm-nav{
 background:rgba(255,255,255,.9)!important;box-shadow:var(--sbvm-shadow)!important;
 backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)
}
.sbvm-sidebar a,.sbvm-nav a{border-radius:12px!important;font-weight:700!important;transition:.2s ease}
.sbvm-sidebar a:hover,.sbvm-sidebar a.active,.sbvm-nav a:hover,.sbvm-nav a.active{
 background:linear-gradient(135deg,rgba(20,184,166,.14),rgba(37,99,235,.12))!important;color:var(--sbvm-primary)!important
}
.sbvm-bottom-nav{
 background:rgba(255,255,255,.94)!important;border-top:1px solid var(--sbvm-line)!important;
 box-shadow:0 -10px 30px rgba(15,78,99,.12)!important;backdrop-filter:blur(16px)
}
@media (min-width:1025px){.sbvm,.sbvm-front{padding:26px 30px 44px!important}}
@media (max-width:1024px){
 .sbvm-grid,.sbvm-dashboard-grid,.sbvm-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .sbvm,.sbvm-front{padding:20px!important}
}
@media (max-width:700px){
 .sbvm-grid,.sbvm-dashboard-grid,.sbvm-stats,.sbvm-form-grid,.sbvm-fields{grid-template-columns:1fr!important}
 .sbvm,.sbvm-front{padding:14px!important}
 .sbvm-panel,.sbvm-card{padding:17px!important;border-radius:17px!important}
 .sbvm h1,.sbvm-front h1{font-size:1.6rem}
 .sbvm table{min-width:760px}
 .sbvm .button,.sbvm button,.sbvm-btn{width:100%;text-align:center}
}
@media print{
 body.sbvm-premium-ui{background:#fff!important}
 .sbvm-sidebar,.sbvm-nav,.sbvm-bottom-nav{display:none!important}
}

/* SBVM v1.5 Class Cards */
.sbvm-school-hero{margin-bottom:22px}
.sbvm-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:28px 0 18px}
.sbvm-section-head p{max-width:520px;margin:0}
.sbvm-eyebrow{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(15,118,110,.10);color:#0f766e;font-size:.75rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.sbvm-class-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.sbvm-class-card{position:relative;overflow:hidden;text-decoration:none!important;color:var(--sbvm-ink)!important;min-height:210px;padding:24px;border-radius:22px;background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.96);box-shadow:var(--sbvm-shadow);transition:.22s ease}
.sbvm-class-card:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#0f766e,#2563eb,#f59e0b)}
.sbvm-class-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(15,78,99,.19)}
.sbvm-class-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;font-size:1.7rem;background:linear-gradient(135deg,#ecfeff,#dbeafe);margin-bottom:18px}
.sbvm-class-name{font-size:1.3rem;font-weight:850;margin-bottom:12px}
.sbvm-class-meta{display:flex;flex-direction:column;gap:7px;color:var(--sbvm-muted);font-size:.9rem}
.sbvm-class-open{position:absolute;left:24px;bottom:20px;color:#0f766e;font-weight:850}
.sbvm-class-detail-head{display:flex;gap:20px;align-items:flex-start;margin-bottom:20px}
.sbvm-back-class{width:auto!important;flex:0 0 auto}
.sbvm-class-stats{margin-bottom:22px}
.sbvm-class-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}
.sbvm-class-action{display:flex;flex-direction:column;gap:7px;text-decoration:none!important;color:var(--sbvm-ink)!important;padding:22px;border-radius:18px;background:rgba(255,255,255,.95);border:1px solid var(--sbvm-line);box-shadow:0 10px 28px rgba(15,78,99,.09);transition:.2s ease}
.sbvm-class-action:hover{transform:translateY(-4px);box-shadow:var(--sbvm-shadow)}
.sbvm-class-action>span{font-size:1.8rem}.sbvm-class-action strong{font-size:1.05rem}.sbvm-class-action small{color:var(--sbvm-muted)}
@media(max-width:1120px){.sbvm-class-card-grid,.sbvm-class-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.sbvm-class-card-grid,.sbvm-class-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sbvm-section-head{display:block}}
@media(max-width:560px){.sbvm-class-card-grid,.sbvm-class-action-grid{grid-template-columns:1fr}.sbvm-class-detail-head{display:block}.sbvm-back-class{margin-bottom:14px}.sbvm-class-card{min-height:190px}}


/* ======================================================
   SBVM School ERP v2.0 Premium Dashboard
====================================================== */
.sbvm-v2-home{max-width:1500px;margin:auto}
.sbvm-v2-hero{
 display:grid!important;grid-template-columns:minmax(0,1.55fr) minmax(260px,.45fr);
 gap:24px;align-items:center;padding:clamp(24px,4vw,48px)!important;
 background:
 radial-gradient(circle at 84% 15%,rgba(245,158,11,.34),transparent 26%),
 radial-gradient(circle at 8% 90%,rgba(59,130,246,.24),transparent 28%),
 linear-gradient(135deg,#0f4661,#0f766e 60%,#115e59)!important;
 border-radius:30px!important;box-shadow:0 28px 70px rgba(15,78,99,.28)!important
}
.sbvm-v2-hero h1{max-width:900px;font-size:clamp(2rem,4vw,3.5rem)!important}
.sbvm-v2-user-line{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.sbvm-v2-user-line span{
 display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;
 background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);
 color:#fff;font-size:.88rem;font-weight:750
}
.sbvm-v2-live-card{
 min-height:220px;padding:26px;border-radius:24px;display:flex;flex-direction:column;
 justify-content:center;align-items:center;text-align:center;
 background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);
 backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff
}
.sbvm-v2-live-card strong{font-size:clamp(2.6rem,5vw,4.6rem);line-height:1;color:#fff}
.sbvm-v2-live-card span,.sbvm-v2-live-card small{color:rgba(255,255,255,.88)}
.sbvm-v2-live-label{font-size:.76rem!important;letter-spacing:.12em;text-transform:uppercase;font-weight:850;margin-bottom:12px}
.sbvm-v2-quick-section{margin:28px 0}
.sbvm-v2-quick-grid{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px
}
.sbvm-v2-quick-grid a{
 position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;
 min-height:165px;padding:22px;text-decoration:none!important;color:var(--sbvm-ink)!important;
 background:rgba(255,255,255,.94);border:1px solid rgba(15,118,110,.12);
 border-radius:20px;box-shadow:0 12px 30px rgba(15,78,99,.09);transition:.22s ease
}
.sbvm-v2-quick-grid a:after{
 content:"";position:absolute;right:-26px;bottom:-34px;width:100px;height:100px;
 border-radius:50%;background:linear-gradient(135deg,rgba(20,184,166,.13),rgba(37,99,235,.10))
}
.sbvm-v2-quick-grid a:hover{transform:translateY(-5px);box-shadow:0 22px 45px rgba(15,78,99,.16)}
.sbvm-v2-quick-grid a>span{font-size:2rem}
.sbvm-v2-quick-grid b{font-size:1.08rem}
.sbvm-v2-quick-grid small{color:var(--sbvm-muted);line-height:1.55}
.sbvm-home-stats>div{
 position:relative;overflow:hidden;border-top:4px solid transparent!important;
 border-image:linear-gradient(90deg,#0f766e,#2563eb,#f59e0b) 1!important
}
.sbvm-class-card{isolation:isolate}
.sbvm-class-card:after{
 content:"";position:absolute;z-index:-1;inset:auto -34px -48px auto;width:120px;height:120px;
 border-radius:50%;background:linear-gradient(135deg,rgba(20,184,166,.13),rgba(37,99,235,.10))
}
@media(max-width:1000px){
 .sbvm-v2-hero{grid-template-columns:1fr}
 .sbvm-v2-live-card{min-height:160px}
 .sbvm-v2-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .sbvm-v2-hero{padding:22px!important;border-radius:23px!important}
 .sbvm-v2-quick-grid{grid-template-columns:1fr}
 .sbvm-v2-user-line{gap:7px}
 .sbvm-v2-user-line span{font-size:.8rem}
}
/* v2.2 Two School Cabin UI */
.sbvm-cabin-login-line{margin:10px 0 0;font-weight:800;opacity:.9;line-height:1.6}.sbvm-hidden-school-name{display:none!important}.sbvm-cabin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0 24px}.sbvm-cabin-card{padding:22px;border-radius:22px;background:linear-gradient(145deg,#fff,#eef6ff);border:1px solid #dbeafe;box-shadow:0 12px 30px rgba(15,23,42,.08)}.sbvm-cabin-card span{font-weight:900;color:#0f766e}.sbvm-cabin-card h3{margin:8px 0;font-size:22px}.sbvm-cabin-card p{margin:0 0 12px;color:#64748b}.sbvm-cabin-card b{display:inline-block;padding:7px 11px;border-radius:999px;background:#dcfce7;color:#166534}.sbvm-class-cabin{font-size:12px;font-weight:800;color:#475569;margin-top:5px;min-height:30px}@media(max-width:720px){.sbvm-cabin-grid{grid-template-columns:1fr}.sbvm-cabin-login-line{font-size:13px}}

/* =========================================================
   v2.3 School Signature Premium UI
   Distinct academic identity: navy, royal blue and warm gold.
========================================================= */
:root{--sbvm-navy:#07152f;--sbvm-blue:#1746a2;--sbvm-royal:#2563eb;--sbvm-gold:#f4b740;--sbvm-cream:#fffaf0;--sbvm-ink:#10213b;--sbvm-muted:#64748b;--sbvm-line:#dbe4f0;--sbvm-surface:#ffffff}
body:not(.wp-admin){background:linear-gradient(180deg,#f8fbff 0%,#f4f7fb 45%,#eef3f9 100%)!important}
body:not(.wp-admin) .sbvm-shell-head{height:74px;background:linear-gradient(105deg,#06142d 0%,#0d2f68 58%,#1746a2 100%)!important;border-bottom:1px solid rgba(255,255,255,.15);box-shadow:0 16px 40px rgba(7,21,47,.25)!important;padding:0 22px!important}
body:not(.wp-admin) .sbvm-shell-head:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--sbvm-gold),#fff1ae,var(--sbvm-gold))}
body:not(.wp-admin) .sbvm-shell-spacer{height:74px}
.sbvm-shell-brand strong{font-family:Georgia,"Times New Roman",serif;font-size:20px!important;letter-spacing:.2px}.sbvm-shell-brand span{background:rgba(244,183,64,.18)!important;border:1px solid rgba(244,183,64,.45)!important;color:#fff7d6!important}
.sbvm-menu-toggle{background:linear-gradient(135deg,#fff,#fff6d8)!important;color:#0b2b5f!important;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.sbvm-shell-side{top:74px!important;width:252px!important;background:linear-gradient(180deg,#07152f 0%,#0b2855 100%)!important;border-right:1px solid rgba(255,255,255,.08)!important;padding:20px 13px!important}
.sbvm-side-title{font-family:Georgia,"Times New Roman",serif;font-size:18px;letter-spacing:.5px;padding:10px 12px 16px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:12px!important}
.sbvm-shell-side a{border:1px solid transparent!important;transition:.22s ease!important}.sbvm-shell-side a:hover{background:linear-gradient(90deg,rgba(255,255,255,.13),rgba(244,183,64,.12))!important;border-color:rgba(244,183,64,.26)!important;transform:translateX(3px)}
.sbvm-shell-main{margin-left:252px!important;background:radial-gradient(circle at 100% 0,rgba(37,99,235,.08),transparent 26%),linear-gradient(180deg,#f8fbff,#f1f5fa)!important;padding:24px!important}

/* Premium login */
body .sbvm-login-screen-dual{background:radial-gradient(circle at 8% 10%,rgba(244,183,64,.20),transparent 24%),radial-gradient(circle at 92% 8%,rgba(37,99,235,.28),transparent 28%),linear-gradient(135deg,#040d1f 0%,#092453 52%,#1746a2 100%)!important;gap:34px!important;padding:clamp(18px,4vw,54px)!important}
.sbvm-login-left{position:relative;overflow:hidden;border-radius:34px!important;padding:38px!important;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055))!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 32px 80px rgba(0,0,0,.28)!important;backdrop-filter:blur(18px)}
.sbvm-login-left:before{content:"विद्यालय प्रबंधन प्रणाली";display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(244,183,64,.18);border:1px solid rgba(244,183,64,.42);color:#fff4c7;font-size:12px;font-weight:900;letter-spacing:.5px;margin-bottom:16px}
.sbvm-login-left:after{content:"";position:absolute;width:230px;height:230px;right:-85px;bottom:-115px;border-radius:50%;border:42px solid rgba(244,183,64,.09)}
.sbvm-login-badge{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.18)!important;color:#eaf2ff!important}
.sbvm-login-left h1{font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(42px,5vw,72px)!important;line-height:1.02!important;letter-spacing:-2px!important;text-shadow:0 10px 35px rgba(0,0,0,.25)}
.sbvm-cabin-login-line{color:#dce9ff!important;font-weight:700!important}
.sbvm-login-tabs-shell{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.20)!important;border-radius:30px!important;padding:12px!important;box-shadow:0 28px 70px rgba(0,0,0,.28)!important;backdrop-filter:blur(18px)}
.sbvm-login-tabs{background:rgba(5,20,47,.42)!important;border-color:rgba(255,255,255,.15)!important}.sbvm-login-tabs button.active{background:linear-gradient(135deg,#fff,#fff7dd)!important;color:#0b2855!important;box-shadow:0 12px 28px rgba(0,0,0,.18)!important}
.sbvm-login-card{border:1px solid rgba(255,255,255,.7)!important;background:linear-gradient(180deg,#fff 0%,#f9fbff 100%)!important;box-shadow:0 22px 60px rgba(4,13,31,.24)!important}
.sbvm-login-card h2{font-family:Georgia,"Times New Roman",serif;color:var(--sbvm-navy)!important}.sbvm-login-card h2:before{background:linear-gradient(135deg,var(--sbvm-gold),#ffe08a)!important;color:#10213b!important;box-shadow:0 8px 18px rgba(244,183,64,.28)!important}
.sbvm-login-card input[type=text],.sbvm-login-card input[type=password],.sbvm-login-card input[type=number],.sbvm-login-card select{border:1px solid #cbd7e8!important;background:#f8fbff!important;border-radius:14px!important;box-shadow:inset 0 1px 0 #fff!important}.sbvm-login-card input:focus,.sbvm-login-card select:focus{border-color:var(--sbvm-royal)!important;box-shadow:0 0 0 4px rgba(37,99,235,.12)!important;outline:none!important}
.sbvm-login-btn{border:0!important;border-radius:14px!important;background:linear-gradient(110deg,#1746a2,#2563eb 65%,#0f766e)!important;box-shadow:0 14px 30px rgba(37,99,235,.28)!important;transition:.2s ease!important}.sbvm-login-btn:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(37,99,235,.34)!important}

/* Page headers, cards and controls */
.sbvm-page-hero,.sbvm-v2-hero{border-radius:30px!important;background:radial-gradient(circle at 90% 10%,rgba(244,183,64,.20),transparent 25%),linear-gradient(125deg,#07152f,#0d3473 62%,#1746a2)!important;border:1px solid rgba(255,255,255,.15)!important;box-shadow:0 24px 60px rgba(7,21,47,.22)!important}
.sbvm-panel,.sbvm-card,.sbvm-home-card,.sbvm-cabin-card,.sbvm-class-card{border:1px solid rgba(203,215,232,.85)!important;background:linear-gradient(180deg,#fff,#fbfdff)!important;box-shadow:0 14px 36px rgba(15,35,62,.09)!important}
.sbvm-panel{border-radius:22px!important}.sbvm-card,.sbvm-home-card{border-radius:20px!important}
.sbvm input,.sbvm select,.sbvm textarea{border-color:#cbd7e8!important;background:#fbfdff!important;border-radius:12px!important}.sbvm input:focus,.sbvm select:focus,.sbvm textarea:focus{outline:none!important;border-color:#2563eb!important;box-shadow:0 0 0 4px rgba(37,99,235,.10)!important}
.sbvm .button,.sbvm .button-primary,.sbvm-btn{border-radius:12px!important;font-weight:800!important;transition:.2s ease!important}.sbvm .button-primary,.sbvm-btn{background:linear-gradient(110deg,#1746a2,#2563eb)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 9px 20px rgba(37,99,235,.20)!important}.sbvm .button:hover,.sbvm-btn:hover{transform:translateY(-1px)}

/* Two school cabins */
.sbvm-cabin-grid{gap:22px!important}.sbvm-cabin-card{position:relative;overflow:hidden;padding:26px!important;border-radius:26px!important}.sbvm-cabin-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--sbvm-gold),var(--sbvm-royal))}.sbvm-cabin-card:after{content:"🏫";position:absolute;right:18px;top:14px;font-size:54px;opacity:.08}.sbvm-cabin-card h3{font-family:Georgia,"Times New Roman",serif!important;color:var(--sbvm-navy)!important;font-size:25px!important}.sbvm-cabin-card span{color:#1746a2!important;text-transform:uppercase;letter-spacing:.8px;font-size:11px}.sbvm-cabin-card b{background:#fff4cc!important;color:#805d00!important;border:1px solid #f3d477!important}

/* Class cards */
.sbvm-class-card-grid{gap:18px!important}.sbvm-class-card{border-radius:24px!important;padding:22px!important;overflow:hidden!important;transition:.24s ease!important}.sbvm-class-card:hover{transform:translateY(-6px)!important;box-shadow:0 22px 46px rgba(15,35,62,.15)!important;border-color:#b8c9e2!important}.sbvm-class-icon{width:52px;height:52px;display:grid!important;place-items:center;border-radius:16px;background:linear-gradient(135deg,#eaf2ff,#fff4cc);font-size:26px!important;box-shadow:inset 0 0 0 1px rgba(23,70,162,.08)}.sbvm-class-name{font-family:Georgia,"Times New Roman",serif!important;color:var(--sbvm-navy)!important;font-size:22px!important}.sbvm-class-cabin{display:inline-flex!important;align-items:center;min-height:auto!important;margin:8px 0 12px!important;padding:6px 10px;border-radius:999px;background:#eef4ff;color:#1746a2!important;border:1px solid #d8e4f5;font-size:11px!important}.sbvm-class-open{color:#1746a2!important;font-weight:900!important}

/* Tables */
.sbvm-table-scroll{border:1px solid var(--sbvm-line)!important;border-radius:18px!important;background:#fff;box-shadow:0 12px 30px rgba(15,35,62,.06)!important}.sbvm table.widefat{border:0!important}.sbvm table.widefat thead th{background:linear-gradient(180deg,#0c2c60,#1746a2)!important;color:#fff!important;border:0!important;padding:13px!important}.sbvm table.widefat tbody tr:nth-child(even){background:#f8fbff}.sbvm table.widefat td{border-color:#e7edf5!important;padding:12px!important}

@media(max-width:900px){body:not(.wp-admin) .sbvm-shell-head{height:64px!important}.sbvm-shell-spacer{height:64px!important}.sbvm-shell-side{top:64px!important}.sbvm-shell-main{margin-left:0!important;padding:14px 10px 82px!important}.sbvm-login-left{padding:26px!important}.sbvm-login-left:before{margin-bottom:10px}.sbvm-cabin-grid{grid-template-columns:1fr!important}}
@media(max-width:560px){.sbvm-login-left{border-radius:24px!important;padding:22px!important}.sbvm-login-left h1{font-size:36px!important;letter-spacing:-1px!important}.sbvm-login-tabs-shell{border-radius:24px!important;padding:8px!important}.sbvm-cabin-card{padding:22px!important}.sbvm-class-card{padding:18px!important}}

/* =========================================================
   v2.4 AURORA ACADEMIC FRONTEND REDESIGN
   Clean, modern school ERP interface with premium depth.
========================================================= */
:root{
 --sbvm-v24-bg:#f5f7fb;
 --sbvm-v24-card:#ffffff;
 --sbvm-v24-text:#172033;
 --sbvm-v24-muted:#6b7488;
 --sbvm-v24-primary:#3157d5;
 --sbvm-v24-primary-2:#6b4fd3;
 --sbvm-v24-accent:#ffb84d;
 --sbvm-v24-success:#0f9f84;
 --sbvm-v24-border:#e6e9f1;
 --sbvm-v24-shadow:0 18px 50px rgba(32,45,80,.10);
}
body:not(.wp-admin){
 background:
  radial-gradient(circle at 8% 0%,rgba(109,79,211,.10),transparent 24%),
  radial-gradient(circle at 95% 4%,rgba(49,87,213,.10),transparent 26%),
  var(--sbvm-v24-bg)!important;
 color:var(--sbvm-v24-text)!important;
}
body:not(.wp-admin) .sbvm-shell-head{
 height:72px!important;
 background:rgba(255,255,255,.92)!important;
 color:var(--sbvm-v24-text)!important;
 border-bottom:1px solid rgba(230,233,241,.95)!important;
 box-shadow:0 8px 30px rgba(30,42,74,.07)!important;
 backdrop-filter:blur(18px);
}
body:not(.wp-admin) .sbvm-shell-head:after{display:none!important}
.sbvm-shell-brand strong{font-family:inherit!important;color:#1b2540!important;font-size:18px!important;letter-spacing:-.2px!important}
.sbvm-shell-brand span{background:#eef1ff!important;color:#4055c8!important;border:1px solid #dfe4ff!important}
.sbvm-menu-toggle{background:#f0f3fb!important;color:#33415f!important;box-shadow:none!important;border:1px solid #e1e6f0!important}
.sbvm-shell-side{
 top:72px!important;width:246px!important;
 background:linear-gradient(180deg,#171f35 0%,#202a46 100%)!important;
 padding:18px 12px!important;border-right:0!important;
 box-shadow:12px 0 32px rgba(27,37,64,.08)!important;
}
.sbvm-side-title{font-family:inherit!important;font-size:12px!important;text-transform:uppercase;letter-spacing:1.4px!important;color:#aeb8d1!important;border:0!important;padding:10px 12px 14px!important}
.sbvm-shell-side a{border-radius:13px!important;color:#dfe5f4!important;padding:11px 12px!important;margin:3px 0!important}
.sbvm-shell-side a:hover,.sbvm-shell-side a.active{background:linear-gradient(110deg,rgba(92,113,231,.28),rgba(120,83,213,.25))!important;color:#fff!important;border-color:rgba(255,255,255,.07)!important;transform:none!important}
.sbvm-shell-main{
 margin-left:246px!important;padding:28px!important;
 background:transparent!important;min-height:calc(100vh - 72px)!important;
}

/* Login: elegant two-column school access */
body .sbvm-login-screen-dual{
 min-height:100vh!important;
 grid-template-columns:minmax(0,1.08fr) minmax(390px,.82fr)!important;
 gap:28px!important;padding:28px!important;
 background:
  radial-gradient(circle at 5% 5%,rgba(255,184,77,.22),transparent 22%),
  radial-gradient(circle at 88% 10%,rgba(120,83,213,.22),transparent 28%),
  linear-gradient(135deg,#182447 0%,#253b78 48%,#493f8d 100%)!important;
}
.sbvm-login-left{
 min-height:620px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;
 border-radius:32px!important;padding:clamp(32px,5vw,72px)!important;
 background:
  linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.06)),
  radial-gradient(circle at 85% 18%,rgba(255,255,255,.12),transparent 25%)!important;
 border:1px solid rgba(255,255,255,.18)!important;
 box-shadow:0 30px 80px rgba(11,20,52,.22)!important;
 backdrop-filter:blur(16px)!important;
}
.sbvm-login-left:before{
 content:"SMART SCHOOL ERP"!important;
 width:max-content;margin:0 0 22px!important;padding:8px 13px!important;
 border-radius:999px!important;background:rgba(255,255,255,.12)!important;
 color:#fff!important;border:1px solid rgba(255,255,255,.20)!important;
 letter-spacing:1.4px!important;font-size:10px!important;
}
.sbvm-login-left:after{
 content:""!important;position:absolute!important;right:32px!important;bottom:32px!important;
 width:120px!important;height:120px!important;border-radius:28px!important;
 background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,184,77,.18))!important;
 border:1px solid rgba(255,255,255,.16)!important;transform:rotate(12deg)!important;
}
.sbvm-login-badge{width:max-content!important;background:rgba(255,184,77,.14)!important;color:#ffe4b2!important;border-color:rgba(255,204,125,.28)!important}
.sbvm-login-left h1{font-family:inherit!important;font-size:clamp(40px,5vw,66px)!important;line-height:1.04!important;letter-spacing:-2.3px!important;margin:16px 0 14px!important;max-width:760px!important}
.sbvm-cabin-login-line{font-size:15px!important;color:#d9e1fb!important;max-width:700px!important;line-height:1.8!important}
.sbvm-registration-line{color:#c4cdea!important}
.sbvm-login-tabs-shell{
 align-self:center!important;width:100%!important;max-width:510px!important;
 background:#fff!important;border:1px solid rgba(255,255,255,.55)!important;
 border-radius:28px!important;padding:10px!important;
 box-shadow:0 34px 90px rgba(13,23,57,.28)!important;backdrop-filter:none!important;
}
.sbvm-login-tabs{background:#f1f3f8!important;border:1px solid #e6e9f1!important;border-radius:18px!important;padding:5px!important}
.sbvm-login-tabs button{color:#687187!important;border-radius:13px!important;font-weight:800!important}
.sbvm-login-tabs button.active{background:#fff!important;color:#26365e!important;box-shadow:0 5px 18px rgba(34,47,80,.10)!important}
.sbvm-login-card{background:#fff!important;border:0!important;box-shadow:none!important;border-radius:22px!important;padding:28px!important}
.sbvm-login-card h2{font-family:inherit!important;font-size:27px!important;letter-spacing:-.7px!important;color:#18233d!important}
.sbvm-login-card h2:before{background:linear-gradient(135deg,#edf0ff,#e9e4ff)!important;color:#4c55bf!important;box-shadow:none!important}
.sbvm-login-subtitle{color:#747d91!important;line-height:1.65!important}
.sbvm-login-card label{color:#37425a!important;font-weight:800!important}
.sbvm-login-card input[type=text],.sbvm-login-card input[type=password],.sbvm-login-card input[type=number],.sbvm-login-card select{
 min-height:50px!important;background:#f7f8fb!important;border:1px solid #e3e7ef!important;border-radius:14px!important;padding:0 15px!important;
}
.sbvm-login-card input:focus,.sbvm-login-card select:focus{background:#fff!important;border-color:#6b72dc!important;box-shadow:0 0 0 4px rgba(86,97,208,.10)!important}
.sbvm-login-btn{min-height:50px!important;background:linear-gradient(115deg,#3157d5,#694fd3)!important;border-radius:14px!important;box-shadow:0 13px 28px rgba(73,74,190,.22)!important}
.sbvm-login-btn:hover{transform:translateY(-1px)!important;box-shadow:0 16px 34px rgba(73,74,190,.28)!important}

/* Dashboard hero */
.sbvm-page-hero,.sbvm-v2-hero{
 position:relative!important;overflow:hidden!important;border:0!important;border-radius:28px!important;
 background:
  radial-gradient(circle at 92% 8%,rgba(255,255,255,.18),transparent 23%),
  radial-gradient(circle at 72% 100%,rgba(255,184,77,.22),transparent 30%),
  linear-gradient(120deg,#3157d5 0%,#4557c8 48%,#694fd3 100%)!important;
 box-shadow:0 24px 55px rgba(66,77,180,.20)!important;
}
.sbvm-v2-hero{padding:34px!important;grid-template-columns:minmax(0,1fr) 260px!important;gap:26px!important}
.sbvm-v2-hero:after{content:"";position:absolute;right:-70px;top:-70px;width:230px;height:230px;border:42px solid rgba(255,255,255,.08);border-radius:50%}
.sbvm-v2-hero-copy{position:relative;z-index:2}
.sbvm-kicker{display:inline-flex!important;padding:7px 12px!important;border-radius:999px!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.18)!important;font-size:11px!important;letter-spacing:.8px!important}
.sbvm-v2-hero h1{font-family:inherit!important;font-size:clamp(30px,4vw,48px)!important;letter-spacing:-1.6px!important;line-height:1.08!important}
.sbvm-v2-user-line span{background:rgba(255,255,255,.11)!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:999px!important;padding:7px 11px!important}
.sbvm-v2-live-card{position:relative;z-index:2;background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:22px!important;backdrop-filter:blur(10px)!important;box-shadow:none!important}
.sbvm-v2-live-card strong{font-size:42px!important;letter-spacing:-2px!important}

/* Statistics */
.sbvm-home-stats{gap:16px!important;margin:22px 0 28px!important}
.sbvm-home-stats>div{
 min-height:112px!important;padding:20px!important;border:1px solid var(--sbvm-v24-border)!important;border-image:none!important;
 border-radius:20px!important;background:#fff!important;box-shadow:0 12px 34px rgba(34,48,80,.07)!important;
 transition:.2s ease!important;
}
.sbvm-home-stats>div:hover{transform:translateY(-3px)!important;box-shadow:0 18px 40px rgba(34,48,80,.11)!important}
.sbvm-home-stats>div:before{content:"";position:absolute;left:20px;top:16px;width:36px;height:5px;border-radius:999px;background:linear-gradient(90deg,#3157d5,#694fd3)}
.sbvm-home-stats b{font-size:27px!important;color:#1b2640!important;margin-top:12px!important}
.sbvm-home-stats span{color:#747d90!important;font-weight:700!important}

/* Quick access */
.sbvm-section-head{margin-top:8px!important}
.sbvm-section-head h2{font-size:25px!important;letter-spacing:-.6px!important;color:#1d2944!important}
.sbvm-eyebrow{color:#5e62c7!important;font-size:11px!important;letter-spacing:1.1px!important}
.sbvm-v2-quick-grid{gap:16px!important}
.sbvm-v2-quick-grid a{
 min-height:142px!important;padding:21px!important;border-radius:20px!important;
 background:#fff!important;border:1px solid var(--sbvm-v24-border)!important;
 box-shadow:0 10px 30px rgba(34,48,80,.06)!important;
}
.sbvm-v2-quick-grid a:after{display:none!important}
.sbvm-v2-quick-grid a:hover{transform:translateY(-4px)!important;border-color:#d6daf0!important;box-shadow:0 18px 42px rgba(34,48,80,.11)!important}
.sbvm-v2-quick-grid a>span{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#eef1ff,#f5edff);font-size:24px!important}
.sbvm-v2-quick-grid b{font-size:16px!important;color:#202c48!important}
.sbvm-v2-quick-grid small{color:#7b8396!important}

/* Cabins */
.sbvm-cabin-grid{gap:18px!important;margin:20px 0 26px!important}
.sbvm-cabin-card{
 min-height:180px!important;padding:26px!important;border-radius:24px!important;
 background:#fff!important;border:1px solid var(--sbvm-v24-border)!important;
 box-shadow:0 14px 38px rgba(33,47,79,.07)!important;
}
.sbvm-cabin-card:before{left:0!important;top:0!important;bottom:auto!important;width:100%!important;height:6px!important;background:linear-gradient(90deg,#3157d5,#694fd3)!important}
.sbvm-cabin-card:after{right:20px!important;top:18px!important;font-size:64px!important;opacity:.06!important}
.sbvm-cabin-card:nth-child(2):before{background:linear-gradient(90deg,#0f9f84,#3157d5)!important}
.sbvm-cabin-card h3{font-family:inherit!important;font-size:23px!important;color:#1d2944!important;letter-spacing:-.4px!important;max-width:80%!important}
.sbvm-cabin-card span{color:#5c63bd!important;font-size:10px!important;letter-spacing:1.2px!important}
.sbvm-cabin-card p{color:#7a8295!important}
.sbvm-cabin-card b{background:#f2f4ff!important;color:#4550b4!important;border:1px solid #e0e4ff!important;border-radius:999px!important}

/* Class cards */
.sbvm-class-card-grid{gap:15px!important}
.sbvm-class-card{
 min-height:210px!important;padding:20px!important;border-radius:21px!important;
 background:#fff!important;border:1px solid var(--sbvm-v24-border)!important;
 box-shadow:0 10px 30px rgba(34,48,80,.06)!important;
}
.sbvm-class-card:after{display:none!important}
.sbvm-class-card:hover{transform:translateY(-4px)!important;border-color:#d7dbef!important;box-shadow:0 18px 40px rgba(34,48,80,.11)!important}
.sbvm-class-icon{width:50px!important;height:50px!important;border-radius:15px!important;background:linear-gradient(145deg,#edf1ff,#f1eaff)!important;box-shadow:none!important}
.sbvm-class-name{font-family:inherit!important;font-size:20px!important;color:#202c47!important;letter-spacing:-.3px!important}
.sbvm-class-cabin{background:#f6f7fb!important;border:1px solid #e7e9f0!important;color:#70798d!important}
.sbvm-class-meta{border-top:1px solid #eef0f5!important;padding-top:12px!important;color:#687287!important}
.sbvm-class-open{color:#4d57c5!important}

/* General cards, forms and tables */
.sbvm-panel,.sbvm-card,.sbvm-home-card{
 border:1px solid var(--sbvm-v24-border)!important;background:#fff!important;border-radius:20px!important;
 box-shadow:0 12px 34px rgba(34,48,80,.07)!important;
}
.sbvm input,.sbvm select,.sbvm textarea{background:#fafbfc!important;border:1px solid #e1e5ed!important;border-radius:12px!important}
.sbvm input:focus,.sbvm select:focus,.sbvm textarea:focus{background:#fff!important;border-color:#6b72dc!important;box-shadow:0 0 0 4px rgba(86,97,208,.09)!important}
.sbvm .button-primary,.sbvm-btn{background:linear-gradient(115deg,#3157d5,#694fd3)!important;box-shadow:0 9px 20px rgba(73,74,190,.18)!important}
.sbvm-table-scroll{border:1px solid var(--sbvm-v24-border)!important;border-radius:18px!important;box-shadow:0 10px 28px rgba(34,48,80,.06)!important}
.sbvm table.widefat thead th{background:#f3f5f9!important;color:#35415b!important;border-bottom:1px solid #e3e7ee!important;text-transform:uppercase!important;font-size:11px!important;letter-spacing:.6px!important}
.sbvm table.widefat tbody tr:nth-child(even){background:#fbfcfe!important}
.sbvm table.widefat tbody tr:hover{background:#f7f8fd!important}

@media(max-width:1100px){
 body .sbvm-login-screen-dual{grid-template-columns:1fr!important}
 .sbvm-login-left{min-height:380px!important}
 .sbvm-login-tabs-shell{max-width:680px!important}
 .sbvm-v2-hero{grid-template-columns:1fr!important}
}
@media(max-width:900px){
 body:not(.wp-admin) .sbvm-shell-head{height:64px!important}
 .sbvm-shell-spacer{height:64px!important}
 .sbvm-shell-side{top:64px!important}
 .sbvm-shell-main{margin-left:0!important;padding:16px 12px 86px!important}
 body .sbvm-login-screen-dual{padding:14px!important}
 .sbvm-login-left{min-height:340px!important;border-radius:25px!important}
}
@media(max-width:620px){
 .sbvm-login-left{padding:26px!important;min-height:320px!important}
 .sbvm-login-left h1{font-size:34px!important;letter-spacing:-1.2px!important}
 .sbvm-login-left:after{width:74px!important;height:74px!important;right:18px!important;bottom:18px!important}
 .sbvm-login-tabs-shell{border-radius:22px!important;padding:7px!important}
 .sbvm-login-card{padding:20px!important}
 .sbvm-v2-hero{padding:23px!important;border-radius:23px!important}
 .sbvm-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .sbvm-home-stats>div{min-height:104px!important;padding:16px!important}
 .sbvm-cabin-card{min-height:165px!important;padding:22px!important}
 .sbvm-cabin-card h3{font-size:20px!important;max-width:86%!important}
 .sbvm-class-card{min-height:190px!important}
}

/* =========================================================
   SBVM ERP v3.0 — PREMIUM SCHOOL COMMAND CENTER
   ========================================================= */
:root{
 --sbvm-ink:#0b1736;--sbvm-navy:#101c3d;--sbvm-blue:#2d5bff;
 --sbvm-indigo:#5d46d8;--sbvm-gold:#d89a1b;--sbvm-green:#0a9a72;
 --sbvm-bg:#f3f6fc;--sbvm-card:#fff;--sbvm-line:#e5eaf4;
 --sbvm-muted:#70809f;--sbvm-shadow:0 18px 48px rgba(31,45,78,.10)
}
body:not(.wp-admin){background:linear-gradient(135deg,#f8faff 0%,#eef3fb 48%,#f8f6ff 100%)!important;color:var(--sbvm-ink)!important}
body:not(.wp-admin) .sbvm-shell-head{background:rgba(255,255,255,.94)!important;border-bottom:1px solid var(--sbvm-line)!important;box-shadow:0 8px 30px rgba(23,34,64,.06)!important;backdrop-filter:blur(18px)}
body:not(.wp-admin) .sbvm-shell-side{background:linear-gradient(180deg,#101b3a 0%,#14254d 58%,#0b1531 100%)!important;border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:16px 0 44px rgba(13,23,50,.12)!important}
body:not(.wp-admin) .sbvm-shell-side:before{content:"SCHOOL COMMAND CENTER";display:block;margin:20px 18px 12px;color:#91a5d8;font-size:10px;letter-spacing:1.8px;font-weight:900}
body:not(.wp-admin) .sbvm-shell-side a{margin:5px 10px!important;border-radius:12px!important;color:#dbe5ff!important;font-weight:750!important;transition:.22s ease!important;border:1px solid transparent!important}
body:not(.wp-admin) .sbvm-shell-side a:hover,body:not(.wp-admin) .sbvm-shell-side a.active{background:linear-gradient(135deg,rgba(56,96,255,.34),rgba(110,80,222,.28))!important;border-color:rgba(166,185,255,.18)!important;transform:translateX(3px)!important;color:#fff!important}
body:not(.wp-admin) .sbvm-shell-main{max-width:1420px!important;padding-top:32px!important}

/* Hero rebuilt as executive dashboard */
.sbvm-v2-hero{position:relative;overflow:hidden!important;background:linear-gradient(125deg,#112653 0%,#244fc8 52%,#6545d4 100%)!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:28px!important;box-shadow:0 28px 70px rgba(42,68,157,.23)!important;padding:42px!important;min-height:250px!important}
.sbvm-v2-hero:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-110px;top:-210px;background:radial-gradient(circle,rgba(255,255,255,.24),rgba(255,255,255,0) 68%)}
.sbvm-v2-hero:after{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:linear-gradient(90deg,#ffd773,#63e6be,#86a8ff)}
.sbvm-v2-hero h1{color:#fff!important;font-size:clamp(34px,4vw,58px)!important;line-height:1.02!important;max-width:760px!important;letter-spacing:-2px!important;text-shadow:0 4px 20px rgba(0,0,0,.15)}
.sbvm-v2-hero p{color:#dce7ff!important;font-size:15px!important;max-width:760px!important}
.sbvm-v2-hero .button{border:0!important;border-radius:12px!important;background:#fff!important;color:#193675!important;font-weight:850!important;box-shadow:0 10px 24px rgba(0,0,0,.14)!important;padding:11px 17px!important}
.sbvm-v2-hero .button:hover{transform:translateY(-2px)!important;box-shadow:0 15px 30px rgba(0,0,0,.18)!important}

/* KPI cards */
.sbvm-home-stats{gap:16px!important;margin-top:20px!important}
.sbvm-home-stats>div,.sbvm-card{background:rgba(255,255,255,.92)!important;border:1px solid rgba(224,231,245,.94)!important;border-radius:20px!important;box-shadow:0 12px 34px rgba(37,50,84,.07)!important;position:relative;overflow:hidden;transition:.25s ease!important}
.sbvm-home-stats>div:before,.sbvm-card:before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:linear-gradient(180deg,var(--sbvm-blue),var(--sbvm-indigo))}
.sbvm-home-stats>div:hover,.sbvm-card:hover{transform:translateY(-5px)!important;box-shadow:0 20px 46px rgba(37,50,84,.12)!important;border-color:#ced8f1!important}
.sbvm-home-stats strong,.sbvm-home-stats b{font-size:30px!important;color:#101f43!important;letter-spacing:-1px!important}

/* Workspaces and quick actions */
.sbvm-panel{background:rgba(255,255,255,.94)!important;border:1px solid var(--sbvm-line)!important;border-radius:24px!important;box-shadow:var(--sbvm-shadow)!important}
.sbvm-workspace-grid,.sbvm-module-grid{gap:16px!important}
.sbvm-workspace-grid>a,.sbvm-module-grid>a{border:1px solid var(--sbvm-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:0 10px 30px rgba(28,43,77,.06)!important;min-height:142px!important;transition:.25s ease!important}
.sbvm-workspace-grid>a:hover,.sbvm-module-grid>a:hover{transform:translateY(-6px)!important;border-color:#bfcdf1!important;box-shadow:0 22px 44px rgba(38,59,113,.12)!important}

/* School cabin selector */
.sbvm-cabin-grid{gap:20px!important}
.sbvm-cabin-card{border:1px solid var(--sbvm-line)!important;border-radius:24px!important;background:linear-gradient(150deg,#fff 0%,#f7f9ff 100%)!important;box-shadow:0 14px 38px rgba(32,49,90,.08)!important;min-height:190px!important;position:relative;overflow:hidden!important}
.sbvm-cabin-card:before{content:"";position:absolute;inset:0 auto 0 0;width:7px;background:linear-gradient(180deg,#2d5bff,#7452dd)}
.sbvm-cabin-card:nth-child(2):before{background:linear-gradient(180deg,#0aa57c,#d5a133)}
.sbvm-cabin-card:hover{transform:translateY(-6px)!important;box-shadow:0 24px 52px rgba(32,49,90,.13)!important}
.sbvm-cabin-card h3{font-size:24px!important;line-height:1.15!important;color:#101f43!important}

/* Premium class cards */
.sbvm-class-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
.sbvm-class-card{min-height:235px!important;padding:22px!important;border-radius:22px!important;background:linear-gradient(155deg,#fff 0%,#f8faff 100%)!important;border:1px solid var(--sbvm-line)!important;box-shadow:0 12px 34px rgba(29,43,78,.07)!important;position:relative!important;overflow:hidden!important;transition:.25s ease!important}
.sbvm-class-card:before{content:"";position:absolute!important;left:0!important;right:0!important;top:0!important;height:5px!important;background:linear-gradient(90deg,#2d5bff,#6a48db,#dda530)!important}
.sbvm-class-card:after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;right:-28px;bottom:-34px;background:rgba(52,91,255,.06)}
.sbvm-class-card:hover{transform:translateY(-8px)!important;box-shadow:0 24px 52px rgba(30,47,93,.14)!important;border-color:#c7d3ef!important}
.sbvm-class-card h3{font-size:22px!important;color:#0e1c3d!important;margin-top:14px!important}
.sbvm-class-card .button,.sbvm-class-card a:last-child{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-top:auto!important;background:linear-gradient(135deg,#2859ef,#6446d5)!important;color:#fff!important;border:0!important;border-radius:11px!important;padding:10px 14px!important;text-decoration:none!important;font-weight:850!important;box-shadow:0 9px 22px rgba(54,78,190,.22)!important}

/* Forms and tables */
.sbvm input:not([type=checkbox]):not([type=radio]),.sbvm select,.sbvm textarea{border:1px solid #dce3f1!important;border-radius:12px!important;background:#fbfcff!important;min-height:46px!important;box-shadow:0 2px 0 rgba(14,28,61,.02)!important;transition:.2s ease!important}
.sbvm input:focus,.sbvm select:focus,.sbvm textarea:focus{border-color:#5274e8!important;background:#fff!important;box-shadow:0 0 0 4px rgba(45,91,255,.11)!important;outline:0!important}
.sbvm .button-primary,.sbvm button[type=submit]{background:linear-gradient(135deg,#2859ef,#6245d3)!important;border:0!important;border-radius:12px!important;box-shadow:0 10px 24px rgba(49,75,190,.22)!important;font-weight:850!important}
.sbvm table{border-radius:18px!important;overflow:hidden!important;border:1px solid var(--sbvm-line)!important;box-shadow:0 12px 34px rgba(29,43,78,.06)!important}
.sbvm table thead th{background:#eef3ff!important;color:#15264e!important;text-transform:uppercase!important;font-size:11px!important;letter-spacing:.6px!important}
.sbvm table tbody tr:hover{background:#f7f9ff!important}

/* Login screen */
.sbvm-login-screen-dual{background:linear-gradient(135deg,#071630,#112c5b 58%,#0c4350)!important}
.sbvm-login-left{background:linear-gradient(145deg,rgba(27,58,112,.96),rgba(66,56,153,.92))!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 30px 80px rgba(0,0,0,.26)!important}
.sbvm-login-card{background:rgba(255,255,255,.98)!important;border-radius:25px!important;box-shadow:0 30px 80px rgba(0,0,0,.22)!important}
.sbvm-login-tabs-shell{background:rgba(255,255,255,.13)!important;border:1px solid rgba(255,255,255,.16)!important;backdrop-filter:blur(14px)!important}
.sbvm-login-card input[type=date]{appearance:auto!important;color-scheme:light!important}

@media(max-width:1180px){.sbvm-class-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:820px){.sbvm-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-v2-hero{padding:28px!important}.sbvm-v2-hero h1{font-size:36px!important;letter-spacing:-1px!important}}
@media(max-width:520px){.sbvm-class-grid{grid-template-columns:1fr!important}.sbvm-class-card{min-height:200px!important}.sbvm-home-stats{grid-template-columns:1fr 1fr!important}.sbvm-v2-hero{border-radius:22px!important;padding:23px!important}.sbvm-v2-hero h1{font-size:31px!important}}

/* =========================================================
   SBVM ERP v4.0 — Enterprise frontend correction layer
   ========================================================= */
:root{
  --sbvm-navy:#0b1739;--sbvm-navy-2:#122653;--sbvm-blue:#3156e8;
  --sbvm-violet:#6b4ce6;--sbvm-gold:#d7a62a;--sbvm-ink:#101b38;
  --sbvm-muted:#66738f;--sbvm-line:#dfe6f2;--sbvm-bg:#f3f6fc;
  --sbvm-card:#fff;--sbvm-success:#0f9f6e;--sbvm-danger:#e5484d;
}
body:has(.sbvm-front),body:has(.sbvm-login-screen){background:var(--sbvm-bg)!important;color:var(--sbvm-ink)!important}
.sbvm-front{max-width:1240px!important;margin:0 auto!important;padding:42px 28px 72px!important;min-height:calc(100vh - 92px)}
.sbvm-front h1,.sbvm-front h2,.sbvm-front h3{letter-spacing:-.035em;color:var(--sbvm-ink)}
.sbvm-front>h1,.sbvm-front>h2{font-size:clamp(30px,4vw,48px)!important;margin:0 0 24px!important}
.sbvm-panel,.sbvm-front .sbvm-panel{border:1px solid rgba(31,53,102,.09)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 18px 50px rgba(19,39,84,.08)!important;padding:28px!important;margin-bottom:22px!important}
.sbvm-row{gap:18px!important}.sbvm-row label{min-width:0!important}
.sbvm input,.sbvm select,.sbvm textarea{border:1px solid #d9e1ef!important;border-radius:13px!important;background:#fbfcff!important;min-height:48px!important;padding:12px 14px!important;box-shadow:none!important}
.sbvm textarea{min-height:100px!important}
.sbvm input:focus,.sbvm select:focus,.sbvm textarea:focus{outline:3px solid rgba(49,86,232,.12)!important;border-color:var(--sbvm-blue)!important}
.sbvm .button,.sbvm button.button{border:0!important;border-radius:12px!important;min-height:44px!important;padding:11px 18px!important;font-weight:800!important;text-decoration:none!important;box-shadow:none!important}
.sbvm .button-primary,.sbvm-btn{background:linear-gradient(135deg,var(--sbvm-blue),var(--sbvm-violet))!important;color:#fff!important;box-shadow:0 10px 24px rgba(66,78,220,.22)!important}
.sbvm-table-scroll,.sbvm-table-wrap{border:1px solid var(--sbvm-line)!important;border-radius:18px!important;overflow:auto!important;background:#fff!important}
.sbvm table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;min-width:760px!important}
.sbvm table th{background:#f3f6fc!important;color:#46516c!important;text-transform:uppercase!important;font-size:11px!important;letter-spacing:.07em!important;padding:14px!important;white-space:nowrap!important}
.sbvm table td{padding:15px 14px!important;border-top:1px solid #edf1f7!important;vertical-align:middle!important}
.sbvm-filter{display:grid!important;grid-template-columns:1fr auto!important;gap:12px!important;background:#fff!important;padding:14px!important;border-radius:18px!important;border:1px solid var(--sbvm-line)!important;margin:18px 0!important}
.sbvm-page-hero{border-radius:26px!important;padding:34px!important;background:linear-gradient(125deg,#0d234c 0%,#3156e8 58%,#7454e9 100%)!important;color:#fff!important;box-shadow:0 22px 55px rgba(34,54,121,.2)!important;margin-bottom:24px!important;overflow:hidden!important;position:relative!important}
.sbvm-page-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-80px;top:-110px;background:rgba(255,255,255,.1)}
.sbvm-page-hero h1,.sbvm-page-hero p{color:#fff!important;position:relative;z-index:1}.sbvm-page-hero h1{font-size:clamp(30px,5vw,52px)!important;max-width:850px!important}
.sbvm-section-title{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 16px!important;border-radius:14px!important;background:linear-gradient(90deg,#edf3ff,#eefcf9)!important;border:1px solid #d8e7fb!important;font-weight:900!important;color:#1b2b54!important;margin:18px 0 14px!important}
/* Sidebar/header alignment */
.sbvm-frontend-header{height:82px!important;border-bottom:1px solid #e5eaf3!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(16px)!important}
.sbvm-frontend-sidebar{top:82px!important;width:270px!important;background:linear-gradient(180deg,#0b1739,#102957)!important;border-right:0!important;box-shadow:12px 0 35px rgba(19,32,70,.1)!important}
body.sbvm-sidebar-open .sbvm-front,body:has(.sbvm-frontend-sidebar) .site-main{transition:margin .25s ease}
.sbvm-sidebar-nav a{border-radius:12px!important;margin:4px 10px!important;padding:13px 15px!important;color:#e8eeff!important}.sbvm-sidebar-nav a:hover,.sbvm-sidebar-nav a.active{background:rgba(255,255,255,.11)!important;color:#fff!important;transform:translateX(3px)}
/* Dashboard */
.sbvm-dashboard-hero{min-height:300px!important;border-radius:28px!important;background:linear-gradient(125deg,#0b1739,#2451cf 55%,#7754e8)!important;box-shadow:0 25px 65px rgba(31,51,128,.25)!important;padding:38px!important}
.sbvm-dashboard-hero h1{font-size:clamp(38px,5vw,64px)!important;line-height:1.03!important;max-width:720px!important}
.sbvm-cards{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}.sbvm-card,.sbvm-cards>div{border:1px solid rgba(31,53,102,.08)!important;border-radius:20px!important;background:#fff!important;box-shadow:0 12px 35px rgba(23,43,90,.08)!important;padding:22px!important;min-width:0!important}
.sbvm-card b,.sbvm-cards>div b{font-size:12px!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:var(--sbvm-muted)!important}.sbvm-card span,.sbvm-cards>div span{font-size:28px!important;font-weight:900!important;color:var(--sbvm-ink)!important}
.sbvm-workspace-grid,.sbvm-class-action-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.sbvm-workspace-card,.sbvm-class-action{border:1px solid rgba(31,53,102,.08)!important;border-radius:20px!important;background:#fff!important;padding:22px!important;box-shadow:0 12px 34px rgba(25,44,90,.07)!important;transition:.2s ease!important}.sbvm-workspace-card:hover,.sbvm-class-action:hover{transform:translateY(-4px)!important;box-shadow:0 20px 45px rgba(25,44,90,.13)!important}
.sbvm-cabin-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}.sbvm-cabin-card{border-radius:22px!important;min-height:170px!important;padding:26px!important;background:linear-gradient(145deg,#fff,#f5f7ff)!important;border:1px solid #e0e6f3!important;box-shadow:0 13px 35px rgba(25,44,90,.08)!important}.sbvm-cabin-card h3{font-size:25px!important}.sbvm-cabin-card b{display:inline-flex!important;margin-top:10px!important;padding:8px 12px!important;border-radius:999px!important;background:#eef1ff!important;color:#3c4bcc!important}
.sbvm-class-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}.sbvm-class-card{min-height:200px!important;border-radius:20px!important;border:1px solid #e1e7f2!important;background:#fff!important;padding:20px!important;box-shadow:0 12px 32px rgba(23,42,85,.07)!important;transition:.2s ease!important}.sbvm-class-card:hover{transform:translateY(-5px)!important;box-shadow:0 20px 45px rgba(23,42,85,.13)!important}.sbvm-class-card h3{font-size:22px!important}.sbvm-class-card a{display:inline-flex!important;margin-top:auto!important;color:var(--sbvm-blue)!important;font-weight:900!important}
/* Roll map: fix joined labels such as Class 20 Students and keep page compact */
.sbvm-class-roll-group>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:14px 16px!important;border-radius:13px!important;background:#fff!important;border:1px solid #e0e7f2!important;margin-bottom:9px!important;cursor:pointer!important}.sbvm-class-roll-group>summary b,.sbvm-class-roll-group>summary span{display:inline-block!important}.sbvm-class-roll-group>summary span{margin-left:auto!important;color:#68748d!important}.sbvm-class-roll-group:not([open]) .roll-grid{display:none!important}.roll-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;max-height:440px!important;overflow:auto!important;padding:8px 3px 18px!important}.roll{border-radius:15px!important;background:#fff!important;border:1px solid #e1e7f1!important;border-top:4px solid #27bf6b!important;padding:14px!important;min-height:88px!important}.roll.busy{border-top-color:#4f63e9!important}.roll.due{border-top-color:#ee5a5f!important}.roll small{display:block!important;margin-top:8px!important;padding:7px 9px!important;border-radius:9px!important;background:#f4f7fb!important}
/* Notice empty state */
.sbvm-front:has(>h2:first-child) .sbvm-notice-list:empty,.sbvm-notice-empty{min-height:170px!important;display:grid!important;place-items:center!important;border:1px dashed #ccd6e8!important;border-radius:20px!important;background:#fff!important;color:#65728c!important}
/* Login */
.sbvm-login-screen{min-height:100vh!important;background:radial-gradient(circle at 10% 0%,#134e55 0,#0d2a47 34%,#081a35 100%)!important;padding:42px!important}.sbvm-login-screen-dual{display:grid!important;grid-template-columns:minmax(360px,1fr) minmax(420px,560px)!important;align-items:center!important;gap:55px!important}.sbvm-login-left{padding:40px!important}.sbvm-login-left h1{font-size:clamp(46px,6vw,80px)!important;color:#fff!important;line-height:1!important;max-width:780px!important}.sbvm-login-left p{color:#cbd9ee!important;font-size:18px!important}.sbvm-login-tabs-shell{border-radius:28px!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.24)!important;padding:12px!important;box-shadow:0 30px 80px rgba(0,0,0,.25)!important;backdrop-filter:blur(16px)!important}.sbvm-login-tabs{padding:6px!important;border-radius:18px!important;background:rgba(9,26,55,.45)!important}.sbvm-login-tabs button{min-height:52px!important;border-radius:13px!important;font-weight:900!important}.sbvm-login-card{border-radius:22px!important;background:#fff!important;padding:30px!important}.sbvm-student-dashboard{max-width:1180px!important;margin:0 auto!important}.sbvm-student-compact .sbvm-student-dashboard{display:none!important}
/* Student dashboard should never visually bleed into login tab */
.sbvm-login-tab-panel .sbvm-student-dashboard{display:none!important}
/* Language switch should not overlap content */
.sbvm-language-switch{right:22px!important;bottom:22px!important;z-index:9999!important;box-shadow:0 12px 30px rgba(18,38,78,.16)!important}
/* Admission: reduce endless scrolling */
.sbvm-admission-page form.sbvm-panel{display:grid!important;grid-template-columns:1fr!important}.sbvm-admission-page .sbvm-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}.sbvm-admission-page .sbvm-roll-live{max-height:560px!important;overflow:auto!important;border:1px solid #e1e7f2!important;border-radius:18px!important;padding:14px!important;background:#f8faff!important}
/* Attendance */
.sbvm-front:has(.sbvm-attendance-register),.sbvm-front .sbvm-attendance-register{max-width:1100px!important}.sbvm-attendance-register .sbvm-panel{padding:32px!important}
/* Reports */
.sbvm-report-cards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.sbvm-report-card{border-radius:18px!important;background:#fff!important;border:1px solid #e0e7f2!important;padding:22px!important;box-shadow:0 12px 30px rgba(23,42,85,.07)!important}
/* Footer */
.sbvm-frontend-footer{position:static!important;margin-top:40px!important;border-top:1px solid #e2e8f2!important;background:transparent!important;padding:20px!important;font-size:12px!important}
@media(max-width:1100px){.sbvm-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-class-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.sbvm-workspace-grid,.sbvm-class-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-login-screen-dual{grid-template-columns:1fr!important}.sbvm-login-left{display:none!important}}
@media(max-width:782px){.sbvm-front{padding:24px 14px 72px!important}.sbvm-frontend-header{height:68px!important}.sbvm-frontend-sidebar{top:68px!important;width:min(86vw,310px)!important}.sbvm-cards,.sbvm-cabin-grid,.sbvm-workspace-grid,.sbvm-class-action-grid,.sbvm-report-cards{grid-template-columns:1fr!important}.sbvm-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-admission-page .sbvm-row{grid-template-columns:1fr!important}.roll-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sbvm-filter{grid-template-columns:1fr!important}.sbvm-login-screen{padding:16px!important}.sbvm-login-tabs-shell{padding:8px!important}.sbvm-language-switch{right:12px!important;bottom:12px!important}.sbvm-dashboard-hero{padding:25px!important;min-height:250px!important}}
@media(max-width:480px){.sbvm-class-grid,.roll-grid{grid-template-columns:1fr!important}.sbvm-panel,.sbvm-front .sbvm-panel{padding:18px!important;border-radius:18px!important}.sbvm-page-hero{padding:24px!important}.sbvm-login-tabs{display:grid!important;grid-template-columns:1fr 1fr!important}.sbvm-login-tabs button{font-size:12px!important}}
