.ld-hero{background:linear-gradient(120deg,#3b3fb6 0%,#6576ff 55%,#8f8cff 100%);border-radius:14px;color:#fff;padding:26px 28px;position:relative;overflow:hidden}
.ld-hero:after{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.07)}
.ld-hero:before{content:"";position:absolute;right:120px;bottom:-90px;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.05)}
.ld-hero h2{color:#fff;font-size:1.6rem;margin:0 0 4px}
.ld-hero .sub{color:rgba(255,255,255,.8)}
.ld-next{background:rgba(255,255,255,.14);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.22);border-radius:12px;padding:16px 18px;position:relative;z-index:1}
.ld-next .lbl{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.ld-next .mod{font-size:1.05rem;font-weight:700;color:#fff;margin:2px 0}
.ld-next .cd{font-variant-numeric:tabular-nums;font-weight:700;font-size:1.15rem}
.ld-next .btn-light{color:#3b3fb6;font-weight:600}
.ld-tile{border:0;border-radius:12px;box-shadow:0 2px 10px rgba(30,40,90,.06);min-height:96px}
.ld-tile .card-inner{padding:20px 22px !important;min-height:96px}
.ld-tile .ic{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px}
.ld-tile .v{font-size:1.55rem;font-weight:700;color:#1c2b46;line-height:1.1}
.ld-tile .k{font-size:12px;color:#8094ae}
.ld-tile .d{font-size:12px}
.ld-card{border:0;border-radius:12px;box-shadow:0 2px 10px rgba(30,40,90,.06);height:100%}
.ld-card .card-inner{padding:20px 22px}
.ld-card h6{font-size:15px;margin:0}
.ld-card .hint{font-size:12px;color:#8094ae}
.ld-chart{position:relative;height:240px;margin-top:8px}
.ld-tl{list-style:none;margin:0;padding:0}
.ld-tl li{display:flex;gap:14px;padding:12px 0;border-bottom:1px dashed #e5e9f2;align-items:center}
.ld-tl li:last-child{border-bottom:0}
.ld-tl .t{min-width:78px;font-weight:700;color:#1c2b46;font-size:13px}
.ld-tl .t small{display:block;font-weight:400;color:#8094ae}
.ld-tl .dot{width:10px;height:10px;border-radius:50%;background:#6576ff;flex:none;box-shadow:0 0 0 4px rgba(101,118,255,.15)}
.ld-tl .dot.zoom{background:#1ee0ac;box-shadow:0 0 0 4px rgba(30,224,172,.18)}
.ld-bar{height:8px;border-radius:4px;background:#eef0ff;overflow:hidden}
.ld-bar span{display:block;height:100%;border-radius:4px;background:#6576ff}
.ld-legend{display:flex;gap:14px;font-size:12px;color:#526484}
.ld-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}

/* ---------- My Classes ---------- */
.lc-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:18px}
.lc-head h3{margin:0;font-size:1.5rem}
.lc-head .sub{color:#8094ae;font-size:13px}
.lc-month{display:flex;align-items:center;background:#fff;border-radius:999px;box-shadow:0 2px 10px rgba(30,40,90,.06);padding:4px}
.lc-month a{padding:6px 14px;border-radius:999px;color:#526484;font-size:13px;font-weight:600;white-space:nowrap}
.lc-month a:hover{background:#eef0ff;color:#3b3fb6}
.lc-month .cur{background:#6576ff;color:#fff !important;padding:6px 18px}
.lc-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px}
.lc-stat{background:#fff;border-radius:12px;box-shadow:0 2px 10px rgba(30,40,90,.06);padding:14px 16px;display:flex;gap:12px;align-items:center}
.lc-stat .ic{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex:none}
.lc-stat .v{font-size:1.25rem;font-weight:700;color:#1c2b46;line-height:1.1}
.lc-stat .k{font-size:12px;color:#8094ae}
.lc-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.lc-chip{border:1px solid #dbdfea;background:#fff;color:#526484;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:.15s}
.lc-chip:hover{border-color:#6576ff;color:#3b3fb6}
.lc-chip.on{background:#1c2b46;border-color:#1c2b46;color:#fff}
.lc-chip .n{display:inline-block;min-width:20px;margin-left:6px;padding:0 6px;border-radius:999px;background:rgba(128,148,174,.18);font-size:11px;text-align:center}
.lc-chip.on .n{background:rgba(255,255,255,.2)}
.lc-day{display:flex;gap:16px;margin-bottom:14px}
.lc-date{flex:none;width:64px;text-align:center;padding-top:6px}
.lc-date .dw{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#8094ae;font-weight:600}
.lc-date .dd{font-size:1.7rem;font-weight:700;color:#1c2b46;line-height:1.1}
.lc-date.today .dd{color:#6576ff}
.lc-date.today .dw:after{content:" • Today";color:#6576ff}
.lc-list{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}
.lc-card{background:#fff;border-radius:12px;box-shadow:0 2px 10px rgba(30,40,90,.06);padding:16px 18px;display:flex;gap:16px;align-items:center;border-left:4px solid #c5cbff;transition:.15s}
.lc-card:hover{box-shadow:0 6px 18px rgba(30,40,90,.1);transform:translateY(-1px)}
.lc-card.zoom{border-left-color:#1ee0ac}
.lc-card.live{border-left-color:#e85347;background:linear-gradient(90deg,#fff7f6,#fff 40%)}
.lc-card.cancel{border-left-color:#dbdfea;opacity:.7}
.lc-card .time{flex:none;width:92px;font-weight:700;color:#1c2b46;font-size:14px}
.lc-card .time small{display:block;font-weight:400;color:#8094ae;font-size:12px}
.lc-card .body{flex:1;min-width:0}
.lc-card .mod{font-weight:700;color:#1c2b46;font-size:15px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lc-card .mod:hover{color:#6576ff}
.lc-card .meta{font-size:12px;color:#8094ae;margin-top:2px}
.lc-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.lc-tag{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;background:#f2f4f8;color:#526484;display:inline-flex;align-items:center;gap:4px}
.lc-tag.zoom{background:#e6faf4;color:#0b8a66}
.lc-tag.live{background:#fdeeec;color:#c4362a}
.lc-tag.live:before{content:"";width:7px;height:7px;border-radius:50%;background:#e85347;animation:lcPulse 1.2s infinite}
.lc-tag.up{background:#eef0ff;color:#3b3fb6}
.lc-tag.done{background:#f2f4f8;color:#526484}
.lc-tag.cancel{background:#fdeeec;color:#c4362a}
@keyframes lcPulse{0%,100%{opacity:1}50%{opacity:.3}}
.lc-att{flex:none;width:150px}
.lc-att .lbl{display:flex;justify-content:space-between;font-size:12px;color:#8094ae;margin-bottom:4px}
.lc-att .lbl b{color:#1c2b46}
.lc-att .bar{height:6px;border-radius:3px;background:#eef1f6;overflow:hidden;display:flex}
.lc-att .bar .p{background:#1ee0ac}
.lc-att .bar .a{background:#f4a6a0}
.lc-actions{flex:none;display:flex;gap:6px}
.lc-empty{background:#fff;border-radius:12px;box-shadow:0 2px 10px rgba(30,40,90,.06);padding:50px 20px;text-align:center;color:#8094ae}
.lc-empty .ni{font-size:42px;color:#c5cbff;display:block;margin-bottom:8px}
@media (max-width: 767px){
  .lc-card{flex-wrap:wrap}
  .lc-card .time{width:auto}
  .lc-att{width:100%}
  .lc-actions{width:100%}
  .lc-actions .btn{flex:1;justify-content:center}
  .lc-day{gap:10px}.lc-date{width:44px}.lc-date .dd{font-size:1.3rem}
}

/* ---------- Calendar ---------- */
.lc-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.lc-view{display:flex;background:#fff;border-radius:999px;box-shadow:0 2px 10px rgba(30,40,90,.06);padding:4px}
.lc-view button{border:0;background:none;padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600;color:#526484;display:inline-flex;gap:6px;align-items:center}
.lc-view button.on{background:#1c2b46;color:#fff}
.lc-cal-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
.lc-cal{background:#fff;border-radius:14px;box-shadow:0 2px 10px rgba(30,40,90,.06);overflow:hidden}
.lc-cal .wk{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.lc-cal .hd div{padding:10px 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8094ae;text-align:center;background:#f8f9fc;border-bottom:1px solid #eef1f6}
.lc-cell{min-height:112px;border-right:1px solid #eef1f6;border-bottom:1px solid #eef1f6;padding:6px;cursor:pointer;transition:background .12s;position:relative}
.lc-cell:nth-child(7n){border-right:0}
.lc-cell:hover{background:#fafbff}
.lc-cell.out{background:#fbfcfd;cursor:default}
.lc-cell.out .n{color:#c3cad6}
.lc-cell.sel{background:#f3f4ff;box-shadow:inset 0 0 0 2px #6576ff}
.lc-cell .n{font-size:13px;font-weight:700;color:#526484;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-bottom:4px}
.lc-cell.today .n{background:#6576ff;color:#fff}
.lc-cell.wkend:not(.out){background:#fcfcfe}
.lc-ev{display:block;font-size:11px;line-height:1.25;padding:4px 6px;border-radius:6px;margin-bottom:3px;background:#eef0ff;color:#3b3fb6;border-left:3px solid #6576ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.lc-ev:hover{filter:brightness(.96);color:#3b3fb6}
.lc-ev .tm{font-weight:700;margin-right:3px}
.lc-ev.zoom{background:#e6faf4;color:#0b7a5a;border-left-color:#1ee0ac}
.lc-ev.live{background:#fdeeec;color:#b8322a;border-left-color:#e85347}
.lc-ev.cancel{background:#f2f4f8;color:#8094ae;border-left-color:#c3cad6;text-decoration:line-through}
.lc-ev.done{opacity:.75}
.lc-more{font-size:11px;color:#6576ff;font-weight:600;padding-left:4px}
.lc-dots{display:none}
.lc-agenda{background:#fff;border-radius:14px;box-shadow:0 2px 10px rgba(30,40,90,.06);padding:18px;position:sticky;top:80px}
.lc-agenda h6{margin:0;font-size:15px}
.lc-agenda .ds{color:#8094ae;font-size:12px;margin-bottom:12px}
.lc-ag{border-radius:10px;border:1px solid #eef1f6;padding:12px;margin-bottom:10px;border-left:4px solid #6576ff}
.lc-ag.zoom{border-left-color:#1ee0ac}.lc-ag.live{border-left-color:#e85347}.lc-ag.cancel{border-left-color:#c3cad6;opacity:.75}
.lc-ag .t{font-size:12px;font-weight:700;color:#526484}
.lc-ag .m{font-weight:700;color:#1c2b46;display:block;margin:2px 0}
.lc-ag .b{font-size:12px;color:#8094ae}
.lc-ag .acts{display:flex;gap:6px;margin-top:10px}
.lc-ag .acts .btn{flex:1;justify-content:center}
.lc-legend2{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:#526484;margin-top:12px}
.lc-legend2 i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:5px;vertical-align:-2px}
@media (max-width:1199px){.lc-cal-wrap{grid-template-columns:1fr}.lc-agenda{position:static}}
@media (max-width:767px){
  .lc-cell{min-height:58px;padding:4px}
  .lc-cell .lc-ev,.lc-cell .lc-more{display:none}
  .lc-dots{display:flex;gap:3px;flex-wrap:wrap;padding-left:4px}
  .lc-dots i{width:7px;height:7px;border-radius:50%;background:#6576ff}
  .lc-dots i.zoom{background:#1ee0ac}.lc-dots i.live{background:#e85347}.lc-dots i.cancel{background:#c3cad6}
  .lc-cal .hd div{font-size:10px;padding:8px 2px}
}

/* ---------- Profile ---------- */
.lp-hero{background:#fff;border-radius:16px;box-shadow:0 2px 10px rgba(30,40,90,.06);overflow:hidden}
.lp-cover{height:120px;background:linear-gradient(120deg,#3b3fb6 0%,#6576ff 55%,#8f8cff 100%);position:relative}
.lp-cover:after{content:"";position:absolute;right:-50px;top:-70px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.08)}
.lp-main{display:flex;align-items:flex-end;gap:20px;padding:0 26px 22px;flex-wrap:wrap}
.lp-avatar{width:112px;height:112px;border-radius:50%;margin-top:-56px;border:5px solid #fff;background:linear-gradient(135deg,#6576ff,#3b3fb6);box-shadow:0 6px 18px rgba(30,40,90,.15);position:relative;overflow:hidden;flex:none;display:flex;align-items:center;justify-content:center}
.lp-avatar span{color:#fff;font-size:2.1rem;font-weight:700;letter-spacing:.02em}
.lp-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lp-id{flex:1;min-width:220px;padding-top:12px}
.lp-id h3{margin:0;font-size:1.45rem}
.lp-role{color:#8094ae;font-size:13px;margin-top:2px}
.lp-contacts{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:10px;font-size:13px}
.lp-contacts a,.lp-contacts span{color:#526484;display:inline-flex;align-items:center;gap:5px}
.lp-contacts a:hover{color:#6576ff}
.lp-stats{display:flex;gap:6px;flex-wrap:wrap}
.lp-stats div{background:#f5f6fb;border-radius:12px;padding:10px 16px;text-align:center;min-width:88px}
.lp-stats b{display:block;font-size:1.3rem;color:#1c2b46;line-height:1.1}
.lp-stats span{font-size:11px;color:#8094ae}
.lp-tabs{display:flex;gap:6px;margin-bottom:16px;border-bottom:1px solid #e5e9f2;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.lp-tabs::-webkit-scrollbar{display:none}
.lp-tabs button{border:0;background:none;padding:10px 16px;font-weight:600;color:#8094ae;border-bottom:2px solid transparent;margin-bottom:0;display:inline-flex;gap:6px;align-items:center;white-space:nowrap}
.lp-tabs button:hover{color:#526484}
.lp-tabs button.on{color:#6576ff;border-bottom-color:#6576ff}
.lp-tabs .n{background:#eef0ff;color:#3b3fb6;border-radius:999px;font-size:11px;padding:1px 7px}
.lp-sec{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.lp-sec .ni{width:34px;height:34px;border-radius:9px;background:#eef0ff;color:#6576ff;display:flex;align-items:center;justify-content:center;font-size:17px}
.lp-sec h6{margin:0;font-size:15px}
.lp-dl{display:grid;grid-template-columns:150px 1fr;gap:0;margin:0}
.lp-dl dt,.lp-dl dd{padding:10px 0;border-bottom:1px dashed #eef1f6;margin:0}
.lp-dl dt{color:#8094ae;font-weight:500;font-size:13px}
.lp-dl dt small{font-weight:400}
.lp-dl dd{color:#1c2b46;font-weight:600}
.lp-dl dt:nth-last-of-type(1),.lp-dl dd:last-child{border-bottom:0}
.lp-dl-3{grid-template-columns:150px 1fr}
.lp-note{margin-top:14px;font-size:13px;color:#526484;background:#f5f6fb;border-radius:10px;padding:12px 14px;display:flex;gap:8px;align-items:center}
.lp-mod{background:#fff;border-radius:12px;box-shadow:0 2px 10px rgba(30,40,90,.06);padding:16px;display:flex;gap:14px;height:100%;transition:.15s}
.lp-mod:hover{box-shadow:0 6px 18px rgba(30,40,90,.1);transform:translateY(-1px)}
.lp-mod .ic{width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,#6576ff,#8f8cff);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.lp-mod .t{font-weight:700;color:#1c2b46}
.lp-mod .c{font-size:12px;color:#8094ae}
.min-w-0{min-width:0}
.lp-pw{position:relative}
.lp-pw .form-control{padding-right:46px}
.lp-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:none;color:#8094ae;font-size:18px;padding:6px 8px}
.lp-eye:hover{color:#6576ff}
.lp-meter{height:6px;border-radius:3px;background:#eef1f6;margin:8px 0 6px;overflow:hidden}
.lp-meter span{display:block;height:100%;width:0;border-radius:3px;transition:width .2s,background .2s}
.lp-tips{list-style:none;padding:0;margin:0 0 16px}
.lp-tips li{padding:8px 0 8px 26px;position:relative;font-size:13px;color:#526484;border-bottom:1px dashed #eef1f6}
.lp-tips li:before{content:"✓";position:absolute;left:4px;color:#1ee0ac;font-weight:700}
.lp-login{display:flex;gap:12px;align-items:center;background:#f5f6fb;border-radius:10px;padding:12px 14px}
.lp-login .ni{font-size:22px;color:#6576ff}
@media (max-width:767px){
  .lp-main{flex-direction:column;align-items:flex-start;padding:0 18px 18px}
  .lp-stats{width:100%}.lp-stats div{flex:1;min-width:70px;padding:8px}
  .lp-dl,.lp-dl-3{grid-template-columns:1fr}.lp-dl dt{padding-bottom:0;border-bottom:0}
}
.lp-btn{background:#6576ff;border-color:#6576ff;color:#fff}.lp-btn:hover{background:#4b5ae6;border-color:#4b5ae6;color:#fff}

/* clickable stat tiles + detail popups */
.lp-stats button{border:0;background:#f5f6fb;border-radius:12px;padding:10px 16px;text-align:center;min-width:88px;cursor:pointer;transition:.15s;position:relative}
.lp-stats button:hover{background:#eef0ff;transform:translateY(-2px);box-shadow:0 6px 14px rgba(101,118,255,.18)}
.lp-stats button:hover b{color:#3b3fb6}
.lp-stats button:after{content:"View";position:absolute;left:0;right:0;bottom:-18px;font-size:10px;color:#6576ff;opacity:0;transition:.15s}
.lp-stats button:hover:after{opacity:1}
.lp-stats button b{display:block;font-size:1.3rem;color:#1c2b46;line-height:1.1}
.lp-stats button span{font-size:11px;color:#8094ae}
.lp-modal .modal-content{border:0;border-radius:16px;overflow:hidden}
.lp-modal .modal-header{background:linear-gradient(120deg,#f3f4ff,#fff);border-bottom:1px solid #eef1f6;padding:18px 22px}
.lp-modal .modal-body{padding:20px 22px}
.lp-mic{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,#6576ff,#3b3fb6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.lp-mh{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#8094ae;margin-bottom:14px}
.lp-table thead th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#8094ae;font-weight:700;border-bottom-width:1px;white-space:nowrap}
.lp-mrow{display:flex;gap:14px;padding:14px 0;border-bottom:1px dashed #eef1f6}
.lp-mrow:last-child{border-bottom:0}
.lp-mrow .ic{width:40px;height:40px;border-radius:10px;background:#eef0ff;color:#6576ff;display:flex;align-items:center;justify-content:center;font-size:19px;flex:none}
.lp-bcard{border:1px solid #eef1f6;border-radius:12px;padding:16px;height:100%;border-top:4px solid #6576ff}
.lp-bnums{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.lp-bnums div{background:#f5f6fb;border-radius:9px;padding:8px;text-align:center}
.lp-bnums b{display:block;color:#1c2b46;font-size:1.05rem}
.lp-bnums span{font-size:11px;color:#8094ae}
@media (max-width:767px){.lp-stats button{flex:1;min-width:70px;padding:8px}}
.lp-mtop{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
.lp-msub{font-size:12px;color:#8094ae;line-height:1.4;margin-top:2px}
.lp-mtags{display:flex;gap:6px;flex-wrap:wrap}
.lp-mprog{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#8094ae;line-height:1.4;margin:10px 0 5px}
.lp-mprog b{color:#1c2b46}
.lp-bname{font-size:1.35rem;font-weight:700;color:#1c2b46;line-height:1.25}

/* the theme defines .gap-N as fixed-height spacers - keep Bootstrap gap utilities from squashing flex rows */
.d-flex.gap-1,.d-flex.gap-2,.d-flex.gap-3,.d-flex.gap-4,.d-inline-flex.gap-1,.d-inline-flex.gap-2{height:auto}

/* ---------- Class page ---------- */
.lv-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#6576ff;margin-bottom:12px}
.lv-hero{background:linear-gradient(120deg,#3b3fb6 0%,#6576ff 60%,#8f8cff 100%);border-radius:16px;color:#fff;padding:24px 26px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;position:relative;overflow:hidden}
.lv-hero:after{content:"";position:absolute;right:-70px;top:-90px;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.07)}
.lv-hero-main{flex:1;min-width:280px;position:relative;z-index:1}
.lv-hero h2{color:#fff;font-size:1.65rem;margin:10px 0 2px}
.lv-course{color:rgba(255,255,255,.8);font-size:14px}
.lv-badges{display:flex;flex-wrap:wrap;gap:6px}
.lv-pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:4px 11px;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.22)}
.lv-pill.lv-live{background:#e85347;border-color:#e85347}
.lv-pill.lv-live:before{content:"";width:7px;height:7px;border-radius:50%;background:#fff;animation:lcPulse 1.2s infinite}
.lv-pill.lv-done{background:rgba(255,255,255,.92);color:#3b3fb6}
.lv-pill.lv-up{background:#1ee0ac;border-color:#1ee0ac;color:#0b4d3a}
.lv-pill.lv-cancel{background:#526484;border-color:#526484}
.lv-facts{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:18px}
.lv-facts>div{display:flex;align-items:center;gap:10px}
.lv-facts .ni{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;font-size:17px}
.lv-facts span{display:flex;flex-direction:column;font-size:12px;color:rgba(255,255,255,.75);line-height:1.35}
.lv-facts b{color:#fff;font-size:14px}
.lv-ring-box{display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:16px 20px;position:relative;z-index:1}
.lv-ring{--p:0;--a:0;width:104px;height:104px;border-radius:50%;flex:none;
  background:conic-gradient(#1ee0ac calc(var(--p)*1%),#ff8a80 0 calc((var(--p) + var(--a))*1%),rgba(255,255,255,.22) 0);display:flex;align-items:center;justify-content:center;transition:background .3s}
.lv-ring>div{width:78px;height:78px;border-radius:50%;background:#4f5be0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.lv-ring b{font-size:1.35rem;color:#fff;line-height:1}
.lv-ring span{font-size:11px;color:rgba(255,255,255,.75)}
.lv-ring-legend div{font-size:13px;color:rgba(255,255,255,.9);margin:3px 0;display:flex;align-items:center;gap:7px}
.lv-ring-legend span{font-weight:700;color:#fff}
.lv-ring-legend i{width:10px;height:10px;border-radius:3px;display:inline-block}
.lv-ring-legend i.p{background:#1ee0ac}.lv-ring-legend i.a{background:#ff8a80}.lv-ring-legend i.u{background:rgba(255,255,255,.4)}.lv-ring-legend i.z{background:#fff}
.lv-card{background:#fff;border-radius:14px;box-shadow:0 2px 10px rgba(30,40,90,.06);padding:20px 22px;margin-top:18px}
.lv-card h6{font-size:16px;margin:0 0 2px}
.lv-sub{font-size:13px;color:#8094ae}
.lv-zoom{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap;border-left:4px solid #1ee0ac}
.lv-zoom-ic{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#1ee0ac,#0fac81);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;flex:none}
.lv-zoom-body{flex:1;min-width:240px}
.lv-zoom-body p{color:#526484;margin:4px 0 14px}
.lv-live-txt{color:#0b8a66 !important;font-weight:600}
.lv-zoom-actions{display:flex;flex-wrap:wrap;gap:10px}
.lv-zoom-meta{flex:none;width:320px;max-width:100%;background:#f5f6fb;border-radius:12px;padding:14px 16px}
.lv-kv{display:flex;justify-content:space-between;font-size:13px;padding:3px 0}
.lv-kv span{color:#8094ae}.lv-kv b{color:#1c2b46;letter-spacing:.03em}
.lv-copy{display:flex;margin-top:6px;border:1px solid #dbdfea;border-radius:9px;overflow:hidden;background:#fff}
.lv-copy input{flex:1;min-width:0;border:0;padding:7px 10px;font-size:12px;color:#526484;outline:0}
.lv-copy button{border:0;background:#6576ff;color:#fff;padding:0 12px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:5px}
.lv-btn-go{background:#1ee0ac;border-color:#1ee0ac;color:#0b4d3a;font-weight:700}
.lv-btn-go:hover{background:#12c99a;border-color:#12c99a;color:#0b4d3a}
.lv-btn-ghost{background:#fff;border:1px solid #6576ff;color:#3b3fb6;font-weight:600}
.lv-btn-ghost:hover{background:#eef0ff;color:#3b3fb6}
.lv-btn{background:#6576ff;border-color:#6576ff;color:#fff;font-weight:600}
.lv-btn:hover{background:#4b5ae6;color:#fff}
.lv-btn-soft{background:#eef0ff;border-color:#eef0ff;color:#3b3fb6;font-weight:600}
.lv-btn-soft-g{background:#e6faf4;border-color:#e6faf4;color:#0b8a66;font-weight:600}
.lv-btn-soft-g:hover{background:#d0f5ea;color:#0b8a66}
.lv-btn-soft-r{background:#fdeeec;border-color:#fdeeec;color:#c4362a;font-weight:600}
.lv-btn-soft-r:hover{background:#fbdcd8;color:#c4362a}
.lv-att-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.lv-att-head>div:first-child{flex:1;min-width:240px}
.lv-att-tools{display:flex;flex-wrap:wrap;gap:8px}
.lv-filter{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;border-top:1px solid #eef1f6}
.lv-search{position:relative;flex:1;max-width:320px;min-width:200px}
.lv-search .ni{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#8094ae}
.lv-search input{width:100%;border:1px solid #dbdfea;border-radius:999px;padding:7px 14px 7px 34px;font-size:13px;outline:0}
.lv-search input:focus{border-color:#6576ff;box-shadow:0 0 0 3px rgba(101,118,255,.12)}
.lv-synced{font-size:12px;color:#0b8a66;margin-bottom:4px}
.lv-list{display:flex;flex-direction:column}
.lv-row{display:flex;align-items:center;gap:14px;padding:11px 12px;border-radius:10px;border-left:3px solid transparent;transition:background .12s}
.lv-row:nth-child(odd){background:#fafbfd}
.lv-row:hover{background:#f3f4ff}
.lv-row.p{border-left-color:#1ee0ac}.lv-row.a{border-left-color:#ff8a80}
.lv-no{width:22px;font-size:12px;color:#8094ae;text-align:right;flex:none}
.lv-av{width:38px;height:38px;border-radius:50%;color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}
.lv-who{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
.lv-who b{color:#1c2b46;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-who span{font-size:12px;color:#8094ae}
.lv-who .lv-rm{font-size:11px;color:#9aa6b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lv-zoomcol{flex:none;width:210px;display:flex;flex-wrap:wrap;gap:4px}
.lv-z{font-size:11px;font-weight:600;background:#eef0ff;color:#3b3fb6;border-radius:999px;padding:2px 8px}
.lv-z.none{background:#f2f4f8;color:#8094ae}.lv-z.t{background:none;color:#8094ae;padding-left:0}
.lv-z.live{background:#e85347;color:#fff}
.lv-act{flex:none}
.lv-tog{display:inline-flex;background:#f2f4f8;border-radius:10px;padding:3px}
.lv-tog button{border:0;background:none;width:40px;height:32px;border-radius:8px;font-weight:700;color:#8094ae;font-size:13px;transition:.12s}
.lv-tog button:hover{color:#1c2b46;background:#fff}
.lv-tog button.on.p{background:#1ee0ac;color:#fff;box-shadow:0 2px 6px rgba(30,224,172,.35)}
.lv-tog button.on.a{background:#e85347;color:#fff;box-shadow:0 2px 6px rgba(232,83,71,.35)}
.lv-mk{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:#f2f4f8;color:#8094ae}
.lv-mk.p{background:#e6faf4;color:#0b8a66}.lv-mk.a{background:#fdeeec;color:#c4362a}
.lv-loading,.lv-empty-f{padding:30px;text-align:center;color:#8094ae}
.lv-warn{display:flex;gap:10px;background:#fff7e0;border-radius:10px;padding:12px 14px;margin-top:12px;font-size:13px;color:#7a5a00}
.lv-recs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.lv-rec{display:flex;gap:10px;align-items:center;border:1px solid #eef1f6;border-radius:10px;padding:12px;color:#1c2b46}
.lv-rec:hover{border-color:#6576ff;color:#1c2b46}
.lv-rec .ni{font-size:28px;color:#6576ff}
.lv-rec div{display:flex;flex-direction:column;line-height:1.35}
.lv-rec span{font-size:12px;color:#8094ae}
@media (max-width:767px){
  .lv-hero{padding:20px}.lv-ring-box{width:100%}
  .lv-row{flex-wrap:wrap}.lv-zoomcol{width:100%;padding-left:74px}
  .lv-no{display:none}
}

/* ---------- Forgot password ---------- */
.fp-steps{display:flex;align-items:center;justify-content:center;margin:18px 0 22px}
.fp-steps span{width:30px;height:30px;border-radius:50%;background:#eef1f6;color:#8094ae;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;transition:.2s}
.fp-steps span.on{background:#6576ff;color:#fff;box-shadow:0 0 0 4px rgba(101,118,255,.18)}
.fp-steps span.done{background:#1ee0ac;color:#fff}
.fp-steps i{width:40px;height:2px;background:#eef1f6;margin:0 6px}
.fp-msg{font-size:13px;margin:-4px 0 12px;min-height:0}
.fp-msg.err{color:#e85347}.fp-msg.ok{color:#0fac81}
.fp-sentto{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.fp-sentto div{display:flex;align-items:center;gap:10px;background:#f5f6fb;border-radius:10px;padding:10px 12px;font-size:13px}
.fp-sentto .ni{font-size:18px;color:#6576ff}
.fp-sentto span{color:#8094ae;width:44px}
.fp-sentto b{color:#1c2b46;letter-spacing:.03em}
.fp-dev{background:#fff7e0;color:#7a5a00;border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:14px}
.fp-otp{display:flex;gap:8px;justify-content:space-between;margin-bottom:14px}
.fp-otp input{width:48px;height:56px;border:1px solid #dbdfea;border-radius:10px;text-align:center;font-size:22px;font-weight:700;color:#1c2b46;outline:0;transition:.15s}
.fp-otp input:focus{border-color:#6576ff;box-shadow:0 0 0 3px rgba(101,118,255,.15)}
.fp-otp input.bad{border-color:#e85347;background:#fdeeec}
.fp-resend{text-align:center;font-size:13px;color:#8094ae;margin-top:12px}
.fp-resend button{border:0;background:none;color:#6576ff;font-weight:600;padding:0}
.fp-resend button:disabled{color:#b7c2d0}
@media (max-width:400px){.fp-otp input{width:40px;height:50px;font-size:19px}}
