﻿:root {
    --blue: #0d4b9a;
    --navy: #0a2247;
    --cyan: #08b8c8;
    --ice: #3dd6e6;
    --pink: #f47786;
    --orange: #f57c1f;
    --soft: #f4f8fb;
    --ink: #22304f;
    --mute: #5a6580;
    --line: #e2e8f2;
    --ok: #22b36b;
    --r: 20px
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

body {
    font-family: 'Lato-Regular','Lato',sans-serif;
    color: var(--ink);
    background: #fff;
    line-height: 1.55;
    overflow-x: hidden
}

h1, h2, h3, h4 {
    font-family: 'Lato-Black','Lato',sans-serif;
    line-height: 1.15
}

a {
    color: inherit;
    text-decoration: none
}

button, input {
    font: inherit
}

button {
    cursor: pointer
}

img {
    display: block;
    max-width: 100%
}

:focus-visible {
    outline: 3px solid var(--cyan);
    outline-offset: 2px
}

.mark {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: linear-gradient(135deg,var(--blue),var(--cyan));
    color: #fff;
    display: grid;
    place-items: center;
    font: 800 14px 'Lato-Black','Lato',sans-serif;
    box-shadow: 0 10px 22px rgba(13,75,154,.3);
    flex: none
}
/* preloader + transition loader */
#pre, #load {
    position: fixed;
    inset: 0;
    background: #fff;
    z-index: 500;
    display: grid;
    place-items: center;
    text-align: center;
    transition: opacity .6s,visibility .6s
}

    #pre.off {
        opacity: 0;
        visibility: hidden
    }

#load {
    display: none;
    background: linear-gradient(135deg,var(--navy),var(--blue));
    color: #fff;
    z-index: 400
}

    #load.on {
        display: grid;
        animation: fade .3s
    }

@keyframes fade {
    from {
        opacity: 0
    }
}

.ecg {
    width: 200px
}

    .ecg path {
        fill: none;
        stroke: var(--cyan);
        stroke-width: 3;
        stroke-dasharray: 400;
        stroke-dashoffset: 400;
        animation: draw 1.2s ease forwards
    }

#load .ecg path {
    stroke: var(--ice);
    animation: draw 1.2s ease infinite
}

@keyframes draw {
    to {
        stroke-dashoffset: 0
    }
}

#load p {
    margin-top: 14px;
    font-weight: 700;
    color: #c9d9f0
}

.pbar {
    width: 220px;
    height: 5px;
    border-radius: 9px;
    background: rgba(255,255,255,.18);
    margin: 16px auto 0;
    overflow: hidden
}

    .pbar i {
        display: block;
        height: 100%;
        width: 0;
        background: linear-gradient(90deg,var(--ice),var(--pink));
        border-radius: 9px
    }

#load.on .pbar i {
    animation: fill 1.5s ease forwards
}

@keyframes fill {
    to {
        width: 100%
    }
}
/* login */
.lg {
    min-height: 100vh;
    display: grid;
    grid-template-columns: minmax(360px,.9fr) 1.1fr
}

.fs {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px clamp(24px,6vw,84px);
    position: relative
}

    .fs::before {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(420px 320px at 0 0,rgba(8,184,200,.12),transparent 70%),radial-gradient(360px 300px at 100% 100%,rgba(244,119,134,.1),transparent 70%);
        pointer-events: none
    }

    .fs > * {
        position: relative
    }

.brand {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 52px
}

    .brand strong {
        display: block;
        font: 800 16px 'Lato-Black','Lato',sans-serif;
        color: var(--navy)
    }

    .brand small {
        font-size: 12px;
        color: var(--mute)
    }

.fs h1 {
    font-size: clamp(28px,3.2vw,40px);
    color: var(--navy);
    letter-spacing: -.02em
}

    .fs h1 span {
        background: linear-gradient(90deg,var(--blue),var(--cyan));
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent
    }

.fs .sub {
    color: var(--mute);
    margin: 10px 0 32px;
    max-width: 380px
}

.fl {
    position: relative;
    margin-bottom: 18px;
    max-width: 400px
}

    .fl input {
        width: 100%;
        height: 58px;
        border: 1.5px solid var(--line);
        border-radius: 16px;
        padding: 20px 48px 0 48px;
        background: #fff;
        color: var(--ink);
        font-weight: 600;
        transition: .25s
    }

    .fl label {
        position: absolute;
        left: 48px;
        top: 18px;
        color: var(--mute);
        font-weight: 600;
        font-size: 14.5px;
        pointer-events: none;
        transition: .2s;
        transform-origin: left
    }

    .fl input:focus, .fl input:not(:placeholder-shown) {
        padding-top: 22px
    }

        .fl input:focus ~ label, .fl input:not(:placeholder-shown) ~ label {
            top: 8px;
            font-size: 11.5px;
            color: var(--cyan)
        }

    .fl input:focus {
        border-color: var(--cyan);
        box-shadow: 0 0 0 5px rgba(8,184,200,.14)
    }

    .fl .ic {
        position: absolute;
        left: 16px;
        top: 16px;
        font-size: 18px;
        opacity: .7
    }

.eye {
    position: absolute;
    right: 8px;
    top: 8px;
    width: 42px;
    height: 42px;
    border: 0;
    background: none;
    border-radius: 12px;
    font-size: 17px
}

    .eye:hover {
        background: var(--soft)
    }

.fl.bad input {
    border-color: var(--pink);
    animation: shake .4s
}

@keyframes shake {
    25% {
        transform: translateX(-6px)
    }

    75% {
        transform: translateX(6px)
    }
}

.err {
    color: #d6455a;
    font-size: 13px;
    font-weight: 700;
    min-height: 20px;
    max-width: 400px;
    margin-bottom: 6px
}

.row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 400px;
    margin: 4px 0 24px;
    font-size: 13.5px;
    font-weight: 600
}

    .row label {
        display: flex;
        gap: 8px;
        align-items: center;
        cursor: pointer
    }

    .row input {
        accent-color: var(--blue);
        width: 16px;
        height: 16px
    }

    .row a {
        color: var(--blue)
    }

        .row a:hover {
            color: var(--cyan)
        }

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 54px;
    border: 0;
    border-radius: 99px;
    font-weight: 800;
    font-size: 15px;
    transition: .3s
}

.bp {
    width: 100%;
    max-width: 400px;
    background: linear-gradient(90deg,var(--blue),#1560d4);
    color: #fff;
    box-shadow: 0 14px 30px rgba(13,75,154,.32);
    position: relative;
    overflow: hidden
}

    .bp:hover {
        transform: translateY(-3px);
        box-shadow: 0 20px 38px rgba(13,75,154,.4)
    }

    .bp::after {
        content: "";
        position: absolute;
        top: 0;
        left: -60%;
        width: 40%;
        height: 100%;
        background: linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
        transform: skewX(-20deg);
        transition: .7s
    }

    .bp:hover::after {
        left: 130%
    }

.spin {
    width: 18px;
    height: 18px;
    border: 3px solid rgba(255,255,255,.35);
    border-top-color: #fff;
    border-radius: 50%;
    display: none;
    animation: rot .7s linear infinite
}

.bp.busy .spin {
    display: block
}

.bp.busy .bt {
    opacity: .85
}

@keyframes rot {
    to {
        transform: rotate(360deg)
    }
}

.foot {
    margin-top: 40px;
    font-size: 12.5px;
    color: var(--mute)
}

.art {
    position: relative;
    overflow: hidden;
    background: linear-gradient(155deg,rgba(6,18,42,.95),rgba(11,58,124,.88) 45%,rgba(8,150,175,.62)),url('https://images.unsplash.com/photo-1538108149393-fbbd81895907?auto=format&fit=crop&w=1400&q=60') center/cover,var(--navy);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(40px,5vw,68px)
}

    .art::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px) 0 0/44px 44px,linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px) 0 0/44px 44px;
        -webkit-mask-image: radial-gradient(circle at 30% 30%,#000,transparent 75%);
        mask-image: radial-gradient(circle at 30% 30%,#000,transparent 75%)
    }

    .art::after {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(680px 420px at 105% 105%,rgba(0,0,0,.35),transparent 65%),radial-gradient(420px 300px at -10% -10%,rgba(61,214,230,.18),transparent 70%);
        pointer-events: none
    }

.orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(10px);
    animation: fl 9s ease-in-out infinite
}

.o1 {
    width: 340px;
    height: 340px;
    right: -90px;
    top: -100px;
    background: radial-gradient(circle,rgba(61,214,230,.5),transparent 70%)
}

.o2 {
    width: 280px;
    height: 280px;
    left: -70px;
    bottom: -70px;
    background: radial-gradient(circle,rgba(244,119,134,.4),transparent 70%);
    animation-delay: -4s
}

.o3 {
    width: 200px;
    height: 200px;
    left: 38%;
    top: 8%;
    background: radial-gradient(circle,rgba(255,255,255,.14),transparent 70%);
    animation-delay: -6.5s
}

