:root{
  --pink:#2f6bff;
  --pink-dark:#1e4fd6;
  --purple:#5b7cff;
  --yellow:#ffc94a;
  --dark:#1a1a2e;
  --text-muted:#6b7280;
  --bg-soft:#f2f6ff;
  --green:#22c55e;
  --radius:14px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;height:100%;}
body{
  font-family:'Poppins',Arial,sans-serif;
  background:#fff;
  color:var(--dark);
  overflow-x:hidden;
  max-width:100vw;
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
}
/* Sticky footer: whatever content sits above (any wrapper div, card, dashboard
   layout, etc.) is pushed up, and the shared footer always lands at the very
   bottom of the screen — never floating mid-page on short-content pages. */
.site-footer-full{margin-top:auto!important;flex-shrink:0;width:100%;}

a{text-decoration:none;color:inherit;}
img{max-width:100%;}
.container{max-width:1100px;margin:0 auto;padding:0 20px;}

/* NAVBAR */
.navbar{
  display:flex;justify-content:space-between;align-items:center;
  padding:16px 20px;border-bottom:1px solid #f0f0f0;
  flex-wrap:wrap;gap:10px;
}
@media(max-width:480px){
  .navbar{padding:12px 16px;}
  .navbar .logo{font-size:16px;}
}
.navbar .logo{display:flex;align-items:center;gap:8px;font-weight:700;font-size:20px;}
.navbar .logo span.icon{
  background:var(--pink);color:#fff;width:34px;height:34px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:18px;
}
.navbar .logo img.icon,.sidebar .logo img.icon{
  width:34px;height:34px;border-radius:10px;object-fit:contain;vertical-align:middle;
}
.sf-brand img{vertical-align:middle;}
.btn-outline{
  border:2px solid var(--dark);padding:8px 18px;border-radius:30px;font-weight:600;
  background:#fff;cursor:pointer;
}

/* HERO */
.hero{text-align:center;padding:60px 20px 30px;background:var(--bg-soft);}
.hero h1{font-size:36px;font-weight:700;margin-bottom:8px;}
.hero h1 .highlight{background:var(--yellow);padding:2px 10px;border-radius:6px;}
.hero p{color:var(--text-muted);margin-bottom:30px;font-size:15px;}
@media(max-width:480px){
  .hero{padding:40px 16px 24px;}
  .hero h1{font-size:26px;}
}

