/* Emart Media Licensing - Unified Public Experience */
.lic-shell{padding:2rem 0 3rem}
.lic-section{margin-bottom:1.5rem}
.lic-breadcrumbs{font-size:.92rem;color:#64748b;margin-bottom:1rem}
.lic-breadcrumbs a{text-decoration:none;color:#475569}.lic-breadcrumbs a:hover{color:#0f172a}
.lic-page-banner{background:linear-gradient(180deg,#f8fbff 0%,#f3f7fd 100%);border:1px solid #dce7f5;border-radius:1.15rem;padding:2rem 2rem 1.75rem;box-shadow:0 12px 30px rgba(15,23,42,.05)}
.lic-page-banner h1{margin:0 0 .5rem;color:#0f172a;font-size:clamp(2rem,4vw,3rem);font-weight:800}
.lic-page-banner p{margin:0;color:#475569;max-width:900px;font-size:1.05rem}
.lic-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.35rem .75rem;font-size:.82rem;font-weight:700;line-height:1}
.lic-badge-success{background:#dcfce7;color:#166534}.lic-badge-primary{background:#dbeafe;color:#1d4ed8}.lic-badge-neutral{background:#e2e8f0;color:#334155}
.lic-card{background:#fff;border:1px solid #e5e7eb;border-radius:1.1rem;box-shadow:0 10px 24px rgba(15,23,42,.05);overflow:hidden}
.lic-card-header{padding:1rem 1.25rem;border-bottom:1px solid #eef2f7;background:#fff}.lic-card-body{padding:1.25rem}.lic-card-title{margin:0;font-size:1.25rem;font-weight:800;color:#0f172a}
.lic-card-subtitle{margin:.25rem 0 0;color:#64748b}
.lic-grid{display:grid;gap:1rem}.lic-grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.lic-grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.lic-product-layout{display:grid;gap:1.25rem;grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr)}
@media(max-width:991.98px){.lic-product-layout{grid-template-columns:1fr}}
.lic-plan-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.lic-plan-option{position:relative;display:block;cursor:pointer}
.lic-plan-option input{position:absolute;opacity:0;pointer-events:none}
.lic-plan-tile{height:100%;background:#fff;border:1px solid #dbe3ee;border-radius:1rem;padding:1rem 1rem .95rem;transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease}
.lic-plan-option:hover .lic-plan-tile{border-color:#93c5fd;box-shadow:0 10px 20px rgba(37,99,235,.10);transform:translateY(-1px)}
.lic-plan-option input:checked + .lic-plan-tile{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12),0 12px 24px rgba(37,99,235,.10)}
.lic-plan-name{font-size:1.05rem;font-weight:800;color:#0f172a}
.lic-plan-edition{font-size:.92rem;color:#64748b;text-transform:capitalize}
.lic-plan-price{font-size:1.8rem;font-weight:800;color:#0f172a;line-height:1.1}
.lic-plan-meta{font-size:.9rem;color:#64748b}
.lic-plan-features{margin-top:.85rem;padding-top:.85rem;border-top:1px solid #eef2f7;font-size:.9rem;color:#475569}
.lic-cta-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.lic-note{font-size:.92rem;color:#64748b}
.lic-empty-state{border:1px dashed #cbd5e1;border-radius:1rem;padding:1rem 1.1rem;background:#f8fafc;color:#475569}
.lic-side-stack{display:grid;gap:1rem}
.lic-support-list{display:grid;gap:.85rem}.lic-support-item{padding:.9rem 0;border-bottom:1px solid #eef2f7}.lic-support-item:last-child{border-bottom:0;padding-bottom:0}
.lic-summary-list{display:grid;gap:.7rem}.lic-summary-row{display:flex;justify-content:space-between;gap:1rem}.lic-summary-row span:first-child{color:#64748b}.lic-summary-row strong{color:#0f172a}
.lic-total-box{background:#f8fbff;border:1px solid #dbe7f5;border-radius:1rem;padding:1rem 1.1rem}.lic-total-label{font-size:.85rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.lic-total-amount{font-size:2rem;font-weight:800;color:#0f172a}
.lic-product-card{height:100%}.lic-product-card .lic-card-body{display:flex;flex-direction:column}.lic-product-card h3{margin:0 0 .45rem;font-size:1.65rem;font-weight:800;color:#0f172a}.lic-product-card p{margin:0;color:#475569}
.lic-product-meta{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.9rem}
.lic-meta-pill{display:inline-flex;align-items:center;padding:.38rem .7rem;border-radius:999px;background:#f8fafc;border:1px solid #e5e7eb;color:#475569;font-size:.82rem;font-weight:700}
.lic-product-copy{font-size:1rem;line-height:1.7;color:#475569}
.lic-product-copy p:last-child{margin-bottom:0}
.lic-checkout-shell{display:grid;gap:1.25rem;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}
@media(max-width:991.98px){.lic-checkout-shell{grid-template-columns:1fr}}
.lic-checkout-steps{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.lic-checkout-step{display:flex;align-items:center;gap:.5rem;padding:.55rem .9rem;border-radius:999px;background:#f8fafc;border:1px solid #e5e7eb;font-weight:700;color:#475569}.lic-checkout-step.is-active{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}
.lic-cart-item{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #eef2f7}.lic-cart-item:last-child{border-bottom:0;padding-bottom:0}
.lic-cart-item-title{font-weight:800;color:#0f172a}.lic-cart-item-meta{color:#64748b;font-size:.95rem}.lic-cart-total{font-size:1.2rem;font-weight:800;color:#0f172a;border-top:1px solid #e5e7eb;padding-top:.9rem;margin-top:.5rem}
.lic-form-label{font-weight:700;color:#334155;margin-bottom:.35rem}.lic-field-group{margin-bottom:1rem}.lic-form-help{font-size:.88rem;color:#64748b}
.lic-secure-note{font-size:.92rem;color:#475569;background:#f8fbff;border:1px solid #dbe7f5;border-radius:.9rem;padding:.9rem 1rem}
.lic-status-badge{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;padding:.35rem .7rem;font-size:.8rem;font-weight:700}.lic-status-active,.lic-status-paid,.lic-status-verified{background:#dcfce7;color:#166534}.lic-status-free,.lic-status-pending{background:#dbeafe;color:#1d4ed8}.lic-status-expired,.lic-status-revoked,.lic-status-error{background:#fee2e2;color:#b91c1c}.lic-status-warning,.lic-status-grace{background:#fef3c7;color:#92400e}.lic-status-neutral{background:#e2e8f0;color:#334155}
.lic-modal .modal-content{border:0;border-radius:1rem;box-shadow:0 22px 50px rgba(15,23,42,.22)}.lic-modal .modal-header{border-bottom:1px solid #eef2f7;padding:1rem 1.25rem}.lic-modal .modal-body{padding:1.25rem}.lic-modal .modal-footer{border-top:1px solid #eef2f7;padding:1rem 1.25rem}
.lic-chart-wrap{position:relative;height:320px;min-height:320px;max-height:320px;width:100%}
@media(max-width:767.98px){.lic-shell{padding:1.35rem 0 2rem}.lic-page-banner{padding:1.35rem 1.15rem}.lic-card-header,.lic-card-body{padding:1rem}.lic-plan-price{font-size:1.55rem}.lic-product-card h3{font-size:1.35rem}}

.lic-page-banner-light {
  background: #f8fbff;
  border: 1px solid #dbe7ff;
}
.lic-product-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(240px, 360px);
  gap: 1.5rem;
  align-items: center;
}
.lic-product-hero-media {
  background: #fff;
  border: 1px solid #e6ecf5;
  border-radius: 18px;
  padding: 1rem;
  text-align: center;
}
.lic-product-hero-media img {
  width: 100%;
  max-height: 280px;
  object-fit: contain;
}
.lic-product-card-grid {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}
.lic-product-thumb-wrap {
  background: #fff;
  border: 1px solid #e6ecf5;
  border-radius: 16px;
  padding: .75rem;
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lic-product-thumb {
  max-width: 100%;
  max-height: 100px;
  object-fit: contain;
}
.lic-feature-preview,
.lic-feature-list-compact {
  list-style: none;
  padding: 0;
  margin: .85rem 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.lic-feature-preview li,
.lic-feature-list-compact li {
  background: #f3f7ff;
  border: 1px solid #dbe7ff;
  color: #19315c;
  border-radius: 999px;
  padding: .3rem .6rem;
  font-size: .9rem;
}
.lic-inline-link {
  display: inline-block;
  margin-top: .45rem;
  font-size: .95rem;
  text-decoration: none;
}
@media (max-width: 991.98px) {
  .lic-product-hero-grid,
  .lic-product-card-grid {
    grid-template-columns: 1fr;
  }
}


/* Payment UI polish */
.lic-payment-shell{padding-top:1.5rem}
.lic-payment-banner{display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-start}
.lic-payment-banner-copy{max-width:760px}
.lic-payment-banner-copy h1{margin:.6rem 0 .5rem}
.lic-payment-banner-aside{display:grid;gap:.85rem;justify-items:end}
.lic-trust-list{display:grid;gap:.45rem;text-align:right;font-size:.92rem;color:#475569}
.lic-trust-list span{display:inline-flex;align-items:center;gap:.5rem;justify-content:flex-end}
.lic-trust-list span::before{content:"";display:inline-block;width:.45rem;height:.45rem;border-radius:999px;background:#2563eb}
.lic-payment-layout{align-items:start}
.lic-form-section+.lic-form-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #eef2f7}
.lic-form-section-head{margin-bottom:1rem}
.lic-form-section-head h2{margin:0 0 .2rem;color:#0f172a;font-size:1.05rem;font-weight:800}
.lic-form-section-head p{margin:0;color:#64748b}
.lic-payment-card{background:linear-gradient(135deg,#0f172a 0%,#1e3a8a 100%);border-radius:1.25rem;padding:1.2rem;color:#fff;box-shadow:0 18px 40px rgba(15,23,42,.18);margin-bottom:1rem}
.lic-payment-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.2rem}
.lic-payment-brand{font-weight:800;letter-spacing:.02em}
.lic-payment-lock{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;background:rgba(255,255,255,.14);padding:.3rem .55rem;border-radius:999px}
.lic-payment-preview-number{font-size:1.45rem;font-weight:800;letter-spacing:.08em;margin-bottom:1rem}
.lic-payment-preview-meta{display:flex;justify-content:space-between;gap:1rem}
.lic-payment-preview-meta span{display:block;font-size:.72rem;opacity:.75;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.2rem}
.lic-payment-preview-meta strong{font-size:.95rem}
.lic-card-field,.lic-expiry-field,.lic-cvv-field{font-size:1rem;letter-spacing:.03em}
.lic-order-summary-card{position:sticky;top:1rem}
.lic-checkout-notes{margin:0;padding-left:1.1rem;color:#475569;display:grid;gap:.65rem}
.lic-payment-success-card{max-width:760px;margin:0 auto}
.lic-admin-shell .lic-admin-payment-card .lic-admin-payment-total{font-size:1.5rem;font-weight:800;color:#0f172a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.9rem;padding:.7rem .95rem;line-height:1}
@media(max-width:991.98px){.lic-payment-banner{display:block}.lic-payment-banner-aside{justify-items:start;margin-top:1rem}.lic-trust-list{text-align:left}.lic-trust-list span{justify-content:flex-start}.lic-order-summary-card{position:static}}