@keyframes fl {
    50% {
        transform: translateY(-22px)
    }
}

.atag {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    padding: 8px 16px 8px 12px;
    border-radius: 99px;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.28);
    backdrop-filter: blur(10px);
    font-size: 12.5px;
    font-weight: 700;
    color: #e3f4f7;
    margin-bottom: 24px;
    letter-spacing: .01em
}

    .atag .i {
        width: 14px;
        height: 14px;
        color: var(--ice)
    }

.art h2 {
    position: relative;
    font-size: clamp(28px,3.4vw,44px);
    max-width: 460px;
    letter-spacing: -.02em
}

    .art h2 em {
        font-style: normal;
        background: linear-gradient(90deg,var(--ice),#8ff0d6);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent
    }

.art p {
    position: relative;
    color: #c9d9f0;
    max-width: 420px;
    margin-top: 16px
}

.gc {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 10px;
    margin-top: 32px;
    max-width: 440px
}

.g {
    position: relative;
    display: flex;
    flex-direction: column;
    background: linear-gradient(160deg, rgb(255 255 255), rgb(255 255 255));
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(14px);
    border-radius: 14px;
    padding: 12px 12px 11px;
    overflow: hidden;
    transition: border-color .25s,background .25s
}

    .g::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(125deg,rgba(255,255,255,.16),transparent 55%);
        opacity: .6;
        pointer-events: none
    }

    .g:hover {
        border-color: rgba(61,214,230,.5);
        background: #E0F7FA;
    }

.gi {
    position: relative;
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border-radius: 8px;
    background: rgba(61,214,230,.18);
    border: 1px solid rgba(61,214,230,.32);
    margin-bottom: 8px
}

    .gi .i {
        width: 13px;
        height: 13px;
        color: var(--ice)
    }

.g b {
    position: relative;
    display: block;
    font: 800 17px 'Lato-Black','Lato',sans-serif;
    color: #22304f;
    letter-spacing: -.01em;
    line-height: 1.2
}

.g small {
    position: relative;
    display: block;
    font-size: 10px;
    color: #0d4b9a;
    font-weight: 700;
    margin-top: 1px
}

.g.wide {
    grid-column: 1/-1;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    padding: 9px 14px
}

    .g.wide .gi {
        margin: 0
    }

.gwrow {
    position: relative;
    display: flex;
    align-items: center;
    gap: 7px;
    flex: none
}

    .gwrow small {
        margin: 0;
        font-size: 11px;
        color: #0d4b9a;
        ;
        white-space: nowrap
    }

.pulse-dot {
    width: 7px;
    height: 7px;
    flex: none;
    border-radius: 50%;
    background: var(--ice);
    box-shadow: 0 0 0 0 rgba(61,214,230,.6);
    animation: pulse 1.8s infinite
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(61,214,230,.55)
    }

    70% {
        box-shadow: 0 0 0 8px rgba(61,214,230,0)
    }

    100% {
        box-shadow: 0 0 0 0 rgba(61,214,230,0)
    }
}

.ecgl {
    position: relative;
    width: 100%;
    height: 22px;
    flex: 1
}

    .ecgl path {
        fill: none;
        stroke: var(--ice);
        stroke-width: 2.2;
        stroke-linecap: round;
        stroke-linejoin: round;
        filter: drop-shadow(0 0 4px rgba(61,214,230,.5))
    }
/* app shell */
.sb {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    width: 272px;
    background: #fff;
    border-right: 1px solid var(--line);
    z-index: 60;
    display: flex;
    flex-direction: column;
    transition: transform .35s
}

.sbh {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 22px 22px 18px
}

    .sbh strong {
        display: block;
        font: 800 14.5px 'Lato-Black','Lato',sans-serif;
        color: var(--navy)
    }

    .sbh small {
        font-size: 11px;
        color: var(--mute)
    }

.nav {
    flex: 1;
    overflow-y: auto;
    padding: 6px 14px 20px
}

.grp {
    font: 800 11px 'Lato-Regular','Lato',sans-serif;
    color: #9aa6c0;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin: 16px 10px 6px
}

.it {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 11px 14px;
    border: 0;
    background: none;
    border-radius: 14px;
    font-weight: 700;
    font-size: 14px;
    color: var(--mute);
    text-align: left;
    transition: .25s;
    position: relative
}

    .it:hover {
        background: var(--soft);
        color: var(--blue);
        transform: translateX(3px)
    }

    .it.on {
        background: linear-gradient(90deg,var(--blue),#1560d4);
        color: #fff;
        box-shadow: 0 10px 22px rgba(13,75,154,.28)
    }

    .it .ch {
        margin-left: auto;
        transition: .3s;
        font-size: 12px
    }

.gp.open > .it .ch {
    transform: rotate(90deg)
}

.sub2 {
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s;
    padding-left: 22px
}

.gp.open .sub2 {
    max-height: 140px
}

.sub2 .it {
    font-size: 13px;
    padding: 8px 14px;
    font-weight: 600
}

    .sub2 .it::before {
        content: "";
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: var(--cyan);
        flex: none
    }

.sbf {
    margin: 14px;
    padding: 16px;
    border-radius: 18px;
    background: linear-gradient(140deg,var(--blue),var(--navy));
    color: #fff;
    font-size: 12.5px
}

    .sbf b {
        display: block;
        font-family: 'Lato-Black','Lato',sans-serif;
        margin-bottom: 4px
    }

    .sbf span {
        color: #c9d9f0
    }

.main {
    margin-left: 272px;
    min-height: 100vh;
    background: var(--soft)
}

.top {
    position: sticky;
    top: 0;
    z-index: 50;
    height: 72px;
    background: rgba(255,255,255,.85);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--line);
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 0 28px
}

.ib {
    width: 42px;
    height: 42px;
    border-radius: 13px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 17px;
    position: relative;
    transition: .25s
}

    .ib:hover {
        border-color: var(--cyan);
        transform: translateY(-2px)
    }

    .ib .dot {
        position: absolute;
        top: 8px;
        right: 9px;
        width: 9px;
        height: 9px;
        border-radius: 50%;
        background: var(--pink);
        border: 2px solid #fff
    }

#menu {
    display: none
}

.srch {
    flex: 1;
    max-width: 400px;
    position: relative
}

    .srch input {
        width: 100%;
        height: 42px;
        border-radius: 13px;
        border: 1px solid var(--line);
        background: var(--soft);
        padding: 0 14px 0 40px;
        outline: 0;
        transition: .25s
    }

        .srch input:focus {
            background: #fff;
            border-color: var(--cyan);
            box-shadow: 0 0 0 4px rgba(8,184,200,.14)
        }

    .srch i {
        position: absolute;
        left: 14px;
        top: 9px;
        font-style: normal;
        opacity: .6
    }

.tr {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative
}

.me {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--line);
    background: #fff;
    border-radius: 99px;
    padding: 4px 14px 4px 4px;
    font-weight: 700;
    font-size: 13.5px;
    transition: .25s
}

    .me:hover {
        border-color: var(--cyan)
    }

.av {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: linear-gradient(135deg,var(--cyan),var(--blue));
    color: #fff;
    display: grid;
    place-items: center;
    font: 800 13px 'Lato-Black','Lato',sans-serif
}

.dd {
    position: absolute;
    right: 0;
    top: 54px;
    width: 210px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: 0 24px 50px rgba(13,75,154,.18);
    padding: 8px;
    display: none
}

    .dd.on {
        display: block;
        animation: up .25s
    }

    .dd button {
        display: block;
        width: 100%;
        text-align: left;
        padding: 10px 12px;
        border: 0;
        background: none;
        border-radius: 10px;
        font-weight: 700;
        font-size: 13.5px
    }

        .dd button:hover {
            background: var(--soft);
            color: var(--blue)
        }

    .dd .lo {
        color: var(--orange)
    }

@keyframes up {
    from {
        opacity: 0;
        transform: translateY(14px)
    }
}

.ct {
    padding: 28px;
    max-width: 1300px
}

.crumb {
    font-size: 13px;
    color: var(--mute);
    margin-bottom: 16px;
    font-weight: 600
}

    .crumb b {
        color: var(--blue)
    }