/* PRICING */
.pricing-section{padding:50px 20px;text-align:center;}
.pricing-section h2{font-size:26px;margin-bottom:30px;}
@media(max-width:480px){
  .pricing-section{padding:34px 14px;}
  .pricing-section h2{font-size:21px;}
}
.pricing-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1000px;margin:0 auto;
}
@media(max-width:850px){.pricing-grid{grid-template-columns:1fr;}}
.plan-card{
  border:2px solid #eee;border-radius:var(--radius);padding:26px 22px;text-align:left;
  position:relative;background:#fff;transition:.2s;
}
.plan-card.popular{border-color:var(--pink);box-shadow:0 10px 30px rgba(47,107,255,.15);}
.plan-card .badge{
  position:absolute;top:-12px;right:20px;background:var(--pink);color:#fff;
  font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;letter-spacing:.5px;
}
.plan-card h3{font-size:17px;margin-bottom:10px;display:flex;align-items:center;gap:6px;}
.plan-card .price{font-size:30px;font-weight:700;color:var(--dark);}
.plan-card .price .old{font-size:14px;color:#aaa;text-decoration:line-through;font-weight:400;margin-right:6px;}
.plan-card .price small{font-size:14px;font-weight:500;color:var(--text-muted);}
.plan-card .sub{font-size:12px;color:var(--text-muted);margin-bottom:16px;}
.plan-card ul{list-style:none;margin-bottom:20px;}
.plan-card ul li{font-size:13.5px;margin-bottom:10px;display:flex;gap:8px;align-items:flex-start;}
.plan-card ul li::before{content:"✅";font-size:12px;}
.btn-block{
  display:block;text-align:center;width:100%;padding:12px;border-radius:30px;
  font-weight:600;border:none;cursor:pointer;font-size:14px;
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;
}
.btn-block:hover{transform:translateY(-2px);filter:brightness(1.06);}
.btn-block:active{transform:translateY(0);}
.btn-dark{background:var(--dark);color:#fff;}
.btn-purple{background:var(--purple);color:#fff;}
.btn-pink{background:linear-gradient(135deg,var(--pink),var(--pink-dark));color:#fff;box-shadow:0 6px 18px rgba(47,107,255,.28);}

.cta-row{display:flex;justify-content:center;gap:14px;margin:30px 0;flex-wrap:wrap;}
.cta-row .btn-pink,.cta-row .btn-outline-pink{padding:12px 26px;border-radius:30px;font-weight:600;}
.btn-outline-pink{border:2px solid var(--dark);background:#fff;}

.agent-banner{
  max-width:900px;margin:20px auto;background:linear-gradient(90deg,#2b2b3d,#3a3a52);
  color:#fff;padding:18px 24px;border-radius:16px;display:flex;align-items:center;gap:16px;
}
.agent-banner .emoji{background:var(--yellow);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;}
.agent-banner b{display:block;}
.agent-banner span{font-size:12.5px;opacity:.85;}
.agent-banner .arrow{margin-left:auto;font-size:20px;}

/* FORM PAGES */
.form-wrap{max-width:640px;margin:40px auto;padding:0 20px;}
.form-wrap h1{font-size:28px;margin-bottom:4px;}
.form-wrap .sub{color:var(--text-muted);font-size:14px;margin-bottom:24px;}
@media(max-width:480px){
  .form-wrap{margin:24px auto;padding:0 14px;}
  .form-wrap h1{font-size:22px;}
}
.card{background:#fff;border:1px solid #eee;border-radius:var(--radius);padding:24px;box-shadow:0 4px 20px rgba(0,0,0,.04);margin-bottom:20px;transition:box-shadow .2s ease;max-width:100%;}
@media(max-width:480px){.card{padding:16px;}}
.card:hover{box-shadow:0 8px 26px rgba(0,0,0,.08);}
.card h2{font-size:16px;display:flex;align-items:center;gap:8px;margin-bottom:18px;}
.step-num{background:var(--dark);color:#fff;width:22px;height:22px;border-radius:50%;font-size:12px;display:flex;align-items:center;justify-content:center;}
.form-group{margin-bottom:16px;}
.form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;}
.form-group input,.form-group select,.form-group textarea{
  width:100%;padding:11px 14px;border:1.5px solid #e5e5e5;border-radius:10px;font-size:14px;font-family:inherit;
}
.form-group input:focus,.form-group select:focus{border-color:var(--pink);outline:none;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media(max-width:600px){.form-row{grid-template-columns:1fr;}}

/* PAYMENT PAGE */
.pay-box{max-width:420px;margin:60px auto;text-align:center;}
.pay-box .icon-circle{
  width:70px;height:70px;background:var(--yellow);border-radius:20px;display:flex;
  align-items:center;justify-content:center;font-size:32px;margin:0 auto 16px;
}
.pay-box h1{font-size:24px;margin-bottom:6px;}
.pay-box .sub{color:var(--text-muted);font-size:13.5px;margin-bottom:20px;}
.setup-fee-box{background:var(--dark);color:#fff;border-radius:14px;padding:20px;margin-bottom:20px;}
.setup-fee-box .amt{font-size:32px;font-weight:700;color:var(--yellow);}
.feature-list{list-style:none;text-align:left;margin-bottom:20px;}
.feature-list li{background:var(--bg-soft);padding:12px 14px;border-radius:10px;margin-bottom:8px;font-size:13.5px;display:flex;gap:8px;align-items:center;}

/* ADMIN LAYOUT */
.admin-wrap{display:flex;min-height:100vh;}
.sidebar{width:230px;background:#1e1b2e;color:#fff;padding:20px 14px;flex-shrink:0;}
.sidebar .logo{display:flex;align-items:center;gap:8px;font-weight:700;margin-bottom:6px;padding:0 6px;}
.sidebar .logo span.icon{background:var(--pink);width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;}
.sidebar .shop-name{font-size:12px;color:#9d9ab5;padding:0 6px;margin-bottom:20px;}
.sidebar nav a{
  display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:10px;
  color:#c9c6dd;font-size:14px;margin-bottom:4px;
}
.sidebar nav a.active,.sidebar nav a:hover{background:var(--pink);color:#fff;}
.sidebar nav a .new-tag{background:var(--pink);color:#fff;font-size:9px;padding:2px 6px;border-radius:10px;margin-left:auto;}
.sidebar .logout-btn{margin-top:20px;display:block;text-align:center;background:#2a2740;padding:10px;border-radius:10px;color:#fff;font-size:13px;}

.admin-main{flex:1;background:#fafafa;padding:26px 30px;min-width:0;}
.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:10px;flex-wrap:wrap;}
.admin-top h1{font-size:22px;}

/* ---- Mobile top bar (hidden on desktop) ---- */
.admin-topbar{
  display:none;align-items:center;gap:12px;
  background:#1e1b2e;color:#fff;padding:14px 16px;
  position:sticky;top:0;z-index:120;
}
.admin-topbar .hamburger-btn{
  background:rgba(255,255,255,.08);border:none;color:#fff;
  width:38px;height:38px;border-radius:9px;font-size:18px;
  display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;
}
.admin-topbar .logo{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;}
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(10,8,20,.55);z-index:190;}
.sidebar-overlay.active{display:block;}
.sidebar .sidebar-close{display:none;}

/* ---- Off-canvas sidebar on tablet/mobile ---- */
@media(max-width:880px){
  .admin-topbar{display:flex;}
  .admin-wrap{display:block;}
  .sidebar{
    position:fixed;top:0;left:0;height:100dvh;width:250px;max-width:80vw;
    z-index:200;transform:translateX(-100%);transition:transform .25s ease;
    overflow-y:auto;
  }
  .sidebar.open{transform:translateX(0);box-shadow:0 0 40px rgba(0,0,0,.35);}
  .sidebar .sidebar-close{
    display:flex;align-items:center;justify-content:center;
    width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.08);
    color:#fff;border:none;font-size:16px;cursor:pointer;margin-left:auto;
  }
  .sidebar .logo{margin-bottom:0;}
  .sidebar .logo-row{display:flex;align-items:center;margin-bottom:6px;}
  .admin-main{padding:18px 14px 30px;width:100%;}
  .admin-top h1{font-size:19px;}
}
@media(max-width:480px){
  .admin-main{padding:14px 10px 26px;}
  .admin-topbar{padding:12px 14px;}
}
.status-pill{padding:6px 14px;border-radius:20px;font-size:12.5px;font-weight:600;}
.status-pill.online{background:#e9fbef;color:var(--green);}
.status-pill.offline{background:#fdeaea;color:var(--pink-dark);}

.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px;}
.stat-grid-3{grid-template-columns:repeat(3,1fr);}
.stat-grid-2{grid-template-columns:repeat(2,1fr);}
@media(max-width:800px){.stat-grid,.stat-grid-3{grid-template-columns:1fr 1fr;}}
@media(max-width:420px){.stat-grid,.stat-grid-3,.stat-grid-2{grid-template-columns:1fr;}}
.stat-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:18px;text-align:center;transition:transform .2s ease,box-shadow .2s ease;min-width:0;}
.stat-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(47,107,255,.10);}
.stat-card .label{font-size:11px;color:var(--text-muted);text-transform:uppercase;margin-bottom:8px;letter-spacing:.5px;}
.stat-card .value{font-size:22px;font-weight:700;word-break:break-word;}
@media(max-width:480px){
  .stat-card{padding:14px 10px;}
  .stat-card .value{font-size:18px;}
}

.badge-row{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;}
.status-chip{padding:8px 16px;border-radius:20px;font-size:13px;font-weight:600;border:1.5px solid #eee;cursor:pointer;}
.status-chip.active-ok{background:#e9fbef;border-color:var(--green);color:var(--green);}
.status-chip.active-warn{background:#fff8e6;border-color:var(--yellow);color:#b8860b;}
.status-chip.active-danger{background:#fdeaea;border-color:var(--pink);color:var(--pink-dark);}

.qr-box{background:#fff;border:1px solid #eee;border-radius:14px;padding:30px;text-align:center;max-width:420px;}
.qr-box img{width:200px;height:200px;max-width:100%;margin:0 auto 16px;}
@media(max-width:480px){.qr-box{padding:20px 16px;}}

.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;}
table.orders-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;}
table.orders-table th,table.orders-table td{padding:12px 14px;text-align:left;font-size:13.5px;border-bottom:1px solid #f1f1f1;white-space:nowrap;}
table.orders-table th{background:#f8f8f8;font-weight:600;}
@media(max-width:600px){
  table.orders-table th,table.orders-table td{padding:9px 10px;font-size:12.5px;}
}

/* ---- Superadmin: card view for shops list on mobile/tablet ----
   Wide 17-column table ko horizontally scroll karke dekhna mobile par
   bahut mushkil hai (columns kat jaate hain) — isliye <=880px par table
   chhup jaata hai aur ye stacked cards dikhte hain, jisme sab wahi info
   aur actions (Plan edit, Access Shop, Activate/Deactivate) hote hain. */
.shops-table-wrap{display:block;}
.shop-cards-wrap{display:none;}
@media(max-width:880px){
  .shops-table-wrap{display:none;}
  .shop-cards-wrap{display:block;}
}
.shop-card{background:#fff;border:1px solid #eee;border-radius:14px;padding:16px;margin-bottom:14px;box-shadow:0 4px 16px rgba(0,0,0,.05);}
.shop-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #f1f1f1;}
.shop-card-id{font-size:11px;color:var(--text-muted);display:block;margin-bottom:3px;}
.shop-card-name{font-weight:700;font-size:15.5px;}
.shop-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;}
@media(max-width:420px){.shop-card-grid{grid-template-columns:1fr 1fr;gap:10px;}}
.shop-card-grid .scg-label{display:block;font-size:10.5px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:3px;}
.shop-card-grid .scg-val{font-size:13px;font-weight:600;word-break:break-word;}
.shop-card details{margin-bottom:10px;border:1px solid #eee;border-radius:10px;padding:10px 12px;background:#fafafa;}
.shop-card details summary{font-size:13.5px;font-weight:600;cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px;}
.shop-card details summary::-webkit-details-marker{display:none;}
.shop-card details summary::after{content:'▾';margin-left:auto;color:var(--text-muted);}
.shop-card details[open] summary::after{content:'▴';}
.shop-card .plan-form-grid{display:flex;flex-direction:column;gap:8px;margin-top:10px;}
.shop-card .plan-form-grid select,.shop-card .plan-form-grid input{width:100%;padding:9px 10px;border-radius:8px;border:1.5px solid #e5e5e5;font-size:13px;font-family:inherit;}
.shop-card-access{display:flex;flex-direction:column;gap:8px;margin-bottom:10px;}
.shop-card-access select{width:100%;padding:9px 10px;border-radius:8px;border:1.5px solid #e5e5e5;font-size:13px;font-family:inherit;}
.tag{padding:4px 10px;border-radius:20px;font-size:11.5px;font-weight:600;}
.tag.paid{background:#e9fbef;color:var(--green);}
.tag.pending{background:#fff8e6;color:#b8860b;}
.tag.printed{background:#e9f0ff;color:var(--purple);}

footer.site-footer{text-align:center;padding:24px;color:var(--text-muted);font-size:13px;}

/* FULL SITE FOOTER (har page par) */
.site-footer-full{background:var(--dark);color:#d8d8e6;margin-top:40px;padding-top:36px;}
.site-footer-full .sf-inner{
  max-width:1000px;margin:0 auto;padding:0 20px 26px;
  display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;
}
@media(max-width:700px){.site-footer-full .sf-inner{grid-template-columns:1fr;}}
.site-footer-full .sf-brand{font-weight:700;font-size:17px;color:#fff;margin-bottom:8px;}
.site-footer-full .sf-col p{font-size:12.5px;line-height:1.6;color:#a5a5bd;}
.site-footer-full .sf-col h4{font-size:13px;color:#fff;margin-bottom:10px;letter-spacing:.5px;}
.site-footer-full .sf-col a{display:block;font-size:13px;color:#c7c7dd;margin-bottom:8px;}
.site-footer-full .sf-col a:hover{color:var(--pink);}
.site-footer-full .sf-bottom{
  border-top:1px solid rgba(255,255,255,.08);text-align:center;padding:16px;
  font-size:12px;color:#8a8aa3;
}

/* ---- Footer custom animation ---- */
.site-footer-full.sf-animated{position:relative;overflow:hidden;}
.sf-shimmer{
  position:absolute;top:0;left:-40%;width:40%;height:3px;
  background:linear-gradient(90deg,transparent,var(--pink),var(--purple),var(--yellow),transparent);
  animation:sfShimmerMove 5s linear infinite;
}
@keyframes sfShimmerMove{0%{left:-40%;}100%{left:100%;}}
.sf-animated .sf-inner{animation:sfFadeUp .8s ease both;}
@keyframes sfFadeUp{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}
.sf-animated .sf-col{animation:sfFadeUp .7s ease both;}
.sf-animated .sf-col:nth-child(2){animation-delay:.08s;}
.sf-animated .sf-col:nth-child(3){animation-delay:.16s;}
.sf-float{
  position:absolute;font-size:20px;opacity:.10;pointer-events:none;
  animation:sfFloat 9s ease-in-out infinite;
}
.sf-float-1{top:18px;left:6%;animation-duration:8s;}
.sf-float-2{top:60px;left:46%;animation-duration:10s;animation-delay:1.2s;}
.sf-float-3{top:24px;right:8%;animation-duration:7.5s;animation-delay:.6s;}
@keyframes sfFloat{
  0%,100%{transform:translateY(0) rotate(0deg);}
  50%{transform:translateY(-14px) rotate(8deg);}
}
@media(prefers-reduced-motion:reduce){
  .sf-shimmer,.sf-animated .sf-inner,.sf-animated .sf-col,.sf-float{animation:none;}
}

/* ---- Demo 24-hour countdown card (admin overview) ---- */
.demo-countdown-card{
  background:linear-gradient(135deg,#fff6e5,#ffeef0);
  border:1px solid var(--yellow);
}
.demo-countdown-card .dc-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.demo-countdown-card .dc-timer{
  font-size:26px;font-weight:800;letter-spacing:1px;color:var(--dark);
  background:#fff;border-radius:10px;padding:8px 16px;box-shadow:0 4px 14px rgba(0,0,0,.08);
  font-variant-numeric:tabular-nums;
}
.demo-countdown-card.dc-urgent .dc-timer{color:#ef4444;animation:dcPulse 1s ease-in-out infinite;}
.demo-countdown-card.dc-expired{background:#fdeaea;border-color:var(--pink);}
@keyframes dcPulse{0%,100%{transform:scale(1);}50%{transform:scale(1.05);}}

/* Live preview / price box on the QR upload page */
.preview-box{display:none;margin-top:14px;border:2px dashed #e5e7eb;border-radius:12px;padding:14px;text-align:center;background:#fafafa;}
.preview-box.active{display:block;}
.preview-box img,.preview-box embed{max-width:100%;max-height:260px;border-radius:8px;border:1px solid #eee;}
.preview-box .file-icon{font-size:46px;}
.preview-meta{font-size:12.5px;color:var(--text-muted);margin-top:8px;}
.price-live{
  display:flex;justify-content:space-between;align-items:center;background:var(--bg-soft);
  border-radius:10px;padding:12px 16px;margin:14px 0;font-weight:700;
}
.price-live .amt{color:var(--pink-dark);font-size:20px;}
.btn-secondary-outline{
  display:inline-block;width:100%;text-align:center;padding:10px;border-radius:30px;
  border:2px solid var(--dark);background:#fff;font-weight:600;font-size:13px;cursor:pointer;margin-top:8px;
}

/* Preview modal */
.preview-modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:999;align-items:center;justify-content:center;padding:20px;}
.preview-modal-overlay.active{display:flex;}
.preview-modal{background:#fff;border-radius:14px;max-width:520px;width:100%;max-height:90vh;overflow:auto;padding:20px;position:relative;}
.preview-modal .close-modal{position:absolute;top:10px;right:14px;font-size:22px;cursor:pointer;color:#888;background:none;border:none;}
.preview-modal img,.preview-modal embed{width:100%;border-radius:8px;}

/* =========================================================
   EasyPrintQR Modern Admin UI Refresh (2026)
   Scoped to admin shell; preserves existing PHP/business logic.
   ========================================================= */
:root{
  --ep-navy:#071a3d;
  --ep-blue:#1268f3;
  --ep-cyan:#19c9ee;
  --ep-surface:#f4f8ff;
  --ep-ink:#102448;
  --ep-muted:#71809b;
  --ep-line:#dce8fb;
  --ep-success:#19bd85;
}
body:has(.admin-wrap){
  background:linear-gradient(135deg,#f4f8ff 0%,#edf4ff 55%,#f8fbff 100%);
  color:var(--ep-ink);
}
.admin-topbar{
  background:linear-gradient(110deg,#061733,#0c3472 65%,#075f9b)!important;
  border-bottom:1px solid rgba(120,221,255,.35);
  box-shadow:0 8px 28px rgba(8,35,85,.20);
}
.admin-topbar .logo{font-weight:800;letter-spacing:-.4px;}
.admin-topbar .logo img{filter:drop-shadow(0 0 8px rgba(69,218,255,.6));}
.admin-wrap{background:transparent!important;}
.sidebar{
  background:linear-gradient(180deg,#061733 0%,#092b59 62%,#063f70 100%)!important;
  width:252px!important;
  padding:22px 16px!important;
  box-shadow:12px 0 38px rgba(7,30,76,.12);
  border-right:1px solid rgba(101,210,255,.22);
}
.sidebar .logo{
  font-size:19px!important;
  padding:10px 8px!important;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(44,176,255,.18),rgba(255,255,255,.04));
  border:1px solid rgba(134,224,255,.22);
  text-shadow:0 2px 12px rgba(75,212,255,.32);
}
.sidebar .logo img.icon{
  width:40px!important;height:40px!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#eaffff,#72dcff);
  padding:5px;
  box-shadow:0 0 18px rgba(44,208,255,.42);
}
.sidebar .shop-name{
  margin:14px 8px 22px!important;
  padding:12px 14px!important;
  color:#a8c5ed!important;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(148,207,255,.13);
  border-radius:12px;
}
.sidebar nav a{
  padding:13px 14px!important;
  border:1px solid transparent;
  border-radius:12px!important;
  color:#c3d6f5!important;
  transition:transform .22s ease,background .22s ease,box-shadow .22s ease;
}
.sidebar nav a:hover{
  transform:translateX(3px);
  background:rgba(45,171,255,.16)!important;
  border-color:rgba(111,222,255,.22);
}
.sidebar nav a.active{
  background:linear-gradient(100deg,#1477ff,#10bde9)!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(15,133,247,.28);
  border-color:rgba(255,255,255,.18);
}
.logout-btn{
  border-radius:12px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(148,207,255,.2)!important;
}
.admin-main{
  background:transparent!important;
  padding:32px clamp(18px,3vw,42px)!important;
}
.admin-top{
  padding:16px 22px!important;
  margin-bottom:24px!important;
  border-radius:16px!important;
  overflow:hidden;
}
.admin-top h1{
  color:#fff!important;
  font-size:clamp(22px,2.2vw,31px)!important;
  letter-spacing:-.8px;
}
.card,.qr-box,.plan-card{
  border:1px solid var(--ep-line)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 12px 34px rgba(31,83,155,.08)!important;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.card:hover,.qr-box:hover,.plan-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 42px rgba(31,83,155,.13)!important;
  border-color:#b8d8ff!important;
}
.admin-main .card h2,.admin-main .card h3{
  color:var(--ep-ink);
}
.status-pill{
  border-radius:999px!important;
  padding:8px 13px!important;
  font-weight:700!important;
  border:1px solid #cbe8df!important;
  background:#effdf7!important;
  color:#09845c!important;
}
.status-pill.offline{
  background:#fff4f3!important;
  color:#c24135!important;
  border-color:#ffd8d3!important;
}
.btn-block,.btn-pink,.btn-outline-pink,.btn-purple{
  border-radius:12px!important;
  min-height:42px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:6px;
  font-weight:750!important;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.btn-block:hover,.btn-pink:hover,.btn-outline-pink:hover,.btn-purple:hover{
  transform:translateY(-2px);
  filter:saturate(1.08);
}
.table-scroll{
  border:1px solid var(--ep-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(31,83,155,.07);
  overflow:auto;
}
.orders-table{
  border-collapse:separate!important;
  border-spacing:0;
  min-width:850px;
}
.orders-table th{
  background:#eef5ff!important;
  color:#3b557d!important;
  text-transform:uppercase;
  font-size:11px!important;
  letter-spacing:.5px;
}
.orders-table td,.orders-table th{
  border-bottom:1px solid #edf2fb!important;
  padding:14px 13px!important;
}
.orders-table tr:hover td{background:#f8fbff!important;}
.tag{
  border-radius:999px!important;
  padding:5px 10px!important;
  font-weight:700!important;
}
.form-group input,.form-group select,.form-group textarea,
input[type="text"],input[type="number"],input[type="email"],input[type="password"],select,textarea{
  border:1px solid #d4e2f6!important;
  border-radius:11px!important;
  background:#fbfdff!important;
  color:#18345f!important;
  min-height:43px;
}
input:focus,select:focus,textarea:focus{
  outline:none!important;
  border-color:#39aef7!important;
  box-shadow:0 0 0 4px rgba(36,167,247,.12)!important;
}
@media(max-width:880px){
  .admin-main{padding:22px 14px!important;}
  .sidebar{width:270px!important;}
}
@media(prefers-reduced-motion:reduce){
  .card,.qr-box,.plan-card,.sidebar nav a{transition:none!important;}
}
