:root{--primary:#5b5ce2;--primary2:#7a5cff;--dark:#0f172a;--text:#334155;--bg:#f4f7fb;--soft:#eef2ff}
body{background:var(--bg);color:var(--text)}
.app-shell{min-height:100vh}
.premium-nav{background:linear-gradient(135deg,var(--dark),#1e293b 60%,var(--primary));box-shadow:0 12px 35px rgba(15,23,42,.15)}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:rgba(255,255,255,.15);margin-right:.5rem}
.hero-card{background:linear-gradient(135deg,var(--primary),var(--primary2));border-radius:28px;box-shadow:0 24px 60px rgba(91,92,226,.25)}
.glass-card{background:rgba(255,255,255,.14);backdrop-filter:blur(14px);border-radius:24px;border:1px solid rgba(255,255,255,.18)}
.feature-card,.kpi-card,.info-box,.mini-stat,.doc-tile,.contact-line{background:#fff;border-radius:20px;box-shadow:0 18px 45px rgba(15,23,42,.08);padding:1.25rem}
.feature-card{transition:transform .2s ease, box-shadow .2s ease}
.feature-card:hover,.doc-tile:hover{transform:translateY(-2px)}
.feature-icon,.stat-pill,.doc-icon{width:52px;height:52px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:rgba(91,92,226,.12);color:var(--primary);font-size:1.35rem;flex:0 0 auto}
.kpi-card strong,.mini-stat strong{display:block;font-size:1.7rem;color:var(--dark)}
.step-preview{display:flex;align-items:center;gap:.7rem;background:#fff;padding:1rem 1.1rem;border-radius:18px;box-shadow:0 18px 45px rgba(15,23,42,.08)}
.step-line{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#e2e8f0;font-weight:700}
.step-line.active{background:var(--primary);color:#fff}
.registration-shell .form-control,.registration-shell .form-select,.registration-shell textarea,.registration-shell input{border-radius:14px;padding:.85rem 1rem}
.level-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}
.level-chip{position:relative}
.level-chip input{position:absolute;opacity:0;pointer-events:none}
.level-chip span{display:flex;align-items:center;justify-content:center;height:52px;border-radius:16px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 10px 30px rgba(15,23,42,.04);cursor:pointer;transition:.2s}
.level-chip input:checked + span{background:var(--primary);color:#fff;border-color:var(--primary)}
.success-card{border-radius:28px}
.timeline{position:relative;padding-left:1.25rem}
.timeline:before{content:'';position:absolute;left:7px;top:0;bottom:0;width:2px;background:#cbd5e1}
.timeline-item{position:relative;display:flex;gap:1rem;margin-bottom:1rem}
.timeline-dot{width:16px;height:16px;border-radius:50%;background:var(--primary);margin-left:-2px;margin-top:.3rem;box-shadow:0 0 0 6px rgba(91,92,226,.12)}
.timeline-content{flex:1;background:#fff;border-radius:16px;padding:1rem;box-shadow:0 12px 30px rgba(15,23,42,.05)}
.compact-timeline .timeline-content{padding:.85rem 1rem}
.auth-shell{min-height:100vh;background:radial-gradient(circle at top left, rgba(91,92,226,.15), transparent 35%), radial-gradient(circle at bottom right, rgba(122,92,255,.12), transparent 30%), #f4f7fb}
.info-box span,.kpi-card span,.mini-stat span{display:block;font-size:.82rem;color:#64748b;text-transform:uppercase;letter-spacing:.04em}
.document-gallery{display:grid;gap:.85rem}
.doc-tile{display:flex;align-items:center;gap:1rem;text-decoration:none;color:inherit}
.contact-line{display:flex;align-items:center;gap:.9rem;margin-bottom:.85rem;background:rgba(255,255,255,.12);color:#fff;box-shadow:none;border:1px solid rgba(255,255,255,.15)}
.contact-line i{font-size:1.1rem}
.demo-video{background:#000}

body{min-height:100vh}
.premium-nav{z-index:1035}
.registration-sidebar{z-index:1}
main.flex-grow-1{min-height:calc(100vh - 180px)}
footer{position:relative;z-index:1}
.card{overflow:hidden}
.document-gallery .doc-tile{word-break:break-word}
@media (max-width: 991.98px){
  .registration-sidebar{position:relative!important;top:auto!important}
}


.review-page .review-sidebar{z-index:2}
.review-page .card{overflow:hidden}
.review-page .document-gallery{margin-bottom:.25rem}
.review-page .timeline{padding-bottom:.25rem}
.review-page .timeline-item:last-child{margin-bottom:0}
@media (max-width: 991.98px){
  .review-page .review-sidebar{position:relative!important;top:auto!important}
}