.hero {
    position: relative;
    overflow: hidden;
    border-radius: 26px;
    padding: 34px 36px;
    color: #fff;
    background: linear-gradient(120deg,var(--navy),var(--blue) 60%,#0a8fb0);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap
}

    .hero::after {
        content: "";
        position: absolute;
        width: 320px;
        height: 320px;
        right: -70px;
        top: -120px;
        border-radius: 50%;
        background: radial-gradient(circle,rgba(61,214,230,.5),transparent 70%)
    }

    .hero h2 {
        font-size: clamp(22px,2.6vw,32px);
        position: relative
    }

    .hero p {
        color: #c9d9f0;
        margin-top: 6px;
        position: relative;
        max-width: 480px
    }

    .hero .btn {
        height: 46px;
        background: #fff;
        color: var(--blue);
        padding: 0 22px;
        position: relative
    }

        .hero .btn:hover {
            transform: translateY(-3px);
            box-shadow: 0 12px 26px rgba(0,0,0,.2)
        }

.sg {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    gap: 16px;
    margin: 22px 0
}

.c {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: var(--r);
    padding: 22px;
    box-shadow: 0 6px 24px rgba(13,75,154,.05);
    transition: .3s
}

    .c:hover {
        transform: translateY(-6px);
        box-shadow: 0 22px 44px rgba(13,75,154,.13);
        border-color: transparent
    }

.st i {
    font-style: normal;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    font-size: 20px;
    background: var(--soft);
    margin-bottom: 14px;
    transition: .3s
}

.st:hover i {
    background: var(--cyan);
    transform: rotate(-8deg) scale(1.08)
}

.st b {
    display: block;
    font: 800 30px 'Lato-Black','Lato',sans-serif;
    color: var(--navy)
}

.st span {
    font-size: 13px;
    color: var(--mute);
    font-weight: 600
}

.gd {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 18px;
    margin-bottom: 22px
}

.c h3 {
    font-size: 18px;
    color: var(--navy);
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px
}

    .c h3 small {
        font: 600 12px 'Lato-Regular','Lato',sans-serif;
        color: var(--mute)
    }

.chart svg {
    width: 100%;
    height: 220px
}

.chart .l {
    fill: none;
    stroke: url(#gr);
    stroke-width: 3.5;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 1200;
    stroke-dashoffset: 1200
}

.chart.go .l {
    animation: draw 1.8s ease forwards
}

.chart .a {
    fill: url(#ar);
    opacity: 0
}

.chart.go .a {
    animation: fade .8s 1.2s forwards
}

@keyframes fade {
    to {
        opacity: 1
    }
}

.chart text {
    font: 600 11px 'Lato-Regular','Lato',sans-serif;
    fill: #8a97b2
}

.chart .pt {
    fill: #fff;
    stroke: var(--cyan);
    stroke-width: 3;
    opacity: 0
}

.chart.go .pt {
    animation: fade .4s 1.6s forwards
}

.qa {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 12px
}

.q {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #fff;
    text-align: left;
    transition: .3s;
    font-weight: 800;
    font-size: 13.5px;
    color: var(--navy)
}

    .q i {
        font-style: normal;
        font-size: 20px;
        width: 42px;
        height: 42px;
        border-radius: 12px;
        background: var(--soft);
        display: grid;
        place-items: center;
        flex: none;
        transition: .3s
    }

    .q:hover {
        border-color: var(--cyan);
        transform: translateY(-4px);
        box-shadow: 0 14px 30px rgba(8,184,200,.18)
    }

        .q:hover i {
            background: var(--cyan)
        }

    .q small {
        display: block;
        font-weight: 600;
        color: var(--mute);
        font-size: 11.5px
    }

    .q.lo i {
        background: #fff1e6
    }

    .q.lo {
        color: var(--orange)
    }

        .q.lo:hover {
            border-color: var(--orange);
            box-shadow: 0 14px 30px rgba(245,124,31,.18)
        }

.gd2 {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 18px
}

table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px
}

th {
    text-align: left;
    font: 800 11.5px 'Lato-Regular','Lato',sans-serif;
    color: #8a97b2;
    text-transform: uppercase;
    letter-spacing: .05em;
    padding: 0 10px 10px
}

td {
    padding: 12px 10px;
    border-top: 1px solid var(--line);
    font-weight: 600
}

tr.r {
    transition: .3s
}

    tr.r:hover {
        background: var(--soft)
    }

    tr.r.del {
        opacity: 0;
        transform: translateX(30px)
    }

.sw {
    width: 44px;
    height: 24px;
    border-radius: 99px;
    border: 0;
    background: #cfd8e6;
    position: relative;
    transition: .3s
}

    .sw::after {
        content: "";
        position: absolute;
        top: 3px;
        left: 3px;
        width: 18px;
        height: 18px;
        border-radius: 50%;
        background: #fff;
        transition: .3s;
        box-shadow: 0 2px 6px rgba(0,0,0,.2)
    }

    .sw.on {
        background: var(--ok)
    }

        .sw.on::after {
            left: 23px
        }

.ac button {
    border: 0;
    background: none;
    width: 32px;
    height: 32px;
    border-radius: 10px;
    font-size: 14px;
    transition: .2s
}

    .ac button:hover {
        background: #fde8eb;
        transform: scale(1.1)
    }

.ac .e:hover {
    background: #e3f6f9
}

.act li {
    list-style: none;
    display: flex;
    gap: 12px;
    padding: 11px 0;
    border-top: 1px solid var(--line);
    font-size: 13.5px
}

    .act li:first-child {
        border: 0;
        padding-top: 0
    }

.act .b {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--cyan);
    margin-top: 6px;
    flex: none;
    box-shadow: 0 0 0 4px rgba(8,184,200,.18)
}

.act small {
    display: block;
    color: var(--mute);
    font-size: 12px
}

@keyframes rise {
    from {
        opacity: 0;
        transform: translateY(26px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.app-on .stag > * {
    animation: rise .7s cubic-bezier(.2,.8,.2,1) both;
    animation-delay: calc(var(--i)*.08s)
}
/* toast + modal */
.ts {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 600;
    display: grid;
    gap: 10px
}

.t {
    background: var(--navy);
    color: #fff;
    padding: 13px 18px;
    border-radius: 14px;
    font-weight: 700;
    font-size: 13.5px;
    box-shadow: 0 18px 40px rgba(10,34,71,.35);
    border-left: 4px solid var(--cyan);
    animation: up .35s
}

.md {
    position: fixed;
    inset: 0;
    background: rgba(10,34,71,.6);
    backdrop-filter: blur(6px);
    z-index: 450;
    display: none;
    place-items: center;
    padding: 20px
}

    .md.on {
        display: grid
    }

.mb {
    background: #fff;
    border-radius: 24px;
    padding: 30px;
    max-width: 380px;
    text-align: center;
    animation: up .3s
}

    .mb i {
        font-style: normal;
        font-size: 38px
    }

    .mb h3 {
        margin: 10px 0 6px;
        color: var(--navy)
    }

    .mb p {
        color: var(--mute);
        font-size: 14px;
        margin-bottom: 22px
    }

    .mb .btn {
        height: 46px;
        padding: 0 24px;
        margin: 0 4px
    }

.bo {
    background: #fff;
    border: 1.5px solid var(--line);
    color: var(--ink)
}

    .bo:hover {
        border-color: var(--blue)
    }

.bd {
    background: var(--orange);
    color: #fff
}

    .bd:hover {
        transform: translateY(-2px)
    }

.ov {
    position: fixed;
    inset: 0;
    background: rgba(10,34,71,.5);
    z-index: 55;
    display: none
}

@media(max-width:1100px) {
    .sg {
        grid-template-columns: repeat(3,1fr)
    }

    .gd, .gd2 {
        grid-template-columns: 1fr
    }
}

@media(max-width:900px) {
    .lg {
        grid-template-columns: 1fr
    }

    .art {
        display: none
    }

    .sb {
        transform: translateX(-100%)
    }

        .sb.open {
            transform: none
        }

    .ov.on {
        display: block
    }

    .main {
        margin-left: 0
    }

    #menu {
        display: block
    }

    .ct {
        padding: 18px
    }

    .top {
        padding: 0 16px
    }

    .me span {
        display: none
    }

    .me {
        padding: 4px
    }
}

@media(max-width:560px) {
    .sg {
        grid-template-columns: repeat(2,1fr)
    }

    .qa {
        grid-template-columns: 1fr
    }

    .srch {
        display: none
    }

    table .hm {
        display: none
    }
}

@media(prefers-reduced-motion:reduce) {
    * {
        animation: none !important;
        transition: none !important
    }

    .stag > * {
        opacity: 1
    }
}

/* ===== v2 enhancements ===== */
.i {
    width: 1.1em;
    height: 1.1em;
    stroke: currentColor;
    fill: none;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    vertical-align: -.2em;
    flex: none
}

.it .i, .ib .i {
    width: 19px;
    height: 19px
}

.sub2 .it .i {
    display: none
}

.fl .ic {
    opacity: 1;
    color: var(--blue);
    top: 17px
}

    .fl .ic .i, .eye .i {
        width: 19px;
        height: 19px
    }

.eye {
    color: var(--mute)
}

.fl input:hover {
    border-color: #b9dfe6
}

.secure {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #e8f8fa;
    color: #0a8fa0;
    border: 1px solid #c7eef3;
    border-radius: 99px;
    padding: 6px 14px;
    font-size: 12.5px;
    font-weight: 800;
    margin-bottom: 18px;
    align-self: flex-start
}

.rm {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600
}

    .rm label {
        cursor: pointer
    }

.caps {
    display: none;
    align-items: center;
    gap: 8px;
    color: #b7791f;
    background: #fff7e6;
    border-radius: 12px;
    padding: 8px 12px;
    font-size: 12.5px;
    font-weight: 700;
    max-width: 400px;
    margin-bottom: 10px
}

    .caps.on {
        display: flex;
        animation: up .3s
    }

.fs > * {
    animation: up .8s cubic-bezier(.2,.8,.2,1) both
}

    .fs > *:nth-child(1) {
        animation-delay: .05s
    }

    .fs > *:nth-child(2) {
        animation-delay: .1s
    }

    .fs > *:nth-child(3) {
        animation-delay: .15s
    }

    .fs > *:nth-child(4) {
        animation-delay: .2s
    }

    .fs > *:nth-child(5) {
        animation-delay: .25s
    }

    .fs > *:nth-child(6) {
        animation-delay: .3s
    }

    .fs > *:nth-child(7) {
        animation-delay: .35s
    }

    .fs > *:nth-child(8) {
        animation-delay: .4s
    }

    .fs > *:nth-child(9) {
        animation-delay: .45s
    }

    .fs > *:nth-child(10) {
        animation-delay: .5s
    }

.art canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%
}

.ecgl path {
    animation: beat 3s linear infinite
}

@keyframes beat {
    from {
        stroke-dashoffset: 300
    }

    to {
        stroke-dashoffset: -300
    }
}

.srch i {
    display: grid;
    place-items: center;
    top: 11px;
    opacity: .55
}

.srch .i {
    width: 17px;
    height: 17px
}

.st i {
    color: var(--blue)
}

    .st i .i {
        width: 22px;
        height: 22px
    }

.st:hover i {
    color: #fff
}

.st {
    position: relative;
    overflow: hidden
}

.trend {
    position: absolute;
    top: 24px;
    right: 20px;
    font: 800 11.5px 'Lato-Regular','Lato',sans-serif;
    font-style: normal;
    padding: 3px 9px;
    border-radius: 99px
}

    .trend.up {
        background: #e3f7ec;
        color: #178a54
    }

.sp {
    display: block;
    width: 100%;
    height: 34px;
    margin-top: 10px
}

    .sp path {
        fill: none;
        stroke: var(--cyan);
        stroke-width: 2.4;
        stroke-linecap: round;
        stroke-dasharray: 220;
        stroke-dashoffset: 220;
        animation: draw 1.6s ease .5s forwards
    }

.q i {
    color: var(--blue)
}

    .q i .i {
        width: 21px;
        height: 21px
    }

.q:hover i {
    color: #fff
}

.q.lo i {
    color: var(--orange)
}

.q.lo:hover i {
    background: var(--orange);
    color: #fff
}

.ac .e {
    color: var(--blue)
}

.ac .x {
    color: #d6455a
}

.ac .i {
    width: 16px;
    height: 16px
}

.hero .btn {
    gap: 8px
}

    .hero .btn .i {
        width: 17px;
        height: 17px
    }

.mb i {
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    margin: 0 auto;
    border-radius: 50%;
    background: #fff1e6;
    color: var(--orange)
}

    .mb i .i {
        width: 28px;
        height: 28px
    }

.dd .i {
    width: 16px;
    height: 16px;
    margin-right: 6px
}

.col {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 14px;
    padding: 10px 14px;
    border: 0;
    background: var(--soft);
    border-radius: 14px;
    color: var(--mute);
    font-weight: 700;
    font-size: 13px;
    transition: .25s;
    width: calc(100% - 28px)
}

    .col:hover {
        color: var(--blue);
        background: #e6f1f8
    }

    .col .i {
        transition: .3s;
        width: 17px;
        height: 17px
    }

.sb, .main {
    transition: width .3s,margin-left .3s,transform .35s
}

@media(min-width:901px) {
    body.collapsed .sb {
        width: 84px
    }

    body.collapsed .main {
        margin-left: 84px
    }

    body.collapsed .sb .lbl, body.collapsed .sb .ch, body.collapsed .sb .grp, body.collapsed .sb .sub2, body.collapsed .sb .sbh div, body.collapsed .sbf {
        display: none
    }

    body.collapsed .sb .it, body.collapsed .col {
        justify-content: center
    }

    body.collapsed .col {
        width: calc(100% - 28px)
    }

        body.collapsed .col .i {
            transform: rotate(180deg)
        }
}

.clk {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    font-size: 13px;
    color: var(--mute);
    background: var(--soft);
    border-radius: 99px;
    padding: 8px 14px
}

    .clk .i {
        width: 16px;
        height: 16px;
        color: var(--cyan)
    }

.np {
    position: absolute;
    right: 0;
    top: 54px;
    width: 320px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    box-shadow: 0 24px 50px rgba(13,75,154,.18);
    padding: 16px;
    display: none;
    z-index: 70
}

    .np.on {
        display: block;
        animation: up .25s
    }

    .np h4 {
        font-size: 15px;
        color: var(--navy);
        margin-bottom: 8px
    }

    .np ul {
        list-style: none
    }

    .np li {
        padding: 10px 0;
        border-top: 1px solid var(--line);
        font-size: 13px
    }

        .np li b {
            display: block;
            color: var(--navy)
        }

    .np small {
        color: var(--mute)
    }

    .np button {
        margin-top: 8px;
        border: 0;
        background: none;
        color: var(--blue);
        font-weight: 800;
        font-size: 13px
    }

        .np button:hover {
            color: var(--cyan)
        }

.gd3 {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 18px;
    margin-top: 22px
}

.dnw {
    display: flex;
    align-items: center;
    gap: 26px;
    flex-wrap: wrap
}

.dbox {
    position: relative;
    width: 160px;
    height: 160px
}

    .dbox svg {
        width: 100%;
        height: 100%;
        transform: rotate(-90deg)
    }

.bgc {
    fill: none;
    stroke: #eef3f9;
    stroke-width: 16
}

.seg {
    fill: none;
    stroke-width: 16;
    transition: stroke-dasharray 1.3s cubic-bezier(.2,.8,.2,1)
}

.dc {
    position: absolute;
    inset: 0;
    display: grid;
    place-content: center;
    text-align: center
}

    .dc b {
        font: 800 28px 'Lato-Black','Lato',sans-serif;
        color: var(--navy)
    }

    .dc small {
        color: var(--mute);
        font-size: 12px;
        font-weight: 700
    }

.dl {
    list-style: none;
    flex: 1;
    min-width: 140px
}

    .dl li {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 13.5px;
        font-weight: 700;
        margin: 9px 0
    }

    .dl i {
        width: 12px;
        height: 12px;
        border-radius: 4px
    }

    .dl span {
        margin-left: auto;
        color: var(--mute)
    }

.bar {
    margin-bottom: 20px
}

    .bar div {
        display: flex;
        justify-content: space-between;
        font-size: 13.5px;
        font-weight: 700;
        margin-bottom: 8px
    }

    .bar b {
        color: var(--blue)
    }

    .bar p {
        height: 10px;
        border-radius: 9px;
        background: #eef3f9;
        overflow: hidden
    }

    .bar i {
        display: block;
        height: 100%;
        width: 0;
        border-radius: 9px;
        background: linear-gradient(90deg,var(--blue),var(--cyan));
        transition: width 1.3s cubic-bezier(.2,.8,.2,1) .4s
    }

@media(max-width:1100px) {
    .gd3 {
        grid-template-columns: 1fr
    }
}

@media(max-width:900px) {
    .clk {
        display: none
    }

    .col {
        display: none
    }
}

@media(max-width:560px) {
    .np {
        position: fixed;
        left: 16px;
        right: 16px;
        top: 80px;
        width: auto
    }
}

/* ===== fixes: login button + compact glass cards + tighter login spacing ===== */
.bpw {
    position: relative;
    max-width: 400px;
    border-radius: 99px;
    overflow: hidden;
    box-shadow: 0 14px 30px rgba(13,75,154,.32);
    transition: .3s
}

    .bpw:hover {
        transform: translateY(-3px);
        box-shadow: 0 20px 38px rgba(13,75,154,.4)
    }

    .bpw::after {
        content: "";
        position: absolute;
        top: 0;
        left: -60%;
        width: 40%;
        height: 100%;
        background: linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
        transform: skewX(-20deg);
        transition: .7s;
        pointer-events: none
    }

    .bpw:hover::after {
        left: 130%
    }

    .bpw .bp, .bpw .bp:hover {
        box-shadow: none;
        transform: none;
        max-width: none;
        width: 100%;
        cursor: pointer;
        font-family: inherit;
        color: #fff
    }

.bp.busy {
    opacity: .85
}

.fs {
    padding-top: 28px;
    padding-bottom: 28px
}

.brand {
    margin-bottom: 26px
}

.secure {
    margin-bottom: 14px
}

.fs .sub {
    margin: 8px 0 22px
}

.fl {
    margin-bottom: 14px
}

.row {
    margin: 2px 0 18px
}

.foot {
    margin-top: 22px
}

/* ===== Page Management: Add / Show Page ===== */
.ph {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 22px
}

    .ph h2 {
        font-size: clamp(22px,2.4vw,30px);
        color: var(--navy)
    }

    .ph p {
        color: var(--mute);
        font-size: 14px;
        margin-top: 4px;
        max-width: 560px
    }

    .ph .btn {
        height: 46px;
        padding: 0 22px
    }

        .ph .btn .i {
            width: 17px;
            height: 17px
        }

.bo {
    background: #fff;
    border: 1.5px solid var(--line);
    color: var(--ink)
}

    .bo:hover {
        border-color: var(--blue);
        color: var(--blue);
        transform: translateY(-2px)
    }

a.btn.bp {
    color: #fff;
    box-shadow: 0 12px 26px rgba(13,75,154,.3)
}

    a.btn.bp:hover {
        transform: translateY(-3px)
    }

.ag {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 20px;
    align-items: start
}

.fld {
    margin-bottom: 22px
}

    .fld:last-child {
        margin-bottom: 0
    }

    .fld > label {
        display: block;
        font-weight: 800;
        font-size: 13.5px;
        color: var(--navy);
        margin-bottom: 8px
    }

        .fld > label small {
            color: var(--mute);
            font-weight: 600
        }

    .fld input[type=text], .fld > select {
        width: 100%;
        height: 52px;
        border: 1.5px solid var(--line);
        border-radius: 14px;
        padding: 0 16px;
        background: #fff;
        font-weight: 600;
        color: var(--ink);
        transition: .25s;
        outline: 0
    }

    .fld > select {
        appearance: none;
        -webkit-appearance: none;
        background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235a6580' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M5 9l7 7 7-7'/%3E%3C/svg%3E") no-repeat right 16px center;
        padding-right: 44px;
        cursor: pointer
    }

        .fld input[type=text]:hover, .fld > select:hover {
            border-color: #b9dfe6
        }

        .fld input[type=text]:focus, .fld > select:focus {
            border-color: var(--cyan);
            box-shadow: 0 0 0 5px rgba(8,184,200,.14)
        }

    .fld input.bad {
        border-color: var(--pink);
        animation: shake .4s
    }

.ed {
    border: 1.5px solid var(--line);
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    transition: border-color .25s,box-shadow .25s
}

    .ed:focus-within {
        border-color: var(--cyan);
        box-shadow: 0 0 0 5px rgba(8,184,200,.14)
    }

.etb {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 10px;
    background: var(--soft);
    border-bottom: 1px solid var(--line);
    align-items: center
}

    .etb button {
        width: 34px;
        height: 34px;
        border: 0;
        border-radius: 9px;
        background: transparent;
        color: var(--ink);
        font-weight: 800;
        font-size: 14px;
        display: grid;
        place-items: center;
        transition: .2s
    }

        .etb button .i {
            width: 17px;
            height: 17px
        }

        .etb button:hover {
            background: #fff;
            color: var(--blue);
            box-shadow: 0 4px 10px rgba(13,75,154,.12);
            transform: translateY(-1px)
        }

        .etb button.on {
            background: var(--blue);
            color: #fff
        }

.fld .etb select {
    height: 34px;
    width: auto;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    font: 600 13px 'Lato-Regular','Lato',sans-serif;
    padding: 0 8px;
    color: var(--ink);
    cursor: pointer;
    outline: 0
}

.sep {
    width: 1px;
    height: 22px;
    background: var(--line);
    margin: 0 4px
}

.etb.lock button:not(#bsrc):not(#bfs), .etb.lock select {
    opacity: .35;
    pointer-events: none
}

.ebody {
    min-height: 340px;
    max-height: 60vh;
    overflow: auto;
    padding: 20px;
    outline: 0;
    font-size: 15px;
    line-height: 1.7;
    width: 100%;
    border: 0;
    display: block;
    color: var(--ink)
}

    .ebody[hidden] {
        display: none
    }

textarea.ebody {
    font-family: Consolas,monospace;
    font-size: 13px;
    background: #0f1b33;
    color: #cfe3ff;
    resize: vertical
}

.ebody:empty::before {
    content: attr(data-ph);
    color: #9aa6c0
}

.ebody h2, .ebody h3, .ebody h4 {
    color: var(--navy);
    margin: 14px 0 8px
}

.ebody p {
    margin-bottom: 10px
}

.ebody a {
    color: var(--blue);
    text-decoration: underline
}

.ebody blockquote {
    border-left: 4px solid var(--cyan);
    background: var(--soft);
    padding: 10px 16px;
    border-radius: 0 12px 12px 0;
    margin: 10px 0
}

.ebody table {
    border-collapse: collapse;
    width: 100%;
    margin: 10px 0
}

.ebody td, .ebody th {
    border: 1px solid var(--line);
    padding: 8px 10px
}

.ebody img {
    max-width: 100%;
    border-radius: 10px
}

.efoot {
    display: flex;
    justify-content: space-between;
    padding: 8px 16px;
    border-top: 1px solid var(--line);
    background: var(--soft);
    font-size: 12px;
    font-weight: 700;
    color: var(--mute)
}

.ed.fs2 {
    position: fixed;
    inset: 16px;
    z-index: 200;
    display: flex;
    flex-direction: column;
    border-radius: 20px;
    box-shadow: 0 0 0 100vmax rgba(10,34,71,.55)
}

    .ed.fs2 .ebody {
        flex: 1;
        max-height: none
    }

.side {
    position: sticky;
    top: 92px
}

    .side h3 {
        font-size: 16px;
        color: var(--navy);
        margin-bottom: 10px
    }

.sm {
    list-style: none
}

    .sm li {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        padding: 10px 0;
        border-top: 1px solid var(--line);
        font-size: 13px
    }

        .sm li span {
            color: var(--mute);
            font-weight: 600
        }

        .sm li b {
            color: var(--navy);
            text-align: right;
            word-break: break-all
        }

.side .bpw {
    max-width: none;
    margin: 18px 0 10px
}

.side .btn.bo {
    width: 100%;
    height: 46px
}

.tip {
    background: #eaf7fa;
    color: #0a6f80;
    border-radius: 14px;
    padding: 12px 14px;
    font-size: 12.5px;
    font-weight: 600;
    margin-top: 14px
}

.tbc {
    padding: 0;
    overflow: hidden
}

.tool {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    padding: 18px 22px;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--line)
}

.chips {
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.chip {
    border: 1.5px solid var(--line);
    background: #fff;
    border-radius: 99px;
    padding: 7px 14px;
    font-weight: 800;
    font-size: 13px;
    color: var(--mute);
    transition: .25s;
    display: flex;
    gap: 8px;
    align-items: center
}

    .chip em {
        font-style: normal;
        background: var(--soft);
        border-radius: 99px;
        padding: 0 8px;
        font-size: 12px
    }

    .chip:hover {
        border-color: var(--cyan);
        color: var(--blue)
    }

    .chip.on {
        background: var(--blue);
        border-color: var(--blue);
        color: #fff
    }

        .chip.on em {
            background: rgba(255,255,255,.22)
        }

.tsr {
    position: relative
}

    .tsr input {
        height: 42px;
        width: 260px;
        max-width: 100%;
        border: 1px solid var(--line);
        border-radius: 12px;
        background: var(--soft);
        padding: 0 14px 0 40px;
        outline: 0;
        transition: .25s
    }

        .tsr input:focus {
            background: #fff;
            border-color: var(--cyan);
            box-shadow: 0 0 0 4px rgba(8,184,200,.14)
        }

    .tsr .i {
        position: absolute;
        left: 13px;
        top: 12px;
        width: 17px;
        height: 17px;
        opacity: .55
    }

.tw {
    overflow-x: auto
}

.pt {
    width: 100%;
    border-collapse: collapse;
    min-width: 640px
}

    .pt th {
        background: linear-gradient(90deg,var(--navy),var(--blue));
        color: #fff;
        font: 800 12.5px 'Lato-Regular','Lato',sans-serif;
        letter-spacing: .04em;
        text-transform: uppercase;
        padding: 14px 22px;
        text-align: left
    }

        .pt th.ctr, .pt td.ctr {
            text-align: center
        }

    .pt td {
        padding: 14px 22px;
        border-top: 1px solid var(--line);
        font-weight: 600;
        font-size: 14px
    }

    .pt tr.r {
        transition: background .25s;
        animation: up .5s both
    }

        .pt tr.r:hover {
            background: #f0f8fb
        }

.sl {
    color: var(--mute);
    font-weight: 800
}

.pn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-weight: 800;
    color: var(--navy)
}

    .pn i {
        width: 34px;
        height: 34px;
        border-radius: 10px;
        background: var(--soft);
        color: var(--blue);
        display: grid;
        place-items: center;
        transition: .25s
    }

    .pn .i {
        width: 17px;
        height: 17px
    }

.pt tr.r:hover .pn i {
    background: var(--cyan);
    color: #fff
}

.bdg {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 99px;
    font-size: 12.5px;
    font-weight: 800
}

    .bdg.rt {
        background: #e3f7ec;
        color: #178a54
    }

    .bdg.ch {
        background: #e6efff;
        color: var(--blue)
    }

.ab {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    transition: .25s;
    border: 0;
    background: none;
    cursor: pointer
}

    .ab .i {
        width: 18px;
        height: 18px
    }

    .ab.e {
        color: var(--blue)
    }

        .ab.e:hover {
            background: #e3f6f9;
            transform: translateY(-2px)
        }

    .ab.x {
        color: #d6455a
    }

        .ab.x:hover {
            background: #fde8eb;
            transform: translateY(-2px)
        }

.empty {
    text-align: center;
    color: var(--mute);
    padding: 40px !important
}

@media(max-width:1000px) {
    .ag {
        grid-template-columns: 1fr
    }

    .side {
        position: static
    }
}

/* ===== dashboard visual polish (shadows / spacing / colour accents) ===== */
#ct {
    padding-top: 24px
}

    #ct .hero {
        box-shadow: 0 22px 48px rgba(10,34,71,.24);
        padding: 38px 40px
    }

        #ct .hero::after {
            width: 380px;
            height: 380px;
            right: -90px;
            top: -140px
        }

    #ct .sg {
        gap: 18px;
        margin: 26px 0
    }

    #ct .gd, #ct .gd2 {
        gap: 20px;
        margin-bottom: 26px
    }

    #ct .gd3 {
        gap: 20px;
        margin-top: 26px
    }

    #ct .c {
        box-shadow: 0 10px 28px rgba(13,75,154,.07);
        padding: 24px
    }

        #ct .c:hover {
            box-shadow: 0 26px 52px rgba(13,75,154,.15)
        }

    #ct .st {
        border-top: 3px solid transparent
    }

    #ct .sg .c:nth-child(1) {
        border-top-color: var(--blue)
    }

        #ct .sg .c:nth-child(1) i {
            background: rgba(13,75,154,.1);
            color: var(--blue)
        }

        #ct .sg .c:nth-child(1):hover i {
            background: var(--blue);
            color: #fff
        }

    #ct .sg .c:nth-child(2) {
        border-top-color: var(--cyan)
    }

        #ct .sg .c:nth-child(2) i {
            background: rgba(8,184,200,.12);
            color: var(--cyan)
        }

        #ct .sg .c:nth-child(2):hover i {
            background: var(--cyan);
            color: #fff
        }

    #ct .sg .c:nth-child(3) {
        border-top-color: var(--pink)
    }

        #ct .sg .c:nth-child(3) i {
            background: rgba(244,119,134,.12);
            color: var(--pink)
        }

        #ct .sg .c:nth-child(3):hover i {
            background: var(--pink);
            color: #fff
        }

    #ct .sg .c:nth-child(4) {
        border-top-color: var(--orange)
    }

        #ct .sg .c:nth-child(4) i {
            background: rgba(245,124,31,.12);
            color: var(--orange)
        }

        #ct .sg .c:nth-child(4):hover i {
            background: var(--orange);
            color: #fff
        }

    #ct .sg .c:nth-child(5) {
        border-top-color: #0a8fa0
    }

        #ct .sg .c:nth-child(5) i {
            background: rgba(61,214,230,.16);
            color: #0a8fa0
        }

        #ct .sg .c:nth-child(5):hover i {
            background: #0a8fa0;
            color: #fff
        }

    #ct .qa {
        gap: 14px
    }

    #ct .q {
        padding: 16px
    }

    #ct .act .b {
        background: var(--blue);
        box-shadow: 0 0 0 4px rgba(13,75,154,.14)
    }

    #ct .act li:nth-child(2) .b {
        background: var(--cyan);
        box-shadow: 0 0 0 4px rgba(8,184,200,.14)
    }

    #ct .act li:nth-child(3) .b {
        background: var(--pink);
        box-shadow: 0 0 0 4px rgba(244,119,134,.14)
    }

    #ct .act li:nth-child(4) .b {
        background: var(--orange);
        box-shadow: 0 0 0 4px rgba(245,124,31,.14)
    }

    #ct .dnw {
        gap: 30px
    }

    #ct .bar {
        margin-bottom: 22px
    }

    #ct .chart h3, #ct .c h3 {
        margin-bottom: 20px
    }

