:root{
  --snt-primary:#1d4ed8;
  --snt-secondary:#7c3aed;
  --snt-dark:#0f172a;
  --snt-border:#dbe3f0;
  --snt-bg:#f5f8ff;
}
.sntap-wrap,.sntap-app-shell{max-width:1200px}
.sntap-hero{display:flex;gap:18px;align-items:center;background:linear-gradient(135deg,var(--snt-dark),var(--snt-primary));padding:22px;border-radius:22px;color:#fff;margin:20px 0 24px;box-shadow:0 15px 40px rgba(29,78,216,.18)}
.sntap-logo,.sntap-logo-image{width:86px;height:86px;border-radius:22px;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;overflow:hidden}
.sntap-logo-image img{max-width:100%;max-height:100%;object-fit:contain}
.sntap-cards,.sntap-app-grid,.sntap-package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.sntap-grid-2,.sntap-app-two-col{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;margin-top:18px}
.sntap-panel,.sntap-card,.sntap-front-card,.sntap-stat-card,.sntap-package-box,.sntap-invoice-card{background:#fff;border:1px solid var(--snt-border);border-radius:22px;padding:18px;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.sntap-card-title,.sntap-stat-card span{font-size:13px;color:#64748b;text-transform:uppercase;letter-spacing:.04em}
.sntap-card-number,.sntap-stat-card strong{display:block;margin-top:8px;font-size:28px;color:var(--snt-dark)}
.sntap-actions-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.sntap-inline-form,.sntap-filter-bar{display:flex;gap:12px;flex-wrap:wrap;align-items:end}
.sntap-status{display:inline-block;padding:5px 11px;border-radius:999px;font-weight:700;font-size:12px}
.sntap-status.status-active{background:#dcfce7;color:#166534}
.sntap-status.status-expiring{background:#fef3c7;color:#92400e}
.sntap-status.status-expired{background:#fee2e2;color:#b91c1c}
.sntap-status.status-not_started,.sntap-status.status-no_plan{background:#e2e8f0;color:#334155}
.sntap-app-shell{margin:22px auto;padding:0}
.sntap-app-hero{display:flex;justify-content:space-between;gap:18px;align-items:center;background:linear-gradient(135deg,#0f172a,#1d4ed8,#7c3aed);padding:26px;border-radius:28px;color:#fff;box-shadow:0 18px 45px rgba(29,78,216,.18)}
.sntap-app-eyebrow,.sntap-chip,.sntap-mini-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;background:rgba(255,255,255,.14);color:#fff}
.sntap-chip{background:#dbeafe;color:#1d4ed8}
.sntap-mini-badge{background:#ede9fe;color:#6d28d9}
.sntap-app-hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.sntap-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--snt-primary),var(--snt-secondary));color:#fff;text-decoration:none;border:none;border-radius:14px;padding:12px 18px;font-weight:800;cursor:pointer;box-shadow:0 12px 24px rgba(29,78,216,.18)}
.sntap-btn:hover{opacity:.95;color:#fff}
.sntap-btn-outline{background:#fff;color:var(--snt-primary);border:1px solid #c7d2fe;box-shadow:none}
.sntap-btn-outline:hover{color:var(--snt-primary)}
.sntap-btn-lg{padding:14px 22px;font-size:15px}
.sntap-btn-block{display:flex;width:100%}
.sntap-progress-row,.sntap-package-top,.sntap-section-head,.sntap-invoice-head,.sntap-invoice-columns,.sntap-invoice-actions{display:flex;justify-content:space-between;gap:14px;align-items:center}
.sntap-days-badge{padding:10px 14px;border-radius:999px;font-weight:800}
.sntap-days-ok{background:#dcfce7;color:#166534}
.sntap-days-warning{background:#fee2e2;color:#b91c1c}
.sntap-tabbar{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}
.sntap-tab{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--snt-border);padding:14px 18px;border-radius:18px;text-decoration:none;color:#1e293b;font-weight:700;box-shadow:0 10px 20px rgba(15,23,42,.04)}
.sntap-tab:hover,.sntap-tab.is-active{background:linear-gradient(135deg,#eff6ff,#ede9fe);border-color:#93c5fd;color:#111827}
.sntap-tab-icon{width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,#1d4ed8,#7c3aed);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:16px;box-shadow:0 10px 18px rgba(29,78,216,.22)}
.sntap-tab-panel{display:none}
.sntap-tab-panel.is-active{display:block}
.sntap-package-box-app.is-current{border:2px solid #60a5fa;transform:translateY(-1px)}
.sntap-price{font-size:28px;font-weight:800;color:#0f172a}
.sntap-package-desc{color:#475569;min-height:48px}
.sntap-feature-list{padding-left:18px;color:#334155;line-height:1.7}
.sntap-front-table{width:100%;border-collapse:collapse}
.sntap-front-table th,.sntap-front-table td{padding:12px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top}
.sntap-filter-bar label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#334155}
.sntap-filter-bar input,.sntap-filter-bar select{min-width:180px}
.sntap-order-list{display:grid;gap:18px;margin-top:18px}
.sntap-invoice-card{padding:0;overflow:hidden}
.sntap-invoice-head{padding:20px 22px;background:linear-gradient(135deg,#f8fbff,#eef2ff);border-bottom:1px solid #dbe3f0;align-items:flex-start}
.sntap-invoice-brand{display:flex;gap:14px;align-items:center}
.sntap-invoice-brand img{width:64px;height:64px;object-fit:contain;border-radius:16px;background:#fff;padding:6px;border:1px solid #dbe3f0}
.sntap-invoice-brand-text{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#1d4ed8,#7c3aed);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800}
.sntap-invoice-brand h4{margin:0 0 4px;font-size:18px;color:#0f172a}
.sntap-invoice-brand span,.sntap-invoice-meta{color:#475569;font-size:13px;line-height:1.7}
.sntap-invoice-body{padding:22px}
.sntap-renew-shell{margin-top:20px}
@media (max-width:782px){
  .sntap-grid-2,.sntap-app-two-col{grid-template-columns:1fr}
  .sntap-app-hero,.sntap-progress-row,.sntap-section-head,.sntap-invoice-head,.sntap-invoice-columns{flex-direction:column;align-items:flex-start}
  .sntap-tab{width:100%}
  .sntap-filter-bar label,.sntap-filter-bar input,.sntap-filter-bar select{width:100%}
}

.sntap-app-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:4px}.sntap-app-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:#fff;border:1px solid #d7deef;border-radius:10px}.sntap-app-item input{margin-right:6px}.sntap-app-item span{font-weight:600}.sntap-app-item small{color:#6b7280;word-break:break-all}
.sntap-app-limit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:8px}
.sntap-app-limit-item{background:#fff;border:1px solid #dbeafe;border-radius:12px;padding:10px;display:block}
.sntap-app-limit-item span{display:block;font-weight:600;margin-bottom:2px}
.sntap-app-limit-item small{display:block;color:#64748b;margin-bottom:8px}
.sntap-app-limit-item input{width:100%}
.sntap-register-popup-overlay{position:fixed;inset:0;background:rgba(15,23,42,.72);display:flex;align-items:center;justify-content:center;padding:20px;z-index:99999}
.sntap-register-popup-box{width:min(100%,760px);max-height:90vh;overflow:auto;background:#fff;border:1px solid var(--snt-border);border-radius:28px;padding:28px;box-shadow:0 25px 80px rgba(15,23,42,.28)}
.sntap-popup-force .sntap-popup-badge{display:inline-flex;margin-bottom:10px}
.sntap-register-form-popup p{margin:0 0 14px}
.sntap-register-form-popup input,.sntap-register-form-popup select{width:100%;height:48px;border:1px solid #cbd5e1;border-radius:12px;padding:10px 12px}
.sntap-register-form-popup label{display:block;font-weight:700;color:#334155}
.sntap-register-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.sntap-register-popup-box h3{margin:0 0 8px;font-size:34px;color:#334155}
.sntap-register-popup-box p{color:#64748b}



/* snt-v4023 package page strongfix */
.sntap-front-card.sntap-renew-shell{
  background:linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%) !important;
  border-radius:30px !important;
  padding:34px 28px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 24px 60px rgba(15,23,42,.18) !important;
}
.sntap-renew-shell .sntap-chip{
  background:#dbeafe !important;
  color:#1d4ed8 !important;
}
.sntap-renew-shell .sntap-section-head{
  align-items:flex-start !important;
}
.sntap-renew-shell .sntap-section-head h2{
  color:#ffffff !important;
  margin:0 0 8px !important;
  font-size:44px !important;
  line-height:1.15 !important;
}
.sntap-renew-shell .sntap-section-head p{
  color:rgba(255,255,255,.92) !important;
  margin:0 0 18px !important;
  font-size:18px !important;
  line-height:1.7 !important;
}
.sntap-package-grid.sntap-package-grid-app{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(265px,1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
}
.sntap-package-box.sntap-package-box-app{
  background:#ffffff !important;
  border:1px solid #dbe4f0 !important;
  border-radius:24px !important;
  padding:24px 20px !important;
  box-shadow:0 14px 34px rgba(15,23,42,.10) !important;
  min-height:620px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  position:relative !important;
  overflow:hidden !important;
}
.sntap-package-box.sntap-package-box-app::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:6px;
  background:linear-gradient(135deg,#4f46e5,#7c3aed);
}
.sntap-package-box.sntap-package-box-app .sntap-package-top{
  align-items:flex-start !important;
  gap:12px !important;
}
.sntap-package-box.sntap-package-box-app h3{
  margin:6px 0 0 !important;
  min-height:112px !important;
  font-size:20px !important;
  line-height:1.55 !important;
  color:#334155 !important;
  font-weight:800 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-price{
  font-size:24px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  color:#0f172a !important;
  margin-top:2px !important;
}
.sntap-package-box.sntap-package-box-app .sntap-package-desc{
  color:#475569 !important;
  min-height:96px !important;
  line-height:1.75 !important;
  margin:0 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-mini-badge{
  background:#ede9fe !important;
  color:#6d28d9 !important;
  min-width:60px !important;
  justify-content:center !important;
}
.sntap-package-box.sntap-package-box-app .sntap-feature-list{
  margin:0 0 0 22px !important;
  padding:0 !important;
  display:grid !important;
  gap:12px !important;
  min-height:210px !important;
  flex:1 1 auto !important;
  color:#334155 !important;
  line-height:1.7 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-feature-list li{
  margin:0 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-btn-block,
.sntap-package-box.sntap-package-box-app .button.button-primary,
.sntap-package-box.sntap-package-box-app .button{
  margin-top:auto !important;
  align-self:stretch !important;
  width:100% !important;
  min-height:52px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:14px !important;
  text-align:center !important;
}
.sntap-package-box.sntap-package-box-app .sntap-btn-block{
  background:linear-gradient(135deg,#3b82f6,#7c3aed) !important;
  color:#fff !important;
  border:none !important;
  box-shadow:0 14px 24px rgba(59,130,246,.20) !important;
  font-weight:800 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-btn-outline.sntap-btn-block{
  background:#fff !important;
  color:#1d4ed8 !important;
  border:1px solid #bfdbfe !important;
  box-shadow:none !important;
}
@media (max-width:782px){
  .sntap-front-card.sntap-renew-shell{
    padding:24px 16px !important;
    border-radius:22px !important;
  }
  .sntap-renew-shell .sntap-section-head h2{
    font-size:34px !important;
  }
  .sntap-package-box.sntap-package-box-app{
    min-height:unset !important;
  }
  .sntap-package-box.sntap-package-box-app h3,
  .sntap-package-box.sntap-package-box-app .sntap-package-desc,
  .sntap-package-box.sntap-package-box-app .sntap-feature-list{
    min-height:unset !important;
  }
}




/* snt-v4024: keep only outer shell blue, keep inner package cards/buttons simple */
.sntap-front-card.sntap-renew-shell{
  background:linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%) !important;
  border-radius:28px !important;
  padding:28px 22px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 20px 50px rgba(15,23,42,.12) !important;
}
.sntap-renew-shell .sntap-chip{
  background:#dbeafe !important;
  color:#1d4ed8 !important;
}
.sntap-renew-shell .sntap-section-head h2{
  color:#ffffff !important;
}
.sntap-renew-shell .sntap-section-head p{
  color:rgba(255,255,255,.92) !important;
}
.sntap-package-grid.sntap-package-grid-app{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}
.sntap-package-box.sntap-package-box-app{
  background:#ffffff !important;
  border:1px solid #dbe4f0 !important;
  border-radius:24px !important;
  padding:22px 20px !important;
  box-shadow:0 12px 30px rgba(15,23,42,.08) !important;
  min-height:unset !important;
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  position:relative !important;
  overflow:hidden !important;
}
.sntap-package-box.sntap-package-box-app::before{
  content:none !important;
}
.sntap-package-box.sntap-package-box-app .sntap-package-top{
  align-items:flex-start !important;
  gap:12px !important;
}
.sntap-package-box.sntap-package-box-app h3{
  margin:0 !important;
  font-size:22px !important;
  line-height:1.45 !important;
  min-height:96px !important;
  color:#334155 !important;
  font-weight:700 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-price{
  font-size:24px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:#0f172a !important;
}
.sntap-package-box.sntap-package-box-app .sntap-package-desc{
  color:#475569 !important;
  line-height:1.65 !important;
  min-height:88px !important;
  margin:0 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-mini-badge{
  background:#ede9fe !important;
  color:#6d28d9 !important;
  min-width:60px !important;
  justify-content:center !important;
}
.sntap-package-box.sntap-package-box-app .sntap-feature-list{
  margin:4px 0 0 18px !important;
  padding:0 !important;
  display:grid !important;
  gap:10px !important;
  min-height:150px !important;
  flex:1 1 auto !important;
  color:#334155 !important;
  line-height:1.65 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-feature-list li{
  margin:0 !important;
}
.sntap-package-box.sntap-package-box-app .sntap-btn-block,
.sntap-package-box.sntap-package-box-app .button.button-primary,
.sntap-package-box.sntap-package-box-app .button{
  margin-top:auto !important;
  align-self:flex-start !important;
  width:auto !important;
  min-width:180px !important;
  min-height:46px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:0 !important;
  text-align:center !important;
  box-shadow:none !important;
}
.sntap-package-box.sntap-package-box-app .sntap-btn-block{
  background:#486992 !important;
  color:#fff !important;
  border:1px solid #486992 !important;
  font-weight:700 !important;
  padding:10px 18px !important;
}
.sntap-package-box.sntap-package-box-app .sntap-btn-block:hover{
  background:#3d5a7e !important;
  border-color:#3d5a7e !important;
  color:#fff !important;
}
.sntap-package-box.sntap-package-box-app .sntap-btn-outline.sntap-btn-block{
  background:#fff !important;
  color:#2563eb !important;
  border:1px solid #93c5fd !important;
}
@media (max-width:782px){
  .sntap-front-card.sntap-renew-shell{
    padding:24px 16px !important;
    border-radius:22px !important;
  }
  .sntap-package-box.sntap-package-box-app,
  .sntap-package-box.sntap-package-box-app h3,
  .sntap-package-box.sntap-package-box-app .sntap-package-desc,
  .sntap-package-box.sntap-package-box-app .sntap-feature-list{
    min-height:unset !important;
  }
  .sntap-package-box.sntap-package-box-app .sntap-btn-block,
  .sntap-package-box.sntap-package-box-app .button.button-primary,
  .sntap-package-box.sntap-package-box-app .button{
    min-width:180px !important;
  }
}