/* ---- advertisement management ---- */
.drop {
    display: grid;
    place-items: center;
    min-height: 240px;
    border: 2px dashed #b9dfe6;
    border-radius: 18px;
    background: var(--soft);
    cursor: pointer;
    text-align: center;
    padding: 16px;
    transition: .25s;
    color: var(--mute)
}

    .drop:hover, .drop.over {
        border-color: var(--cyan);
        background: #eaf7fa
    }

    .drop img {
        max-height: 380px;
        max-width: 100%;
        border-radius: 12px;
        box-shadow: 0 12px 30px rgba(13,75,154,.18)
    }

    .drop span {
        display: grid;
        justify-items: center;
        gap: 6px;
        font-weight: 800;
        color: var(--navy)
    }

        .drop span .i {
            width: 38px;
            height: 38px;
            color: var(--cyan)
        }

    .drop small {
        color: var(--mute)
    }

.fin {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none
}

.fname {
    font-size: 12.5px;
    color: var(--mute);
    margin-top: 8px
}

.fld .chk, .chk {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 16px 0 0;
    font-weight: 800;
    color: var(--navy);
    cursor: pointer
}

    .chk input {
        width: 18px;
        height: 18px;
        accent-color: var(--blue)
    }

.thm {
    width: 64px;
    height: 80px;
    object-fit: cover;
    border-radius: 10px;
    border: 1px solid var(--line);
    background: var(--soft)
}

.lnk {
    font-size: 12px;
    color: var(--mute);
    margin-top: 4px;
    max-width: 260px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.bdg.off {
    background: #fde8eb;
    color: #d6455a
}

.bdg.tg {
    cursor: pointer;
    transition: .2s
}

    .bdg.tg:hover {
        transform: translateY(-2px)
    }
/* ---- ALL FONTS BOLD (headings & buttons one step heavier) ---- */
*, *::before, *::after {
    font-weight: 700 !important
}

h1, h2, h3, h4, h5, .btn, th {
    font-weight: 800 !important
}

/* ---- Lato typography: Lato-Black for all h1-h6, Lato-Regular for body text ---- */
body, p, li, a, label, input, select, textarea, button, .btn {
    font-family: 'Lato-Regular','Lato',system-ui,sans-serif
}

h1, h2, h3, h4, h5, h6, .h2, h1 *, h2 *, h3 *, h4 *, h5 *, h6 * {
    font-family: 'Lato-Black','Lato',sans-serif !important;
    font-weight: 900 !important
}

/* ===================================================================
   News / MCI / Album / Gallery / Admin Profile screens
   =================================================================== */
.g2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px
}

    .fm > .fld:last-child, .g2 .fld {
        margin-bottom: 22px
    }

.fld input[type=date], .fld input[type=email], .fld input[type=password], .fld input[type=url], .fld textarea {
    width: 100%;
    height: 52px;
    border: 1.5px solid var(--line);
    border-radius: 14px;
    padding: 0 16px;
    background: #fff;
    font-weight: 600;
    color: var(--ink);
    transition: .25s;
    outline: 0
}

.fld textarea {
    height: auto;
    min-height: 150px;
    padding: 14px 16px;
    line-height: 1.6;
    resize: vertical;
    font: inherit
}

.fld input[type=date] {
    cursor: pointer
}

    .fld input[type=date]:hover, .fld input[type=email]:hover, .fld input[type=password]:hover, .fld textarea:hover {
        border-color: #b9dfe6
    }

    .fld input[type=date]:focus, .fld input[type=email]:focus, .fld input[type=password]:focus, .fld textarea:focus {
        border-color: var(--cyan);
        box-shadow: 0 0 0 5px rgba(8,184,200,.14)
    }

.fld > select.bad, .fld input.bad, .fld textarea.bad {
    border-color: var(--pink);
    animation: shake .4s
}

.fname a, .tip a {
    color: var(--blue);
    text-decoration: underline
}

.chk.sm2 {
    margin-top: 10px;
    font-size: 13px;
    color: var(--mute)
}

    .chk.sm2 input {
        width: 16px;
        height: 16px
    }

.side .chk {
    margin: 16px 0 0
}

/* upload boxes */
.drop.dsm {
    min-height: 170px
}

    .drop.dsm img {
        max-height: 200px
    }

.pdfc {
    display: grid;
    justify-items: center;
    gap: 6px;
    font-weight: 800;
    color: var(--navy);
    word-break: break-all;
    max-width: 90%
}

    .pdfc .i {
        width: 42px;
        height: 42px;
        color: #d6455a
    }

    .pdfc small {
        color: var(--mute)
    }

.drop .pdfc[hidden], .drop .dtxt[hidden], .drop img[hidden] {
    display: none
}

.pgrid {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(92px,1fr));
    gap: 10px;
    margin-top: 12px
}

    .pgrid:empty {
        display: none
    }

    .pgrid img {
        width: 100%;
        aspect-ratio: 1;
        object-fit: cover;
        border-radius: 12px;
        border: 1px solid var(--line);
        animation: up .35s both
    }

/* table extras */
.thm.wide {
    width: 92px;
    height: 62px
}

.thm.sq {
    width: 52px;
    height: 52px;
    cursor: zoom-in
}

.thm[data-zoom] {
    cursor: zoom-in;
    transition: .25s
}

    .thm[data-zoom]:hover {
        transform: scale(1.06);
        box-shadow: 0 8px 18px rgba(13,75,154,.2)
    }

.nop {
    display: grid;
    place-items: center;
    color: #9fb2cf;
    background: linear-gradient(135deg,#eef4fb,#e3f6f9)
}

    .nop .i {
        width: 24px;
        height: 24px
    }

span.thm.nop {
    border-radius: 10px;
    border: 1px solid var(--line)
}

.pn2 {
    font-weight: 800;
    color: var(--navy);
    display: block;
    max-width: 420px
}

.nw {
    white-space: nowrap;
    color: var(--mute)
}

.dsc {
    color: var(--mute);
    font-size: 13.5px;
    max-width: 420px
}

.muted {
    color: #9aa6c0;
    font-size: 13px
}

.fpill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 99px;
    background: #fde8eb;
    color: #d6455a;
    font-size: 12.5px;
    font-weight: 800;
    transition: .25s
}

    .fpill .i {
        width: 15px;
        height: 15px
    }

    .fpill:hover {
        background: #d6455a;
        color: #fff;
        transform: translateY(-2px)
    }

.bdg.pr {
    background: #fff1e6;
    color: #c25e10
}

.ac a {
    display: inline-grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 10px;
    transition: .2s
}

    .ac a:hover {
        background: #e3f6f9;
        transform: scale(1.1)
    }

.c h3 .more {
    float: right;
    font-size: 12.5px;
    color: var(--blue);
    font-family: 'Lato-Regular','Lato',sans-serif !important
}

    .c h3 .more:hover {
        color: var(--cyan)
    }

/* album cards */
.cgrid {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(240px,1fr));
    gap: 20px;
    padding: 22px
}

    .cgrid .empty {
        grid-column: 1/-1
    }

.acard {
    border: 1px solid var(--line);
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
    transition: .3s;
    animation: up .5s both
}

    .acard:hover {
        transform: translateY(-4px);
        box-shadow: 0 22px 44px rgba(13,75,154,.14)
    }

.acv {
    position: relative;
    display: block;
    aspect-ratio: 16/10;
    overflow: hidden;
    background: var(--soft)
}

    .acv img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform .6s
    }

.acard:hover .acv img {
    transform: scale(1.07)
}

.acv .nop {
    width: 100%;
    height: 100%
}

    .acv .nop .i {
        width: 38px;
        height: 38px
    }

.cnt {
    position: absolute;
    left: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(10,34,71,.78);
    backdrop-filter: blur(4px);
    color: #fff;
    border-radius: 99px;
    padding: 5px 11px;
    font-size: 12px
}

    .cnt .i {
        width: 14px;
        height: 14px
    }

.acb {
    padding: 14px 16px 12px
}

.act2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px
}

    .act2 h4 {
        font-size: 16px;
        color: var(--navy);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

.acb p {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    margin: 8px 0 6px
}

.afoot {
    display: flex;
    justify-content: flex-end;
    gap: 4px;
    border-top: 1px solid var(--line);
    padding-top: 8px;
    margin-top: 8px
}

    .afoot .ab {
        width: 34px;
        height: 34px
    }

/* gallery grid */
.pinfo {
    padding: 12px 22px 0;
    font-size: 13px;
    color: var(--mute)
}

    .pinfo b {
        color: var(--navy)
    }

.ggrid {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(200px,1fr));
    gap: 16px;
    padding: 16px 22px 22px
}

    .ggrid .empty {
        grid-column: 1/-1
    }

.gcard {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--line);
    transition: .3s;
    animation: up .5s both
}

    .gcard:hover {
        box-shadow: 0 20px 40px rgba(13,75,154,.16);
        transform: translateY(-3px)
    }

.gimg {
    display: block;
    width: 100%;
    aspect-ratio: 4/3;
    border: 0;
    padding: 0;
    background: var(--soft);
    cursor: zoom-in;
    overflow: hidden
}

    .gimg img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform .6s
    }

.gcard:hover .gimg img {
    transform: scale(1.08)
}

.gtools {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    gap: 6px;
    opacity: 0;
    transform: translateY(-6px);
    transition: .25s
}

.gcard:hover .gtools, .gcard:focus-within .gtools {
    opacity: 1;
    transform: none
}

.gtools .ab {
    width: 34px;
    height: 34px;
    background: #fff;
    box-shadow: 0 6px 16px rgba(10,34,71,.2)
}

.gcap {
    padding: 10px 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    font-size: 13px
}

    .gcap b {
        color: var(--navy);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .gcap .bdg {
        font-size: 11px;
        padding: 3px 9px;
        white-space: nowrap
    }

@media(hover:none) {
    .gtools {
        opacity: 1;
        transform: none
    }
}

/* lightbox */
.lb {
    position: fixed;
    inset: 0;
    z-index: 700;
    background: rgba(10,34,71,.86);
    backdrop-filter: blur(6px);
    display: none;
    place-items: center;
    padding: 24px
}

    .lb.on {
        display: grid;
        animation: fade .25s
    }

    .lb figure {
        max-width: min(1100px,94vw);
        text-align: center
    }

    .lb img {
        max-width: 100%;
        max-height: 80vh;
        margin: 0 auto;
        border-radius: 14px;
        box-shadow: 0 30px 70px rgba(0,0,0,.45);
        animation: up .3s
    }

    .lb figcaption {
        color: #dbe8f7;
        margin-top: 12px;
        font-size: 14px
    }

.lbx {
    position: absolute;
    top: 18px;
    right: 22px;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 0;
    background: rgba(255,255,255,.14);
    color: #fff;
    font-size: 28px;
    line-height: 1;
    transition: .2s
}

    .lbx:hover {
        background: var(--orange)
    }

/* admin profile */
.pg {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 20px;
    align-items: start
}

.pcard {
    text-align: center;
    position: sticky;
    top: 92px
}

.pav {
    width: 92px;
    height: 92px;
    margin: 6px auto 14px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg,var(--blue),var(--cyan));
    color: #fff;
    font: 900 32px 'Lato-Black','Lato',sans-serif;
    box-shadow: 0 16px 34px rgba(13,75,154,.3)
}

.pcard h3 {
    color: var(--navy);
    font-size: 19px;
    margin-bottom: 8px
}

.pcard .sm {
    margin-top: 18px;
    text-align: left
}

.pcard .tip {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    text-align: left
}

    .pcard .tip .i {
        flex: none;
        margin-top: 2px
    }

.pcol {
    display: grid;
    gap: 20px
}

.fh {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 17px;
    color: var(--navy);
    margin-bottom: 18px
}

    .fh .i {
        width: 20px;
        height: 20px;
        color: var(--cyan)
    }

.fa {
    display: flex;
    justify-content: flex-end
}

    .fa .bpw {
        width: 220px
    }

.pw {
    position: relative
}

    .pw input {
        padding-right: 50px !important
    }

.eye2 {
    position: absolute;
    right: 8px;
    top: 8px;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 10px;
    background: none;
    color: var(--mute);
    display: grid;
    place-items: center
}

    .eye2:hover {
        background: var(--soft);
        color: var(--blue)
    }

    .eye2 .i {
        width: 18px;
        height: 18px
    }

.pstr {
    margin-top: 10px
}

    .pstr p {
        height: 6px;
        border-radius: 9px;
        background: #eef3f9;
        overflow: hidden
    }

    .pstr i {
        display: block;
        height: 100%;
        width: 0;
        border-radius: 9px;
        transition: width .35s,background .35s
    }

    .pstr span {
        display: block;
        font-size: 12px;
        color: var(--mute);
        margin-top: 6px
    }

.okc {
    color: #178a54
}

.errc {
    color: #d6455a
}

@media(max-width:1000px) {
    .pg {
        grid-template-columns: 1fr
    }

    .pcard {
        position: static
    }
}

@media(max-width:700px) {
    .g2 {
        grid-template-columns: 1fr
    }

    .fa .bpw {
        width: 100%
    }

    .cgrid {
        grid-template-columns: repeat(auto-fill,minmax(200px,1fr));
        padding: 16px
    }

    .ggrid {
        grid-template-columns: repeat(2,1fr);
        gap: 10px;
        padding: 12px
    }
}
/* fixes after visual review */
.c h3.fh {
    justify-content: flex-start
}

.ph .btn.bp {
    width: auto;
    max-width: none;
    padding: 0 26px
}

/* ===== custom scrollbars (sidebar, page, tables, editor) ===== */
/* Chrome / Edge / Safari */
.nav::-webkit-scrollbar, .tw::-webkit-scrollbar, .ebody::-webkit-scrollbar, .np ul::-webkit-scrollbar {
    width: 6px;
    height: 6px
}

html::-webkit-scrollbar {
    width: 10px;
    height: 10px
}

.nav::-webkit-scrollbar-track, .tw::-webkit-scrollbar-track, .ebody::-webkit-scrollbar-track {
    background: transparent;
    margin: 8px 0
}

html::-webkit-scrollbar-track {
    background: var(--soft)
}

.nav::-webkit-scrollbar-thumb {
    background: #d3deec;
    border-radius: 99px
}

.nav:hover::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg,var(--blue),var(--cyan))
}
/* brand gradient while the menu is hovered */
.nav::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg,var(--navy),var(--blue))
}

.tw::-webkit-scrollbar-thumb, .ebody::-webkit-scrollbar-thumb {
    background: #c9d6e8;
    border-radius: 99px
}

    .tw::-webkit-scrollbar-thumb:hover, .ebody::-webkit-scrollbar-thumb:hover {
        background: var(--cyan)
    }

html::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg,var(--blue),var(--cyan));
    border-radius: 99px;
    border: 2px solid var(--soft)
}

    html::-webkit-scrollbar-thumb:hover {
        background: linear-gradient(180deg,var(--navy),var(--blue))
    }

::-webkit-scrollbar-button {
    display: none;
    width: 0;
    height: 0
}

::-webkit-scrollbar-corner {
    background: transparent
}
/* Firefox (only where the WebKit styles above are not supported, so Chrome keeps the gradient) */
@supports not selector(::-webkit-scrollbar) {
    html {
        scrollbar-width: thin;
        scrollbar-color: var(--blue) var(--soft)
    }

    .nav {
        scrollbar-width: thin;
        scrollbar-color: #d3deec transparent
    }

        .nav:hover {
            scrollbar-color: var(--cyan) transparent 
        }

    .tw, .ebody {
        scrollbar-width: thin;
        scrollbar-color: #c9d6e8 transparent
    }
}
/* soft fade at the bottom of the menu so cut-off items look intentional */
.sb .nav {
    -webkit-mask-image: linear-gradient(180deg,#000 calc(100% - 26px),transparent);
    mask-image: linear-gradient(180deg,#000 calc(100% - 26px),transparent)
}

/* ===================================================================
   Faculty Management (Departments / Doctors / NMC monthly update)
   =================================================================== */
.phb { display: flex; gap: 10px; flex-wrap: wrap }
.tool2 { display: flex; gap: 10px; align-items: center; flex-wrap: wrap }
.dsel {
    height: 42px; min-width: 220px; max-width: 100%; border: 1px solid var(--line); border-radius: 12px; padding: 0 40px 0 14px;
    background: var(--soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235a6580' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M5 9l7 7 7-7'/%3E%3C/svg%3E") no-repeat right 14px center;
    appearance: none; -webkit-appearance: none; color: var(--ink); font: inherit; font-size: 14px; cursor: pointer; outline: 0
}
.dsel:focus { border-color: var(--cyan); box-shadow: 0 0 0 4px rgba(8,184,200,.14) }
.dph { width: 46px; height: 56px; cursor: zoom-in }
.dav {
    display: inline-grid; place-items: center; width: 46px; height: 56px; border-radius: 10px; background: linear-gradient(135deg,var(--blue),var(--cyan));
    color: #fff; font-size: 14px; letter-spacing: .04em
}
b.dn { color: var(--navy); white-space: nowrap }
input.exp {
    width: 170px; height: 38px; border: 1.5px solid var(--line); border-radius: 10px; padding: 0 12px; background: #fff;
    color: var(--ink); font: inherit; font-size: 13.5px; outline: 0; transition: .2s
}
input.exp:focus { border-color: var(--cyan); box-shadow: 0 0 0 4px rgba(8,184,200,.14) }
input.exp.bad { border-color: var(--pink); background: #fff5f6 }
tr.r.chg td { background: #fffbe8 }
tr.r.chg input.exp { border-color: #f5b400 }
.nmcset { display: flex; align-items: flex-end; gap: 14px; flex-wrap: wrap; margin-bottom: 18px }
.nmcset .fld { margin: 0; flex: 1 1 260px; max-width: 360px }
.nmcset .btn { height: 52px }
.nmclast { display: flex; align-items: center; gap: 10px; margin-left: auto; padding: 10px 16px; border-radius: 14px; background: var(--soft); color: var(--mute); font-size: 13px }
.nmclast b { display: block; color: var(--navy); font-size: 14px }
.nmclast .i { width: 20px; height: 20px; color: var(--cyan) }
@media(max-width:560px) { .dsel { min-width: 0; width: 100% } .nmclast { margin-left: 0 } input.exp { width: 140px } }
.tool2 .btn, .nmcset .btn { white-space: nowrap; min-width: max-content; padding: 0 22px }
.tool2 .btn { height: 44px; min-height: 44px }
.tool2 input.btn, .nmcset input.btn { cursor: pointer }

/* ---- Dashboard: doctors ---- */
.hbtns { display: flex; gap: 10px; flex-wrap: wrap }
.sg.s6 { grid-template-columns: repeat(6,1fr) }
a.c.st { color: inherit; text-decoration: none; display: block }
.stdoc { background: linear-gradient(150deg,#0d4b9a,#1660bd 60%,#08b8c8) !important; color: #fff !important; border-color: transparent !important }
.stdoc b, .stdoc span { color: #fff !important }
.stdoc i { background: rgba(255,255,255,.18) !important; color: #fff !important }
.stdoc .trend { background: rgba(255,255,255,.2) !important; color: #fff !important }
.stdoc svg.sp path { stroke: #fff !important }
.stdoc:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(13,75,154,.3) }
.dact a { color: var(--navy); font-weight: 800 }
.dact a:hover { color: var(--blue) }
.dadd { margin-top: 14px; width: 100%; justify-content: center; min-height: 44px }
@media(max-width:1400px) { .sg.s6 { grid-template-columns: repeat(3,1fr) } }
@media(max-width:560px) { .sg.s6 { grid-template-columns: repeat(2,1fr) } }


/* ---- list tables: light header (replaces the dark gradient header) ---- */
.pt th {
    background: #eef4fb;
    color: var(--navy);
    font-size: 12px;
    letter-spacing: .06em;
    border-bottom: 2px solid #d6e3f3;
    white-space: nowrap
}
.pt thead tr th:first-child { border-top-left-radius: 0 }
.pt tbody tr.r:hover td { background: #f8fbff }

/* doctor list: compact so all columns fit on a laptop screen */
.pt.ptd th, .pt.ptd td { padding: 11px 12px }
.pt.ptd td { font-size: 13.5px }
.pt.ptd td.dsc { max-width: 170px }
.pt.ptd b.dn { white-space: normal; min-width: 150px; display: inline-block }
.pt.ptd .bdg { white-space: nowrap }

/* content uses the full screen width (was capped at 1300px) */
.ct { max-width: none }
/* doctor list: type shown as a small tag under the name; table always fits its card */
.pt.ptd { min-width: 0 }
.pt.ptd b.dn { display: block; min-width: 140px }
.dtype { display: inline-block; margin-top: 4px; font-size: 11px; padding: 2px 8px; border-radius: 99px; letter-spacing: .02em }
.dtype.f { background: #e6efff; color: var(--blue) }
.dtype.o { background: #f1ecff; color: #6a3fc4 }
.pt.ptd td:nth-child(2) { width: 70px }
.pt.ptd th.ctr, .pt.ptd td.ctr { width: 1%; white-space: nowrap }
@media(max-width:1200px) { .pt.ptd { min-width: 980px } }
.pt.ptd td a.bdg { white-space: normal; max-width: 150px; line-height: 1.35; text-align: left }
.pt.ptd td:nth-child(4) { max-width: 170px }
.pt.ptd td.sl { width: 1% }
.pt.ptd th, .pt.ptd td { padding: 10px 9px }
.pt.ptd th:first-child, .pt.ptd td:first-child { padding-left: 18px }
.pt.ptd b.dn { min-width: 130px }
.pt.ptd td:nth-child(4) { max-width: 150px }
.pt.ptd td:nth-child(2) { width: 60px }

/* Admin footer with "Developed & Designed by The Gemini" on the right */
.main { display: flex; flex-direction: column }
.gfoot { margin-top: auto; display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; padding: 16px 28px; border-top: 1px solid rgba(15,40,80,.08); background: #fff; font-size: 12.5px; color: var(--mute) }
.gfoot__by { display: inline-flex; align-items: center; gap: 10px; color: var(--mute); font-weight: 600; transition: opacity .25s }
.gfoot__by:hover { opacity: .75 }
.gfoot__by .gem-logo { height: 42px; display: block }
@media (max-width: 640px) { .gfoot { justify-content: center; text-align: center; padding: 14px 16px } }

/* The Gemini logo, built into the CSS (no image file needed) */
.gem-logo{display:inline-block;vertical-align:middle;aspect-ratio:205/75;background:center/contain no-repeat}
.gem-logo--color{background-image:url("data:image/png;base64,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")}
